You can issue a refund to your customer directly from the Merchant Dashboard in two ways: automatically, straight from the original payment, or manually, when the payment method doesn't allow a direct refund through the same method or when we need extra details from your customer to send the money back. Both start from the same place: the Transactions section.
ℹ️ Note: Refunds can only be applied from a payment's detail view in Payins > Transactions. The Refunds section (see Refunds list) is for tracking refunds already issued — it does not have an "Apply refund" action.
Starting a refund
Go to Payins > Transactions and find the payment you want to refund.
Click the row or view details to open the payment detail panel.
In the detail panel, click Apply Refund.
What happens next depends on the payment method: if it supports an automatic refund, you'll see a short form. If it doesn't — or if we're missing the beneficiary's bank details — you'll be taken into the manual refund flow instead.
Payment detail panel with the Apply Refund button.
Automatic refunds
Automatic refunds send the money back without you having to enter the customer's bank details. Whether this option is available depends on the country and payment method of the original transaction.
Clicking Apply Refund on an eligible payment opens a simple form:
Field | Description |
Refund amount / Currency | Defaults to the full original amount. You can lower it for a partial refund. |
Order ID | Optional. Your own internal reference for this refund. |
Description | Optional internal note. Only you can see this — your customer won't. |
Review the amount and click Apply Refund to confirm. There's no further step — the refund moves to Pending and then Refunded once processed.
The automatic refund form: Refund amount, Currency, Order ID, and Description.
Manual refunds
If the transaction can't be refunded automatically, you'll go through New manual refund instead — a 4-step wizard.
Step 1: Refund details
Set the Amount and Currency (capped at the original payment amount) and, optionally, a Merchant Refund ID for your own tracking. Then choose whether the beneficiary's Bank details are:
Available — you'll enter them yourself in the next step.
Not available — dLocal will email the beneficiary a secure link to submit their own bank details. In this case, a Contact email field appears so you can set (or fix) the address that link is sent to.
💡 Tip: Double-check the contact email before continuing. A refund link sent to an invalid or placeholder address won't reach your customer, and the refund will be left waiting on a response. This field is available whenever your account has the refund_email_enabled setting active in AccountsAPI.
Step 1 with "Not available" selected — the editable Contact email field.
Step 2: Bank details
Only shown if you selected Available in step 1. Enter: Account number, Account type (Checking, Crypto, Saving, Settlement XB, or Settlement XB Vostro), Bank/Bank name, Branch number/Branch name, and optionally Province/State and City. Required fields vary by country.
Step 2 — the Bank details form filled in.
Step 3: Beneficiary details
Enter the customer's First name and Last name (required), plus whatever else you have on file: Document type/Document number, Phone, Email, Date of birth, Address, City, and Postal code.
Step 3 — the Beneficiary details form filled in.
Step 4: Confirmation
Review everything in one screen — refund details, bank details, and beneficiary details — then click Confirm Refund. Once confirmed, the refund moves to Pending while it's processed.
Step 4 — the confirmation summary screen.
Tracking your refund
Every refund you issue — automatic or manual — shows up in Payins > Refunds with its current status (Pending, Refunded, Rejected, or Cancelled). See Refunds list for the full field reference and the reasons a refund can be rejected.
The Refunds list view, with statuses.
Getting proof of a refund
Once a refund reaches Refunded status, open it from Payins > Refunds and click Download Receipt to get a voucher you can share with your customer or use for reconciliation. Full steps in Proof of refunds.
Refund detail panel with the Download Receipt button.
FAQs
Do I always get to choose between automatic and manual?
No. The Merchant Dashboard decides for you based on the payment method and country of the original transaction, and on whether we already have the beneficiary's bank details. You'll only see the option that applies.
My customer says they never got the refund email. What do I check?
Open the refund and confirm the Contact email isn't a placeholder or typo. If it's wrong, you'll need to start a new manual refund with the corrected address.
Can I do a partial refund?
Yes, in both flows — lower the Amount in the first step. It can't exceed the original payment amount.
Why was my refund rejected?
See the rejection reasons listed in Refunds list — common ones include an existing chargeback, an expired refund period, or insufficient funds.








