Create a GbBankAccount object v2

Create a GB bank account.

Learn more about calling API v2 endpoints.

Parameters

  • account_numberstringRequired

    The Account Number of the bank account.

  • sort_codestringRequired

    The Sort Code of the bank account.

  • bank_account_typeenum

    The type of the bank account (checking or savings).

    Possible enum values
    checking

    Checking account.

    savings

    Savings account.

  • confirmation_of_payeeobject

    Whether or not to automatically perform Confirmation of Payee to verify the users information against what was provided by the bank. Doing so is required for all bank accounts not owned by you before making domestic UK OutboundPayments.

Returns

Response attributes

  • idstring

    The ID of the GBBankAccount object.

  • objectstring, value is "v2.core.vault.gb_bank_account"

    String representing the object’s type. Objects of the same type share the same value of the object field.

  • archivedboolean

    Whether this bank account object was archived. Bank account objects can be archived through the /archive API, and they will not be automatically archived by Stripe. Archived bank account objects cannot be used as outbound destinations and will not appear in the outbound destination list.

  • bank_account_typeenum

    The type of the bank account (checking or savings).

    Possible enum values
    checking

    Checking account.

    savings

    Savings account.

  • bank_namestring

    The name of the bank.

  • confirmation_of_payeeobject

    Information around the status of Confirmation of Payee matching done on this bank account. Confirmation of Payee is a name matching service that must be done before making OutboundPayments in the UK.

  • createdtimestamp

    Creation time.

  • last4string

    The last 4 digits of the account number or IBAN.

  • livemodeboolean

    Has the value true if the object exists in live mode or the value false if the object exists in test mode.

  • sort_codestring

    The Sort Code of the bank account.

404not_found

The resource wasn’t found.

409idempotency_error

An idempotent retry occurred with different request parameters.

POST /v2/core/vault/gb_bank_accounts
curl -X POST https://api.stripe.com/v2/core/vault/gb_bank_accounts \
-H "Authorization: Bearer sk_test_BQokikJ...2HlWgH4olfQ2sk_test_BQokikJOvBiI2HlWgH4olfQ2" \
-H "Stripe-Version: 2025-09-30.preview" \
--json '{
"sort_code": "108800",
"account_number": "00012345"
}'
Response
{
"id": "gbba_test_61QxvysjMYlAri7b116NoALk2zSQmWXk6WVQ0RRC4FH6",
"object": "v2.core.vault.gb_bank_account",
"archived": false,
"bank_account_type": "checking",
"bank_name": "Test Bank",
"last4": "2345",
"created": "2024-08-16T21:49:30.380Z",
"sort_code": "108800",
"confirmation_of_payee": {
"result": {
"created": "2024-10-25T17:29:53.000Z",
"match_result": "partial_match",
"matched": {
"business_type": "personal",
"name": "Jenny Rosen"
},
"message": "The provided name Jennifer Rosen partially matches the name Jenny Rosen the bank has on file for this account.",
"provided": {
"business_type": "personal",
"name": "Jennifer Rosen"
}
},
"status": "confirmed"
},
"livemode": true
}

Retrieve a GbBankAccount object v2

Retrieve a GB bank account.

Learn more about calling API v2 endpoints.

Parameters

  • idstringRequired

    The ID of the GBBankAccount object.

Returns

Response attributes

  • idstring

    The ID of the GBBankAccount object.

  • objectstring, value is "v2.core.vault.gb_bank_account"

    String representing the object’s type. Objects of the same type share the same value of the object field.

  • archivedboolean

    Whether this bank account object was archived. Bank account objects can be archived through the /archive API, and they will not be automatically archived by Stripe. Archived bank account objects cannot be used as outbound destinations and will not appear in the outbound destination list.

  • bank_account_typeenum

    The type of the bank account (checking or savings).

    Possible enum values
    checking

    Checking account.

    savings

    Savings account.

  • bank_namestring

    The name of the bank.

  • confirmation_of_payeeobject

    Information around the status of Confirmation of Payee matching done on this bank account. Confirmation of Payee is a name matching service that must be done before making OutboundPayments in the UK.

  • createdtimestamp

    Creation time.

  • last4string

    The last 4 digits of the account number or IBAN.

  • livemodeboolean

    Has the value true if the object exists in live mode or the value false if the object exists in test mode.

  • sort_codestring

    The Sort Code of the bank account.

404not_found

The resource wasn’t found.

GET /v2/core/vault/gb_bank_accounts/:id
curl https://api.stripe.com/v2/core/vault/gb_bank_accounts/gbba_test_61QxvysjMYlAri7b116NoALk2zSQmWXk6WVQ0RRC4FH6 \
-H "Authorization: Bearer sk_test_BQokikJ...2HlWgH4olfQ2sk_test_BQokikJOvBiI2HlWgH4olfQ2" \
-H "Stripe-Version: 2025-09-30.preview"
Response
{
"id": "gbba_test_61QxvysjMYlAri7b116NoALk2zSQmWXk6WVQ0RRC4FH6",
"object": "v2.core.vault.gb_bank_account",
"archived": false,
"bank_account_type": "checking",
"bank_name": "Test Bank",
"last4": "2345",
"created": "2024-08-16T21:49:30.380Z",
"sort_code": "108800",
"confirmation_of_payee": {
"result": {
"created": "2024-10-25T17:29:53.000Z",
"match_result": "partial_match",
"matched": {
"business_type": "personal",
"name": "Jenny Rosen"
},
"message": "The provided name Jennifer Rosen partially matches the name Jenny Rosen the bank has on file for this account.",
"provided": {
"business_type": "personal",
"name": "Jennifer Rosen"
}
},
"status": "confirmed"
},
"livemode": true
}

Archive a GbBankAccount object v2

Archive a GBBankAccount object. Archived GBBankAccount objects cannot be used as outbound destinations and will not appear in the outbound destination list.

Learn more about calling API v2 endpoints.

Parameters

  • idstringRequired

    The ID of the GBBankAccount object.

Returns

Response attributes

  • idstring

    The ID of the GBBankAccount object.

  • objectstring, value is "v2.core.vault.gb_bank_account"

    String representing the object’s type. Objects of the same type share the same value of the object field.

  • archivedboolean

    Whether this bank account object was archived. Bank account objects can be archived through the /archive API, and they will not be automatically archived by Stripe. Archived bank account objects cannot be used as outbound destinations and will not appear in the outbound destination list.

  • bank_account_typeenum

    The type of the bank account (checking or savings).

    Possible enum values
    checking

    Checking account.

    savings

    Savings account.

  • bank_namestring

    The name of the bank.

  • confirmation_of_payeeobject

    Information around the status of Confirmation of Payee matching done on this bank account. Confirmation of Payee is a name matching service that must be done before making OutboundPayments in the UK.

  • createdtimestamp

    Creation time.

  • last4string

    The last 4 digits of the account number or IBAN.

  • livemodeboolean

    Has the value true if the object exists in live mode or the value false if the object exists in test mode.

  • sort_codestring

    The Sort Code of the bank account.

404not_found

The resource wasn’t found.

POST /v2/core/vault/gb_bank_accounts/:id/archive
curl -X POST https://api.stripe.com/v2/core/vault/gb_bank_accounts/gbba_test_61QxvysjMYlAri7b116NoALk2zSQmWXk6WVQ0RRC4FH6/archive \
-H "Authorization: Bearer sk_test_BQokikJ...2HlWgH4olfQ2sk_test_BQokikJOvBiI2HlWgH4olfQ2" \
-H "Stripe-Version: 2025-09-30.preview"
Response
{
"id": "gbba_test_61QxvysjMYlAri7b116NoALk2zSQmWXk6WVQ0RRC4FH6",
"object": "v2.core.vault.gb_bank_account",
"archived": true,
"bank_account_type": "checking",
"bank_name": "Test Bank",
"last4": "2345",
"created": "2024-08-16T21:49:30.380Z",
"sort_code": "108800",
"confirmation_of_payee": {
"result": {
"created": "2024-10-25T17:29:53.000Z",
"match_result": "partial_match",
"matched": {
"business_type": "personal",
"name": "Jenny Rosen"
},
"message": "The provided name Jennifer Rosen partially matches the name Jenny Rosen the bank has on file for this account.",
"provided": {
"business_type": "personal",
"name": "Jennifer Rosen"
}
},
"status": "confirmed"
},
"livemode": true
}

Initiate Confirmation of Payee (CoP) v2

Initiate Confirmation of Payee (CoP) in order to verify that the owner of a UK bank account matches who you expect. This must be done on all UK bank accounts before sending domestic OutboundPayments. If the result is a partial match or a non match, explicit acknowledgement using AcknowledgeConfirmationOfPayee is required before sending funds.

Learn more about calling API v2 endpoints.

Parameters

  • idstringRequired

    The GBBankAccount for which to perform Confirmation of Payee.

  • business_typeenum

    The business type to be checked against. Legal entity information will be used if unspecified.

    Possible enum values
    business

    Business Account.

    personal

    Personal Account.

  • namestring

    The name of the user to be checked against. Legal entity information will be used if unspecified.

Returns

Response attributes

  • idstring

    The ID of the GBBankAccount object.

  • objectstring, value is "v2.core.vault.gb_bank_account"

    String representing the object’s type. Objects of the same type share the same value of the object field.

  • archivedboolean

    Whether this bank account object was archived. Bank account objects can be archived through the /archive API, and they will not be automatically archived by Stripe. Archived bank account objects cannot be used as outbound destinations and will not appear in the outbound destination list.

  • bank_account_typeenum

    The type of the bank account (checking or savings).

    Possible enum values
    checking

    Checking account.

    savings

    Savings account.

  • bank_namestring

    The name of the bank.

  • confirmation_of_payeeobject

    Information around the status of Confirmation of Payee matching done on this bank account. Confirmation of Payee is a name matching service that must be done before making OutboundPayments in the UK.

  • createdtimestamp

    Creation time.

  • last4string

    The last 4 digits of the account number or IBAN.

  • livemodeboolean

    Has the value true if the object exists in live mode or the value false if the object exists in test mode.

  • sort_codestring

    The Sort Code of the bank account.

404not_found

The resource wasn’t found.

409idempotency_error

An idempotent retry occurred with different request parameters.

POST /v2/core/vault/gb_bank_accounts/:id/initiate_confirmation_of_payee
curl -X POST https://api.stripe.com/v2/core/vault/gb_bank_accounts/gbba_test_61RNFB9lnOYye6krT16RMXKs0JSQpGKHUiBrbrLjk2XA/initiate_confirmation_of_payee \
-H "Authorization: Bearer sk_test_BQokikJ...2HlWgH4olfQ2sk_test_BQokikJOvBiI2HlWgH4olfQ2" \
-H "Stripe-Version: 2025-09-30.preview"
Response
{
"id": "gbba_test_61RNFB9lnOYye6krT16RMXKs0JSQpGKHUiBrbrLjk2XA",
"object": "v2.core.vault.gb_bank_account",
"archived": false,
"bank_account_type": "checking",
"bank_name": "Test Bank",
"last4": "2345",
"confirmation_of_payee": {
"result": {
"created": "2024-10-25T17:23:51.000Z",
"match_result": "match",
"matched": {
"business_type": "personal",
"name": "Jenny Rosen"
},
"message": "The provided name Jenny Rosen and business type matches what the bank has on file for this account.",
"provided": {
"business_type": "personal",
"name": "Jenny Rosen"
}
},
"status": "confirmed"
},
"created": "2024-10-25T17:22:47.788Z",
"sort_code": "108800",
"livemode": true
}

Validate Confirmation Of Payee (CoP) v2

Confirm that you have received the result of the Confirmation of Payee request, and that you are okay with proceeding to pay out to this bank account despite the account not matching, partially matching, or the service being unavailable. Once you confirm this, you will be able to send OutboundPayments, but this may lead to funds being sent to the wrong account, which we might not be able to recover.

Learn more about calling API v2 endpoints.

Parameters

  • idstringRequired

    The GBBankAccount whose result needs to be acknowledged.

Returns

Response attributes

  • idstring

    The ID of the GBBankAccount object.

  • objectstring, value is "v2.core.vault.gb_bank_account"

    String representing the object’s type. Objects of the same type share the same value of the object field.

  • archivedboolean

    Whether this bank account object was archived. Bank account objects can be archived through the /archive API, and they will not be automatically archived by Stripe. Archived bank account objects cannot be used as outbound destinations and will not appear in the outbound destination list.

  • bank_account_typeenum

    The type of the bank account (checking or savings).

    Possible enum values
    checking

    Checking account.

    savings

    Savings account.

  • bank_namestring

    The name of the bank.

  • confirmation_of_payeeobject

    Information around the status of Confirmation of Payee matching done on this bank account. Confirmation of Payee is a name matching service that must be done before making OutboundPayments in the UK.

  • createdtimestamp

    Creation time.

  • last4string

    The last 4 digits of the account number or IBAN.

  • livemodeboolean

    Has the value true if the object exists in live mode or the value false if the object exists in test mode.

  • sort_codestring

    The Sort Code of the bank account.

404not_found

The resource wasn’t found.

409idempotency_error

An idempotent retry occurred with different request parameters.

POST /v2/core/vault/gb_bank_accounts/:id/acknowledge_confirmation_of_payee
curl -X POST https://api.stripe.com/v2/core/vault/gb_bank_accounts/gbba_test_61RNFHlkJ5BSQ2UHh16RMXKs0JSQpGKHUiBrbrLjkVSy/acknowledge_confirmation_of_payee \
-H "Authorization: Bearer sk_test_BQokikJ...2HlWgH4olfQ2sk_test_BQokikJOvBiI2HlWgH4olfQ2" \
-H "Stripe-Version: 2025-09-30.preview"
Response
{
"id": "gbba_test_61RNFHlkJ5BSQ2UHh16RMXKs0JSQpGKHUiBrbrLjkVSy",
"object": "v2.core.vault.gb_bank_account",
"archived": false,
"bank_account_type": "checking",
"bank_name": "Test Bank",
"last4": "2345",
"confirmation_of_payee": {
"result": {
"created": "2024-10-25T17:29:53.000Z",
"match_result": "partial_match",
"matched": {
"business_type": "personal",
"name": "Jenny Rosen"
},
"message": "The provided name Jennifer Rosen partially matches the name Jenny Rosen the bank has on file for this account.",
"provided": {
"business_type": "personal",
"name": "Jennifer Rosen"
}
},
"status": "confirmed"
},
"created": "2024-10-25T17:29:37.484Z",
"sort_code": "108800",
"livemode": true
}