A validated payment session returned after checkout completion
id: string
paymentReference: string
amountTotal: number
Total amount charged in smallest currency unit (cents), from the payment provider
optional
createdAt: string | undefined
When the provider created this checkout, in the ledger's canonical ISO 8601
form (YYYY-MM-DDTHH:mm:ss.sssZ), or undefined if the provider didn't supply
a usable timestamp. Each provider normalises its own format (see
toCanonicalIso) so this is safe to use directly as a ledger occurredAt. It is
the customer's business time, so a payment processed late — a delayed
webhook, an old redirect, a stale retry — is still recognised on the day it
was paid, not the day we happened to process it.