Processed payment record
payment_session_id: string
attendee_id: number | null
processed_at: string
ticket_tokens: EnvKeyEncrypted | ""
Encrypted "+"-joined ticket tokens; "" while none are stored.
failure_data: EnvKeyEncrypted | ""
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.
payment_reference: OwnerKeyEncrypted | ""
Provider-specific refundable payment reference (e.g. Stripe pi_...).
provider_refunded_at: string
Non-empty once this charge has been returned at the provider.