WebSDK-based browser tokenization should be treated as legacy. New card integrations should use Payment Element.
Mapping
| Legacy approach | New approach |
|---|
| custom browser tokenization | hosted card field |
| manual token create flow | elements.submit() |
| ad hoc 3DS handling | built-in next action orchestration |
| mixed card UI logic | cleaner field lifecycle events |
Migration order
- Keep your backend
POST /v2/transactions contract stable.
- Replace the frontend tokenization layer first.
- Verify 3DS and webhook handling in sandbox.
- Remove legacy browser scripts after cutover.