---
title: "Retrieve a refund"
method: POST
path: "/transfer/refund/get"
tags: ["plaid"]
---

# Retrieve a refund

`POST /transfer/refund/get`

The `/transfer/refund/get` endpoint fetches information about the refund corresponding to the given `refund_id`.

## Request body

- TransferRefundGetRequest — Defines the request schema for `/transfer/refund/get`
  - `client_id` string — Your Plaid API `client_id`. The `client_id` is required and may be provided either in the `PLAID-CLIENT-ID` header or as part of a request body.
  - `secret` string — Your Plaid API `secret`. The `secret` is required and may be provided either in the `PLAID-SECRET` header or as part of a request body.
  - `refund_id` string, required — Plaid's unique identifier for a refund.

## Response `200`

OK

- TransferRefundGetResponse — Defines the response schema for `/transfer/refund/get`
  - `refund` TransferRefund, required — Represents a refund within the Transfers API.
    - `id` string, required — Plaid's unique identifier for a refund.
    - `transfer_id` string, required — The ID of the transfer to refund.
    - `amount` string, required — The amount of the refund (decimal string with two digits of precision e.g. "10.00").
    - `status` 'pending' | 'posted' | 'cancelled' | 'failed' | 'settled' | 'returned', required — The status of the refund. `pending`: A new refund was created; it is in the pending state. `posted`: The refund has been successfully submitted to the payment network. `settled`: Credits have been refunded to the Plaid linked account. `cancelled`: The refund was cancelled by the client. `failed`: The refund has failed. `returned`: The refund was returned.
    - `failure_reason` TransferRefundFailure, nullable, required — The failure reason if the status for a refund is `"failed"` or `"returned"`. Null value otherwise.
      - `failure_code` string, nullable — The failure code, e.g. `R01`. A failure code will be provided if and only if the refund status is `returned`. See [ACH return codes](https://plaid.com/docs/errors/transfer/#ach-return-codes) for a full listing of ACH return codes and [RTP/RfP error codes](https://plaid.com/docs/errors/transfer/#rtprfp-error-codes) for RTP error codes.
      - `ach_return_code` string, nullable — The ACH return code, e.g. `R01`. A return code will be provided if and only if the refund status is `returned`. For a full listing of ACH return codes, see [Transfer errors](https://plaid.com/docs/errors/transfer/#ach-return-codes). This field is deprecated in favor of the more versatile `failure_code`, which encompasses non-ACH failure codes as well.
      - `description` string — A human-readable description of the reason for the failure or reversal.
    - `ledger_id` string, nullable — Plaid's unique identifier for a Plaid Ledger Balance.
    - `created` string, date-time, required — The datetime when this refund was created. This will be of the form `2006-01-02T15:04:05Z`
    - `network_trace_id` string, nullable — The trace identifier for the transfer based on its network. This will only be set after the transfer has posted. For `ach` or `same-day-ach` transfers, this is the ACH trace number. For `rtp` transfers, this is the Transaction Identification number. For `wire` transfers, this is the IMAD (Input Message Accountability Data) number.
  - `request_id` string, required — A unique identifier for the request, which can be used for troubleshooting. This identifier, like all Plaid identifiers, is case sensitive.

## Other responses

- `default` — Error response

---

[API](https://skmtc.net/plaid/apis/the-plaid-api.md) · [All operations](https://skmtc.net/plaid/apis/the-plaid-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/plaid/the-plaid-api/versions/64c4514ea59b/schema)
