PaySmallWinBig is a cryptographic ledger purpose-built for raffles and competitions. Integrate once. Inherit a permanent, tamper-evident audit trail for every draw, forever.
Enter your raffle code or Merkle hash to independently verify your entry was included and the draw was conducted fairly.
No login required. All draws are publicly verifiable.
Every raffle on PaySmallWinBig produces a cryptographic receipt. Participants don't have to trust the operator — they can verify the outcome themselves using the public ledger.
This 3-minute walkthrough shows exactly how entries are committed, how the Merkle root seals the draw, and how anyone can replay the winner selection algorithm.
Every entry is hashed and chained before any draw occurs. No retroactive changes. No ambiguity.
Each ticket purchase is submitted to the ledger. Entries are hashed and chained into a tamper-evident sequence before the draw happens.
append-only logA Merkle root is computed over all entries. This root plus a verifiable random seed is published immutably before any winner is selected.
merkle commitmentAny participant can independently verify their entry was included and the winner selection followed the committed algorithm. No trust required.
public audit trailEntries cannot be modified or deleted once committed. Any tampering breaks the chain and is immediately detectable by any observer.
Draws use a commit-reveal scheme. The seed is committed before entries close and revealed after — making pre-selection mathematically impossible.
Each raffle gets a public verification URL. Participants confirm their entry and replay the draw algorithm at any time — forever.
Signed PDF audit reports and machine-readable JSON exports. Meets ASA, CAP and major competition platform policy requirements.
A clean REST API with TypeScript SDK. Submit entries, seal draws, retrieve proofs. Full webhook support for real-time events.
import { PaySmallWinBig } from '@pswb/sdk'; const client = new PaySmallWinBig({ apiKey: process.env.PSWB_API_KEY, }); // Create raffle & commit an entry const raffle = await client.raffles.create({ title: 'Summer Giveaway 2025', drawAt: new Date('2025-08-01'), }); await client.entries.commit({ raffleId: raffle.id, participantId: 'user_8f3a', ticketRef: 'TKT-00042', }); // Seal draw — returns Merkle proof const { winner, merkleRoot } = await client.raffles.draw({ raffleId: raffle.id }); console.log(winner, merkleRoot);
Join KingRaffle and other leading platforms offering cryptographically verified draws. Your players deserve to trust the process — now they can verify it.