eSIM Management
The FYATU eSIM API allows you to programmatically issue and manage eSIMs for your users. Whether you’re building a travel app, IoT platform, or mobile connectivity service, our API provides access to thousands of data packages across 190+ countries.How It Works
Browse Destinations
Query available destinations (countries or regions) to show your users where eSIMs are available.
Select a Package
Each destination has multiple packages with different data amounts, validity periods, and price points.
Purchase eSIM
Purchase the eSIM using your business wallet balance. The eSIM is instantly provisioned.
Activate on Device
Provide the QR code or manual activation code to your user. They scan it to install the eSIM.
Destinations
Destinations represent geographic coverage areas. There are three types:| Type | Description | Examples |
|---|---|---|
| Local | Single country coverage | France, Japan, United States |
| Regional | Multi-country coverage | Europe (39 countries), Asia Pacific |
| Global | Worldwide coverage | Global Data (100+ countries) |
Destination Object
Packages
Each destination offers multiple eSIM packages. Packages vary by:- Data Amount: From 1GB to unlimited data
- Validity Period: From 7 to 365 days
- Price: Based on data, validity, and destination
- Features: Data-only vs. voice/SMS included
Package Tiers
Packages are categorized into three tiers:| Tier | Description | Use Cases |
|---|---|---|
| Standard | Data-only packages | Travelers needing mobile data, IoT devices |
| Premium | Includes voice calls and/or SMS | Business travelers, users needing a phone number |
| Unlimited | Unlimited data (fair usage policies apply) | Heavy data users, content streaming |
Package Object
eSIM Lifecycle
An eSIM progresses through several statuses during its lifecycle:| Status | Description | Actions Available |
|---|---|---|
inactive | Purchased but not yet activated | View details, get QR code |
active | Currently in use | Monitor usage, top-up |
expired | Validity period ended | None (read-only) |
consumed | Data fully used | Top-up may reactivate |
Purchasing eSIMs
Wallet Balance
eSIM purchases are deducted from your business wallet. Ensure sufficient balance before purchasing:Batch Purchases
Purchase up to 10 eSIMs in a single request:ownerId is optional and allows you to associate eSIMs with your own customer identifiers.
Activation
After purchase, each eSIM includes activation details:| Field | Description | Usage |
|---|---|---|
qrCodeUrl | URL to QR code image | Display for user to scan |
manualCode | Text activation code | For manual entry |
appleInstallUrl | iOS direct install link | One-tap install on iPhone |
lpa | LPA address | Technical: SM-DP+ address |
matchingId | Matching ID | Technical: Activation code |
QR Code Installation
The most common activation method:- User opens device Settings > Cellular/Mobile Data
- User selects “Add eSIM” or “Add Cellular Plan”
- User scans the QR code you provide
- eSIM profile downloads and installs
eSIM Identifiers
Each eSIM has two identifiers you can use:| Identifier | Format | Description |
|---|---|---|
iccid | 19-20 digits | The ICCID (Integrated Circuit Card Identifier) - unique to the SIM |
esimId | ESIM-XXXXXXXX | FYATU’s internal eSIM identifier |
Top-ups
Extend data or validity on an active eSIM without issuing a new one:Top-up packages are different from regular SIM packages. Only packages with
packageType: "TOPUP" can be used for top-ups.Usage Monitoring
Real-time Data
Get current usage stats for any eSIM:Refresh Usage
Usage data may be cached. To get the latest from the provider:Best Practices
Cache Destination/Package Data
Cache Destination/Package Data
Destinations and packages don’t change frequently. Cache them for 1-6 hours to reduce API calls and improve response times.
Handle Low Balance Scenarios
Handle Low Balance Scenarios
Check wallet balance before purchase attempts. Set up balance alerts in the dashboard to avoid failed purchases.
Store eSIM Details
Store eSIM Details
Save the full eSIM response (especially activation codes) in your database. Users may need to reinstall or reference their eSIM later.
Implement Usage Alerts
Implement Usage Alerts
Poll usage periodically for active eSIMs. Notify users when they reach 80% data consumption so they can top-up.
Use Webhooks for Status Changes
Use Webhooks for Status Changes
Configure webhooks to receive notifications when eSIM status changes (activated, expired, depleted) rather than polling.
Error Handling
Common eSIM-specific errors:| Error Code | Description | Resolution |
|---|---|---|
INSUFFICIENT_BALANCE | Wallet balance too low | Top-up business wallet |
PACKAGE_NOT_FOUND | Invalid or unavailable package | Refresh package list |
ESIM_NOT_FOUND | eSIM doesn’t exist or not owned by you | Verify eSIM ID |
INVALID_STATUS | eSIM can’t be topped up in current status | Check eSIM is active |
REGION_NOT_FOUND | Can’t determine eSIM’s region for topup | Contact support |
Pricing
eSIM pricing is set per package and displayed in USD:- Your Cost: The
pricefield in package details - Retail Price: Set your own markup when reselling to end users
- No Hidden Fees: The displayed price is the total charge
Ready to Start?
Explore the eSIM API reference to start integrating

