---
title: "Create a blockchain refund"
method: POST
path: "/open-api/v3/cryptoconnect/refunds"
tags: ["Blockchain Refund"]
---

# Create a blockchain refund

`POST /open-api/v3/cryptoconnect/refunds`

## Request

- Base URL: `https://api-sandbox.interlace.money`
- URL: `https://api-sandbox.interlace.money/open-api/v3/cryptoconnect/refunds`
- Auth: API key in header `x-access-token`

When the blockchain transfer status is "ONHOLD", you should use this endpoint to submit a refund request.
<br />
Note: This endpoint performs a KYA (Know Your Address) check on the submitted address.

## Headers

- `Idempotency-Key` string

## Request body

- CreationBlockchainRefundRequest
  - `referenceId` string, uuid, required
  - `accountId` string, uuid, required
  - `transferId` string, uuid, required
  - `address` string, required: An alphanumeric string which indicates the wallet address used to receive the transfer. Will only be set when the transfer source is a blockchain address.

## Response `200`

The request has succeeded.

- object
  - `code` string, required: Code
  - `message` string, required: Message
  - `data` BlockchainRefund, required
    - `id` string, required: Unique ID generated for the entity.
    - `accountId` string, uuid, required
    - `referenceId` string, uuid, required
    - `transferId` string, uuid, required
    - `destination` BlockchainLocation, required: Blockchain wallet address
      - `type` 'BLOCKCHAIN', required
      - `chain` 'ARB' | 'AVAX' | 'BASE' | 'BNB' | 'BTC' | 'ETH' | 'MATIC' | 'OP' | 'SOL' | 'TON' | 'TRX', required
      - `address` string, required: An alphanumeric string which indicates the wallet address used to receive the transfer. Will only be set when the transfer source is a blockchain address.
    - `amount` Money, required
      - `currency` 'BTC' | 'ETH' | 'USDC' | 'USDT' | 'WUSD', required
      - `amount` string, number, required: The transaction amount.
    - `fees` RefundFee[], required: An array of fees applied to a transaction.
      - `currency` 'BTC' | 'ETH' | 'USDC' | 'USDT' | 'WUSD', required
      - `amount` string, number, required: The transaction amount.
      - `type` 'GAS', required
    - `status` 'PENDING' | 'COMPLETE' | 'FAILED', required
    - `transactionHash` string: A hash that uniquely identifies an on-chain transaction.
    - `createTime` string, timestamp, required: Timestamp.
    - `completeTime` string, timestamp, required: Timestamp.

## Other responses

- `400`: The server could not understand the request due to invalid syntax.
- `403`: Access is forbidden.
- `409`: The request conflicts with the current state of the server.

---

[API](https://skmtc.dev/interlace/apis/crypto-connect.md) - [All operations](https://skmtc.dev/interlace/apis/crypto-connect/llms.txt) - [OpenAPI document](https://skmtc.dev/interlace/apis/crypto-connect/revisions/9d40c2545370?raw)
