Register as a merchant with Visa Developer Center to obtain a Visa SRC client ID and configure your merchant profile including supported card networks and checkout parameters
Load the Visa SRC JavaScript SDK on your checkout page and initialize it with your client ID, DPA (Digital Payment Application) data, and the list of supported card brands
Call the isRecognized() method to check whether the current browser/device has a recognized cardholder; if true, surface the Click to Pay button; if false, offer as an alternative payment option
When the cardholder clicks Click to Pay, call checkout() to launch the SRC experience; handle the returned CheckoutResponse which contains the encryptedPayload or DPAN and cryptogram
Submit the checkout payload to your server and forward it to your payment processor as specified in your processor's documentation for SRC/Click to Pay transactions
Implement the unbindAppInstance() call on logout or session end to clear the SRC session and prevent unauthorized checkout reuse
Known gotchas
The Visa SRCi SDK version evolves; always load the SDK from the official Visa CDN endpoint rather than self-hosting a cached copy to ensure you receive updates
isRecognized() makes a network call and may be slow on first load; do not block the entire checkout page render on its result — show the button asynchronously
The encryptedPayload returned by checkout() is opaque and processor-specific; do not attempt to decrypt or parse it client-side
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp