FX-Port API
eSIMs

eSIMs API overview

FX-Port eSIMs API — browse the package catalog, place orders, top up existing eSIMs, and track usage across 190+ countries.

Sell travel data eSIMs across 190+ countries from a single API surface. FX-Port sources packages from multiple eSIM suppliers and applies agency-specific pricing automatically — you never call a supplier directly, and which supplier fulfills a given package is an internal implementation detail.

Coverage and pricing grow automatically. FX-Port continuously onboards more eSIM suppliers, and each supplier independently expands its own network of mobile operators over time — both add new countries, package sizes, and better rates/connectivity to the catalog. Your integration picks up new packages with no code changes — always read package_id from the catalog response rather than hard-coding it.

eSIM concepts

Read these before integrating.

Endpoints

MethodPathPermissionDescription
GET/api/v1/esims/packagesReadList the package catalog, optionally filtered by country/type
GET/api/v1/esims/compatible-devicesReadList devices known to support eSIM
POST/api/v1/esims/ordersRead+WriteCreate a new eSIM order
GET/api/v1/esims/topup-packages/{iccid}ReadList packages available to top up a specific ICCID
POST/api/v1/esims/topupsRead+WriteTop up an existing eSIM
GET/api/v1/esims/usage/{iccid}ReadData usage for a single ICCID
GET/api/v1/esims/usage/bulkReadData usage for every eSIM owned by the agency
GET/api/v1/esims/bookingsReadList the agency's eSIM/topup bookings
GET/api/v1/esims/bookings/{iccid}/topup-historyReadTopup history for one ICCID
GET/api/v1/esims/bookings/{booking_id}/setup-instructionsReadSetup data (QR code, APN) for a booking
GET/api/v1/esims/instructions/{iccid}ReadInstallation instructions for an ICCID

Only order creation and topup creation write anything (they debit your agency balance and provision the eSIM). Every other endpoint is read-only.

Traveler contact details

first_name and last_name follow the same Latin/ASCII-only naming rule used by flights — no accents, diacritics, or non-Latin scripts.

email and phone are required on order and topup creation — not optional. FX-Port asks the supplier to email the QR code and installation instructions directly to that address as soon as the eSIM is provisioned, so the traveler receives setup instructions without you relaying the QR code yourself. Only pass the traveler's/client's own contact details — never include billing, pricing, or account information in email or phone, since they are forwarded to the supplier as customer-facing contact details.

Error responses

HTTPCause
400Missing required field (package_id, iccid, email, phone, etc.)
401Missing or invalid API key
402Insufficient agency balance
403Key lacks write permission, or agency is not active
404Package, ICCID, or booking not found
409Duplicate order/topup detected — an identical request is already in flight
503Supplier API temporarily unavailable

Questions?

Email the FX-Port developer team at [email protected] for integration help, feature requests, or to report an API error.

On this page