---
title: "Record refund for invoice"
method: POST
path: "/v2/invoicing/invoices/{invoice_id}/refunds"
tags: ["invoices"]
---

# Record refund for invoice

`POST /v2/invoicing/invoices/{invoice_id}/refunds`

Records a refund for the invoice. If all payments are refunded, the invoice is marked as `REFUNDED`. Otherwise, the invoice is marked as `PARTIALLY REFUNDED`.

## Path parameters

- `invoice_id` string, required

## Request body

- RefundDetail — The refund details of the invoice. Includes the refund type, date, amount, and method.
  - `type` 'PAYPAL' | 'EXTERNAL' — The payment type. Can be PayPal or an external payment. Includes cash or a check.
  - `refund_id` string — The ID for a PayPal payment transaction. Required for the `PAYPAL` payment type.
  - `refund_date` string, ppaas_date_notime_v2 — The stand-alone date, in [Internet date and time format](https://tools.ietf.org/html/rfc3339#section-5.6). To represent special legal values, such as a date of birth, you should use dates with no associated time or time-zone data. Whenever possible, use the standard `date_time` type. This regular expression does not validate all dates. For example, February 31 is valid and nothing is known about leap years.
  - `amount` Money — The currency and amount for a financial transaction, such as a balance or payment due.
    - `currency_code` string, ppaas_common_currency_code_v2, required — The [three-character ISO-4217 currency code](/docs/integration/direct/rest/currency-codes/) that identifies the currency.
    - `value` string, required — The value, which might be:<ul><li>An integer for currencies like `JPY` that are not typically fractional.</li><li>A decimal fraction for currencies like `TND` that are subdivided into thousandths.</li></ul>For the required number of decimal places for a currency code, see [Currency Codes](/docs/integration/direct/rest/currency-codes/).
  - `method` 'BANK_TRANSFER' | 'CASH' | 'CHECK' | 'CREDIT_CARD' | 'DEBIT_CARD' | 'PAYPAL' | 'WIRE_TRANSFER' | 'OTHER', required — The payment mode or method through which the invoicer can accept the payments.

## Response `200`

A successful request returns the HTTP `200 Created` status code and a reference to the recorded refund.

- RefundReference — The reference to the refund payment detail.
  - `refund_id` string — The ID of the refund of an invoice payment.

## Other responses

- `400` — Invalid request.
- `403` — Authorization Error.
- `404` — Resource Not Found.
- `422` — Unprocessable Entity.
- `500` — An internal server error has occurred.
- `default` — The default response.

---

[API](https://skmtc.net/paypal/apis/payments.md) · [All operations](https://skmtc.net/paypal/apis/payments/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/paypal/payments/revisions/672aceee1190/schema)
