For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
GuidesAPI Reference
GuidesAPI Reference
  • Reference
    • Introduction
      • GETList Payments
      • POSTAuth
      • POSTCapture Full Payment
      • GETGet Payment By Order ID
      • PUTUpdate Payment by Order ID
      • POSTCapture Payment
      • PUTUpdate Shipping Courier
      • POSTCreate Refund
      • POSTVoid
      • GETGet Payment By Token
      • POSTReverse Payment By Token
LogoLogo
ReferencePayments

Capture Payment

POST
/v2/payments/:orderId/capture
POST
/v2/payments/:orderId/capture
$curl -X POST https://global-api-sandbox.afterpay.com/v2/payments/orderId/capture \
> -H "User-Agent: User-Agent" \
> -H "Content-Type: application/json" \
> -u "<username>:<password>" \
> -d '{}'
1{
2 "id": "300000016189",
3 "token": "002.6bjbsaowxvfqam2nw4u3xudppheuh4gsuat3n2w3f6t44euzgy",
4 "status": "APPROVED",
5 "created": "2024-03-11T20:11:42.487Z",
6 "originalAmount": {
7 "amount": "37.00",
8 "currency": "USD"
9 },
10 "openToCaptureAmount": {
11 "amount": "0.00",
12 "currency": "USD"
13 },
14 "paymentState": "CAPTURED",
15 "merchantReference": "updated-k6-reference-utaddnpx",
16 "refunds": [],
17 "orderDetails": {
18 "consumer": {
19 "email": "test@example.com"
20 },
21 "billing": {
22 "name": "Joe Customer",
23 "line1": "1004 New Avenue",
24 "area1": "Melbourne",
25 "region": "VIC",
26 "postcode": "94121",
27 "countryCode": "AU",
28 "phoneNumber": "2120000000",
29 "countrycode": "US"
30 },
31 "courier": {
32 "shippedAt": "2024-01-01T08:00:00Z",
33 "name": "FedEx",
34 "tracking": "000 000 000 000",
35 "priority": "STANDARD"
36 },
37 "items": [
38 {
39 "name": "Blue Carabiner",
40 "quantity": 1,
41 "price": {
42 "amount": "40.00",
43 "currency": "USD"
44 },
45 "sku": "12341234"
46 }
47 ],
48 "shipping": {
49 "name": "Joe Customer",
50 "line1": "1004 New Avenue",
51 "postcode": "94121",
52 "countrycode": "US",
53 "phoneNumber": "2120000000"
54 },
55 "categories": {
56 "name": "Jeans",
57 "sku": "123412345",
58 "quantity": 1,
59 "price": {
60 "amount": "20.00",
61 "currency": "USD"
62 },
63 "categories": null
64 }
65 },
66 "events": [
67 {
68 "id": "2dYbLXpOtEPQbg1DT7x9D8R4oCY",
69 "created": "2024-03-11T20:11:43.897Z",
70 "expires": {},
71 "type": "CAPTURED",
72 "amount": {
73 "amount": "37.00",
74 "currency": "USD"
75 },
76 "paymentEventMerchantReference": "k6-gsrdqspusf"
77 }
78 ],
79 "discounts": [],
80 "shippingAmount": {
81 "amount": "10.00",
82 "currency": "USD"
83 },
84 "taxAmount": {
85 "amount": "0.00",
86 "currency": "USD"
87 }
88}
This endpoint captures a full or partial payment. Any amounts successfully captured are settled from Afterpay to the merchant's nominated bank account on the following day. Records of all payments captured against an order are returned in the events list as events of type, "CAPTURED". **Note:** Authorization expires after 13 days and then the transaction is automatically voided. Voided transactions are frozen and cannot be captured, reopened or changed in any way. In this case your only option is to use the v2/checkouts endpoint to create a new order. This operation is idempotent based on the `requestId` (if provided), which allows the safe retry of multiple requests. This safe retry guarantees the payment operation only occurs once. **Connection Timeouts** | Timeout | Time (Seconds) | |---------|----------------| | Open | 10 | | Read | 70 |
Was this page helpful?
Previous

Update Shipping Courier

Next
Built with

This endpoint captures a full or partial payment. Any amounts successfully captured are settled from Afterpay to the merchant’s nominated bank account on the following day. Records of all payments captured against an order are returned in the events list as events of type, “CAPTURED”.

Note: Authorization expires after 13 days and then the transaction is automatically voided. Voided transactions are frozen and cannot be captured, reopened or changed in any way. In this case your only option is to use the v2/checkouts endpoint to create a new order.

This operation is idempotent based on the requestId (if provided), which allows the safe retry of multiple requests. This safe retry guarantees the payment operation only occurs once.

Connection Timeouts

TimeoutTime (Seconds)
Open10
Read70

Authentication

AuthorizationBasic

Basic authentication of the form Basic <base64(username:password)>.

Path parameters

orderIdstringRequired

The unique ID of the Afterpay Order, returned as the id property of the Auth response.

Headers

User-AgentstringRequired
AcceptstringOptionalDefaults to application/json

Request

requestIdstringOptionalformat: "uuid"
A unique request ID, required for idempotent retries.
merchantReferencestringOptional

The reference/order ID that this payment corresponds to in the merchant’s system.

Note: Providing a new value updates any value previously set in the Create Checkout request.

amountobjectOptional
Object containing amount and currency
paymentEventMerchantReferencestringOptional<=128 characters
A unique reference for the individual payment capture event. If provided, the value appears in the daily settlement file as "Payment Event ID"

Response

If successful, returns an updated copy of the Payment object, with the newly captured payment appended to the events array as a Payment Event object with a type of “CAPTURED”.

idstring
The unique, permanent, Afterpay generated Order ID.
tokenstring
The token obtained from the checkout call
statusenum
represents the status of the order
Allowed values:
createdstring
is the UTC timestamp of when the payment was completed.
originalAmountobject
Object containing amount and currency
openToCaptureAmountobject
Object containing amount and currency
paymentStateenumRead-only
is the current state for capturing payments
merchantReferencestring

is the merchant’s order id/reference that the payment corresponds to.

refundslist of objects
orderDetailsobject
This comprehensive schema is designed to store an entire transaction's detail, covering crucial aspects like consumer information, billing and shipping details, courier particulars, item list, discounts, tax, and shipping amount.
eventslist of objects

Errors

404
Not Found Error
410
Gone Error
412
Precondition Failed Error
422
Unprocessable Entity Error