Confirm your PISP has signed the UKPI scheme rulebook (Wave 1 went live June 2026); non-sweeping VRPs require a bilateral or scheme-mediated commercial agreement with each ASPSP — pure open-banking access without this agreement will be refused
POST /domestic-vrp-consents using the 'recurring-payments:commercial' scope; you may omit CreditorAccount and ControlParameters at consent creation, providing them per-payment instead (requires explicit ASPSP contractual permission)
Redirect the PSU for SCA at mandate setup; the 'Payment to Self' exemption does NOT apply — use a standard redirect or decoupled authentication flow
Store the returned ConsentId; when initiating each payment POST /domestic-vrp-payments supplying the per-payment CreditorAccount and InstructedAmount within the constraints negotiated with the ASPSP
Handle the DebtorAccount optionality: some ASPSPs require DebtorAccount at consent time; others accept it per-payment — check the ASPSP's VRP profile in the Open Banking Directory
Reconcile each payment using the DomesticVRPId returned in the 201 response; implement idempotency keys on retries to prevent duplicate payments under transient failures
Known gotchas
Wave 1 of the UKPI cVRP scheme covers regulated sectors (utilities, government, financial services); general e-commerce is Wave 2 expected in the second half of 2026 — attempting Wave 2 use cases under Wave 1 contracts may violate scheme rules
Unlike sweeping mandates, commercial mandates cannot use per-payment SCA exemptions based solely on the mandate; the ASPSP may still apply TRA or other exemptions at their discretion, but the PISP cannot force it
ASPSP VRP support varies significantly; always query the Open Banking Directory /domestic-vrp-consents availability flag before presenting cVRP as a payment option to end users
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