Checkout, refunds & subscriptions
Take USDT from any wallet with one signature, refund it in one click, and charge subscriptions, all gasless.
Tazor Checkout takes USDT from any wallet on Whitechain, not only Tazor company accounts. The customer needs no WBT for gas: they sign one authorisation and Tazor's relayer submits it. Refunds and subscription charges are gasless for you too.
Paying an order
- Your site shows the order with its amount and your order number.
- The customer signs one USDT authorisation in their wallet (Face ID, fingerprint or the wallet's own unlock). It names your contract, the amount and the order, so it can't be used for anything else.
- The relayer submits it; the TazorCheckout contract takes the USDT and pays you in the same transaction, about a second later.
- The customer gets a public receipt link they can check themselves.
Paying from an exchange
A customer whose USDT sits on an exchange (for example WhiteBIT) can pay without a wallet signature. Each order gets its own deposit address; a plain USDT transfer or withdrawal to it is enough. Tazor's relayer settles the order as soon as the transfer lands, and anything sent above the order amount goes back. Refunds go to the refund address set for the order. Checkout shows these orders as Sent from an exchange or wallet.
Receipts and finality
A receipt (/receipt/?order=…) is read straight from Whitechain, so it works even if Tazor is offline. It shows three stages: confirmed by Whitechain (about a second), posted to Ethereum (Whitechain's safe head has passed the block, usually about 10 minutes after paying) and final (Ethereum finalized it, usually about 30 minutes later). It updates by itself.
Refunds
In Checkout, Orders, press Refund and choose the amount. Your wallet signs a USDT authorisation for that amount and the relayer submits it. The contract only sends a refund to the address that paid, and never more than was paid in total. Each refund appears on the customer's receipt with its transaction.
Subscriptions
The customer pays the first cycle now and allows later cycles with one permit, both signed in their wallet. Each later cycle can be charged by anyone once it is due (Tazor's relayer does it automatically). Either side can cancel at any time. Checkout, Subscriptions shows the next charge, and a Charge now button when a cycle is due.
Webhooks
Your server gets signed events. Each request carries Tazor-Signature: t=<unix time>,v1=<HMAC-SHA256 of t.body>; reject any that don't verify or are more than five minutes old.
| Event | When |
|---|---|
order.paid | A customer paid an order. |
order.refunded | You refunded all or part of an order. |
order.finality | The payment moved to the next finality stage: sequencer, ethereum or finalized. |
subscription.created | A customer subscribed; the first cycle is paid. |
subscription.charged | A later cycle was charged. |
subscription.due | A cycle is due and will be charged. |
subscription.cancelled | The customer or you cancelled. |