Banking & Treasury
Treasury (treasuryd) Multi-provider treasury management with double-entry ledger, OFAC compliance, and 13 banking/payment providers.
treasuryd is a multi-provider treasury management platform that unifies 13 banking, payment, card issuing, and compliance providers behind a single API. It includes a double-entry bookkeeping ledger and OFAC sanctions screening engine.
Provider Capabilities Mercury Business banking, ACH, wires Column Direct Fed member — ACH, wire, RTP, FedNow Bridge (Stripe)Stablecoin orchestration, fiat on/off ramp Increase Banking infrastructure — ACH, wire, RTP, check deposits Modern Treasury Payment operations, virtual accounts, ledger Unit BaaS — white-label checking and savings
Provider Capabilities Stripe Treasury BaaS, financial accounts, payouts Square Payments, commerce, invoicing Wise International transfers, multi-currency, competitive FX CurrencyCloud (Visa)Institutional FX, cross-border payments (35 currencies)
Provider Capabilities Lithic Virtual + physical cards, spend controls, real-time auth, tokenization Marqeta Card issuing, JIT funding, transaction controls
Provider Capabilities Plaid Bank account linking, identity verification, balance checks
The built-in ledger provides journal-entry-based accounting:
POST /api/v1/ledger/entries
{
"description": "Wire from Mercury to Column",
"entries": [
{ "account": "mercury-operating", "debit": 50000 },
{ "account": "column-settlement", "credit": 50000 }
]
}
All entries must balance (total debits = total credits). The ledger provides per-account balance queries and full audit trail.
Every counterparty is screened against the Treasury Department SDN (Specially Designated Nationals) list:
POST /api/v1/compliance/screen
{
"name": "Acme Corp",
"country": "IR"
}
Returns match score and blocked status. Screening runs automatically on counterparty creation and payment initiation.
All endpoints on :8091 (configurable via TREASURY_LISTEN).
Method Path Description POST/api/v1/{provider}/accountsCreate bank account GET/api/v1/{provider}/accountsList accounts GET/api/v1/{provider}/accounts/{id}Get account GET/api/v1/{provider}/accounts/{id}/balanceGet balance
Method Path Description POST/api/v1/{provider}/paymentsCreate payment (ACH, wire, RTP, card) GET/api/v1/{provider}/paymentsList payments GET/api/v1/{provider}/payments/{id}Get payment status DELETE/api/v1/{provider}/payments/{id}Cancel payment
Method Path Description GET/api/v1/{provider}/fx/quoteGet FX quote POST/api/v1/{provider}/fx/convertExecute conversion GET/api/v1/{provider}/fx/conversionsList conversions
Method Path Description POST/api/v1/{provider}/counterpartiesCreate counterparty (auto-screened) GET/api/v1/{provider}/counterpartiesList counterparties
Env Var Description TREASURY_LISTENListen address (default :8091) MERCURY_API_KEYMercury COLUMN_API_KEYColumn BRIDGE_API_KEYBridge INCREASE_API_KEYIncrease MODERN_TREASURY_ORG_ID / MODERN_TREASURY_API_KEYModern Treasury UNIT_TOKENUnit STRIPE_SECRET_KEYStripe Treasury SQUARE_ACCESS_TOKENSquare WISE_API_TOKEN / WISE_PROFILE_IDWise CURRENCYCLOUD_LOGIN_ID / CURRENCYCLOUD_API_KEYCurrencyCloud LITHIC_API_KEYLithic MARQETA_APP_TOKEN / MARQETA_ACCESS_TOKENMarqeta PLAID_CLIENT_ID / PLAID_SECRETPlaid
Repository: luxfi/treasury
Language: Go
Key packages: pkg/provider, pkg/ledger, pkg/compliance, pkg/api