Impact ledger

Every decision and its outcome, in order. Each entry carries a SHA-256 hash of the entry before it, so changing any past entry breaks the chain. This page checks the chain each time it loads.

Synthetic data — no Blackbaud, donor or card data is used.
How the chain works

Each entry’s fields are written in a fixed order. Its hash is SHA-256 of the previous entry’s hash, a line break, and those fields. The first entry starts from 64 zeros. The server hashes the backtest with node:crypto; your browser re-checks it, and hashes its own decisions, with Web Crypto.

Decisions this session

Plans a person approved or rejected in the console. Kept in this browser only.

Verifying chain…

Reading this browser’s ledger…

Backtest ledger · smart policy

Every simulated failed gift in the twelve-month backtest (35,992 entries, seed 20260929), the action the policy took and what happened. Recovered total reconciles with the backtest dashboard ✓ ($1,035,410).

Verifying chain…

Entries

35,992

one per failed gift

Recovered

$1,035,410

21,437 gifts · 59.2% of $1.75M failed

Attempts

50,404

1.40 per failed gift

Attempt fees

$5,040.40

at $0.10 per authorisation attempt

Do-not-retry violations

0

No retries on do-not-retry codes or past the cap ✓

Backtest ledger entries 21901 to 21950 of 35992
#GiftOrganisationDeclineActionAttemptsOutcomeRecoveredFeesHash
21901FG-32131May 26Harbor Light01Do not honorRetry schedule1Recovered$25$0.10522459ed…281b
21902FG-32132Nov 25Riverbend51Insufficient fundsRetry schedule1Recovered$30$0.102de1b327…3479
21903FG-32133Aug 26Riverbend54Expired cardDonor outreach0Stopped—$0.002f94ac33…f073
21904FG-32134Feb 26Lumen Arts54Expired cardCard updater, then retry1Recovered$80$0.10684a71d3…4705
21905FG-32135Aug 26Lumen Arts51Insufficient fundsRetry schedule3Not recovered—$0.303e18d6b2…0530
21906FG-32136Nov 25Lumen ArtsR01ACH R01 fundsRetry schedule2Not recovered—$0.20d0f7d97a…62f4
21907FG-32137Mar 26Harbor Light61Insufficient fundsRetry schedule2Recovered$40$0.201979d0d6…6e69
21908FG-32138Aug 26Harbor Light51Insufficient fundsRetry schedule1Recovered$40$0.10766a2304…c7e3
21909FG-32139Oct 25Riverbend51Insufficient fundsRetry schedule2Recovered$45$0.2092223f3d…f083
21910FG-32140Dec 25Northgate59Suspected fraudDonor outreach0Not recovered—$0.000698b6d4…e436
21911FG-32141Oct 25Riverbend51Insufficient fundsRetry schedule3Not recovered—$0.3092c33833…dda1
21912FG-32142Apr 26Riverbend51Insufficient fundsRetry schedule3Not recovered—$0.30d6ec3c12…d8e0
21913FG-32143May 26Riverbend54Expired cardCard updater, then retry1Recovered$90$0.10f828f6ee…94c5
21914FG-32144Jun 26Riverbend65Insufficient fundsRetry schedule3Not recovered—$0.309c4255a5…2cc6
21915FG-32145May 26Harbor Light51Insufficient fundsRetry schedule2Recovered$5$0.20720520e3…cfd5
21916FG-32146Oct 25Harbor Light05Do not honorRetry schedule3Not recovered—$0.3003abe490…a3dd
21917FG-32147Dec 25Harbor Light63Suspected fraudDonor outreach1Recovered$40$0.106213ce10…5f71
21918FG-32148Feb 26Harbor Light61Insufficient fundsRetry schedule1Recovered$40$0.1090e49ee9…1385
21919FG-32149Jun 26Harbor Light02Do not honorRetry schedule3Not recovered—$0.3001e6fdff…8821
21920FG-32150Jul 26Harbor LightR09ACH R01 fundsRetry schedule1Recovered$40$0.1002592353…13d3
21921FG-32151Jul 26Harbor Light65Insufficient fundsRetry schedule3Not recovered—$0.30d7051f3d…4a29
21922FG-32152Oct 25Riverbend54Expired cardDonor outreach1Recovered$30$0.10324c6a42…722a
21923FG-32153Feb 26Riverbend02Do not honorRetry schedule1Recovered$30$0.102c73b5a7…4176
21924FG-32154Jul 26Riverbend54Expired cardCard updater, then retry1Recovered$40$0.10bef51401…f068
21925FG-32155Dec 25Harbor LightR01ACH R01 fundsRetry schedule1Recovered$45$0.108ede489a…52d3
21926FG-32156Feb 26Harbor LightR09ACH R01 fundsRetry schedule1Recovered$45$0.10bad1362f…7288
21927FG-32157Apr 26Harbor LightR01ACH R01 fundsRetry schedule2Recovered$45$0.20363bb45c…6b66
21928FG-32158Oct 25Harbor Light33Expired cardDonor outreach0Stopped—$0.00def3de84…f2e9
21929FG-32159Apr 26Harbor Light91Issuer unavailableRetry schedule1Recovered$20$0.10ccd79d78…3f3c
21930FG-32160Jan 26Northgate33Expired cardCard updater, then retry1Recovered$45$0.104ed19b17…f6d1
21931FG-32161Mar 26Northgate54Expired cardCard updater, then retry1Recovered$45$0.1004743ff8…057c
21932FG-32162Jul 26Northgate54Expired cardCard updater, then retry2Recovered$45$0.20d2ee0a92…5955
21933FG-32163Aug 26Cedar Valley54Expired cardCard updater, then retry2Recovered$25$0.203e4efe83…7395
21934FG-32164Sep 26Cedar Valley05Do not honorRetry schedule2Recovered$25$0.20f20e0062…5a6f
21935FG-32165Apr 26Harbor Light46Account closedDonor outreach1Recovered$70$0.103cec1d9e…7bc5
21936FG-32166Sep 26Harbor Light51Insufficient fundsRetry schedule1Recovered$70$0.10823af432…5eaf
21937FG-32167Jan 26Cedar Valley01Do not honorRetry schedule2Recovered$10$0.2010bd3452…dc7c
21938FG-32168Aug 26Cedar Valley65Insufficient fundsRetry schedule1Not recovered—$0.1035e5ce9b…9385
21939FG-32169Sep 26Cedar Valley54Expired cardDonor outreach1Recovered$10$0.109c80c895…a932
21940FG-32170Oct 25Cedar Valley54Expired cardDonor outreach1Recovered$20$0.1059083f45…0726
21941FG-32171Oct 25Harbor Light54Expired cardDonor outreach1Recovered$60$0.10e7edf15c…6c09
21942FG-32172Oct 25Riverbend15Invalid cardDonor outreach0Stopped—$0.0094909174…2a2f
21943FG-32173Nov 25Riverbend05Do not honorRetry schedule1Recovered$10$0.1052359e54…0f09
21944FG-32174Dec 25Riverbend51Insufficient fundsRetry schedule3Recovered$10$0.30c5a9c8ad…9d5c
21945FG-32175Feb 26Riverbend51Insufficient fundsRetry schedule3Recovered$10$0.30f823ca5d…9940
21946FG-32176Apr 26Riverbend54Expired cardCard updater, then retry1Recovered$10$0.105309a541…2bd3
21947FG-32177Jun 26Riverbend41Lost or stolenDonor outreach1Recovered$10$0.1033e4d49a…32ef
21948FG-32178Jul 26Riverbend43Lost or stolenCard updater, then retry2Recovered$10$0.206f5cbebb…83ff
21949FG-32179Aug 26Riverbend51Insufficient fundsRetry schedule4Recovered$10$0.40bd058789…5a15
21950FG-32180Sep 26Riverbend59Suspected fraudDonor outreach1Recovered$10$0.10a1ad1a51…32e7

Outcomes: Recovered — won back within the recovery window. Not recovered — not won back; the monthly gift continues. Stopped — not won back, and the monthly gift lapsed. Head of chain 7377059a…56e0: one hash that commits to every entry.