Use the eSIMDual reseller API in your own website or app
This documentation covers authentication, packages, reseller pricing, VPN plans, orders, eSIM resources, wallet data and webhook payloads for the reseller API. Use the online reference below or download the OpenAPI JSON file for Postman, Insomnia or your own integration tools.
Quick start
- 1Create an API token with POST /login
- 2Send Bearer tokens on all protected endpoints
- 3Use Idempotency-Key on order creation
- 4Read VPN plans with GET /vpn/plans when you sell Secure VPN options
- 5Cancel reseller VPN subscriptions with POST /vpn/subscriptions/{id}/cancel when your customer ends the service
- 6Check SaaS release updates with GET /updates/latest
- 7Validate webhook signatures with your shared secret
https://esimdual.com/api/reseller/v1
Authorization: Bearer <token>
Idempotency-Key: unique-order-key
Sample login request
curl --request POST 'https://esimdual.com/api/reseller/v1/login' \
--header 'Content-Type: application/json' \
--data '{
"email": "partner@example.com",
"password": "StrongPassword123!",
"device_name": "production-server"
}'
Sample order request
curl --request POST 'https://esimdual.com/api/reseller/v1/orders' \
--header 'Authorization: Bearer YOUR_TOKEN' \
--header 'Idempotency-Key: ORDER-2026-0001' \
--header 'Content-Type: application/json' \
--data '{
"package_id": 1120,
"external_order_id": "NOANET-2026-0001",
"device_imei": "356938035643809"
}'
Sample VPN plans request
curl --request GET 'https://esimdual.com/api/reseller/v1/vpn/plans' \
--header 'Authorization: Bearer YOUR_TOKEN'
The price_for_reseller field is the amount charged by eSIMDual to the reseller. Your storefront can add its own customer selling price on top.
Sample VPN order request
curl --request POST 'https://esimdual.com/api/reseller/v1/vpn/orders' \
--header 'Authorization: Bearer YOUR_TOKEN' \
--header 'Idempotency-Key: VPN-2026-0001' \
--header 'Content-Type: application/json' \
--data '{
"vpn_plan_id": 1,
"external_subscription_id": "VPN-CUSTOMER-0001",
"customer_reference": "customer@example.com",
"customer_price": 4.99
}'
Sample SaaS update check
curl --request GET 'https://esimdual.com/api/reseller/v1/updates/latest?current_version=1.0.0&channel=stable' \
--header 'Authorization: Bearer YOUR_TOKEN'
The update endpoints are for hosted/self-hosted SaaS storefront releases. They are authenticated with the same reseller Bearer token.
Webhook events
eSIMDual signs webhook payloads with HMAC SHA-256 using your webhook secret.
X-eSIMDual-EventX-eSIMDual-DeliveryX-eSIMDual-Signature