Plaid logo
Docs
ALL DOCS

Transfer

  • Transfer Overview
  • Transfer Application
  • Creating transfers
  • Monitoring transfers
  • Plaid Ledger flow of funds
  • Transfer Dashboard
  • Refunds
  • Recurring transfers
  • Transfer UI
  • Platform Payments
  • Errors and troubleshooting
  • Testing in Sandbox
  • Legacy Flow of funds
Plaid logo
Docs
Close search modal
Ask Bill!
Ask Bill!
Hi! I'm Bill! You can ask me all about the Plaid API. Try asking questions like:
    Note: Bill isn't perfect. He's just a robot platypus that reads our docs for fun. You should treat his answers with the same healthy skepticism you might treat any other answer on the internet. This chat may be logged for quality and training purposes. Please don't send Bill any PII -- he's scared of intimacy. All chats with Bill are subject to Plaid's Privacy Policy.
    Plaid.com
    Log in
    Get API Keys
    Open nav

    Refunds

    Issue a refund for an ACH debit

    Refunds allow you to quickly and easily refund customers for ACH debit transfers.

    Creating a refund

    Use /transfer/refund/create to create a refund for a debit transfer. Pass the ID of the transfer you'd like to refund as transfer_id in the request, and specify the amount of the refund with the amount field. The amount of a refund can't exceed the amount of the refunded transfer.

    You can also initiate a refund directly with the Plaid Dashboard.

    Image of Plaid Dashboard UI to initiate a refund.
    Initiate refunds from the Plaid Dashboard UI.

    Refunds come out of the Plaid Ledger's available balance.

    You can create a refund for a transfer at any time. Plaid will wait to submit the refund to the ACH network until four days after the original transfer has settled. This operates as a grace period to protect you from the original transfer being returned. (The status of the refund will remain pending during this time.) If the refunded transfer is failed, canceled, or returned before the refund is submitted to the ACH network, we will automatically cancel the refund.

    Canceling a refund

    Use /transfer/refund/cancel to cancel a refund. You can only cancel refunds before they've been submitted to the ACH network for processing.

    Refund events

    Plaid creates an event any time the status of a refund changes. Refund events are prefixed with refund. and have a non-null refund_id in the event object. See event monitoring for more information on monitoring events.

    Refund events will have many of the same characteristics as the original payment. They will have the same account_id, as well as having the same transfer_type and a positive transfer amount. For example, if you were to refund $5 from a customer's debit transfer of $100.00, that refund will be displayed in the events queue with a debit transfer type and a "5.00" transfer amount.

    Was this helpful?
    Developer community
    GitHub
    GitHub
    Stack Overflow
    Stack Overflow
    YouTube
    YouTube
    Discord
    Discord