API v2.4 / Orders / Create orders
POST /orders
POST
/orders
Orders can be validated and processed using this endpoint. Total will be deducted from your Organisation’s balance.
Auto-assign
By specifying ICCID(s) of eSIM(s) belonging to your Organisation and setting ‘assign’ to true, a bundle can be automatically assigned to eSIM(s).
Bundle assignments to an eSIM are usually instant but please allow for up to 10 minutes for the bundle to fully process. While the bundle is processing the eSIM can be successfully installed and the eSIM will register onto a network if within coverage.
The Bundle Status can be checked through Get the Status of a bundle assigned to an eSIM
Usage:
- eSIM ICCIDs can only be specified if assign is set to true
- If assign is set to true, but no ICCIDs are provided, bundles are assigned to new eSIMs
- If ICCIDs are provided, quantity is required to match the number of ICCIDs for each bundle
- If quantity is specified and assign is set to false, the quantity of that bundle is purchased into inventory
Note: In some cases, it may take up to 10 minutes for your eSIM bundles to be delivered.
Authorizations
Request Body
object
type
string
Allowed values: validate transaction
assign
boolean
order
Array<object>
object
type
string
Allowed values: bundle
quantity
integer
item
string
iccids
Array<string>
>= 2 items <= 2 items
allowReassign
boolean
Example
{ "type": "transaction", "assign": true, "order": [ { "type": "bundle", "quantity": 3, "item": "esim_10GB_30D_IM_U", "allowReassign": false }, { "type": "bundle", "quantity": 5, "item": "esim_10GB_30D_IM_U", "iccids": [ "8901234567890123456", "8901234567890123457" ], "allowReassign": true } ]}
Responses
200
OK
object
order
Array<object>
object
type
string
item
string
quantity
integer
subTotal
number format: float
pricePerUnit
number format: float
AllowReassign
boolean
total
number format: float
valid
boolean
currency
string
createdDate
string format: date-time
assigned
boolean
Example
{ "order": [ { "type": "bundle", "item": "esim_1GB_7D_AX_V2", "quantity": 1, "subTotal": 2.28, "pricePerUnit": 2.28, "AllowReassign": false } ], "total": 2.28, "valid": true, "currency": "USD", "createdDate": "2025-03-28T14:47:26.153875019Z", "assigned": true}
object
order
Array<object>
object
esims
Array<object>
object
iccid
string
matchingId
string
smdpAddress
string
type
string
item
string
iccids
Array<string>
quantity
integer
subTotal
number format: float
pricePerUnit
number format: float
AllowReassign
boolean
total
number format: float
currency
string
status
string
statusMessage
string
orderReference
string
createdDate
string format: date-time
assigned
boolean
Example
{ "order": [ { "esims": [ { "iccid": "8912345678901234567", "matchingId": "AB-12C3DE-4FGHIJ5", "smdpAddress": "http://rsp.mockprovider.com" } ], "type": "bundle", "item": "esim_5GB_30D_EU_V3", "iccids": [ "8912345678901234567" ], "quantity": 1, "subTotal": 9.99, "pricePerUnit": 9.99, "AllowReassign": true } ], "total": 9.99, "currency": "USD", "status": "completed", "statusMessage": "Order completed: 1 eSIMs assigned", "orderReference": "1a2b3c4d-5e6f-7g8h-9i10-11j12k13l14m", "createdDate": "2023-06-15T10:30:45.123456789Z", "assigned": true}
400
Bad Request
string
401
Unauthorized
string
503
Service Unavailable
string