ARCHITECTURE
Proof-of-Burn Receipts
PointPass ensures that reward redemptions cannot be forged or double-spent by burning SPL tokens and recording a permanent on-chain receipt PDA.
Receipt PDA Layout
#[account]
pub struct RedemptionReceipt {
pub customer: Pubkey, // 32 bytes (customer who burned)
pub loyalty_program: Pubkey, // 32 bytes (issuing store)
pub receipt_number: u64, // 8 bytes (monotonic counter)
pub points_burned: u64, // 8 bytes (points burned)
pub timestamp: i64, // 8 bytes (Solana Clock unix timestamp)
pub bump: u8, // 1 byte (canonical PDA bump)
}NEXT SECTION
Read Security Guide >