Skip to content

Refunds

Give money back to a customer from where you see the payment — with identity confirmation along the way.

Where to refund

It depends on how the money came in:

The payment came in through… Refund it from…
A quote link (full payment, deposit, balance or installments) or a retainer Revenue › Payments (/app/cobros), with the Refund button in “Recent payments”.
An invoice link, the client portal or automatic payments The invoice detail page, with the Refund button next to the payment. See Refunding an invoice payment.
A quote link, collected with Mercado Pago Your Mercado Pago account; Cord reads it and records it on its own (see Mercado Pago).
A manually recorded payment (transfer, cash, check) Outside Cord: Cord did not move that money, so there is no button. You handle the refund directly with your customer.

In Revenue › Payments, every row in “Recent payments” that corresponds to a payment reconciled through Cord Payments has the Refund button. Once a refund is confirmed, Cord reflects it in the balance of each invoice that money paid (see Effect on a linked invoice).

Refunding requires the Refunds permission. This permission is not granted automatically to team administrators — the account owner has to explicitly grant it to each member who needs to issue refunds, from Settings › Team. This is intentional: moving money out of the account is a more sensitive action than administering it.

How it works

In Revenue › Payments (an invoice’s detail page works the same way, with what is explained below):

  1. Click Refund on the payment’s row.
  2. A dialog opens with the amount available to refund (it may be less than the total, if you already issued a partial refund before) and an optional internal reason field.
  3. Enter the amount — the full total or just a portion.
  4. Tick the box confirming you understand that the refund returns the stated amount to the customer but does not automatically refund Cord’s platform fee. You can’t confirm without it.
  5. Since this moves money, Cord asks you to re-confirm your identity (your password or your 2FA code) before executing the refund, even if your session was already active. It’s the same “re-authentication” mechanism that protects other sensitive account actions.
  6. The refund is logged in your organization’s audit trail, with the amount, the reason (if given), and who authorized it.

You can refund the same payment more than once, as long as the accumulated total doesn’t exceed what was originally charged — the dialog always shows you how much is still available.

Refunding an invoice payment

This feature is new and may not be enabled on your account yet. If you don’t see it, write to us.

On an invoice’s detail page, the Payments section lists each payment. An online payment —by card, bank debit (SEPA, ACH, Bacs or Canadian pre-authorized debit), bank transfer (SPEI or with a reference) or Mercado Pago— that came in through the invoice link, the client portal or automatic payments has the Refund button. Under each payment you see what has already been refunded and what is in progress.

Detail of Materiales del Valle's invoice FAC-000231, scrolled to the payments: totals with Refunded $4,250.00 MXN, Paid $196,469.20 MXN and Balance $4,250.00 MXN; the Payments section with the deposit from quote COT-0148 and its "Refunded from Revenue › Payments" link, a $40,000.00 MXN card payment with "Refunded $4,250.00 MXN" and its Refund button, a $30,000.00 MXN SPEI payment with "Refund in progress $2,000.00 MXN" and its Refund button, and a manually recorded transfer with no button; at the bottom, the note about manual payments and the reminder that the CFDI remains valid.
  1. Click Refund next to the payment.
  2. Cord checks the payment and tells you what can be returned before you confirm: the available amount, whether it accepts a partial amount and, if it can’t be refunded, why.
  3. Enter the amount (or confirm the total), add an internal reason if you want, and check the box confirming that Cord’s platform fee is not refunded automatically.
  4. Confirm. Cord asks you to confirm your identity again if you haven’t in the last 10 minutes, just like in Payments.
  5. The refund is recorded in the audit log and in the invoice’s activity.
Refund payment dialog for a $40,000.00 MXN card payment: the note that the money goes back to the client's card, Refund amount (MXN) with 4250.00 entered and "Available to refund: $40,000.00 MXN", the internal reason, the note that the refund does not cancel the CFDI, the Cord fee checkbox checked, and the Confirm refund button.

What each method allows

Method Refund Window and timing
Card Full or partial The money goes back to the client’s card within their bank’s timeframes.
SEPA debit (EUR) Full or partial Up to 180 days after the charge. It takes 3 to 4 business days to process and up to 5 to reach the client’s account.
ACH debit (USD) Full only Up to 180 days after the charge. It takes up to 3 business days and reaches the client as a credit that doesn’t say “refund”: let them know.
Bacs debit (GBP) Full or partial Up to 180 days after the charge. It takes 3 to 4 business days. Your client can dispute the debit with their bank at any time, even after the refund: let them know you’re returning it so they don’t receive it twice.
Pre-authorized debit (CAD) Full or partial Up to 180 days after the charge. It takes about 3 business days, can’t be cancelled and reaches the client as a credit that doesn’t say “refund”: let them know.
SPEI transfer (MXN) or bank transfer with a reference (EUR, GBP or USD) Full or partial Up to 180 days after the charge. It goes back to your client’s bank account: they receive an email to provide it and, until they do, the refund is on hold without reopening the balance. If they don’t respond within 45 days, the refund isn’t completed and the money stays as a balance in their favor in your payments account: write to us to return it. To request it, the invoice needs the client’s email.
Mercado Pago Full or partial It leaves your connected Mercado Pago account and goes back to the method the client paid with.
Refund payment dialog for a $30,000.00 MXN SPEI transfer payment: the note that the client receives an email to provide their bank account and that the refund waits until then, the 2000.00 MXN amount, the reason, the CFDI note, and the fee checkbox checked.
  • A bank debit in progress doesn’t appear among the invoice’s payments yet, and it can’t be refunded until it’s confirmed. The invoice detail page says so.
  • An invoice’s bank transfer payment (SPEI or with a reference) is returned by the processor to the account your client provides, not by a transfer of yours. This differs from a transfer collected on a quote (see Card vs. bank transfer).
  • A payment that came in through the quote (the quote was already paid, fully or partially, when it was invoiced) is refunded from its payment in Revenue › Payments, or from your Mercado Pago account if Mercado Pago collected it. The invoice reflects it on its own.
  • A manually recorded payment has no button: Cord did not move that money and can’t return it.
  • If the provider has a refund of that payment that Cord hasn’t recorded yet (for example, one issued outside Cord a few minutes ago), Cord waits to record it before letting you request another.

What happens on the invoice

  • A confirmed refund reopens that amount: a paid invoice goes back to open with that balance, and one with an outstanding balance increases it. One in progress (bank debits, a transfer waiting for the client’s account, Mercado Pago under review) doesn’t touch the balance until it’s confirmed.
  • On a voided invoice that received a late payment, refunding it lowers the “Amount to return to client”.
  • The invoice’s activity records each refund once: “Refund of …” when it’s confirmed, “Refund of … requested” while it’s in progress, and “The refund of … did not go through” if it fails. The provider’s notice that arrives later doesn’t count it twice.
  • With Cord Payments, the refund also triggers the refund.succeeded and refund.failed events of your webhooks, like any other refund.
  • The refund doesn’t change the document: the invoiced amount stays the same. If what you return will no longer be charged, also issue a credit note (see Effect on a linked invoice).
Detail of Estructuras Levante's invoice F2026-000148, in euros, scrolled to the payments: below the €7,818.20 EUR Balance, the notice of a bank debit in progress; under Payments, a €6,000.00 EUR SEPA debit with "Refund in progress €850.00 EUR" and its Refund button, and the note that the debit in progress will appear once confirmed.

Mexico: the CFDI remains valid

Refunding the payment doesn’t cancel or change the stamped CFDI: before the SAT, the invoice remains valid for its original amount, and if that payment had a payment complement, the complement isn’t canceled either. To document the return, issue a credit note from More actions › Credit note: in Mexico it is a CFDI de egreso (type E) with use G02 “Returns, discounts or rebates” and relationship 01 to the invoice’s UUID.

Cord doesn’t issue it on its own, because not every refund is a return of the sale: refunding a duplicate charge, for example, doesn’t change what was invoiced. Decide the amount with your accountant. While there is refunded money without a credit note covering it, the invoice detail page reminds you.

Card vs. bank transfer: two different flows

Card

The refund is processed automatically as soon as you confirm it — no manual step required on your part. The money returns to the customer’s original card on whatever timeline their bank handles.

Bank transfer (SPEI or with a reference)

In Revenue › Payments, refunding a transfer collected on a quote —SPEI in Mexico or bank transfer with a reference in EUR, GBP or USD— requires a manual transfer by the business. Requesting it in the dashboard does not itself return the money (an invoice’s transfer is returned to the account your client provides: see What each method allows):

  1. Gets recorded in Cord as “pending, manual refund”.
  2. Cord automatically creates in Tasks a task titled “Send the [amount] SPEI refund” (or “Send the [amount] bank transfer refund” for a bank transfer with a reference), in your account’s language: high priority, linked to the quote, and assigned to whoever requested the refund. It emits A task is created (task.created) like any task.
  3. You make the transfer yourself through your normal bank account, and mark the task as completed.

Completing the task closes your to-do, but doesn’t record the refund as paid: in Cord it stays “pending, manual” and A refund succeeds (refund.succeeded) isn’t emitted. The amount stays set aside, so it can’t be refunded again. Keep the transfer receipt on your side.

What happens to your money

  • The refunded amount is deducted from your net revenue across all of the Payments reports — it never stays “hidden” in the total collected figure.
  • The platform fee Cord charged on the original payment is not refunded automatically, and the payment processor’s fees are governed by its own terms. It’s a processing cost that already occurred when the card was charged or the transfer was received — refunding the customer doesn’t reverse that cost. See the details in Fees and advantages.
  • If the refunded payment was part of a quote with an upfront deposit and balance, the refund only affects the specific payment you chose — not the rest of that quote’s slices.

A refund does not revert the quote’s status — it stays marked as paid. If you also need to cancel the quote itself (for example, because the entire order was called off), do that from the quote’s detail page separately.

Effect on a linked invoice

Cord distinguishes a requested refund from a confirmed one. Only confirmed refunds count toward money returned on the invoice; a repeated event doesn’t subtract it again. A refund can arrive before the payment record and await that link.

A confirmed refund reopens that amount in the invoice balance: the invoice is no longer paid for that amount. If the refund is for something that won’t be collected anymore (a returned product, a service that wasn’t delivered), also issue a credit note for that amount: a credit note reduces the document amount while a refund returns money, and they’re separate actions. Review balance calculation.

Refunding a charge that paid several invoices

This feature is new and may not be enabled on your account yet. If you don’t see it, write to us.

From the client portal and with automatic payments, a single charge can pay several invoices.

If you refund from Cord, you do it from the detail page of one of those invoices and choose:

  • This invoice only: up to what the charge applied to that invoice, minus what has already been returned to it. The refund goes to that invoice, not to the last one.
  • The whole payment: returns everything left of the charge and reopens each invoice for what it paid.
Refund payment dialog for a charge that paid 2 invoices: the explanation of the grouped payment, the This invoice only option selected with its $52,316.40 MXN limit and the The whole payment (2 invoices) option with $101,256.40 MXN, the amount, an empty reason, the CFDI note, and the fee checkbox unchecked.

An ACH charge only allows The whole payment: returning a single invoice’s share would be a partial refund.

If the refund is issued outside Cord (or you choose The whole payment), Cord allocates the refund among the invoices the charge paid:

  1. From the last one to the first. The refund is assigned starting with the last invoice the charge was applied to, and works backwards.
  2. Up to what each invoice received. Each invoice is assigned at most what it received from that charge, minus what other refunds of the same charge already assigned to it.
  3. All or nothing. If the refund doesn’t fit entirely in what the charge applied (for example, because the refund notice arrived before the payment notice), it isn’t split halfway: it waits and is allocated as soon as the payment is recorded.
Example F-0231 F-0236 Charge total
Payment applied (in this order) 48,940.00 MXN 52,316.40 MXN 101,256.40 MXN
Refund of 60,000.00 MXN −7,683.60 MXN −52,316.40 MXN −60,000.00 MXN
Balance that reopens 7,683.60 MXN 52,316.40 MXN
  • A charge that paid a single invoice assigns the whole refund to that invoice.
  • Refunds of charges from before October 2026 have no allocation: they only count in the balance if their charge paid a single invoice.
  • An ACH bank debit only supports full refunds.