OptionaladdressOptionalreturnOptionalorderOptionalcustomerOptionalsetupsave the instrument for later off-session use (recurring / one-click).
Optionaloffthe charge is happening WITHOUT the cardholder present (auto top-up / recurring) — the processor may decline for
3DS (AUTHENTICATION_PENDING) rather than charge. Maps to Stripe off_session, Adyen ContAuth, etc.
Optionalmetadatafree-form key/value the processor stores + echoes on its webhook (e.g. { userId, credits } the crediting path
reads). Most processors support it (Stripe metadata, Adyen additionalData).
Optionaltest
an existing processor customer to attach the charge to (optional).