Default behavior
If platform invoice timeout is disabled, invoices use a far-future expiration (2099-12-31).
When platform invoice timeout is enabled, expires_at is calculated from platform configuration at invoice creation.
On expiration
- Invoice status transitions to
expired - Webhook
invoice.expiredis dispatched - WooCommerce orders in
pendingoron-holdare set tocancelled