One-Time Orders
List Completed Orders
Filter by Date Range
Look Up One-Time Order by Your Business Number (orderMerchantExternalId)
Pass the same orderMerchantExternalId you attached at checkout creation.
SDK Example
Subscription Orders
List Active Subscriptions
Filter Canceling Subscriptions
Look Up Subscription Order by Your Business Number (orderMerchantExternalId)
Pass the same orderMerchantExternalId you attached at checkout creation. Every renewal payment that follows inherits the same value, so a single business reference resolves the whole subscription lifecycle.
Payments
List Successful Payments
Filter by Date Range
Look Up Payment by Waffo Payment ID
Look Up Payment by Your Business Number (orderMerchantExternalId)
Pass the same orderMerchantExternalId you attached at checkout creation. Field name mirrors webhook payload data.orderMerchantExternalId.
For subscription orders, every renewal payment inherits the same
orderMerchantExternalId set at checkout. The query above returns the full payment history for the same business reference, ordered by createdAt DESC.Aggregations & Sorting
Aggregate Payments by Day
paymentsAggregate returns count plus amount metrics (sum, avg, min, max) over all matching rows, optionally grouped by up to 2 dimensions. Available dimensions: status, currency, payment_method_type, card_brand, store, and the time dimension created_period. granularity (day, week, month, quarter, year; default day) only applies to the time dimension.
Aggregate
amount values are integer strings in minor currency units (e.g. cents). Amounts are summed across whatever rows match the filter, so group or filter by currency when multiple currencies are involved. Groups are sorted by count descending and capped at 100 (isTruncated flags truncation); the top-level count/amount always cover all matching rows. Other entities expose the same shape: refundsAggregate, onetimeOrdersAggregate, subscriptionOrdersAggregate, payoutTicketsAggregate, settlementBatchesAggregate, webhookDeliveriesAggregate, emailDeliveriesAggregate.Sort with orderBy
List queries that support sorting accept orderBy: [XxxOrderBy!] (an enum whitelist), defaulting to created_at DESC. For payments the options are created_at_desc, created_at_asc, amount_desc, amount_asc.
Refunds (executed records)
Refund records (order.refunds) are written after the PSP confirms the refund. They are separate from refund tickets — tickets carry the request lifecycle, refund records carry the executed result.
Look Up Refund by Waffo Refund ID
Refund exposes both business numbers as flat fields (orderMerchantExternalId from the originating order, refundTicketMerchantExternalId from the originating refund ticket) — same naming as the webhook payload.
Look Up Refunds by Payment (Waffo Payment ID)
Look Up Refunds by Your Business Number
Match by the refund ticket’s business reference (what you attached when creating the refund ticket) — use therefundTicketMerchantExternalId filter: