# ContinuationPagedResultDtoOfSettlementBatchSummaryDto

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

Represents a page of results obtained through continuation-token paging.
Supports an approximate total count for display purposes.

## Fields
- `items` (array<[SettlementBatchSummaryDto](https://devportal.demo.winkpg.io/docs/api/models/SettlementBatchSummaryDto.md)>): The items returned for this page. (nullable)
  Fields of each item:
  - `settlementBatchId` (string(uuid))
  - `merchantId` (string(uuid))
  - `runDateUtc` (string(date-time)): When the settlement run that produced this batch was kicked off (`SettlementBatch.RunDate`).  This is the batch's "Run Date" display value, not its completion time.
  - `completedAtUtc` (string(date-time)): When the batch first reached a terminal outcome (`SettlementBatch.CompletedAtUtc`).  Null for legacy batches created before the field existed, or a batch still in flight. (nullable)
  - `duration` (string(date-span)): The settlement-attempt duration: `completedAtUtc` minus the batch's audit  creation time, computed server-side via `SettlementDurationCalculator` (clamped at zero).  Null when `completedAtUtc` is null. Derived from per-batch set-once timestamps so  it is immune to later batch mutations (re-settle, park, backfill, override).  Written as [-][d.]hh:mm:ss[.fffffff], for example 00:00:01.2500000; the seven-digit  fraction of a second appears only when it is non-zero. Not an ISO 8601 duration. (nullable, pattern ^-?(\d{1,8}\.)?([01]\d|2[0-3]):[0-5]\d:[0-5]\d(\.\d{7})?$)
  - `triggerType` ([SettlementTriggerType](https://devportal.demo.winkpg.io/docs/api/models/SettlementTriggerType.md))
    Values:
    - `Auto`
    - `Manual`
  - `triggeredByUserId` (string(uuid)): (nullable)
  - `triggeredByUserName` (string): (nullable)
  - `paymentTypes` (array<[PaymentType](https://devportal.demo.winkpg.io/docs/api/models/PaymentType.md)>): (nullable)
    Values:
    - `CreditCard`
    - `DebitCard`
    - `GiftCard`
    - `EbtSnap`
    - `EbtCash`
    - `Ewic`
    - `LoyaltyCard`
    - `Cash`
    - `ACH`
    - `ECheck`
    - `Alternative`
  - `totalTransactionCount` (integer(int32))
  - `settledCount` (integer(int32)): Number of items that successfully settled. Equals `totalTransactionCount`  for fully successful batches; less for `PartiallyCompleted`.  Null for legacy batches and batches still `Pending`. (nullable)
  - `netAmount` (number(double))
  - `processor` (string): (nullable)
  - `processorBatchId` (string): (nullable)
  - `processorKey` (string): The lower-cased processor key the batch was produced for (the same key the settlement  close fans out on). Needed by the operator retry action to target the re-settle engine  entrypoint at the correct (merchant, processor) counter. Null for legacy batches created  before the key was persisted. Non-sensitive: a short identifier such as `tsys`. (nullable)
  - `gatewayBatchId` (string): The gateway batch id this run settled (`SettlementBatch.OpenBatchId`). Identifies the  single batch the operator retry resubmits. Null for legacy batches created before the id  was persisted. Non-sensitive: an internal batch identifier, never PAN/card data. (nullable)
  - `correlationId` (string(uuid))
  - `status` ([SettlementBatchStatus](https://devportal.demo.winkpg.io/docs/api/models/SettlementBatchStatus.md)): Status of a settlement batch through its lifecycle.
    Values:
    - `Pending`: Batch created, awaiting processor submission.
    - `Completed`: Batch successfully settled with the processor.
    - `Failed`: Batch settlement failed.
    - `PartiallyCompleted`: Some transactions settled, others rejected by the processor.
    - `NothingToSettle`: No transactions were eligible to settle for this (merchant, processor) group. A successful no-op outcome, distinct from Failed (a genuine fault) and from Completed (a real settle). Recorded so a settlement run leaves a history row for every targeted (merchant, processor) even when zero transactions are loaded. The short explanation is carried in SettlementBatch.ErrorMessage as the per-batch outcome detail.
    - `OperatorActionRequired`: The batch could not be settled automatically and is parked for operator action. Distinct from Failed: a Failed closed batch is re-attempted on the next run (transient fault), whereas an OperatorActionRequired batch is deliberately excluded from automatic retry because blindly re-submitting it would just re-fail. Two causes park a batch here: a non-transient duplicate-batch-number processor rejection (the same processor BatchNumber will keep colliding until an operator bumps it), and exhaustion of SettlementConsts.MaxSettlementRetries transient retries. The batch's transactions are moved to SettlementStatus.SettlementOnHold so they stop auto-retrying; the reason is carried in SettlementBatch.ErrorMessage. The operator UI (follow-up story) lists these and can retry with a bumped processor BatchNumber.
    - `TerminalContention`: The batch was not submitted because a concurrent settlement run already held the terminal lock for the same (Fiserv MerchID, TermID) pair (UMF Appendix M 42.1: only one batch at a time per terminal). Distinct from Failed: nothing went wrong, this run simply deferred to the run that already owned the terminal. The next scheduled run retries normally.
  - `errorMessage` (string): (nullable)
- `nextContinuationToken` (string): Continuation token to use when requesting the next page.  Null means no additional pages exist. (nullable)
- `approxTotalCount` (integer(int64)): An approximate total count of matching items.  This value is optional and may be stale or estimated, so treat it as an approximation. (nullable)
- `pageItemCount` (integer(int32)): Convenience property for the number of items in this page. (read only)
- `retrievedAt` (string(date-time)): When the page was retrieved. Useful for diagnostics and cache behavior.

## See also

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