API ReferenceeSIM
Recharge eSIM
Renew an eSIM with its current plan (top-up). The plan cannot be changed.
POST/open-api/v1/esim/recharge
Renews (tops up) an eSIM with its current plan — the data allowance is added on top of any remaining balance. Your wallet is charged the plan's catalog price for your project.
The plan is fixed by design. This endpoint takes no planNo — the eSIM's current plan is
renewed, always.
Like purchase, fulfilment is asynchronous with a short synchronous window; the terminal state is
delivered via the ESIM_RECHARGED webhook (or
ESIM_REFUNDED if it cannot complete, with a full
refund).
Headers
X-Idempotency-KeystringheaderStrongly recommended — same semantics as purchase:
same key + same body retried returns the same orderNo without a second charge.
Body
esimNostringbodyrequiredeSIM id (esim_...) to renew.
Response
orderNostringRecharge order id (
eord_...).statusstringISSUED (renewed) or PAID (in progress — wait for the webhook).iccidstringqrCodestringUnchanged — the install QR is per-eSIM, not per-plan.
esimNostringThe renewed eSIM (echoes the request).
operationIdstringPresent only when
X-Idempotency-Key was supplied.Request
{ "esimNo": "esim_6ba300976dbb48b8a1" }Response
{
"code": 0,
"message": "SUCCESS",
"data": {
"orderNo": "eord_67701dc1ff534f19a8",
"status": "ISSUED",
"iccid": "8948010010043989416",
"qrCode": "LPA:1$smdp.io$K2-XXXXXX-XXXXXXX",
"esimNo": "esim_6ba300976dbb48b8a1",
"operationId": "oaop_0bc40073aa20459a8f4f"
}
}{
"code": 404,
"message": "eSIM not found"
}