Credit OTC Deposit Asset (Admin, otc_officer, Or Treasury)
Proposes a multisig transfer from treasury to the specified merchant recipient (internal wallet or external address).
Supports USDT and USDC and optional pricing snapshot fields.
Treasury must be multisig. OTC officer starts the proposal and signers complete approvals.
Quote enforcement: crypto_amount must match requested_crypto_amount on the deposit within OTC_CREDIT_QUOTE_TOLERANCE_BPS (default 10 bps).
On mismatch returns 422 with requires_second_approval: true. admin or treasury may pass override_reason to proceed (audited on the deposit).
Maker-checker: otc_officer credit is capped by OTC_OFFICER_MAX_USD (default 10000 USD notional). admin and treasury are uncapped.
Pricing snapshot (optional but recommended for OTC audit): when any of pricing_profile_id or fx_rate_quote_id is set,
you must send all four: pricing_profile_id, fx_rate_quote_id, fiat_currency, and fiat_amount_equivalent.
For a KES wire, use fiat_currency: KES and fiat_amount_equivalent equal to the KES principal (e.g. 130000000.00).
The linked FX quote carries the KES/USD rate (e.g. 130).
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Body
USDT, USDC tron, ethereum Internal recipient wallet ID (use either this or to_address)
Recipient wallet address (internal or external. Use either this or to_wallet_id)
Active three-letter ISO code from fiat_currencies when the pricing snapshot quartet is supplied. List via GET /api/v1/auth/fiat-currencies.
Required for admin or treasury when crypto_amount differs from quoted net beyond tolerance.