Preferred: check, then create
1
Check deliverability
POST /orders/check/{locationId} with the delivery address and any
requirements (dimensions, weight, signature). We return whether we can
deliver, plus resolvedAddress — the geocoded address we checked against,
which may differ from the one you submitted.2
Deliverable → create
POST /orders, then fetch the label.3
Not deliverable → fall back
Route the order to your own fallback method or another carrier.
Alternative: create directly
You can skip the check and callPOST /orders straight away. We validate
deliverability during creation and reject the order if we can’t deliver. This
works, but you only learn the outcome after attempting to create — the two-step
flow is cleaner and preferred.
Pickup point orders
An order that names a pickup point (pudoId) is routed to the carrier that
serves that point, whichever carrier would otherwise have won, and is rejected
when the address has no pickup point delivery available. It never falls back to
a normal home delivery — see pickup points.