A UK payment or e-money firm gets a safeguarding audit once a year, and the auditor opens it by asking for the same things: the reconciliations across the period, how each funds stream is safeguarded, what those two raised, and who inside the firm prepared, reviewed and signed the reconciliation export. This page assembles that set from figures the firm already holds, in the engagement's own field names.
The reconciliation export is a spreadsheet or a report builder's file, produced by a tool that is not part of this graph. Its §27.4 subject identifier is computed by the attested artifact subject binder and echoed here verbatim. This page does not recompute it: a second implementation of that preimage would be a second canon, and the binding is independently checkable against art-502 from the echoed preimage alone.
The output is evidence assembled for the engagement. A regulatory filing is a different thing: this pack is not submittable to the FCA, it does not reproduce the prescribed report as a fillable form, and it does not discharge the audit. An approval record inside it is evidence that a named human acted, never a claim that a regulator has accepted anything.
Neither audit opinion is expressed here. The report carries two: whether the firm maintained systems adequate to enable it to comply throughout the period, and whether the firm was in compliance at the period end. Both are emitted as open slots naming the auditor as the decider. A tool that filled them in would be pretending to be the auditor.
The attested subject evidences producer pinning, input binding and content integrity. It carries no §18 compute proof and no §16 or §17 re-execution claim, and it never evidences that the arithmetic inside the firm's export is correct. Because no replay was attempted, the exported artifact omits replay_verified entirely rather than setting it false.
The schedule below lists matters for the auditor's attention. Nothing here is recorded as a breach: whether any of these is a breach of CASS 15 is for the firm's own records and its safeguarding auditor.
Consumes the safeguarding reconciliation check, the safeguarding method classifier, and the attested artifact subject binder. The subject class it is the first consumer of is described at §27.4 of the OpenChainGraph specification.
Copy this paragraph into Claude, OpenClaw, or any MCP-aware agent to run this exact tool, with this sample, and verify the artifact.
Run the AINumbers MCP tool `build_safeguarding_audit_evidence`. Task: Assemble the evidence set a qualified auditor asks a UK payment or e-money firm for at the start of a CASS 15 safeguarding audit: the reconciliation results across the declared audit period, the safeguarding method classification, a schedule of the matters those raise keyed by the individual rule reference with a management response recorded against each item, and the section 27 accountability trail over the firm's own reconciliation export.
Call it with arguments: {"policy_parameters":{"firm_ref":"FIRM-SYNTH-0001","audit_period":{"start_date":"2026-05-07","end_date":"2027-05-06"},"attested_subject":{"subject_hash":"sha256:1111111111111111111111111111111111111111111111111111111111111111","subject_preimage":{"tool_ref":{"tool_id":"acme-safeguarding-recon","tool_version":"4.2.0","entry":"buildSafeguardingRecon","manifest_digest":"sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"},"inputs_digest":"sha256:cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc","artifact":{"content_type":"application/pdf","content_digest":"sha256:bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"}},"producer_pinned":true,"binding_complete":true,"inputs_digest_source":"derived"},"reconciliation_results":[{"entry_ref":"RECON-2026-06-30","as_of_date":"2026-06-30","reconciliation_type":"internal","verdict":"reconciled","difference_direction":"level","difference_display":"0.00","safeguarding_requirement_display":"1250000.00","safeguarding_resource_display":"1250000.00","currency":"GBP"},{"entry_ref":"RECON-2026-09-30","as_of_date":"2026-09-30","reconciliation_type":"internal","verdict":"reconciled","difference_direction":"level","difference_display":"0.00","safeguarding_requirement_display":"1310000.00","safeguarding_resource_display":"1310000.00","currency":"GBP"},{"entry_ref":"RECON-2026-12-31","as_of_date":"2026-12-31","reconciliation_type":"external","verdict":"reconciled","difference_direction":"level","difference_display":"0.00","safeguarding_requirement_display":"1402500.00","safeguarding_resource_display":"1402500.00","currency":"GBP"}],"method_classification":{"classification_verdict":"COHERENT_ON_SUPPLIED_FACTS","stream_count":2,"coherent_count":2,"incoherent_count":0,"open_judgment_count":0,"audit_exemption_indicator":{"outcome":"audit_required","basis":"Relevant funds held exceed the exemption level."},"determinations":[{"stream_ref":"STREAM-SYNTH-A","funds_category":"payment_service_relevant_funds","method_asserted":"segregation","relevant_funds_determination":{"outcome":"relevant","basis":"Declared as payment_service_relevant_funds.","citation_id":null},"method_coherence":"coherent","method_findings":[]},{"stream_ref":"STREAM-SYNTH-B","funds_category":"emoney_relevant_funds","method_asserted":"segregation","relevant_funds_determination":{"outcome":"relevant","basis":"Declared as emoney_relevant_funds.","citation_id":null},"method_coherence":"coherent","method_findings":[]}]},"accountability_records":[{"record_type":"approval","role":"preparer","subject_hash":"sha256:1111111111111111111111111111111111111111111111111111111111111111","identity":{"id":"did:key:zPreparerSynth1","actor_type":"human"},"decision":"prepared","timestamp":"2027-05-20T09:00:00Z","audit_signature":{"proof":{"type":"DataIntegrityProof","cryptosuite":"eddsa-jcs-2022","proofPurpose":"assertionMethod","verificationMethod":"did:key:zPreparerSynth1#zPreparerSynth1","proofValue":"zSYNTHETICPREPARERSIGNATURE"}}},{"record_type":"approval","role":"reviewer","subject_hash":"sha256:1111111111111111111111111111111111111111111111111111111111111111","identity":{"id":"did:key:zAuditorSynth1","actor_type":"human"},"decision":"reviewed","timestamp":"2027-05-21T14:30:00Z","audit_signature":{"proof":{"type":"DataIntegrityProof","cryptosuite":"eddsa-jcs-2022","proofPurpose":"assertionMethod","verificationMethod":"did:key:zAuditorSynth1#zAuditorSynth1","proofValue":"zSYNTHETICAUDITORSIGNATURE"}}},{"record_type":"approval","role":"approver","subject_hash":"sha256:1111111111111111111111111111111111111111111111111111111111111111","identity":{"id":"did:key:zApproverSynth1","actor_type":"human"},"decision":"approved","timestamp":"2027-05-22T11:15:00Z","audit_signature":{"proof":{"type":"DataIntegrityProof","cryptosuite":"eddsa-jcs-2022","proofPurpose":"assertionMethod","verificationMethod":"did:key:zApproverSynth1#zApproverSynth1","proofValue":"zSYNTHETICAPPROVERSIGNATURE"}}}]}}
Verify before trusting: call `verify_execution_hash` on mcp.ainumbers.co (https://mcp.ainumbers.co/mcp) with the parameter `claimed_hash` set to the returned `execution_hash`, passing the full artifact the run returned (the object containing `policy_parameters` + `output_payload` + `execution_hash`; equivalently `policy_parameters` + `output_payload` with `claimed_hash`), not the bare hash string.
Return the ledger link https://ledger.ainumbers.co/ so a human can re-verify without contacting us.
PII rule: All inputs are processed locally in your browser. No data is transmitted. Do not enter real personal data — use synthetic or anonymised inputs only.
Open the tool with the sample prefilled: https://ainumbers.co/chaingraph/art-501-build-safeguarding-audit-evidence.html#p=v1.H4sIAAAAAAAA_wFrD5TweyJmaXJtX3JlZiI6IkZJUk0tU1lOVEgtMDAwMSIsImF1ZGl0X3BlcmlvZCI6eyJzdGFydF9kYXRlIjoiMjAyNi0wNS0wNyIsImVuZF9kYXRlIjoiMjAyNy0wNS0wNiJ9LCJhdHRlc3RlZF9zdWJqZWN0Ijp7InN1YmplY3RfaGFzaCI6InNoYTI1NjoxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExIiwic3ViamVjdF9wcmVpbWFnZSI6eyJ0b29sX3JlZiI6eyJ0b29sX2lkIjoiYWNtZS1zYWZlZ3VhcmRpbmctcmVjb24iLCJ0b29sX3ZlcnNpb24iOiI0LjIuMCIsImVudHJ5IjoiYnVpbGRTYWZlZ3VhcmRpbmdSZWNvbiIsIm1hbmlmZXN0X2RpZ2VzdCI6InNoYTI1NjphYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhIn0sImlucHV0c19kaWdlc3QiOiJzaGEyNTY6Y2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYyIsImFydGlmYWN0Ijp7ImNvbnRlbnRfdHlwZSI6ImFwcGxpY2F0aW9uL3BkZiIsImNvbnRlbnRfZGlnZXN0Ijoic2hhMjU2OmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmJiYmIifX0sInByb2R1Y2VyX3Bpbm5lZCI6dHJ1ZSwiYmluZGluZ19jb21wbGV0ZSI6dHJ1ZSwiaW5wdXRzX2RpZ2VzdF9zb3VyY2UiOiJkZXJpdmVkIn0sInJlY29uY2lsaWF0aW9uX3Jlc3VsdHMiOlt7ImVudHJ5X3JlZiI6IlJFQ09OLTIwMjYtMDYtMzAiLCJhc19vZl9kYXRlIjoiMjAyNi0wNi0zMCIsInJlY29uY2lsaWF0aW9uX3R5cGUiOiJpbnRlcm5hbCIsInZlcmRpY3QiOiJyZWNvbmNpbGVkIiwiZGlmZmVyZW5jZV9kaXJlY3Rpb24iOiJsZXZlbCIsImRpZmZlcmVuY2VfZGlzcGxheSI6IjAuMDAiLCJzYWZlZ3VhcmRpbmdfcmVxdWlyZW1lbnRfZGlzcGxheSI6IjEyNTAwMDAuMDAiLCJzYWZlZ3VhcmRpbmdfcmVzb3VyY2VfZGlzcGxheSI6IjEyNTAwMDAuMDAiLCJjdXJyZW5jeSI6IkdCUCJ9LHsiZW50cnlfcmVmIjoiUkVDT04tMjAyNi0wOS0zMCIsImFzX29mX2RhdGUiOiIyMDI2LTA5LTMwIiwicmVjb25jaWxpYXRpb25fdHlwZSI6ImludGVybmFsIiwidmVyZGljdCI6InJlY29uY2lsZWQiLCJkaWZmZXJlbmNlX2RpcmVjdGlvbiI6ImxldmVsIiwiZGlmZmVyZW5jZV9kaXNwbGF5IjoiMC4wMCIsInNhZmVndWFyZGluZ19yZXF1aXJlbWVudF9kaXNwbGF5IjoiMTMxMDAwMC4wMCIsInNhZmVndWFyZGluZ19yZXNvdXJjZV9kaXNwbGF5IjoiMTMxMDAwMC4wMCIsImN1cnJlbmN5IjoiR0JQIn0seyJlbnRyeV9yZWYiOiJSRUNPTi0yMDI2LTEyLTMxIiwiYXNfb2ZfZGF0ZSI6IjIwMjYtMTItMzEiLCJyZWNvbmNpbGlhdGlvbl90eXBlIjoiZXh0ZXJuYWwiLCJ2ZXJkaWN0IjoicmVjb25jaWxlZCIsImRpZmZlcmVuY2VfZGlyZWN0aW9uIjoibGV2ZWwiLCJkaWZmZXJlbmNlX2Rpc3BsYXkiOiIwLjAwIiwic2FmZWd1YXJkaW5nX3JlcXVpcmVtZW50X2Rpc3BsYXkiOiIxNDAyNTAwLjAwIiwic2FmZWd1YXJkaW5nX3Jlc291cmNlX2Rpc3BsYXkiOiIxNDAyNTAwLjAwIiwiY3VycmVuY3kiOiJHQlAifV0sIm1ldGhvZF9jbGFzc2lmaWNhdGlvbiI6eyJjbGFzc2lmaWNhdGlvbl92ZXJkaWN0IjoiQ09IRVJFTlRfT05fU1VQUExJRURfRkFDVFMiLCJzdHJlYW1fY291bnQiOjIsImNvaGVyZW50X2NvdW50IjoyLCJpbmNvaGVyZW50X2NvdW50IjowLCJvcGVuX2p1ZGdtZW50X2NvdW50IjowLCJhdWRpdF9leGVtcHRpb25faW5kaWNhdG9yIjp7Im91dGNvbWUiOiJhdWRpdF9yZXF1aXJlZCIsImJhc2lzIjoiUmVsZXZhbnQgZnVuZHMgaGVsZCBleGNlZWQgdGhlIGV4ZW1wdGlvbiBsZXZlbC4ifSwiZGV0ZXJtaW5hdGlvbnMiOlt7InN0cmVhbV9yZWYiOiJTVFJFQU0tU1lOVEgtQSIsImZ1bmRzX2NhdGVnb3J5IjoicGF5bWVudF9zZXJ2aWNlX3JlbGV2YW50X2Z1bmRzIiwibWV0aG9kX2Fzc2VydGVkIjoic2VncmVnYXRpb24iLCJyZWxldmFudF9mdW5kc19kZXRlcm1pbmF0aW9uIjp7Im91dGNvbWUiOiJyZWxldmFudCIsImJhc2lzIjoiRGVjbGFyZWQgYXMgcGF5bWVudF9zZXJ2aWNlX3JlbGV2YW50X2Z1bmRzLiIsImNpdGF0aW9uX2lkIjpudWxsfSwibWV0aG9kX2NvaGVyZW5jZSI6ImNvaGVyZW50IiwibWV0aG9kX2ZpbmRpbmdzIjpbXX0seyJzdHJlYW1fcmVmIjoiU1RSRUFNLVNZTlRILUIiLCJmdW5kc19jYXRlZ29yeSI6ImVtb25leV9yZWxldmFudF9mdW5kcyIsIm1ldGhvZF9hc3NlcnRlZCI6InNlZ3JlZ2F0aW9uIiwicmVsZXZhbnRfZnVuZHNfZGV0ZXJtaW5hdGlvbiI6eyJvdXRjb21lIjoicmVsZXZhbnQiLCJiYXNpcyI6IkRlY2xhcmVkIGFzIGVtb25leV9yZWxldmFudF9mdW5kcy4iLCJjaXRhdGlvbl9pZCI6bnVsbH0sIm1ldGhvZF9jb2hlcmVuY2UiOiJjb2hlcmVudCIsIm1ldGhvZF9maW5kaW5ncyI6W119XX0sImFjY291bnRhYmlsaXR5X3JlY29yZHMiOlt7InJlY29yZF90eXBlIjoiYXBwcm92YWwiLCJyb2xlIjoicHJlcGFyZXIiLCJzdWJqZWN0X2hhc2giOiJzaGEyNTY6MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMSIsImlkZW50aXR5Ijp7ImlkIjoiZGlkOmtleTp6UHJlcGFyZXJTeW50aDEiLCJhY3Rvcl90eXBlIjoiaHVtYW4ifSwiZGVjaXNpb24iOiJwcmVwYXJlZCIsInRpbWVzdGFtcCI6IjIwMjctMDUtMjBUMDk6MDA6MDBaIiwiYXVkaXRfc2lnbmF0dXJlIjp7InByb29mIjp7InR5cGUiOiJEYXRhSW50ZWdyaXR5UHJvb2YiLCJjcnlwdG9zdWl0ZSI6ImVkZHNhLWpjcy0yMDIyIiwicHJvb2ZQdXJwb3NlIjoiYXNzZXJ0aW9uTWV0aG9kIiwidmVyaWZpY2F0aW9uTWV0aG9kIjoiZGlkOmtleTp6UHJlcGFyZXJTeW50aDEjelByZXBhcmVyU3ludGgxIiwicHJvb2ZWYWx1ZSI6InpTWU5USEVUSUNQUkVQQVJFUlNJR05BVFVSRSJ9fX0seyJyZWNvcmRfdHlwZSI6ImFwcHJvdmFsIiwicm9sZSI6InJldmlld2VyIiwic3ViamVjdF9oYXNoIjoic2hhMjU2OjExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEiLCJpZGVudGl0eSI6eyJpZCI6ImRpZDprZXk6ekF1ZGl0b3JTeW50aDEiLCJhY3Rvcl90eXBlIjoiaHVtYW4ifSwiZGVjaXNpb24iOiJyZXZpZXdlZCIsInRpbWVzdGFtcCI6IjIwMjctMDUtMjFUMTQ6MzA6MDBaIiwiYXVkaXRfc2lnbmF0dXJlIjp7InByb29mIjp7InR5cGUiOiJEYXRhSW50ZWdyaXR5UHJvb2YiLCJjcnlwdG9zdWl0ZSI6ImVkZHNhLWpjcy0yMDIyIiwicHJvb2ZQdXJwb3NlIjoiYXNzZXJ0aW9uTWV0aG9kIiwidmVyaWZpY2F0aW9uTWV0aG9kIjoiZGlkOmtleTp6QXVkaXRvclN5bnRoMSN6QXVkaXRvclN5bnRoMSIsInByb29mVmFsdWUiOiJ6U1lOVEhFVElDQVVESVRPUlNJR05BVFVSRSJ9fX0seyJyZWNvcmRfdHlwZSI6ImFwcHJvdmFsIiwicm9sZSI6ImFwcHJvdmVyIiwic3ViamVjdF9oYXNoIjoic2hhMjU2OjExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEiLCJpZGVudGl0eSI6eyJpZCI6ImRpZDprZXk6ekFwcHJvdmVyU3ludGgxIiwiYWN0b3JfdHlwZSI6Imh1bWFuIn0sImRlY2lzaW9uIjoiYXBwcm92ZWQiLCJ0aW1lc3RhbXAiOiIyMDI3LTA1LTIyVDExOjE1OjAwWiIsImF1ZGl0X3NpZ25hdHVyZSI6eyJwcm9vZiI6eyJ0eXBlIjoiRGF0YUludGVncml0eVByb29mIiwiY3J5cHRvc3VpdGUiOiJlZGRzYS1qY3MtMjAyMiIsInByb29mUHVycG9zZSI6ImFzc2VydGlvbk1ldGhvZCIsInZlcmlmaWNhdGlvbk1ldGhvZCI6ImRpZDprZXk6ekFwcHJvdmVyU3ludGgxI3pBcHByb3ZlclN5bnRoMSIsInByb29mVmFsdWUiOiJ6U1lOVEhFVElDQVBQUk9WRVJTSUdOQVRVUkUifX19XX1zEb--aw8AAA