Launch a campaign
Forge a tamper-evident campaign. The recipient address is validated in-browser and committed into the descriptor hash — anyone who alters it later fails verification loudly. Optionally sign the campaign with an organizer key (held in memory only, wiped right after forging).
Campaign launched
The donation address is the charity's own address — share it with donors. Publish the descriptor + spec wherever donors gather.
fingerprint
Publish checklist
Fund & watch
Donors send PRL to the campaign address with their own wallets — this page only watches (GET-only Blockbook reads). Fully offline? Expand the air-gapped path below and paste donation records manually.
| txid | amount (PRL) | height | confs |
|---|
Air-gapped path — paste donation records (offline)
No network access? Paste a JSON list of donation records and the
page computes the campaign stats locally. Each record: {"txid":"…","valueGrains":123,"blockHeight":900100}.
These are manual claims — they are not verified against the chain.
Donor receipts
Issue hash-bound donor receipts. The donor handle is self-declared (pseudonyms welcome); the txid and amount should match a real donation to the campaign address. Receipts live in this browser only (localStorage) — export them to keep them.
Issue a receipt
Receipt ledger (this browser only)
| donor | amount (PRL) | txid | hash ✓ |
|---|
Track the goal
Goal progress from GET-only Blockbook reads plus your local receipt ledger. Everything shown here is a read of public chain data — the page never moves funds.
Raised
—
Goal
—
Donors (ledger)
—
Deadline
—
| txid | amount (PRL) | height | confs |
|---|
Verify
Two standalone verifiers. They recompute everything from the descriptor/spec and refuse loudly on any mismatch — never trust, always re-derive.
Campaign check
Paste a campaign descriptor and its spec. The verifier recomputes the hash, fingerprint, and recipient address — and refuses if the claimed address does not match. If the campaign was signed, the organizer's Schnorr signature is checked too.
Receipt check
Paste a receipt JSON. The verifier recomputes its hash — then, optionally, cross-checks the donation against Blockbook (tx exists, pays the campaign address the recorded amount, ≥ 1 confirmation).