API reference
Payments
Each debit collected under an agreement is a payment. Cashwo creates them when an agreement becomes active and initiates each one on its due date.
The payment object
{
"payment_id": 88213,
"agreement_id": 4127,
"reference": "3 Inst - INV-10482",
"amount": 120.00,
"currency": "AUD",
"status": "SETTLED",
"final": true,
"due_date": "2027-01-01",
"retry_count": 0,
"archived": false,
"created_at": "2026-10-24 08:12:03",
"updated_at": "2027-01-01 09:00:41"
}reference is Cashwo's label: Initial - INV-10482 for the initial amount, 3 Inst - INV-10482 for the third instalment.
Statuses
AWAITING→
INITIATED→
PENDING→
SETTLEDor
FAILED
- AWAITING: scheduled, not yet due.
- CREATED, INITIATED, PENDING: sent to the customer's bank. Most settle within seconds over the New Payments Platform.
- SETTLED: the money arrived.
- FAILED: declined. A failed scheduled payment is retried automatically (
final: false); a failed one-time payment is final, but the customer can try again from their link the same day. - RETURN_IN_PROGRESS, RETURN_COMPLETE: a settled payment being returned by the bank.
final is true once the payment can't change any more.
POSTget_payment
Send payment_id. Returns { "success": true, "payment": { … } }, or 404 not_found.
{ "action": "get_payment", "payment_id": 88213 }POSTlist_payments
Newest first, with pagination. All filters are optional.
| Field | Meaning |
|---|---|
agreement_id | Payments under one agreement. |
status | e.g. SETTLED, FAILED, AWAITING. |
due_from, due_to | YYYY-MM-DD, inclusive. |
updated_since | Date or ISO 8601 date-time. Only payments changed since then. |
include_archived | true to include archived payments. |
limit, starting_after | Page size (1–100, default 25) and cursor. |
{ "action": "list_payments", "agreement_id": 4127, "status": "FAILED" }Reconciling
Webhooks tell you about changes as they happen. To be certain you've seen everything, run a scheduled job that calls list_payments with updated_since set to your last successful sync, pages until has_more is false, and stores the time it started.