The model
A gas station belongs to your organization and works on one chain. It has its own on-chainaddress, holding the chain’s native asset (asset is ETH, TRX, and so on).
When you send from one of your wallets with sponsorship on, the gas station pays the network fee. The sending wallet only needs the token it is sending.
Sponsoring a transfer
Setsponsor: true on Create transaction:
To see what sponsorship will cost before you send, pass the same
sponsor: true to Estimate transaction fee.
Sponsored transactions still pass through your policies. Sponsorship changes who pays the fee, not whether the transfer is allowed.
Thresholds and auto-refill
Each gas station has athreshold in the native asset’s display unit, for example "0.05" ETH. It drives two things:
- Health.
health_statusishealthywhile the balance is at or above the threshold, andlowbelow it. - Auto-refill. With
auto_refill_enabled, when the balance drops belowthreshold, the gas station pullsrefill_amountfromrefill_from_wallet_id, a wallet you choose, usually a treasury wallet on the same chain.
Alerts
Gas stations emit three webhook events:
Route
critical_balance to whoever can fund the source wallet. A run of auto_refilled events at short intervals means refill_amount is too small for your volume.
Units
Gas station fields come in two forms.threshold and refill_amount are display-unit decimals, such as "0.25" ETH, with _raw versions in base units. balance is only in base units, such as wei or sun. Divide it by 10^asset_decimals before you compare it with threshold.
Sponsoring externally signed Tron transactions
A gas station can also pay for a Tron transaction your system didn’t sign through Bitnob. Sponsor and broadcast takes the signed raw transaction, funds the fee from the gas station, and broadcasts it. The response includes thesponsor_tx_id of the fee-funding transaction and the amount sponsored in TRX.
Gas stations or sponsored transfers
If you run both custodial and self-custody flows, you can use both. See How sponsored transfers work.