OpenChainGraph Suite · OCG v0.8.7 · Payments Compliance

VoP Liability Evidence Pack

Two-node payments workflow producing the evidence a PSP presents in an APP-fraud reimbursement liability review. Stage 1 scores a declared payee-name match under a versioned algorithm. Stage 2 binds that match result, the warning text and severity shown, and the consumer's declared action into a signed, hash-chained session receipt -- what the check found and what happened next, not who is at fault.

OpenChainGraph · 2 Nodes compliance mandate · Sequential Hash-Anchored §4 Client-Side · Zero PII
Not an adjudication and not legal advice. This workflow attests the COMPUTATION and the DECLARED session record -- the score that was computed, the warning that was declared shown, and the action the consumer declared taking. It does NOT establish ground-truth identity of the payee, does NOT prove what the PSP's own interface actually displayed (the PSP asserts the display; the receipt only binds the assertion), and does NOT determine who bears loss under the UK PSR 50/50 split or any other liability regime. EU IPR made Verification of Payee mandatory from October 2025 -- it is a VoP-availability mandate, not a reimbursement regime; the EU's reimbursement-side analog under PSD3/PSR-EU is forthcoming and not yet in force. Read the VoP Receipt Guide before handing a receipt to a counterparty.
Workflow Topology (sequential) — Payee Name-Match Score → VoP Session Receipt Builder
§4 Execution Hash · Workflow Definition Anchor
execution_hash:computing…
Workflow Stages · 2 Nodes · Sequential
1 ROOT node
Payee Name-Match Score (VoP/CoP) art-376-score-payee-name-match
Normalizes a declared payee-name pair (diacritic stripping, legal-entity suffix removal) and scores it by integer Levenshtein edit distance against both a plain and a token-sorted form, banding the result MATCH / CLOSE_MATCH / NO_MATCH against declared thresholds. The declared match score and band feed forward as Stage 2's match result.
MCP Call · score_payee_name_match
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "score_payee_name_match",
    "arguments": {
      "account_name": "J Smith Consulting Ltd",
      "reference_name": "James Smith Consulting Limited",
      "match_threshold": 2,
      "close_match_threshold": 5
    }
  },
  "id": 1
}
2 FINAL STAGE node
VoP Session Receipt Builder art-377-build-vop-session-receipt
Binds the declared match result (Stage 1's score and band, or an externally declared score), the warning text and severity shown, and the consumer's action (proceeded, abandoned, retried) across a session's attempts into a signed receipt. Each attempt hash-chains to the prior one, rooted at a session-anchored genesis hash, so any reordering or edit breaks the chain. Verifies fully offline.
MCP Call · build_vop_session_receipt
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "build_vop_session_receipt",
    "arguments": {
      "session_id": "SESS-2026-0718-0042",
      "attempts": [
        {
          "attempt_id": "ATT-1",
          "match_result": {
            "source": "score_payee_name_match",
            "algorithm_version": "vop-namematch-1.0.0",
            "score": 4,
            "match_band": "CLOSE_MATCH"
          },
          "warning_shown": {
            "text": "The name on this account is a close, not exact, match to the name you entered.",
            "severity": "warning"
          },
          "consumer_action": "proceeded",
          "asserted_at": "2026-07-18T14:22:03Z"
        }
      ]
    }
  },
  "id": 2
}
Export Workflow Artifact
Download a §4-compliant workflow artifact with execution hash and step definitions. Hash is deterministic over canonical {policy_parameters, output_payload} per RFC 8785/JCS.