Add shopper accounts to your checkout
Extend a working Embedded API integration with Bolt login and saved shopper details.
Start with the Embedded API quickstart to verify a guest payment. Account login, consent, and saved payment methods are additional integration work.
Plan the account flow
| Task | Integration reference |
|---|---|
| Prompt the shopper to sign in | Login modal |
| React to login, logout, and account checks | Frontend events |
| Exchange the login result on your server | Bolt OAuth |
| Retrieve and update authorized shopper data | Embeddable Checkout API v3: Account |
| Collect account-creation consent | Account checkbox |
| Add fields within your checkout | Payment fields |
Confirm the enabled account features with Bolt. Embeddable Checkout API v1 and v3 are interchangeable. New integrations should use v3; v1 is still supported but will be deprecated. For a logged-in shopper, pay with POST /v3/payments instead of the guest endpoint.

Keep account and payment state separate
- Exchange authorization codes on your backend and associate tokens with the correct shopper session.
- Obtain consent before creating an account or saving a card. The guest quickstart sets
profile.create_account: false. - For payments made as a logged-in Bolt shopper, include that shopper's OAuth access token as required by the authorization API. Never reuse one shopper's token for another session.
- Continue to verify payment on your server; successful sign-in does not mean an order was paid.
Verify the extension
Add cases to your Embedded API test plan for existing/new shoppers, declined consent, expired sessions, login cancellation, saved-card selection, and logout. Verify that another shopper cannot access the previous shopper's data.