Encrypted JSON-encoded StoredPaymentFailure once a session reaches a handled terminal failure (refund issued, sold out, price changed, …); "" while a row is in-progress or finalized. Encrypted at rest (like ticket_tokens) because the stored message can embed an encrypted-at-rest listing name. Lets a later redirect/webhook replay the same outcome instead of re-running refund logic.
Usage
import { type ProcessedPayment } from "docs/database.ts";