SKUs
A SKU represents a single coverage area. It can be a single country (e.g. Japan), a named group of countries (e.g. Asia 8 countries), or a continent-level region (e.g. Africa). SKUs are the top-level grouping for the catalog — you browse SKUs first, then look up the packages available within each SKU.SKU fields
Retrieving SKUs
Use one of the following endpoints depending on how you want to display the catalog:GET /api_esim/getSkus— returns a flat list of all SKUs.GET /api_esim/getSkuByGroup— returns SKUs grouped by continent: Asia, Europe, Africa, Latin America, North America, Oceania, and Common.
dpId assigned to your distribution partner account. The response lists only the SKUs that partner supports.
Packages (plans)
A package is a purchasable data plan within a SKU. It defines the data allowance, validity period, price, and behavior rules that govern the plan. When you place an order, you reference a specific package by itspriceid or apiCode.
Package fields
Key fields explained
priceid vs apiCode — Both identify a package, but they are used differently. Use priceid when building a standard order flow from catalog results. Use apiCode when you need a stable, human-readable identifier for a package that you can hardcode or store externally without relying on integer IDs. See API code below.
mustDate — When this is 1, include a startDate parameter in your order request. The plan activates on that date rather than at the time of purchase.
expireDays — A non-zero value means the plan has a hard expiry window. For example, if expireDays is 30, the plan expires 30 days after the eSIM is first activated, even if the data is unused.
DayPass packages
A DayPass package lets you order a flexible number of days rather than a fixed plan. ThesupportDaypass field controls this behavior:
When ordering a DayPass package (
supportDaypass=1), include a days parameter in your order request set to the number of days you want, between minDay and maxDay inclusive. The plan’s total data and price are calculated proportionally.
API code
TheapiCode field is a string identifier for a package, for example "40-0-3-1-G". It is unique across the catalog and stable over time.
Use apiCode when you want to order a specific package directly without first browsing the catalog. Pass apiCode instead of priceid in your order request. This is useful when you have pre-negotiated specific plans with MIOeSIM and want to reference them by a known identifier in your integration.
Renewability
TheflowType field tells you whether a plan can be renewed after it expires:
When building a renewal flow, check
flowType before presenting a renewal option to your customers. Attempting to renew a non-renewable plan will return an error.
Understanding the premark field
Understanding the premark field
The
premark field is a free-text string returned on each package. It contains the plan’s operational details as provided by the carrier, including:- APN — the access point name the user must configure on their device, if required.
- Activation policy — conditions under which the plan activates (e.g. activates on first data use, activates on a specified date).
- Cancellation policy — whether the plan is refundable and under what conditions.
premark content to your customers before purchase, particularly the APN setting, since some carriers require manual APN configuration for the plan to work correctly.