Create a composite transaction that may include multiple line items and payment methods.
Exactly one of 'outletId' or 'outlet' must be provided. When using 'outlet', both 'outlet.name' and 'outlet.externalCode' are required.
Optional flat string metadata can be supplied via 'metadata' and will be attached to the created transaction records.
To request non-redeemable pending points instead of immediate issuance, set 'createAsPendingTransaction=true' in the request body (optional 'autoCancelAfterMinutes' to suggest expiry, or 'autoPromoteAfterMinutes' to automatically promote to redeemable). These options are mutually exclusive.
The response will contain the transaction status, including points earned, points redeemed,
the customer's points balance before and after the transaction, the accepted coupon barcodes,
and the effective payment methods.
In case of a failed transaction, an error message will be returned.
Transactions are processed asynchronously, and the status can be checked later using the URL provided in the response.
The request accepts either a customer ID or a customer barcode. You can pass a unique ID for the transaction, or one will be generated automatically if not provided.
To simulate a transaction without processing it, set the 'simulate' query parameter to 'true'.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||