1. Refunds
Kushki Docs
English
  • Español
  • English
  • Home
  • Quick Start
    • Frequently Asked Questions
    • Moving to Production
    • Policy for Important API Changes
    • Test Data
    • Error Codes
    • Latest Features
  • Payment Glossary
    • Payments Glossary
  • One-time card payments (Online)
    • Supported card brands
    • Functionalities by business model
    • Network Tokens
    • One-step Payments
      • How do Card Payments Work?
      • Accept a Card Payment
      • Direct charge (without token)
      • Accept One-Time Payments with OTP
      • OTP Authentication Error Codes
      • Error codes for single card payments
    • Two-steps Payments
      • How do one-time payments with authorization and capture work?
      • Receive payments with authorization and capture
    • Refunds
      • Returns, cancellations, and refunds
    • 3DS Authentication
      • Introduction to 3DS
      • 3DS API integration
      • 3DS integration with kushki.js library
      • 3DS API integration plus kushki.js library
      • 3DS Error Codes
    • Apple Pay Payments
      • Apple Pay Configuration
      • Apple Pay Sandbox testing
  • Recurring Card Payments (Online)
    • Functionalities by business model
    • External subscriptions to Kushki
    • Authenticate your subscriptions with 3DS
    • Accept one-click payments with 3DS
    • Error codes in recurring charges
    • Apple Pay for Subscriptions
    • Scheduled payments
      • How do Credit or Debit Card Payment Recurring Charges Work?
      • Create a recurring charge
      • Manage your Scheduled Charges
    • OneClick Payments
      • Accepting One-Click Payments
      • How does authorization and capture work in OneClick payments?
      • Receive OneClick payments with authorization and capture
  • Card-present payments
    • Accept card present payments
    • Test data
    • Webhooks for card present
    • Raw card-present API
      • Raw card-present API overview
      • Cryptographic key exchange
      • Sample script to encrypt information
      • Take Payments
      • Frequently Asked Questions
      • Error codes for card-present transactions
    • Transactions
      • Transactions
      • Cancel payments
    • Kushki One
      • First Steps
      • Autenticación y Cifrado de Requests
      • Accept payments with Kushki One
      • Amount Format
      • Async services and webhooks
      • Printing on SmartPOS terminal
      • Unified Error Catalog — Kushki ONE Connect
    • Kushki One Payment App
      • Overview
      • Process a payment
      • Split payment on the terminal
      • Refunds and PreAuth & Capture
      • Review Your Transactions
      • Terminal Setup
  • Wire Transfers
    • Shopping experiences and transaction details for bank transfer payments
    • Receive Wire Transfers
    • Check the Status of a Transaction
  • Cash Payments
    • Accept a Cash Payment
    • Authorized locations
    • Error Codes for declined cash transaction
  • Alternative payment methods (APM)
    • How do APM payments work?
    • Accept Yape payments
  • Money Disbursement
    • Wire Transfer
      • How does the disbursement through bank transfer work?
      • Payment disbursement to bank accounts
      • Error codes for transfer disbursements
    • Card
      • How does sending funds to cards work?
      • Send money to a card
      • Error Codes
  • Plugins
    • Shopify
      • Shopify
      • Plugin Operation
    • VTEX
      • VTEX Integration Guide
  • Payment Links
    • Smartlinks
  • Payment forms and buttons
    • Kajita
      • How Does it Work?
      • Payment Kajitas
    • Payment Button
      • Overview
      • Generate a payment button
  • Branch Offices Management
    • How to Onboard Submerchants via API
  • Notifications
    • Good Practices
    • Check your Webhooks
    • One-time Payments Webhooks
      • Webhook for One-Time Payments made with a card
      • Webhook for One-Time Payments by Wire Transfer
      • Webhook for One-Time Payments in Cash
    • Recurring Payments Webhooks
      • Webhook for Recurring Payments Made with Card
    • Payment Distribution Webhooks
      • Webhook for payment disbursement through wire transfer
      • Webhook for card disbursement
    • Payment button Webhooks
      • Webhooks with Payment Button
    • Smartlinks Webhooks
      • Webhooks with Smartlinks
    • Refunds Webhooks
      • Webhook for Voids and Refunds
      • Chargeback Webhooks
HomeMexico 🇲🇽Ecuador 🇪🇨Chile 🇨🇱Colombia 🇨🇴Peru 🇵🇪
HomeMexico 🇲🇽Ecuador 🇪🇨Chile 🇨🇱Colombia 🇨🇴Peru 🇵🇪
Status
Soporte / Support
English
  • Español
  • English
  1. Refunds

Returns, cancellations, and refunds

Learn how to cancel a payment or request a refund for your customers
This functionality is available for the following models:
☑ Acquirer

☑ Aggregator
With Kushki you can process debit and credit card payment returns with an approved status. Once a return is approved, the funds will be returned to your customer's card.
Important
Kushki only supports returns in card payments. To manage returns of payments made by wire transfer or cash, you must carry out the process manually, in agreement with your customer.
Returns can be of two types, according to the day and the time the original transaction and the cancellation request are processed:

1. Online cancellation (Void)#

It occurs when the return request is processed during the same day of the transaction, before 20:59 with the aggregator model, and before 23:59 with acquiring model.. We will make up to three return attempts with the processor and if successful, the purchase will be removed from your customer's bank statement and the purchase amount will be returned to his/her account.
Online Cancellation Void EN

2. Refund#

When an online cancellation is not possible, a refund will be required. This type of refund can take up to 7 business days to processed and up to 45 business days to appear on your customer's bank statement, depending on the card issuing bank.
Manual Refund EN
Refund can occur in the following scenarios:
When the return requests are processed under the following conditions:
Aggregator Model (Gateway): After 20:59 PM on the day on which the customer’s payment took place.
Acquiring: After 23:59 PM on the day on which the customer’s payment took place.
When the three online cancellation attempts fail.
When the cancellation request is made on a day other than that of the original transaction.

How to process a return?#

The return process can have two outcomes: Void or Refund. The return will be done as void if it is requested on the same day as the transaction and meets the following timeframes:
Aggregator Model (Gateway): Before 20:59 PM on the day of the transaction.
Acquiring Model: Before 23:59 PM on the day of the transaction.
If it exceeds that time, then it will be processed as a refund. Refunds can take up to 7 business days to process and up to 45 business days to reflect on your customer's statement, depending on the card issuing bank.
You have up to 6 months after a charge has been made to request a refund for a transaction.
You can process returns from your Administration Console as explained here or integrate our cancellations request API method into your application, so that your buyers can request the return of a purchase from your website.
If you integrate returns via API, you only need to use the cancellation request method. In case it is not possible to complete an automatic cancellation of the transaction, Kushki will process it as a manual return.
Once a return request is approved, this action will not be reversed.
In order to request the cancellation of a payment, it is necessary to use the ticketNumber of the original transaction as path parameter and send your private credential, as shown in the example below:
JavaScript
Python
PHP
Check our API reference for more information.

What is the time limit to request a refund?#

The time limit for your customers to request a refund varies depending on the affiliation model:
Aggregation (Gateway)Kushki Acquiring
Up to 6 months after a payment has been made.Up to 120 days after a payment has been made.

How to process a partial return?#

You can allow your customers to request partial returns using the same transaction cancellation endpoint. Therefore, a single charge may have multiple related return requests, provided that the sum thereof does not exceed the total amount of the original transaction.
Partial returns can be requested manually, through the Administration Console or via API, as explained below.

Partial returns via API#

In order to request a partial return, you can use the cancellation request endpoint. You must send the ticketNumber as path parameter, your private credential and the amount and taxes breakdown in the amount object. Make sure that the calculation of taxes and amounts is correct.
JavaScript
Python
PHP

How to check the status of a return?#

You can check the status of a cancellation from your Administration Console as explained here or set up a Webhook for returns, in which Kushki will notify you when a return request, either a cancellation (void) or a refund, is successfully completed.

Recommended
Check the status of your returns
Modificado en 2026-10-14 19:58:42
Anterior
Refunds
Siguiente
3DS Authentication
Built with