Issue an on-ramp bank account
Issue a persistent US bank account whose deposits convert to stablecoin on-chain.
destinationAssetCode and is delivered on-chain to the UPA’s connected wallet. There is no separate settlement step, and the account is reusable indefinitely.
The UPA needs an active bank_onramp provider relationship (the same regulated-banking relationship used for linked-bank payouts) and an active connected wallet on a verified destination chain and asset pair. Unverified pairs return payment_method_not_supported.
Only connectedWalletId and destinationAssetCode are always required in the body. Omit recipientType, recipientName and recipientAddress together to use verified details on file, indicated by recipientOnFile in the requirements response. To override those details, or when none are on file, send all three together. A partial override is rejected.
A UPA holds one on-ramp bank account per provider. Repeating the request returns the existing account rather than issuing a second set of banking coordinates. Routing is fixed when the account is issued: a request naming a different connected wallet, chain or destination asset returns 409, and an existing account cannot be re-pointed. Idempotency-Key is required and must contain 8–256 printable characters after trimming surrounding whitespace. Preserve the original body and key through a timeout or provisioning response. Discover eligible rails and wallets through Get on-ramp requirements.
The response shows only the bank name and the last four account digits. Call Get deposit instructions for the full details to show the account holder. See On-ramp accounts.Authorizations
HTTP Basic auth. Username is the Stableyard app ID. Password is the app secret. The optional Stableyard-Version request header must match the environment pin.
Headers
Required retry key for funding-account issuance: 8-256 printable characters after trimming surrounding whitespace. Retry the identical request with the same key after a timeout or provisioning response; changed input returns 409 idempotency_conflict.
8 - 256^[^\u0000-\u001f\u007f]+$"bank-funding-account-123-v1"
Optional contract-version assertion. Omit it to use the app environment's pinned version. A different supported version is accepted only after that environment is explicitly migrated.
2026-09-09 Path Parameters
Canonical account id returned by the Accounts API.
"acct_123"
Body
Omit recipientType, recipientName and recipientAddress to use the name and address already verified for the UPA (see recipientOnFile on the requirements). Send all three together to override them.
^wallet_[A-Za-z0-9_-]{3,59}$"wallet_abc123"
Only chain/asset pairs Stableyard has verified with the provider are accepted; unverified combinations return payment_method_not_supported.
USDC, USDT ach, fedwire, fednow individual, business 1 - 200Response
On-ramp bank account
"onramp_acct_123"
provisioning, active, requires_intervention, disabled, retired ach, fedwire, fednow, null "USD"
"USDC"
42161
The connected wallet this bank account forwards to. Fixed when the bank account is issued: the provider cannot re-point an existing account, so a different wallet, chain or asset requires a different bank account entirely.
Last 4 digits only. Use the deposit-instructions endpoint for the full details.