Documentation Index
Fetch the complete documentation index at: https://docs.crypto.westminister.tech/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Merchants can run large bank OTC deposits through a draft → quote → submit flow instead of a singlePOST /api/v1/auth/otc/deposits call. Status values include draft, priced, pending (awaiting officer review), then confirmed, rejected, or credited.
Flow
-
Draft (Tab 1).
POST /api/v1/auth/otc/deposits/draftcreatesdraft. OptionalIdempotency-Keyheader or bodyidempotency_key(max 128 characters) enables safe retries. A duplicate key returns 200 withidempotent_replay: true. -
Quote (Tab 2).
PATCH /api/v1/auth/otc/deposits/{id}/quoteattachespricing_profile_id,fx_rate_quote_id, and requested asset/network/amount. Moves draft → priced. -
Submit (Tab 3).
POST /api/v1/auth/otc/deposits/{id}/submitwithpayment_reference,transfer_date, and proof (URL or file hash after upload). Moves priced → pending and emits webhook events when configured. -
Proof PDF.
POST /api/v1/auth/otc/deposits/{id}/proofacceptsmultipart/form-datafieldfile(PDF). Max size follows serverOTC_PROOF_MAX_BYTES(often 10MB). Allowed while status isdraft,priced, orpending. -
Officers. Admins may
POST .../assignwithassignee_user_id. Officers usePOST .../claimwhen unassigned. Admin or otc_officer may confirm, reject, and use pending queues. -
Settlement. After credit and multisig progress,
GET .../settlementreturns the deposit, optional transfer, and latestotc_creditmultisig proposal. -
Audit.
GET .../auditlists audit rows. Merchants see their own deposit. Admin and otc_officer see full history.
Webhooks
WhenOTC_EVENTS_WEBHOOK_URL is set, events such as otc.deposit.submitted_for_review, otc.deposit.proof_attached, and otc.deposit.settlement_completed may be delivered. Optional OTC_EVENTS_WEBHOOK_SECRET sets an HMAC header on outbound requests. Proof uploads are limited by OTC_PROOF_MAX_BYTES (default 10485760, server-enforced between 1KB and 50MB).