---
title: "Create return"
method: POST
path: "/v1/returns"
tags: ["Returns"]
---

# Create return

`POST /v1/returns`

Initiates a return of funds from a deposit to the source.

## Headers

- `Idempotency-Key` string, required

## Request body

- CreateReturnBodyDto
  - `deposit_id` string, uuid, required — Deposit to return funds from.
  - `rail` 'sepa_instant' | 'sepa' | 'faster_payments' — Payment rail when the deposit allows multiple schemes.

## Response `200`

Success

- ReturnResourceDto
  - `id` string, uuid, required — Unique identifier of the return.
  - `type` 'return', required — Type of the resource.
  - `status` 'pending' | 'paid' | 'failed' | 'returned', required — Current status of the return.
  - `deposit_id` string, uuid, required — ID of the parent deposit.
  - `amount` string, required — Amount as a string decimal (e.g. "100.50").
  - `currency` 'EUR' | 'GBP' | 'USD' | 'USDC', required — Currency code (ISO 4217 currency code or crypto currency code).
  - `failure` object, nullable, required — Failure details when status is failed, otherwise null.
    - `code` 'account_closed' | 'account_blocked' | 'insufficient_funds' | 'invalid_account_format' | 'invalid_instruction' | 'invalid_amount' | 'invalid_time' | 'duplicate_transaction' | 'payee_verification_failed' | 'system_error' | 'provider_system_error' | 'rejected_by_correspondent_bank' | 'blocked_by_review' | 'unknown', required — Failure code.
    - `message` string, required — Human-readable description of the failure.
    - `retry` boolean, required — Whether the return can be retried.
  - `created_at` string, date-time, required — ISO 8601 UTC timestamp when the return was created.
  - `updated_at` string, date-time, required — ISO 8601 UTC timestamp when the return was last updated.

## Changes

- **2026-08-17** `3ed0a0aba68b` — 4 info
  - removed the `BTC` enum value from the `currency` response property for the response status `200`
  - removed the `ETH` enum value from the `currency` response property for the response status `200`
  - removed the `POL` enum value from the `currency` response property for the response status `200`
  - removed the `SOL` enum value from the `currency` response property for the response status `200`
- **2026-07-27** `1d6de495a31d` — 1 breaking
  - the `header` request parameter `Idempotency-Key` became required
- **2026-07-13** `d92a4abea6c4` — 3 warning
  - added the new `ETH` enum value to the `currency` response property for the response status `200`
  - added the new `POL` enum value to the `currency` response property for the response status `200`
  - added the new `SOL` enum value to the `currency` response property for the response status `200`
- **2026-06-17** `74deb4d45f9f` — 1 warning
  - added the new `BTC` enum value to the `currency` response property for the response status `200`
- **2026-04-24** `75f9878ced37` — 4 warning
  - added the new `EUR` enum value to the `currency` response property for the response status `200`
  - added the new `GBP` enum value to the `currency` response property for the response status `200`
  - added the new `USD` enum value to the `currency` response property for the response status `200`
  - added the new `USDC` enum value to the `currency` response property for the response status `200`

[Full history](https://skmtc.dev/augustus/apis/augustus-banking-api/changes/v1/returns/post.md)

---

[API](https://skmtc.dev/augustus/apis/augustus-banking-api.md) · [All operations](https://skmtc.dev/augustus/apis/augustus-banking-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/augustus/augustus-banking-api/revisions/37109d1ed976/schema)
