Every settled trade generates a balanced double-entry accounting journal in PostgreSQL (packages/ledger/src/index.ts). Every transaction satisfies the fundamental invariant:
| Account Name | Direction | Asset | Purpose |
|---|---|---|---|
TREASURY_ASSET:<sellToken> | CREDIT | Sold Asset | Deducts principal leaving the treasury balance. |
FX_SETTLEMENT_CLEARING:<sellToken> | DEBIT | Sold Asset | Clearing account receiving net principal for exchange. |
PROTOCOL_FEE_EXPENSE:<sellToken> | DEBIT | Sold Asset | Records 1 bps Textile network protocol fee. |
TREASURY_ASSET:<buyToken> | DEBIT | Bought Asset | Credits new currency acquired into the treasury. |
FX_SETTLEMENT_CLEARING:<buyToken> | CREDIT | Bought Asset | Balances the clearing leg upon settlement receipt. |