Skip to content

Refunds and chargebacks when shoppers pay by bank transfer

How refunds and disputes work when shoppers pay by Pix, SPEI, Transfers 3.0, ACH, or RTP in 2026, and how to design a refund policy for a checkout.

When shoppers pay by bank transfer, there is no card-style chargeback for buyer's remorse. Pix, Transfers 3.0, and RTP credit the merchant with final payments, and Brazil's MED covers only fraud and operational failures. So a refund is a new payment you send back. Write the policy before launch: which amount, which rail, how fast, who pays.

This guide is part of the series on what a global payments checkout is. For the exchange-rate math of a refund, read refunding a cross-border payment after the FX moved.

Key takeaways

  • Brazil's MED handles fraud, scams, and operational failures for transactions up to 80 days old; commercial disputes go to the courts, per the Banco Central do Brasil.
  • A Pix receiver may return all or part of a payment voluntarily within 90 days.
  • Argentina's BCRA describes Transfers 3.0 payments as irrevocable, and The Clearing House describes RTP settlement as final.
  • On BlindPay, a payin ends completed, failed, or refunded; refund a completed checkout with a payout quote and payout.
  • Baymard found 13% of US shoppers abandoned an order because the returns policy was not satisfactory.

How do bank transfer disputes differ from card chargebacks?

A card payment can be pulled back through the card network's dispute process. A bank transfer is pushed by the shopper from their own bank app, and most instant rails treat it as final.

That changes who holds the risk. On cards, the merchant waits to see if a dispute arrives. On push transfers, the shopper trusts the merchant to refund, and the merchant decides how. Each rail has its own rules:

RailCan the payer pull the money back?Return pathSource
Pix (Brazil)Only through MED, for fraud, scams, or operational failures, up to 80 daysReceiver may return all or part within 90 daysBCB MED guide
Transfers 3.0 (Argentina)No, payments are irrevocableA new transfer from the merchantBCRA
RTP (US)No, settlement is finalA new RTP or ACH paymentThe Clearing House
ACH (US)In limited cases, on request to the sender's bank, within 5 daysA new ACH creditStripe bank transfer docs
Card (any)Yes, through the card network's dispute processRefund to the cardThe card network's rules

The Pix row matters most for Latin America. The Banco Central do Brasil's MED guide lists purchases delivered late, products that did not meet expectations, or the wrong model as examples where a refund cannot be requested through MED. Those disagreements are resolved in the courts, not by the payment system.

Card gateways that offer Pix reflect the same split. Stripe's Pix docs list refunds within 90 days and full disputes only, and say a Pix dispute can't be contested through Stripe, because the partner's decision is final.

What payment outcomes does a bank transfer checkout have to handle?

Three terminal outcomes, plus one waiting state. Each needs a screen and a webhook to the merchant.

On BlindPay, a payin moves through these statuses:

  • completed. Stablecoins were delivered to the merchant's wallet. Confirm the order.
  • failed. The payin did not go through, for example because the deposit never arrived in the monitoring window. No money to return.
  • refunded. The deposit was returned to the sender. Mark the session failed and show "This payment did not go through."
  • on_hold. Manual risk or compliance review. Not final. Keep the order open and tell the shopper the payment is being reviewed.

BlindPay's cut-off reference lists common causes of failed or refunded payments: incorrect details, a receiving bank rejection, a closed or restricted account, or unmet compliance requirements. It also notes that fiat refunds are credited once the banking network returns the funds, and fees may apply to fiat refunds.

Listen for payin.complete, which fires when the payin finishes, and read status to know which outcome you got. Payout statuses explained uses the same status words on the outbound side.

How do you refund a shopper after a completed checkout?

Send the money back as a payout. The merchant's balance sits in stablecoins, so a refund converts back to the shopper's currency and lands over a local rail.

  1. Approve the refund in your system and record the reason, the order, and the original payin id.
  2. Collect the shopper's payout details. A Pix key or bank details for Brazil, a CLABE for Mexico, a CBU or CVU for Argentina, a bank account for Colombia or the US. A payout goes to a bank account saved under a BlindPay customer, so follow the onboarding steps in the payouts docs.
  3. Decide the amount. Refund the local amount the shopper paid, or the dollar price. The exchange rate has likely moved since the purchase.
  4. Request a payout quote. It locks the rate and fees for 5 minutes. Use a receiver-side amount if you promised the exact local amount back.
  5. Execute the payout before the quote expires, with an Idempotency-Key tied to the refund so a retry never pays twice.
  6. Tell the shopper the expected arrival time for that rail, and close the refund when the payout completes.

Pix, SPEI, and Transfers 3.0 refunds settle in minutes. ACH Colombia takes about 1 business day, and ACH and wire about 1 to 2 business days.

How do you design a refund policy for a bank transfer checkout?

Decide five things and publish them before checkout, not after a complaint. Baymard's research found 13% of US shoppers abandoned because the returns policy was not satisfactory.

  • Window. For example, 30 days from delivery. Pix's 90-day voluntary return window is a ceiling for the rail, not a policy you must match.
  • Amount. Local amount paid, or the dollar price converted at the refund date. Shoppers usually expect the local amount back.
  • Fees and exchange. Who pays the refund payout's fees. If you charged the shopper's fees at checkout, consider absorbing them on the refund. Who pays the fees at checkout covers the quote settings.
  • Timing per rail. Minutes for Pix, SPEI, and Transfers 3.0; about 1 to 2 business days for ACH and wire.
  • What the shopper sends you. Which payout details you need, and how to send them safely.

One more rule for the US. Because ACH payments can be reversed in limited cases, ship goods only after the payin status is completed. Pay by bank at a US checkout compares the US rails by speed.

How does BlindPay handle failed, refunded, and returned payments?

BlindPay reports every outcome as a typed payin status and lets you send refunds over the same local rails your shoppers used to pay.

On the way in, a payin ends completed, failed, or refunded, with on_hold for manual review, and the tracking_transaction, tracking_payment, and tracking_complete objects show finer steps for a support view. Webhooks (payin.new, payin.update, payin.complete) are signed, and GET /v1/e/payins/{id} powers a payer receipt without an API key.

On the way out, a refund is a payout: a quote that locks rate and fees for 5 minutes, then delivery over Pix, PIX Safe, TED, SPEI, Transfers 3.0, ACH Colombia, ACH, wire, RTP, SEPA, Faster Payments, or SWIFT (POBO/COBO). If a payout cannot be delivered after the stablecoins are collected, BlindPay refunds them to the quote's refund wallet, or to the sending wallet when none is set; on Pix and other non-USD local rails the refund is automatic, while USD payouts and payouts whose review times out are refunded after an operator review.

On a development instance, request_amount 66600 forces failed and 77700 forces refunded, so you can test both screens before launch. Confirm consumer refund obligations in each country with your compliance counsel.

Who this is for: merchants and checkout platforms that accept Pix, SPEI, Transfers 3.0, PSE, ACH, or RTP and need a refund process that works without card chargebacks.

Methodology and sources

Pix return and MED rules come from the Banco Central do Brasil's MED guide, version 4.3. Transfers 3.0 comes from the BCRA and RTP from The Clearing House. ACH reversals and Pix dispute handling on a card gateway come from Stripe's bank transfer docs and Stripe's Pix docs. Returns-policy abandonment comes from Baymard. BlindPay behavior comes from the payins, payouts, and cut-off times docs, as of October 2026. For Pix collection details, read accepting Pix payments from abroad.

What to do next

Write your refund policy in five lines: window, amount, fees, timing per rail, and the details you need. Then test it on a BlindPay development instance: force a refunded payin with 77700, and send a refund payout for a completed one.

FAQ

One API.
Multiple payment rails.

Blind Pay, Inc. (“BlindPay”) is a United States-based financial technology and payments infrastructure company, incorporated in the State of Delaware on May 2, 2024. BlindPay is duly registered as a Money Services Business (“MSB”) with the Financial Crimes Enforcement Network (“FinCEN”) under registration number 31000277566153. BlindPay is not a state-licensed money transmitter and does not, in its own capacity, engage in regulated money transmission services. All such regulated activities are conducted exclusively through, and under the licenses of, duly authorized financial institution partners. BlindPay's role is limited to providing financial technology, virtual account management, payment processing, and related payments infrastructure services that facilitate payment flows and account functionalities. These services are provided in coordination with its licensed partners and in compliance with applicable federal MSB requirements and relevant state regulatory frameworks.

Blind Pay, LLC (“BlindPay”) is a Delaware limited liability company formed on June 24, 2025. BlindPay is duly registered as a Money Services Business (“MSB”) with the Financial Crimes Enforcement Network (“FinCEN”) under registration number 31000318334247 and is listed in the Nationwide Multistate Licensing System (“NMLS”) under NMLS ID #2745309.

BLIND PAY SOCIEDADE PRESTADORA DE SERVIÇOS DE ATIVOS VIRTUAIS LTDA. (“BlindPay”) is a Virtual Asset Service Provider (“VASP”) operating in Brazil. The company is presently completing the regulatory adaptation process required of Virtual Asset Service Provider Companies (SPSAV) under Central Bank of Brazil Resolution No. 520/2025, and remains subject to the transitional regime set forth in Article 88 of that Resolution. Registered address: Avenida Princesa Isabel, nº 15, Sala 1405, Edifício Martinho de Freitas, Centro, Vitória/ES, 29010-361.

BlindPay is a stablecoin API that enables individuals and businesses to move money worldwide.