Trading
The allowance
What approving the settlement account lets it do, and how much to approve.
Orders on Chord are free signatures because of one thing you set up first: an SPL token allowance from your token account to Chord’s settlement account. The settlement account is a program address with no private key; only the Chord program can use it, and only inside a fill.
#What the allowance permits
The allowance lets the settlement program move up to the approved amount out of that one token account. The program will only do so inside settle_fill, and only when all of these hold:
- the fill carries an order you signed, verified on chain in the same transaction;
- the order belongs to the batch being settled, and that batch is committed at a fixed price;
- you receive at least the minimum you signed, in the same instruction;
- the order’s nonce hasn’t been used or cancelled.
The allowance doesn’t let anyone move your tokens to an arbitrary address, and it doesn’t apply to any other token account you own.
#How much the app approves
The app approves exactly what you need: the order you’re placing plus your other open orders from the same account. Every fill draws down the same allowance, so this keeps all of them fillable. If your current allowance already covers that, the app skips the transaction and goes straight to signing.
The app never asks for an unlimited allowance.
| Situation | What the app does |
|---|---|
| No allowance yet | One approval transaction for this order’s amount |
| Allowance covers this order and your open ones | Nothing; you only sign |
| Allowance too small | One approval transaction that replaces it with the new total |
| Destination token account missing | Creates it in the same transaction |
#Why there’s a short wait
The collector reads only finalized chain state, so it can’t see a new allowance until it’s final. After you approve, the app waits for finality, usually about 13 seconds, before asking you to sign the order.
#Revoking
Revoke from Your orders: each token shows its current allowance and a Revoke button. Revoking is a standard SPL revoke transaction and takes effect immediately.
#A note on SPL delegation
An SPL token account has one delegate at a time. If you approve another program from the same token account later, that replaces Chord’s allowance and your open Chord orders will be dropped. Approving Chord again restores it for new orders.