Embed
EmbedAccounts
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
List accounts
Onboard an account
Simulate status transitions for a sandbox account
ModelsExpand Collapse
class AccountPagedV1: …
data: List[Data]
business_profile: Optional[BusinessProfileV1]
capabilities: Optional[DataCapabilities]
external_id: Optional[str]
Unique identifier for the account in your database, used for cross-referencing between Straddle and your systems.
metadata: Optional[Dict[str, Optional[str]]]
Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the account in a structured format.
settings: Optional[DataSettings]
charges: DataSettingsCharges
response_type: Literal["object", "array", "error", "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.
class AccountV1: …
data: Data
business_profile: Optional[BusinessProfileV1]
capabilities: Optional[DataCapabilities]
external_id: Optional[str]
Unique identifier for the account in your database, used for cross-referencing between Straddle and your systems.
metadata: Optional[Dict[str, Optional[str]]]
Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the account in a structured format.
settings: Optional[DataSettings]
charges: DataSettingsCharges
response_type: Literal["object", "array", "error", "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.
EmbedAccountsCapability 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
class CapabilityRequestPagedV1: …
data: List[Data]
response_type: Literal["object", "array", "error", "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.
EmbedLinked Bank Accounts
Linked bank accounts connect your platform users' external bank accounts to Straddle for settlements and payment funding. Each linked account undergoes automated verification and continuous monitoring. Use linked accounts to manage where clients receive deposits, fund payouts, and track settlement preferences.
Create a linked bank account
List linked bank accounts
Update a linked bank account
Lookup a linked bank account
Unmask a linked bank account
Cancel a linked bank account
ModelsExpand Collapse
class LinkedBankAccountPagedV1: …
data: List[Data]
account_id: Optional[str]
The unique identifier of the Straddle account related to this bank account.
response_type: Literal["object", "array", "error", "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.
class LinkedBankAccountUnmaskV1: …
data: Data
response_type: Literal["object", "array", "error", "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.
class LinkedBankAccountV1: …
data: Data
account_id: Optional[str]
The unique identifier of the Straddle account related to this bank account.
response_type: Literal["object", "array", "error", "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.
EmbedOrganizations
Organizations are a powerful feature in Straddle that allow you to manage multiple accounts under a single umbrella. This hierarchical structure is particularly useful for businesses with complex operations, multiple departments, or legally related entities.
Create an organization
List organizations
Retrieve organization details
ModelsExpand Collapse
class OrganizationPagedV1: …
data: List[Data]
response_type: Literal["object", "array", "error", "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.
class OrganizationV1: …
data: Data
response_type: Literal["object", "array", "error", "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.
EmbedRepresentatives
Representatives are individuals who have legal authority or significant responsibility within a business entity associated with a Straddle account. Each representative undergoes automated verification as part of KYC/KYB compliance. Use representatives to collect and verify beneficial owners, control persons, and authorized signers required for account onboarding. Representatives also determine who can legally operate the account and make important changes.
Create a representative
List representatives
Update a representative
Lookup a representative
Retrieve unmasked representative details
ModelsExpand Collapse
class Representative: …
data: Data
account_id: str
The unique identifier of the account this representative is associated with.
relationship: DataRelationship
control: bool
Whether the representative has significant responsibility to control, manage, or direct the organization. One representative must be identified under the control prong for each legal entity.
owner: bool
Whether the representative owns any percentage of of the equity interests of the legal entity.
primary: bool
Whether the person is authorized as the primary representative of the account. This is the person chosen by the business to provide information about themselves, general information about the account, and who consented to the services agreement.
There can be only one primary representative for an account at a time.
external_id: Optional[str]
Unique identifier for the representative in your database, used for cross-referencing between Straddle and your systems.
response_type: Literal["object", "array", "error", "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.
class RepresentativePaged: …
data: List[Data]
account_id: str
The unique identifier of the account this representative is associated with.
relationship: DataRelationship
control: bool
Whether the representative has significant responsibility to control, manage, or direct the organization. One representative must be identified under the control prong for each legal entity.
owner: bool
Whether the representative owns any percentage of of the equity interests of the legal entity.
primary: bool
Whether the person is authorized as the primary representative of the account. This is the person chosen by the business to provide information about themselves, general information about the account, and who consented to the services agreement.
There can be only one primary representative for an account at a time.
external_id: Optional[str]
Unique identifier for the representative in your database, used for cross-referencing between Straddle and your systems.
response_type: Literal["object", "array", "error", "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.