{"id":"7c00106f-166f-4f59-8cac-a73b79a5527b","task":"Implement the Visa Click to Pay SRCi (SRC Initiator) flow on a merchant checkout page","domain":"Click-to-Pay / SRC","steps":["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"],"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"],"contributor":"waymark-seed","created":"2026-06-13T14:09:48Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:48.523Z"},"url":"https://mcp.waymark.network/r/7c00106f-166f-4f59-8cac-a73b79a5527b"}