Purchase Cancellation

Method

CancelPurchaseClosedLoop


Description

The Purchase Cancel Transaction feature allows the cancellation of a purchase operation in the Closed Loop model.

The API receives the cancellation request, validates the applicable timeframe rules, and, when eligible, updates the transaction status to Canceled.

Every cancellation request must include a cancellation reason code, according to the predefined cancellation reason catalog.


Cancellation Flow

The purchase cancellation process follows the steps below:

  1. Receipt of the cancellation request.
  2. Validation of the allowed timeframe (up to 2 hours after transaction confirmation).
  3. Update of the transaction status to Canceled.

Timeframe Rule

  • A purchase cancellation may be requested within 2 hours after the transaction confirmation.
  • Requests submitted after this timeframe will not be processed.
  • If the deadline is exceeded, the API will return the following message:

"The deadline to request the cancellation has expired. Please contact support."



Cancellation Reason Catalog

CodeReasonOperation TypeDescription / Example
C01User errorCash-In / Cash-Out / PaymentIncorrect amount, wrong account, or duplicated operation.
C02Insufficient fundsCash-Out / PaymentBalance lower than the requested amount.
C03Limits exceededCash-Out / PaymentDaily, monthly, or per-operation limit exceeded.
C04Duplicate operationAllSame amount, destination, and reference within a short time window.
C05Timeout / Session expiredAllUser did not complete the operation within the allowed time.
C06System technical failureAllInternal error, service outage, or no API response.
C07Fraud detected / AML blockAllSuspicious pattern, watchlist match, PEP, or KYC alert.
C08Cancellation requested by userAllUser voluntarily cancels before confirmation.
C09Merchant does not accept paymentPaymentMerchant rejection (e.g. expired QR code or mismatched amount).
C10Blocked or inactive accountAllAccount suspended or pending KYC.
C11OTP / Biometric validation errorAllIncorrect OTP after 3 attempts or biometric validation failure.
C12Unauthorized deviceAllOperation performed from an unregistered device.
C13Chargeback reversalPaymentCustomer disputes a card payment after execution.
C14Support-initiated cancellationAllOperation canceled by a support agent after a validated request.
C15Reconciliation failureCash-InDeposit received but not reconciled within 48 hours.

JSON Request

{
  "Method": "CancelPurchaseClosedLoop",
  "BusinessUnitId": 30420,
  "PartnerId": 10409,
  "MerchantAccountKey": "378320-014700-0146333-1",
  "OriginalIdentifier": "8974841514514514sd",
  "Identifier": "8974841514514514sd",
  "Reason": "C01"
}

 JSON Response
{
  "Success": true,
  "Message": ""
}