Tizondocs

Tizon Mobile

Sell eSIMs and mobile top-ups with no float. You or your customers pay over Lightning or stablecoins at the point of sale, and you keep a share of every order.

Tizon Mobile sells eSIMs and mobile top-ups through one API. What is unusual is how the money moves.

You do not have to prefund anything. Most providers in this category want a float sitting with them before you can sell. Here, a purchase can carry its own payment: ask for a quote, pay the invoice it comes back with or hand it to your customer, and the order is paid and fulfilled the moment it is settled. Nothing of yours is parked anywhere.

Lightning and stablecoins are the rails, not an add-on. A quote can mint a BOLT11 invoice for exactly its own price, or take USDT and USDC on Base, BEP20 and TRC20. The wallet settles in USD either way, so what you are owed never moves with the bitcoin price.

You keep a share of every order. Each fulfilled order accrues commission to your Revenue Centre — 15% to 20% of the price, by volume — which you can spend as wallet credit or take out over Lightning. The margin is part of the API, not a quarterly invoice to chase.

Put together: you or your customer pays, the eSIM is delivered, and you have earned something — without having had money with Tizon beforehand.

Selling with no float

One call prices an offer and mints an invoice for it:

curl https://api.tizon.mobile/v1/quotes \
  -H "Authorization: Bearer $TIZON_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{ "offer_id": "off_jp_5gb_30d", "payment_source": "lightning" }'

payment.lightning.bolt11 comes back in the response. Pay it yourself, or show it as a QR code for your customer to pay. Either way, settling it credits the wallet in USD and the quote settles in the same move — so there is no funding step, and no balance of yours to top up.

Fulfillment then runs immediately and you get an order.fulfilled webhook carrying the eSIM profile. It is quick enough to keep someone waiting at a checkout rather than emailing them later.

The payer sends satoshis; you are credited the USD amount whatever the rate does in between. amount_sats is indicative and never settles.

Prefer to hold a balance anyway? Fund the wallet once and quote with payment_source: wallet, and every purchase becomes a single call that either succeeds or returns 402 with the shortfall. Both models work on the same endpoints — see funding.

What you earn

Commission accrues as each order is fulfilled, at the rate your last 30 days of volume earned:

Tier30-day volumeRate
Standardunder $5,00015%
Growth$5,000 to $50,00017.5%
Scaleabove $50,00020%

Nobody at Tizon sets that rate — it is derived from your volume. GET /v1/revenue shows the balance, the tier and what the next rung takes. From there, move it into the wallet as credit that buys eSIMs, or take it out over Lightning. See what you earn.

How a purchase works

  1. Find an offer. GET /v1/offers is the catalog, priced in USD. An offer's price is what a quote will debit; Tizon's margin is already inside it.
  2. Quote it. POST /v1/quotes prices the offer and pays for it. lightning, usdt, usdc and bank_transfer return where to send the money and wait in awaiting_funds. wallet debits the balance at once, or returns 402.
  3. Collect the order. A paid quote creates an order, fulfilled in the background. Take the order.fulfilled webhook, or poll GET /v1/orders/{order_id}. Its deliverable carries the eSIM profile or the top-up receipt.

A failed order puts its price straight back in the wallet, so you are never charged for an eSIM that was not delivered.

The wallet is closed-loop

Every account has one USD wallet per mode. Funding credits it, purchases debit it, and nothing else moves the balance. There are no withdrawals, and it is spendable only on products — commission taken as credit included. To take money out rather than spend it, use a Lightning payout from the Revenue Centre.

Base URL

https://api.tizon.mobile

One base URL. The API key decides the mode, not the host: tz_test_… is the sandbox, tz_live_… is real money. Test and live data are fully isolated — separate wallets, ledgers, provider credentials and webhook secrets.

You can integrate end to end on a test key before any KYC and before any real money moves.

On this page