bank element collects ACH bank credentials. Shoppers can search for their bank and sign in (fast, no typing) or enter routing and account numbers manually. You choose which modes are available and which is the default.
Configure bank inside Checkout for the recommended integration path, or mount standalone when you need a bank-only form.
Standalone example
Modes
The element renders one of two modes at a time. The shopper can toggle between them (unless you lock one in) using an in-element control.
Pick the default:
Manual fields
accountType:<select>with values'checking'/'savings'. Default'checking'.routingNumber: 9-digit routing number.accountNumber: account number.confirmAccountNumber: must matchaccountNumberto complete.
fields.accountType, fields.routingNumber, fields.accountNumber, fields.confirmAccountNumber.
Submitted value
onSubmit emits a discriminated union keyed by mode. Manual submissions carry encrypted routing and account numbers; fast-signin submissions carry a linked-account public token.
value to your server as-is. See the Bank reference for the full type and the authorize a payment API reference for the authorize request.
Retry on UNKNOWN_KID
If your authorize endpoint returns 400 { code: 'UNKNOWN_KID' } after a manual-mode bank submission, call overflow.invalidateBankFieldEncryptionCache() and prompt the shopper to submit again. Checkout runs this recovery for you when the tagged error is recognized.
Inside Checkout
bank key accepts the same options the standalone element accepts. Values arrive on the Checkout envelope as value.bank.
Next steps
Best practices
Retry, mode selection, and disabling considerations.
Reference
Full options, fields, and value reference.