Default to fast-signin
Fast bank sign-in has higher completion rates than manual entry. Set it as the default and let shoppers who need it fall back to manual:
Only lock to 'manual' when your integration or shopper base explicitly needs it.
Retry on UNKNOWN_KID
Manual-mode bank submissions encrypt account credentials with a rotating key. If your authorize endpoint returns 400 { code: 'UNKNOWN_KID' }, refresh the cached key and prompt the shopper to submit again:
Checkout wires this recovery in automatically. Only wire it yourself for standalone bank integrations.
Do not rely on disabled to fully suppress bank
Setting disabled: true locks the manual inputs and the mode toggle, but does not fully suppress the fast-signin surface. To completely take bank offline, call bank.unmount() and remount when you’re ready to accept it again.
Bank validation completes when the shopper finishes fast-signin or when every manual field passes format checks and the two account-number entries match.
Show a clear label
Bank payments have longer capture windows than cards. Label your Pay button so shoppers know what happens next (Pay by bank, Authorize ACH, etc.).
Test with test_pub_…
Use a test_pub_… publishable key while you build. Test fast-signin behavior in a sandbox institution. Swap to live_pub_… for production.
Next steps
Last modified on July 29, 2026