Accounts
Accounts represent businesses using Straddle through your platform. Each account must complete automated verification before processing payments. Use accounts to manage your users' payment capabilities, track verification status, and control access to features. Accounts can be instantly created in sandbox and require additional verification for production access.
Lookup an account
Update an account
Create an account
List accounts
Onboard an account
Simulate status transitions for a sandbox account
ModelsExpand Collapse
AccountPagedV1 = object { data, meta, response_type }
data: array of object { id, access_level, organization_id, 11 more }
organization_id: string
The unique identifier of the organization this account belongs to.
status_detail: object { code, message, reason, source }
capabilities: optional object { consent_types, customer_types, payment_types }
external_id: optional string
Unique identifier for the account in your database, used for cross-referencing between Straddle and your systems.
metadata: optional map[string]
Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the account in a structured format.
settings: optional object { charges, payouts }
charges: object { daily_amount, funding_time, linked_bank_account_id, 3 more }
terms_of_service: optional TermsOfServiceV1 { accepted_date, agreement_type, agreement_url, 2 more }
response_type: "object" or "array" or "error" or "none"
Indicates the structure of the returned content.
- "object" means the
datafield contains a single JSON object. - "array" means the
datafield contains an array of objects. - "error" means the
datafield contains an error object with details of the issue. - "none" means no data is returned.
AccountV1 = object { data, meta, response_type }
data: object { id, access_level, organization_id, 11 more }
organization_id: string
The unique identifier of the organization this account belongs to.
status_detail: object { code, message, reason, source }
capabilities: optional object { consent_types, customer_types, payment_types }
external_id: optional string
Unique identifier for the account in your database, used for cross-referencing between Straddle and your systems.
metadata: optional map[string]
Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the account in a structured format.
settings: optional object { charges, payouts }
charges: object { daily_amount, funding_time, linked_bank_account_id, 3 more }
terms_of_service: optional TermsOfServiceV1 { accepted_date, agreement_type, agreement_url, 2 more }
response_type: "object" or "array" or "error" or "none"
Indicates the structure of the returned content.
- "object" means the
datafield contains a single JSON object. - "array" means the
datafield contains an array of objects. - "error" means the
datafield contains an error object with details of the issue. - "none" means no data is returned.
AccountsCapability Requests
Capabilities enable specific features and services for an Account. Use capability requests to unlock higher processing limits, new payment types, or additional platform features as your users' businesses grow. Track approval status and manage documentation requirements through a single interface.
Request a capability
List capability requests
ModelsExpand Collapse
CapabilityRequestPagedV1 = object { data, meta, response_type }
data: array of object { id, account_id, category, 6 more }
response_type: "object" or "array" or "error" or "none"
Indicates the structure of the returned content.
- "object" means the
datafield contains a single JSON object. - "array" means the
datafield contains an array of objects. - "error" means the
datafield contains an error object with details of the issue. - "none" means no data is returned.