Subscribe (bond/fund/deal)
Sub-Accounts & White-Label Retail KYC
/users/{userId}/subscribe
Subscribe (bond/fund/deal)
createSubscribeSubscribes a sub-account to a bond, money market fund, or private credit/pre-IPO deal. Funds are escrowed from the sub-account wallet on submission. For FUND subscriptions: specify units. For OPPORTUNITY / PRE_IPO: specify amount in USD. The sub-account must be KYC-verified (kycStatus: VERIFIED).
Parameters
userIdstringpathRequiredExample: usr_abc123
Headers
AuthorizationstringRequiredBearer sk_sandbox_<your_key> for sandbox requests.
Idempotency-KeystringheaderRequiredUnique string that makes write calls safe to retry on network failure. Required for money movement, trading, KYC, subscriptions, and webhook creation. Deduplicated for 24 hours -- duplicate keys return the cached response. HTTP 409 if a concurrent request with the same key is still in progress.
Example: dep_user42_1743152580
Request body
fundingWalletCurrencystringConvert explicitly to USD before submitting an order
assetTypeBOND | FUND | OPPORTUNITY | PRE_IPORequiredAsset class to subscribe to.
Example: "FUND"
assetIdstringRequiredFirestore document ID. Obtain from the list endpoints (/bonds, /funds, /opportunities).
Example: "FUND_ID_FROM_CATALOGUE"
unitsnumberWhole units to subscribe. Required for BOND and FUND.
Example: 500
amountnumberUSD commitment amount. Required for OPPORTUNITY and PRE_IPO.
Example: 1000
Response fields
messagestringsubscriptionIdstringamountEscrowednumberResponse codes
201Subscription created.400Insufficient wallet balance.403KYC not verified.