# SplitTenderContextDto

A model the API reference uses in a request or a response. The operation pages link every field typed as this model here.

The split-tender membership of a single transaction, plus the running balance the group has
collected so far. Lets a caller render "tender 2 of 3, $40.00 still owed" without fetching and
summing every member of the group itself.

## Fields
- `splitTenderGroupId` (string(uuid)): Identifier shared by every tender in the group.
- `sequence` (integer(int32)): 1-based position of the transaction this context was assembled for.
- `role` ([SplitTenderRole](https://devportal.signapay-sbx.winkpg.io/docs/api/models/SplitTenderRole.md)): Whether the transaction this context was assembled for is the group's primary tender or a continuation.
  Values:
  - `Primary`: The first tender in the group: the transaction whose partial approval created the shortfall. Exactly one member of a group holds this role, and it always carries SplitTenderSequence = 1.
  - `Continuation`: A follow-up tender collecting part of the remaining balance. A group may hold several, ordered by SplitTenderSequence (2, 3, ...). A continuation can itself be partially approved, which starts the disposition cycle again.
- `totalRequestedAmount` (number(double)): The order total the group is collecting toward, in major currency units: the order total declared on the primary tender's create request when one was declared, otherwise the amount originally requested on the primary tender.
- `totalApprovedAmount` (number(double)): What the tenders in the group have collected, in major currency units: each card's approved amount, less anything reversed or refunded. A voided or declined tender, and one still being authorized, contributes nothing.
- `remainingAmount` (number(double)): What is still owed, in major currency units: `totalRequestedAmount` minus `totalApprovedAmount`. Zero once the group has collected the full order total. While another payment in the group is still being authorized, an additional payment for this full amount is refused until that payment resolves. When a check payment in a completed group is returned by the bank, this is the amount the return left unpaid; the group does not reopen for further payments.
- `tenderCount` (integer(int32)): Number of tenders currently in the group, including voided ones (they remain part of the audit trail).
- `maxTenders` (integer(int32)): The most tenders the merchant allows in one split-tender group, the primary included.
- `returnedAmount` (number(double)): What the bank took back from the group after it completed, in major currency units: the sum of every check payment returned (for example, for insufficient funds) once the group had already collected its order total. Already taken off `totalApprovedAmount` and added back to `remainingAmount`. Null when no payment in the group has been returned. (nullable)
- `dualPricingCardPricedAmount` (number(double)): Present only when the merchant runs dual pricing on split tenders, so that each payment in the group is priced on its own share: a card pays the card price for its share, and a cash or bank payment pays the cash price. The group's amounts are then stated at the cash price: `totalRequestedAmount` is the order's cash price, and `totalApprovedAmount` and `remainingAmount` count each payment charged the card price at its cash price (what it was charged less the difference between the two prices). This is the part of `totalApprovedAmount` that payments charged the card price cover, at the cash price, in major currency units; zero when none has been. Send an additional payment for the cash price you want to collect: a card payment is charged the card price on it. Null for every other group. (nullable)

## See also

- [All documentation](https://devportal.signapay-sbx.winkpg.io/llms.txt): the machine-readable index of every public page on this site.
