APG PayAPG Paydocs

Transactions

List transactions

GET/transactions
Request
GEThttps://api.tst.au.apgpay.dev/transactions
curl -X GET https://api.tst.au.apgpay.dev/transactions \
  -H "Authorization: Bearer $API_KEY"

Return a page of transactions. Supply page for offset pagination or startingAfter for cursor pagination, and q to search. The filters combine with each other and with q by AND. GET /filter-catalogues/transactions lists those this caller can use. A cursor continues only the walk that issued it: sent with different filters, q or sort, it is refused with 400.

Permissions

Required permission
transactions:query

Requires the `query` action on `transactions` for the supplied runtime context

Query parameters

qstring

Search. Matches a transaction id, the id of its order or payout, or the reference transaction id, within the creation window the other filters give, the last 30 days by default. An id, an email address, a phone number and any value listed as matched exactly match exactly; any other term matches without regard to case from the start of a value (or of any word in it, beside a longer word of the term), or anywhere in it from three characters, every word of it somewhere; a term that matches nothing so is read again with typos tolerated. Matches come newest first unless sort is given.

pageinteger (int32)

Offset pagination: 1-based page number. Mutually exclusive with the cursor parameters.

startingAfterstring

Cursor pagination, moving forward: the id of the last item on the current page. Mutually exclusive with page.

endingBeforestring

Cursor pagination, moving backward: the id of the first item on the current page. Mutually exclusive with page.

limitinteger (int32)

Maximum items per page.

sortarray of TranSort

Fields to sort by, comma-delimited, in priority order. Prefix a field with - for descending.

columnsarray of TranColumn

Columns to include, in order, when asking for text/csv. Omit for all of them. Sending it with application/json is a 400.

statusone of TranStatus, array of TranStatus

Only transactions whose status is one of these. Repeat the parameter to give several.

statusNotone of TranStatus, array of TranStatus

Leave out transactions whose status is one of these. Repeat the parameter to give several.

merchantIdone of array of string, string

Only transactions whose merchant is one of these. Repeat the parameter to give several.

merchantIdNotone of array of string, string

Leave out transactions whose merchant is one of these. Repeat the parameter to give several.

customerIdone of array of string, string

Only transactions whose customer is one of these. Repeat the parameter to give several.

customerIdNotone of array of string, string

Leave out transactions whose customer is one of these. Repeat the parameter to give several.

customerIdAbsentboolean

true for only transactions with no customer, false for only those with one.

orderIdone of array of string, string

Only transactions whose order is one of these. Repeat the parameter to give several.

orderIdNotone of array of string, string

Leave out transactions whose order is one of these. Repeat the parameter to give several.

referenceOrderIdstring

Filter by your own reference for the order.

payoutIdone of array of string, string

Only transactions whose payout is one of these. Repeat the parameter to give several.

payoutIdNotone of array of string, string

Leave out transactions whose payout is one of these. Repeat the parameter to give several.

payoutIdAbsentboolean

true for only transactions with no payout, false for only those with one.

refundedboolean

Only transactions with a refund against them, or only those without.

currencyone of IsoCurrency, array of IsoCurrency

Only transactions whose currency is one of these. Repeat the parameter to give several.

currencyNotone of IsoCurrency, array of IsoCurrency

Leave out transactions whose currency is one of these. Repeat the parameter to give several.

amountinteger (int64)

Only transactions of exactly this amount, in minor units of their currency.

amountAtLeastinteger (int64)

Only transactions whose amount, in minor units of its currency, is at least this.

amountAtMostinteger (int64)

Only transactions whose amount, in minor units of its currency, is at most this.

amountAboveinteger (int64)

Only transactions whose amount, in minor units of its currency, is more than this.

amountBelowinteger (int64)

Only transactions whose amount, in minor units of its currency, is less than this.

createdAfterstring (date-time)

Only transactions whose creation time is at or after this ISO-8601 timestamp.

createdBeforestring (date-time)

Only transactions whose creation time is at or before this ISO-8601 timestamp.

Responses

The response is a tagged shape: type is always "TranPageAttributes". Switch on it; subtypes can be added, and a client that already reads it will not break.

Discriminated by type
type = "TranPageAttributes"
hasMorebooleanrequired

Whether further items exist after this page.

Example true

nextStartingAfterstring

Id to pass as startingAfter to fetch the next page. Present in cursor mode only.

totalCountinteger (int64)

Total items matching the query.

Example 42

pageinteger (int32)

The 1-based page returned. Present in offset mode only.

Example 1250

totalPagesinteger (int32)

Total pages available. Present in offset mode only.

Example 1250

Example
{
  "type": "TranPageAttributes",
  "data": [
    {
      "type": "TranViewAttributes",
      "transactionId": "tran_9f2Kd8QpLzXw",
      "merchantId": "mcht_9f2Kd8QpLzXw",
      "customer": {
        "type": "RfndCustomerAttributes",
        "customerId": "cust_9f2Kd8QpLzXw",
        "name": "Ada Lovelace",
        "emailAddress": "ada@example.com",
        "phoneNumber": "+61400000000"
      },
      "orderId": "ordr_9f2Kd8QpLzXw",
      "referenceOrderId": "your-own-reference",
      "paymentType": "PayInFull",
      "status": "Accepted",
      "amounts": {
        "type": "TranAmountsAttributes",
        "currency": "AUD",
        "amount": 1250,
        "surcharge": 1250,
        "refunded": 1250,
        "fee": 1250
      },
      "refunds": [
        {
          "type": "RfndViewAttributes",
          "refundId": "rfnd_9f2Kd8QpLzXw",
          "subject": {
            "type": "RfndSubjectTransaction",
            "transactionId": "tran_9f2Kd8QpLzXw"
          },
          "merchantId": "mcht_9f2Kd8QpLzXw",
          "customer": {
            "type": "RfndCustomerAttributes",
            "customerId": "cust_9f2Kd8QpLzXw",
            "name": "Ada Lovelace",
            "emailAddress": "ada@example.com",
            "phoneNumber": "+61400000000"
          },
          "status": "Pending",
          "amounts": {
            "type": "RfndAmountsAttributes",
            "currency": "AUD",
            "amount": 1250,
            "transactionAmount": 1250
          },
          "orderId": "ordr_9f2Kd8QpLzXw",
          "referenceOrderId": "your-own-reference",
          "orderMetadata": {
            "yourKey": {}
          },
          "payoutId": "payout_9f2Kd8QpLzXw",
          "settlementDate": "2026-08-19",
          "attempts": 1250,
          "lastError": "string",
          "createdAt": "2026-08-19T04:21:07Z",
          "refundedAt": "2026-08-19T04:21:07Z",
          "updatedAt": "2026-08-19T04:21:07Z"
        }
      ],
      "disputes": [
        {
          "type": "DisputeViewAttributes",
          "disputeId": "dispute_9f2Kd8QpLzXw",
          "subject": {
            "type": "RfndSubjectTransaction",
            "transactionId": "tran_9f2Kd8QpLzXw"
          },
          "merchantId": "mcht_9f2Kd8QpLzXw",
          "customer": {
            "type": "RfndCustomerAttributes",
            "customerId": "cust_9f2Kd8QpLzXw",
            "name": "Ada Lovelace",
            "emailAddress": "ada@example.com",
            "phoneNumber": "+61400000000"
          },
          "status": "Pending",
          "gatewayState": "string",
          "amounts": {
            "type": "DisputeAmountsAttributes",
            "currency": "AUD",
            "amount": 1250,
            "transactionAmount": 1250
          },
          "feeAmount": {
            "type": "IsoCurrencyAmount",
            "minorCurrencyUnits": 1250,
            "currency": "AUD"
          },
          "reason": "Requested by the customer.",
          "description": "string",
          "orderId": "ordr_9f2Kd8QpLzXw",
          "referenceOrderId": "your-own-reference",
          "orderMetadata": {
            "yourKey": {}
          },
          "evidenceDueBy": "2026-08-19",
          "createdAt": "2026-08-19T04:21:07Z",
          "updatedAt": "2026-08-19T04:21:07Z"
        }
      ],
      "payoutId": "payout_9f2Kd8QpLzXw",
      "settlementDate": "2026-08-19",
      "availableOn": "2026-08-19",
      "referenceTransactionId": "your-own-reference",
      "referenceIssuerTransactionId": "your-own-reference",
      "createdAt": "2026-08-19T04:21:07Z",
      "updatedAt": "2026-08-19T04:21:07Z"
    }
  ],
  "hasMore": true,
  "nextStartingAfter": "string",
  "totalCount": 42,
  "page": 1250,
  "totalPages": 1250
}

Error responses