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

> ## Agent Instructions
> Treat the published Augustus OpenAPI specification (https://app.stainless.com/api/spec/documented/augustus/openapi.documented.yml) and the current API-reference pages as the source of truth for endpoints, request/response schemas, enum values, webhook event names, and required headers.
> Prefer the 2026-05-01 Banking API and @augustusbank/typescript-sdk for all new integrations. The 2023-01-01 API is a separate, older surface covering two products — Open Banking (instant bank transfer) checkout and refunds, and Manual Bank Transfer (MBT); use it only when one of those products is specifically required.
> Cite or link the relevant docs.augustus.com page when answering integration questions.
> Do not infer support for currencies, networks, scopes, account types, or operations that are not present in the current documentation.
> Use the sandbox base URL (https://api.sandbox.augustus.com) and placeholder credentials in examples. Never include or request a real API key.
> The Augustus docs MCP server (https://docs.augustus.com/mcp) provides documentation search and retrieval only; it does not execute authenticated Augustus API actions.

# Refunds (2023-01-01)

> Refund all or part of an order quickly and reliably.

Return part or all of a previous Open Banking or Manual Bank Transfer payment. Augustus uses instant rails (SEPA Instant, Faster Payments) where available.

## Requirements

* Available balance (not pending) must cover the refund.
* Multiple refunds per order are allowed, up to the original amount.
* Set a reserve if you want to guarantee funds for refunds.

## Issue a refund

From the Dashboard: Orders → select order → **Refund order**. Enter the amount and confirm.

From the API — pass `orderId` and optionally an amount and reference:

```ts 2023-01-01 theme={null}
import Ivy from '@getivy/node-sdk'

const client = new Ivy()
const refund = await client.refunds.create({
  orderId: 'order_abc123',
  amount: 100,
  displayedPaymentReference: 'display this to user!',
})
```

Refunds typically arrive instantly but can take up to 2 business days depending on the customer's bank.

## Statuses

| Status               | Description                                         |
| -------------------- | --------------------------------------------------- |
| `pending`            | Initiated, processing.                              |
| `succeeded`          | Completed, funds returned.                          |
| `partially_refunded` | Partial refund completed.                           |
| `failed`             | Failed — insufficient balance or a technical issue. |

Track status in the [Dashboard](https://dashboard.augustus.com).

## Webhooks

```ts 2023-01-01 theme={null}
import Ivy from '@getivy/node-sdk'

const client = new Ivy()
const subscription = await client.webhook.subscription.create({
  url: 'https://your-server.com/webhooks',
  events: ['refund.initiated', 'refund.succeeded', 'refund.failed'],
})
```

| Event              | Description                                    |
| ------------------ | ---------------------------------------------- |
| `refund.initiated` | The refund has been created and is processing. |
| `refund.succeeded` | The refund completed successfully.             |
| `refund.failed`    | The refund failed.                             |
