Test this flow in sandbox. Drive it end-to-end with simulated money and deterministic controls — start with the sandbox quickstart, then the sandbox overview for this flow, and the cheat sheet for every magic value and simulate endpoint.
Pick your flow
The rest of this page covers the requirement gates those flows share. Deposits are submit-and-listen; the gates below are the compliance and documentation requirements a transaction clears before it settles. (Non-custodial crypto payouts have one more ask — your signers co-sign before settlement, via
transaction.awaiting_signature; see Non-Custodial Payout. Passkey-mode signers approve on the verify page; a wallet in a programmatic signing mode approves via a signingRequestId instead — see Machine-signer stamping.)
Crypto deposits — sender information (Travel Rule)
When crypto arrives from a sender address Conduit doesn’t have registered, the deposit parks instead of settling and firestransaction.awaiting_sender_information (carrying the sourceAddress, the assetAmount, and an expiresAt deadline with daysRemaining). To release it, submit the sender’s (originator’s) details so Conduit can satisfy the Travel Rule:
register: false(default) — the details apply to this deposit only.register: true— also saves the address so future deposits from it clear on their own.
SENDER_INFO_TIMEOUT. The full deposit walk-through is in Receive Crypto; the originator shape (individual vs business) and the pre-registration path for a wallet the customer owns are in Registered Addresses.
Payouts — requirements depend on purpose
Every payout carries a purpose. What the payout needs to clear depends on its value:
Intercompany payouts — whitelist the recipient
Forpurpose: intercompany (first-party / same-group transfers), the recipient must already be registered for the customer — that registration is the compliance evidence, so no per-transaction document is needed. Register it once:
- Fiat (bank) recipient —
POST /v2/customers/{customerId}/whitelist-recipients, then wait forwhitelist_recipient.registered(asynchronous review). See Whitelist Recipients. - Crypto address, your customer’s own wallet —
POST /v2/customers/{customerId}/wallets/registered-addressesasself_custody(synchronous). Send the payout withattestation.custody: "self". See Registered Addresses. - Crypto address, another entity in the same group —
POST /v2/customers/{customerId}/whitelist-recipientswithrail: "crypto",chain,addressandrelationship: "group_entity", then wait forwhitelist_recipient.registered(asynchronous review, same as a bank recipient). Send the payout withattestation.custody: "third_party"plus the third-party identity fields. See Whitelist Recipients.
intercompany payout needs no registration: a transfer between two wallets of the same customer. Send it with destination: { "type": "wallet", "walletId": "wlt_..." } instead of a recipient. Both wallets must belong to that customer and sit on the asset’s chain. There is no counterparty to register, so the whitelist does not apply.
Submit the payout once the recipient is registered. If it isn’t, the payout is rejected at submission with 422 RECIPIENT_NOT_WHITELISTED.
Other purposes — attach a supporting document
For any otherpurpose, the payout needs a supporting document:
- Attach it upfront — upload the document tagged for transaction support, then pass its
doc_*id indocuments[]:
- Attach none — what happens is set per organization. Either the payout is refused with
422 DOCUMENTATION_REQUIRED, or it is accepted and held (stage: "awaiting_customer_action",hasRfi: true) while a request for information asks for the document, due by a stated date. Answer it before the due date to release the payout; miss it, or have the document declined, and the payout fails withfailureCode: "compliance_rejected". An organization with no portal user is always refused at create.
Where to go next
Receive Crypto
Inbound crypto end to end, including the sender-information gate.
Money Movement
Fiat funding and payouts end to end.
Non-Custodial Payout
Co-signed crypto payouts.
Whitelist Recipients
Registering intercompany recipients.