Skip to content

Captures a transaction

Request

POST {{baseURL}}/v2/transactions/{{transactionId}}/capture

This endpoint captures a transaction.

This captures a previously authorized transaction and settling it for the specified amount. It is used when a transaction was created with captureMethod of Manual. This allows merchants to delay settlement until fulfillment is confirmed. The captureAmount can be less than or equal to the original authorized amount to support partial captures.

If successful, this returns the full transaction object reflecting the updated status. A processor declining the transaction returns a 402 error.

See Also:
To list transactions, see GET /v2/transactions.
To retrieve a transaction by ID, see GET /v2/transactions/{transactionId}.
To create a new transaction, see POST /v2/transactions.

Security
Bearer
Path
transactionIdstring, (uuid)required

Specifies the transaction identifier.

Example:487471b7-0149-44ed-840b-97d920e06829
Bodyapplication/json

Specifies an object defining the transaction.

If the request body is null or omitted, a full capture is included.
If baseAmount is included, a partial capture is made.

captureAmountnumber or null, (double), decimal places <= 2

Specifies the amount to capture (in USD).

If null or omitted, the full authorized amount is captured.
If an amount is specified, a partial amount is captured.

This value must both:

  • Be greater than zero
  • Not exceed the remaining authorized amount.

Examples:
null
129.99

Example:129.99
curl -i -X POST \
  https://developer.flute.com/_mock/api-reference/v2/v2/transactions/487471b7-0149-44ed-840b-97d920e06829/capture \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "amount": 50
  }'

Responses

OK

Bodyapplication/json
itemsArray of objects or null
pageInfoobject

Indicates an object describing the pagination status.

If additional pages to review are needed, repeat the exact same search but include a new pageIndex value. Typically, this will increment the current pageIndex by one. However, any valid value may be used. Value restrictions include:

  • A value less than zero is not permitted.
  • Values equal to or greater than totalPages end successfully but will not return any items.
Response
{ "transactionId": "1db9c80e-1265-49b9-b2ef-fbf92acf5d42", "transactionStatus": "Approved", "processedAmount": 100, "currencyCode": "USD", "amountDetails": { "baseAmount": 100, "tipAmount": 0, "surchargeAmount": 0, "discountAmount": 0 }, "processorResponse": { "processorName": "TSYS", "responseCode": "00", "responseMessage": "Approved", "responseDefinition": "Approved and completed" }, "responseDetails": null, "addressVerificationServiceResponse": null, "receipt": null }