APIs Coming Soon
Early preview
Real-Time Payments are coming soon. This preview gives you an early look at the expected experience so you can begin planning your integration.
RTP received payments use the same /received-payments endpoints as ACH and Wire received payments. Filter by filter[type]=Realtime to list RTP payments only.
Get by Id
Get a received payment by id.
| Verb | GET |
| URL | https://api.s.unit.sh/received-payments/{id} |
| Required Scope | received-payments |
| Timeout (Seconds) | 5 |
Query Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| include | string | (empty) | Optional. A comma-separated list of related resources to include in the response. Related resources include: customer, account. See Getting Related Resources |
Response
Response is a JSON:API document.
200 OK
| Name | Type | Description |
|---|---|---|
| data | Realtime Received Payment | A Received Payment resource. |
| included | Array of DepositAccount or Customer | Array of resources requested by the include query parameter. |
curl -X GET 'https://api.s.unit.sh/received-payments/30176752' \
-H "Authorization: Bearer ${TOKEN}"
List
List received payments. Filtering, paging and sorting can be applied.
| Verb | GET |
| URL | https://api.s.unit.sh/received-payments |
| Required Scope | received-payments |
| Timeout (Seconds) | 5 |
Query Parameters
| Name | Type | Default | Description |
|---|---|---|---|
| page[limit] | integer | 100 | Maximum number of resources that will be returned. Maximum is 1000 resources. See Pagination. |
| page[offset] | integer | 0 | Number of resources to skip. See Pagination. |
| filter[accountId] | string | (empty) | Optional. Filters the results by the specified account id. |
| filter[customerId] | string | (empty) | Optional. Filters the results by the specified customer id. |
| filter[since] | ISO Local Date string | (empty) | Optional. Filters after the specified date. e.g. 2021-06-01 |
| filter[until] | ISO Local Date string | (empty) | Optional. Filters before the specified date. e.g. 2021-07-01 |
| filter[status][] | Received Payment Status (JSON) | (empty) | Optional. Filter Received Payments by status. Usage example: filter[status][0]=Pending&filter[status][1]=Completed. |
| filter[fromAmount] | Integer | (empty) | Optional. Filters the Received Payment that have an amount that is higher or equal to the specified amount (in cents). e.g. 5000 |
| filter[toAmount] | Integer | (empty) | Optional. Filters the Received Payment that have an amount that is lower or equal to the specified amount (in cents). e.g. 7000 |
| filter[type] | string | (empty) | Optional. Filter received payments by type. Valid values: Ach, Wire, Realtime. Defaults to Ach, Wire, and Realtime if not specified. |
| filter[tags] | Tags (JSON) | (empty) | Optional. Filter received payments by Tags. |
| sort | string | sort=createdAt | Optional. Leave empty or provide sort=createdAt for ascending order. Provide sort=-createdAt (leading minus sign) for descending order. |
| include | string | (empty) | Optional. A comma-separated list of related resources to include in the response. Related resources include: customer, account. See Getting Related Resources |
Polymorphic response
If you do not filter by type, the data array can mix payment rails: achReceivedPayment, wireReceivedPayment, and realtimeReceivedPayment.
curl -X GET 'https://api.s.unit.sh/received-payments?page[limit]=100&page[offset]=0&filter[accountId]=2150353&filter[type]=Realtime&filter[status][0]=Completed&filter[status][1]=Returned&filter[status][2]=Rejected&filter[status][3]=TimedOut&sort=-createdAt' \
-H "Authorization: Bearer ${TOKEN}"
Response
Response is a JSON:API document.
200 OK
| Name | Type | Description |
|---|---|---|
| data | Array of Realtime Received Payment | Array of received payment resources. |
| included | Array of DepositAccount or Customer or Transaction | Array of resources requested by the include query parameter. |
| meta | JSON object that contains pagination data | Pagination data includes offset, limit and total (estimated total items). |
Example Response:
{
"data": [
{
"type": "realtimeReceivedPayment",
"id": "30176752",
"attributes": {
"createdAt": "2026-07-10T22:43:34.385Z",
"status": "Completed",
"amount": 6911520,
"description": "Invoice 4821",
"counterparty": {
"name": "WFG NATL TITLE CO OF",
"routingNumber": "121000248",
"accountNumber": "9876543210"
},
"tags": {}
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "2150353"
}
},
"customer": {
"data": {
"type": "customer",
"id": "1802611"
}
},
"receivePaymentTransaction": {
"data": {
"type": "transaction",
"id": "101"
}
}
}
},
{
"type": "realtimeReceivedPayment",
"id": "30176753",
"attributes": {
"createdAt": "2026-07-09T15:12:01.120Z",
"status": "Returned",
"amount": 250000,
"description": "Invoice 9176",
"counterparty": {
"name": "ACME CORP",
"routingNumber": "021000021",
"accountNumber": "1234567890"
},
"returnReason": "InsufficientFunds",
"tags": {}
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "2150353"
}
},
"customer": {
"data": {
"type": "customer",
"id": "1802611"
}
}
}
},
{
"type": "realtimeReceivedPayment",
"id": "30176755",
"attributes": {
"createdAt": "2026-07-09T10:05:00.000Z",
"status": "Rejected",
"amount": 150000,
"description": "Vendor payment",
"counterparty": {
"name": "SUPPLY CO",
"routingNumber": "026009593",
"accountNumber": "4445556666"
},
"rejectReason": "ClosedAccountNumber",
"tags": {}
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "2150353"
}
},
"customer": {
"data": {
"type": "customer",
"id": "1802611"
}
}
}
},
{
"type": "realtimeReceivedPayment",
"id": "30176756",
"attributes": {
"createdAt": "2026-07-09T08:00:00.000Z",
"status": "TimedOut",
"amount": 50000,
"description": "Refund",
"counterparty": {
"name": "RETAIL PARTNER",
"routingNumber": "121000248",
"accountNumber": "1112223333"
},
"tags": {}
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "2150353"
}
},
"customer": {
"data": {
"type": "customer",
"id": "1802611"
}
}
}
},
{
"type": "realtimeReceivedPayment",
"id": "30176754",
"attributes": {
"createdAt": "2026-07-08T09:30:00.000Z",
"status": "Pending",
"amount": 100000,
"description": "Payroll deposit",
"counterparty": {
"name": "PAYROLL SERVICES INC",
"routingNumber": "026009593",
"accountNumber": "5551234567"
},
"tags": {}
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "2150353"
}
},
"customer": {
"data": {
"type": "customer",
"id": "1802611"
}
}
}
}
],
"meta": {
"pagination": {
"total": 5,
"limit": 100,
"offset": 0
}
}
}
Update
Update a Received Payment.
| Verb | PATCH |
| URL | https://api.s.unit.sh/received-payments/:id |
| Required Scope | received-payments-write |
| Timeout (Seconds) | 5 |
Attributes
| Name | Type | Description |
|---|---|---|
| tags Required | object | See Updating Tags. |
Response
Response is a JSON:API document.
200 OK
| Name | Type | Description |
|---|---|---|
| data | Realtime Received Payment | The updated Received Payment resource. |
Update received payment:
curl -X PATCH 'https://api.s.unit.sh/received-payments/:id'
-H 'Content-Type: application/vnd.api+json'
-H 'Authorization: Bearer ${TOKEN}'
--data-raw '{
"data": {
"type": "realtimeReceivedPayment",
"attributes": {
"tags": {
"by": "Richard Hendricks",
"id": "23033b64-38f8-4dbc-91a1-313ff0156d02"
}
}
}
}'