POST
/
api
/
payments
/
card
/
payment-request
/
{paymentRequestId}
/
cancel
curl --request POST \
  --url https://api.atoa.me/api/payments/card/payment-request/{paymentRequestId}/cancel \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "cancelledReasonCode": "Requested by customer",
  "cancelledReasonDescription": "Customer no longer needs the item"
}'
{
  "success": true,
  "message": "Payment cancelled successfully"
}

Cancel a previously authorized card payment. This releases the hold on the customer’s card.

Only applicable for MANUAL_CAPTURE and CAPTURE_BEFORE_EXPIRY payments that have not yet been captured. Cannot cancel AUTO_CAPTURE or already captured payments.

Authorization

Bearer <accessSecret>

Path Parameters

paymentRequestId
string
required

The payment request ID from the Charge Saved Card response.

Request Body Schema

cancelledReasonCode
string

Reason for cancellation.

cancelledReasonDescription
string

Additional cancellation notes. Max 60 characters. Required when cancelledReasonCode is Other.

Response

success
boolean

true if the payment was cancelled successfully.

message
string

Confirmation message.