> ## Documentation Index
> Fetch the complete documentation index at: https://www.marqeta.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Balance Refunds

> Use Balance Refunds to issue a credit balance refund on a credit account.

export const EndpointCard = ({method = "API", title, children, href, arrow = true}) => {
  const METHOD_STYLES = {
    GET: {
      bg: "mint-bg-green-400/20 dark:mint-bg-green-400/20",
      text: "mint-text-green-700 dark:mint-text-green-400",
      border: "mint-border-green-300 dark:mint-border-green-700"
    },
    POST: {
      bg: "mint-bg-blue-400/20 dark:mint-bg-blue-400/20",
      text: "mint-text-blue-700 dark:mint-text-blue-400"
    },
    PUT: {
      bg: "mint-bg-yellow-400/20 dark:mint-bg-yellow-400/20",
      text: "mint-text-yellow-700 dark:mint-text-yellow-400"
    },
    PATCH: {
      bg: "mint-bg-orange-400/20 dark:mint-bg-orange-400/20",
      text: "mint-text-orange-700 dark:mint-text-orange-400"
    },
    DELETE: {
      bg: "mint-bg-red-400/20 dark:mint-bg-red-400/20",
      text: "mint-text-red-700 dark:mint-text-red-400"
    },
    API: {
      bg: "mint-bg-black",
      text: "mint-text-white"
    }
  };
  const MethodBadge = ({method}) => {
    const style = METHOD_STYLES[method?.toUpperCase()] ?? METHOD_STYLES.GET;
    return <span className={`
          method-pill rounded-lg font-semibold px-1.5 py-0.5 text-xs leading-5 ${style.bg} ${style.text}`}>
        {method?.toUpperCase()}
      </span>;
  };
  const content = <div className="group flex items-center gap-4 border border-gray-200 dark:border-gray-700 rounded-xl p-5 hover:border-gray-400 dark:hover:border-gray-500 hover:shadow-md transition-all cursor-pointer">
      {}
      <div className="shrink-0">
        <MethodBadge method={method} />
      </div>
      {}
      <div className="flex-1 min-w-0">
        <p className="font-semibold text-gray-900 dark:text-white text-sm leading-snug">{title}</p>
        {children && <p className="mt-1 text-sm text-gray-500 dark:text-gray-400 line-clamp-2">{children}</p>}
      </div>
    </div>;
  if (!href) return content;
  return <a href={href} className="block no-underline border-b-0 mb-2">
      {content}
    </a>;
};

Use the credit balance refunds endpoint to issue a credit balance refund on [credit account](/core-api/credit-accounts/). When an account balance is negative, a balance refund can be issued to bring the balance closer to 0.

Creating a balance refund triggers the creation of a [journal entry](/core-api/credit-account-journal-entries/) belonging to the `BALANCE_REFUND` group. For more on balance refund journal entries, see [Balance refunds](/developer-guides/about-credit-account-journal-entries/#_credit_balance_refunds) in the [About Credit Account Journal Entries](/developer-guides/about-credit-account-journal-entries/) guide.

<h2 id="create_balance_refund">
  Create balance refund
</h2>

**Action:** `POST`\
**Endpoint:** `/credit/accounts/{account_token}/creditbalancerefunds`

Create a new balance refund, which can be issued to the account holder if their credit account balance is negative.

<h3 id="_url_path_parameters">
  URL path parameters
</h3>

| Fields                                               | Description                                                                                                                                                                                                                                                 |
| ---------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| account\_token<br /><br />string<br /><br />Required | Unique identifier of the credit account for which you want to create a balance refund.<br /><br />Send a `GET` request to `/credit/accounts` to retrieve existing credit account tokens.<br /><br />**Allowable Values:**<br /><br />Existing account token |

<h3 id="_request_body">
  Request body
</h3>

| Fields                                               | Description                                                                                                                                                                                                                                                        |
| ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| token<br /><br />string<br /><br />Optional          | Unique identifier of the credit balance refund.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                            |
| method<br /><br />string<br /><br />Required         | Payment instrument used to issue the refund.<br /><br />**Allowable Values:**<br /><br />`ACH`, `CHECK`                                                                                                                                                            |
| amount<br /><br />decimal<br /><br />Required        | Amount of the credit balance refund.<br /><br />The maximum refund amount is the amount that brings the account balance to $0. For example, $4000 is the maximum refund amount for a -\$4000 account balance.<br /><br />**Allowable Values:**<br /><br />0.01 min |
| description<br /><br />string<br /><br />Required    | Description for the credit balance refund.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                |
| currency\_code<br /><br />string<br /><br />Required | Valid three-digit <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a>.<br /><br />**Allowable Values:**<br /><br />`USD`                                                                          |

<h3 id="_sample_request_body">
  Sample request body
</h3>

```json JSON lines wrap theme={null}
{
  "method": "CHECK",
  "amount": 500,
  "description": "credit balance refund",
  "currency_code": "USD"
}
```

<h3 id="_response_body">
  Response body
</h3>

| Fields                                                | Description                                                                                                                                                                                                                                                        |
| ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| token<br /><br />string<br /><br />Returned           | Unique identifier of the credit balance refund.<br /><br />If in the `detail_object`, unique identifier of the detail object.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                              |
| account\_token<br /><br />string<br /><br />Returned  | Unique identifier of the credit account that needs the credit balance refund.<br /><br />**Allowable Values:**<br /><br />36 char max<br /><br />Existing account token                                                                                            |
| status<br /><br />string<br /><br />Returned          | Current status of the payment or refund.<br /><br />**Allowable Values:**<br /><br />`INITIATED`, `PENDING`, `PROCESSING`, `SUBMITTED`, `CANCELLED`, `COMPLETED`, `RETURNED`, `REFUNDED`, `SYS_ERROR`, `ACH_ERROR`                                                 |
| method<br /><br />string<br /><br />Returned          | Payment instrument used to issue the refund.<br /><br />**Allowable Values:**<br /><br />`ACH`, `CHECK`                                                                                                                                                            |
| amount<br /><br />decimal<br /><br />Returned         | Amount of the credit balance refund.<br /><br />The maximum refund amount is the amount that brings the account balance to $0. For example, $4000 is the maximum refund amount for a -\$4000 account balance.<br /><br />**Allowable Values:**<br /><br />0.01 min |
| description<br /><br />string<br /><br />Returned     | Description for the credit credit balance refund.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                         |
| created\_time<br /><br />datetime<br /><br />Returned | Date and time when the credit balance refund was created.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-ddThh:mm:ssZ                                                                                                                                 |
| updated\_time<br /><br />datetime<br /><br />Returned | Date and time when the credit balance refund was last updated.<br /><br />**Allowable Values:**<br /><br />Format: yyyy-MM-ddThh:mm:ssZ                                                                                                                            |

<h3 id="_sample_response_body">
  Sample response body
</h3>

```json JSON lines wrap theme={null}
{
  "token": "credit_balance_refund_token1234",
  "account_token": "my_account_token_12",
  "status": "COMPLETED",
  "method": "CHECK",
  "amount": 0,
  "description": "credit balance refund",
  "created_time": "2025-07-14T20:17:28Z",
  "updated_time": "2025-07-14T20:17:28Z"
}
```


## Related topics

- [About Credit Account Journal Entries](/docs/developer-guides/about-credit-account-journal-entries.md)
- [About Credit Account Ledger Entries](/docs/developer-guides/about-credit-account-ledger-entries.md)
- [Just-in-Time Funding in Europe](/docs/developer-guides/mq-eu-jit-funding.md)
- [Credit Overview](/docs/developer-guides/credit-landing-page.md)
- [Journal Entries](/docs/core-api/credit-account-journal-entries.md)
