Cash App Afterpay API introduction
The Cash App Afterpay API is organized around REST. The API uses predictable, resource-oriented URLs and uses HTTP status codes to indicate errors.
- All communication must use TLS 1.2 or higher.
- The API supports idempotency, which guarantees that if a request is retried, the operation is performed only once. This is especially important for partial refunds.
Afterpay recommends using UUIDs as
requestId
values. For most endpoints, requests with the samerequestId
will return the same response for up to 24 hours. Refund requests are an exception — they support idempotency for longer than 24 hours. If an idempotent request returns an HTTP 409, it means the original request is still being processed. Retry the request with the same requestId until a different response is returned. - API call response times can vary, especially when requests rely on downstream banking networks. All idempotent resources can be safely retried if a timeout occurs.
- All dates are represented in ISO 8601 format, and are stored and returned in UTC. You can provide dates in UTC (e.g.
2025-01-01T13:25:00Z
) or with a time zone offset (e.g.2025-01-01T23:25:00+10:00
for AEST).
Environments
- Production:
https://global-api.afterpay.com
- Sandbox:
https://global-api-sandbox.afterpay.com
Existing merchant using region-specific endpoints (e.g. https://api.us.afterpay.com
), can continue using them for their current region.
Pagination
The List Payment endpoint supports pagination using the includeNextLink
query parameter.