Airalo Developer Platform
  1. Endpoints
Airalo Developer Platform
  • OVERVIEW
    • Introduction
    • Partner with Airalo
    • Attribute descriptions
    • FAQ
    • User journeys
      • Purchase journey
      • Top-up journey
    • Guides
      • How to set up a brand for eSIMs Cloud link sharing
      • How to get the eSIMs Cloud sharing link through API
      • How to generate the QR code for an eSIM
      • How to share eSIM installation instructions with users
      • eSIM installation methods for API Partners
  • REST API
    • Introduction
    • Product updates
    • Rate limits
    • Error handling
    • Guides
      • Step #1 - Authentication
    • Quick start
      • Request access token
      • Get packages
      • Submit order
      • Get installation instructions
    • Endpoints
      • Orders List
        • Get order list
        • Get order
      • Top-up flow
        • Get eSIMs list
        • Get top-up package list
        • Get eSIM package history
      • Notification
        • Understanding Webhooks: Asynchronous Communication for Modern Applications
        • Airalo Webhooks Optin and Flow
        • Async orders
        • Low data notification - opt In
        • Low data notification - opt out
        • Get low data notification
        • Credit limit notification
        • Webhook definition
        • Webhook simulator
      • Balance
        • Get balance
      • Request access token
        POST
      • Get compatible device list
        GET
      • Get packages
        GET
      • Submit order
        POST
      • Submit order async
        POST
      • Submit top-up order
        POST
      • Get eSIM
        GET
      • Get data usage
        GET
      • Get installation instructions
        GET
      • Update eSIM brand
        PUT
      • eSIM voucher
        POST
      • Refund Request
        POST
      • Future Orders
        POST
      • Cancel future orders
        POST
    • Deprecated
      • Authentication
        • Request Access Token
      • Orders
        • Get Order List
        • Get Order
        • Submit Order
        • Submit Top-up Order
      • eSIMs
        • Get eSIMs List
        • Get eSIM
        • Get Installation instructions
        • Get Data Usage
        • Get Top-up Package List
        • Get eSIM Package History
      • Order Statuses
        • Get Order Statuses List
        • Get Order Status Name
      • Packages
        • Get Packages
      • Compatible Devices
        • Get Compatible Device List
      • Notification
        • Low Data Notification
        • Credit Limit Notification
        • Webhook Definition
        • Webhook Simulator
  • SDKs
    • Introduction
    • SDK vs. REST API
    • Technical notes
  • WOOCOMMERCE PLUGIN
    • Introduction
    • Product updates
    • Guides
      • How to install the plugin
      • How to setup the Shop price?
      • Customizing "My eSIM" page colors in WooCommerce
      • How to convert prices into local currency
      • How to finalize the shop setup
      • How to test in sandbox
      • How to go live
      • TO DELETE Installation plugin backup
      • Customizing WooCommerce email templates for eSIM sales
    • Troubleshooting
      • Troubleshooting
  • SHOPIFY INTEGRATION
    • Introduction
    • Guides
      • How to install the Airalo Shopify App
      • How to set up prices in Shopify
  1. Endpoints

Submit top-up order

POST
/v2/orders/topups
To submit a top-up order:
Make a POST request to the endpoint URL {{url}}/{{version}}/orders/topups
Include a request body in the form of a FormData object, which contains the following required fields:
1.
package_id: The ID of the top-up package you want to purchase
2.
iccid: The ICCID of the eSIM for which you want to purchase the top-up package.
You can also include an optional description field to provide additional information about the order.
The API will respond with a JSON object containing the details of the order, including the package ID, quantity, price, and other information.
The complete workflow for buying a top-up package:
1.
GET {{url}}/{{version}}/sims to see the list of purchased eSIMs
2.
GET {{url}}/{{version}}/sims/:iccid/topups to see the list of available top-ups for the eSIMs
3.
POST {{url}}/{{version}}/orders/topups with the proper "iccid" and "package_id" values to purchase a top-up
4.
GET {{url}}/{{version}}/sims/:iccid/packages to see the list of all packages for the eSIM, including the original package and top-ups
For more informations, best practices visit our FAQ page: https://airalopartners.zendesk.com/hc/en-us/sections/13207524820893-FAQ
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/v2/orders/topups' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{token}}' \
--form 'package_id="bonbon-mobile-30days-3gb-topup"' \
--form 'iccid="89340000000000872"' \
--form 'description="Example description to identify the order"'
Response Response Example
200 - Submit Top-up Order: 200 OK
{
  "data": {
    "package_id": "bonbon-mobile-30days-3gb-topup",
    "quantity": "1",
    "type": "topup",
    "description": "Topup (89340000000000872)",
    "esim_type": "Prepaid",
    "validity": 30,
    "package": "Bonbon Mobile 2-3 GB - 30 Days",
    "data": "3 GB",
    "price": 10,
    "created_at": "2023-02-07 07:42:17",
    "id": 174,
    "code": "20230207-000174",
    "currency": "USD",
    "manual_installation": "",
    "qrcode_installation": "",
    "installation_guides": {
      "en": "http://airalo.local:8080/installation-guide"
    }
  },
  "meta": {
    "message": "success"
  }
}

Request

Header Params
Accept
string 
required
Example:
application/json
Authorization
string 
required
Example:
Bearer {{token}}
Body Params multipart/form-data
package_id
string 
required
Required. A Topup Package ID, can be obtainer by executing a GET request to the "eSIM: List available top-up packages" endpoint
Example:
bonbon-mobile-30days-3gb-topup
iccid
string 
required
Required. eSIM ICCID, that identifies the eSIM for the top-up package.
Can be obtained by execuring GET to the "eSIMs List" endpoint
Example:
89340000000000872
description
string 
required
Optional. Order description to identify the order.
Example:
Example description to identify the order

Responses

🟢200Submit Top-up Order: 200 OK
application/json
Body
data
object 
required
package_id
string 
required
quantity
string 
required
type
string 
required
description
string 
required
esim_type
string 
required
validity
integer 
required
package
string 
required
data
string 
required
price
integer 
required
created_at
string 
required
id
integer 
required
code
string 
required
currency
string 
required
manual_installation
string 
required
qrcode_installation
string 
required
installation_guides
object 
required
meta
object 
required
message
string 
required
🟠422Submit Top-up Order: 422 (Purchase limit exceeded)
🟠422Submit Top-up Order: 422 (Required fields are missing)
🟠422Submit Top-up Order: 422 (Invalid package id)
🟠422Submit Top-up Order: 422 (Recycled sim)
Modified at 2025-05-12 15:00:30
Previous
Submit order async
Next
Get eSIM
Built with