## Create a linked bank account `LinkedBankAccountV1 Embed.LinkedBankAccounts.Create(LinkedBankAccountCreateParamsparameters, CancellationTokencancellationToken = default)` **post** `/v1/linked_bank_accounts` Creates a new linked bank account associated with a Straddle account. This endpoint allows you to associate external bank accounts with a Straddle account for various payment operations such as payment deposits, payout withdrawals, and more. ### Parameters - `LinkedBankAccountCreateParams parameters` - `required string? accountID` Body param: The unique identifier of the Straddle account to associate this bank account with. - `required BankAccount bankAccount` Body param - `required string AccountHolder` The name of the account holder as it appears on the bank account. Typically, this is the legal name of the business associated with the account. - `required string AccountNumber` The bank account number. - `required string RoutingNumber` The routing number of the bank account. - `string? description` Body param: Optional description for the bank account. - `IReadOnlyDictionary? metadata` Body param: Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the linked bank account in a structured format. - `string? platformID` Body param: The unique identifier of the Straddle Platform to associate this bank account with. - `IReadOnlyList? purposes` Body param: The purposes for the linked bank account. - `"charges"Charges` - `"payouts"Payouts` - `"billing"Billing` - `string correlationID` Header param: Optional client generated identifier to trace and debug a series of requests. - `string idempotencyKey` Header param: Optional client generated value to use for idempotent requests. - `string requestID` Header param: Optional client generated identifier to trace and debug a request. ### Returns - `class LinkedBankAccountV1:` - `required Data Data` - `required string ID` Unique identifier for the linked bank account. - `required string? AccountID` The unique identifier of the Straddle account related to this bank account. - `required BankAccount BankAccount` - `required string AccountHolder` - `required string AccountMask` - `required string InstitutionName` - `required string RoutingNumber` - `required DateTimeOffset CreatedAt` Timestamp of when the bank account object was created. - `required IReadOnlyList Purposes` The purposes for the linked bank account. - `"charges"Charges` - `"payouts"Payouts` - `"billing"Billing` - `required Status Status` The current status of the linked bank account. - `"created"Created` - `"onboarding"Onboarding` - `"active"Active` - `"rejected"Rejected` - `"inactive"Inactive` - `"canceled"Canceled` - `required StatusDetail StatusDetail` - `required string Code` A machine-readable code for the specific status, useful for programmatic handling. - `required string Message` A human-readable message describing the current status. - `required Reason Reason` A machine-readable identifier for the specific status, useful for programmatic handling. - `"unverified"Unverified` - `"in_review"InReview` - `"pending"Pending` - `"stuck"Stuck` - `"verified"Verified` - `"failed_verification"FailedVerification` - `"disabled"Disabled` - `"new"New` - `required Source Source` Identifies the origin of the status change (e.g., `watchtower`). This helps in tracking the cause of status updates. - `"watchtower"Watchtower` - `required DateTimeOffset UpdatedAt` Timestamp of the most recent update to the linked bank account. - `string? Description` Optional description for the bank account. - `IReadOnlyDictionary? Metadata` Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the linked bank account in a structured format. - `string? PlatformID` The unique identifier of the Straddle Platform relatd to this bank account. - `required ResponseMetadata Meta` Metadata about the API request, including an identifier and timestamp. - `required string ApiRequestID` Unique identifier for this API request, useful for troubleshooting. - `required DateTimeOffset ApiRequestTimestamp` Timestamp for this API request, useful for troubleshooting. - `required ResponseType ResponseType` Indicates the structure of the returned content. - "object" means the `data` field contains a single JSON object. - "array" means the `data` field contains an array of objects. - "error" means the `data` field contains an error object with details of the issue. - "none" means no data is returned. - `"object"Object` - `"array"Array` - `"error"Error` - `"none"None` ### Example ```csharp LinkedBankAccountCreateParams parameters = new() { AccountID = "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", BankAccount = new() { AccountHolder = "account_holder", AccountNumber = "account_number", RoutingNumber = "xxxxxxxxx", }, }; var linkedBankAccountV1 = await client.Embed.LinkedBankAccounts.Create(parameters); Console.WriteLine(linkedBankAccountV1); ``` #### Response ```json { "data": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "account_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "bank_account": { "account_holder": "account_holder", "account_mask": "account_mask", "institution_name": "institution_name", "routing_number": "routing_number" }, "created_at": "2019-12-27T18:11:19.117Z", "purposes": [ "charges" ], "status": "created", "status_detail": { "code": "code", "message": "message", "reason": "unverified", "source": "watchtower" }, "updated_at": "2019-12-27T18:11:19.117Z", "description": "description", "metadata": { "foo": "string" }, "platform_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e" }, "meta": { "api_request_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "api_request_timestamp": "2019-12-27T18:11:19.117Z" }, "response_type": "object" } ```