Skip to main content
POST
Capture a payment

Authorizations

Authorization
string
header
required

You can use an OAuth2 JWT bearer token in the Authorization header of your API requests for supported endpoints: Authorization: Bearer <YOUR_JWT_HERE>. These tokens are valid for 10 minutes and can be requested via the access token endpoint endpoint.

Headers

x-idempotency-key
string<uuid>
required

Idempotency key to be used. Sending again the same key would return the same result without re-executing the update.

Path Parameters

workflowCode
string
required

Path parameter to specify the workflow code. Machine-friendly code of Workflow.

Pattern: ^[a-z][-A-Za-z0-9]*$
executionId
string<uuid>
required

Identifier of the resource in Payrails.

Body

application/json
amount
object

The amount to capture, including currency. Full amount will be captured if not specified.

reason
enum<string>

Reason for invoking the operation or action.

Available options:
BetterPrice,
CustomerDontNeed,
DamagedProduct,
Duplicate,
FraudulentProduct,
LateDelivery,
NoReason,
ProductMismatchDescription,
WrongProduct,
WrongProductSpecification
reasonDescription
string

An optional field to include any necessary information for the capture action.

Example:

"Customer's automatic subscription."

meta
object

Metadata for the context of an execution. Includes Payrails-defined structures for most common fields used in workflows, but can also be extended by merchant or provider-specific fields. For more information, visit our Meta Fields guide. See Meta for every field.

final
boolean

The final parameter indicates if multiple partial captures are expected, if the value is false and the captured amount is less than the authorized amount then multiple partial captures can be applied until reaching the original authorized amount, if the value is true or the parameter is not sent the capture will be treated as a final capture and no further capture request will be accepted for it.

Response

The payment capture was requested.

name
enum<string>
required

Triggers the selected payments on PSP.

Available options:
capture
actionId
string<uuid>
required

Unique identifier for this action execution. If its processing is done asynchronously, you will receive a notification with the same actionId.

executedAt
string<date-time>
required

Date and time when execution of the Action was started.

Links to the next possible actions that can be taken.

workspaceId
string<uuid>

Unique identifier of a workspace in Payrails.

reason
enum<string>

Reason for invoking the operation or action.

Available options:
BetterPrice,
CustomerDontNeed,
DamagedProduct,
Duplicate,
FraudulentProduct,
LateDelivery,
NoReason,
ProductMismatchDescription,
WrongProduct,
WrongProductSpecification
reasonDescription
string

An optional field to include any necessary information for the capture action.

Example:

"Monthly subscription."

Last modified on October 7, 2026