Register a payout destination
Changed onOne object covers bank accounts and wallets. destinationType says which.
You register what the money lands in, meaning country, currency and identifiers. You never register a rail. Alfred derives supportedRails[] from the country and the identifier type:
- a CLABE becomes [SPEI]
- a US routing and account number becomes [ACH, WIRE]
- a Hong Kong account becomes [FPS, CHATS]
Whether the destination belongs to the customer or a third party is derived from the registered holder and returned as relationship.relationship_type. It's never something you declare.
Wallets need only chain and address. TRM screens every wallet, and that screening is the whole control: there's no challenge to sign and no attestation to supply.
A destination whose route isn't LIVE is refused with route_unsupported at registration. Wait for relationship_status: VERIFIED before you pay out to it.
Wait on linked_account.updated reaching VERIFIED. See Webhooks and events.
Request
- Base URLhttps://api.sandbox.alfredpay.io
- URLhttps://api.sandbox.alfredpay.io/v1/customers/{customerId}/linked_accounts
- Auth
- HTTP bearer
- or API key in header api-key and API key in header api-secret
Headers
Required on every state-changing POST, simulators included; the only exempt POST is …/verifications/preflight. Replay (same key, same body) returns the original response with Idempotent-Replayed: true; same key with a different body → 409 idempotency_conflict. Keys are UUIDs, scoped to the API key, retained for 24 hours.
Request body
Response
Created
Changes
- info
endpoint added
- info