---
title: "Create a refund request"
method: POST
path: "/v1/refund_requests"
tags: ["Refund request"]
---

# Create a refund request

`POST /v1/refund_requests`

Creates a refund request for a user. The caller must have the `companies_manage`
permission in a company the target user (`user_id`) belongs to.

On creation a confirmation token is generated server-side; the target user then
confirms the request by email before it is processed.

## Parameters

- `#/paths/~1v1~1bills/get/parameters/0` — unresolved $ref

## Request body

- RefundRequestCreate — Body to create a refund request.
  - `user_id` string, required — Id of the user who will receive the refund.
  - `amount` integer — Amount to refund, in the smallest currency unit.
  - `status` string
  - `status_reason` string
  - `reason` string

## Response `201`

The created refund request.

- RefundRequest — A request to refund funds to a user. Created by a company manager; the target user then confirms via an emailed token before it is processed.
  - `id` string, uuid, required
  - `user_id` string, required — Id of the user who will receive the refund.
  - `amount` integer, nullable — Amount to refund, in the smallest currency unit.
  - `status` string, nullable
  - `status_reason` string, nullable
  - `reason` string, nullable
  - `email_confirmed` boolean — Whether the target user has confirmed the request via the emailed token.
  - `created_at` string, date-time
  - `updated_at` string, date-time

## Other responses

- `401` — Unauthorized - the caller lacks `companies_manage` over the target user's company.
- `422` — Validation failed.

---

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