Concepts
Fees
Fee instructions, bearers, and fee lines that reconcile to the unit. You earn when money moves.
You earn when money moves. A fee is not a side effect — it is a line on the transfer, in the same unit, that reconciles against the amount.
Fee lines
A settled transfer carries fees.lines[], each with a kind — app_fee (yours), platform_fee, provider_fee, gas_fee — an amount in minor units, and a status. Your app fee is the one you set; the rest are costs the movement incurs.
"fees": { "lines": [
{ "kind": "app_fee", "amountMinorUnits": "2500", "status": "reserved" }
] }The fee needs a home
Before a fee instruction is accepted, the environment needs an Accounts-selected app-fee collection target. Without it, a fee instruction is refused 400 — “requires an Accounts-selected AppFee collection target.” The fee settles into a fee till, an endpoint the platform assigns.
Who bears it
A receiver-paid app fee requires an internal destination — the fee is deducted from what lands. The bearer is a property of the instruction, not an afterthought; the lines reconcile either way.
gateway 0.1.0 · sandbox
