Skip to main content

Order an eSIM package

POST 

/v1/esim/orders

Buys one package.

package_id names what you are buying; the package must be available at the moment of the call, which is why it is worth retrieving it immediately beforehand rather than trusting a cached list. Ordering a frozen or withdrawn package is refused with esim_package_unavailable.

An eSIM is allocated from our inventory and the package provisioned onto it before this call returns. There is no queue and no callback: a 201 means the eSIM is ready, and almost every failure means nothing was bought.

The exception is a 502 from a timeout against the network that provisions the profile. We cannot tell in that moment whether it took the order, so we neither charge you nor claim it failed. The order appears in your order list without an esim_id until we settle it. Look it up by your own reference. Do not re-send under a new reference — that is a second purchase. If you still hold the Idempotency-Key, replaying it is the better move.

reference is your order id, and it must be unique within your organization.

activation_code on the response is the LPA string a traveller scans. Encode it as a QR yourself — it is a short string, every platform has a one-line library for it, and a hosted image would be a URL that installs somebody's eSIM for whoever opens it.

price on the response is the price charged, captured at order time. It does not track the catalog afterwards.

Send an Idempotency-Key. A timed-out order retried without one is a second purchase, not a second look at the first.

Request​

Responses​

The order.