Refunds

Cancel a refund

Cancels a refund that was not sent. It becomes canceled, a refund.canceled webhook is sent, and its amount can be refunded again. Returns 409 invalid_state in three cases: - The refund was already sent or has ended. - The payout wallet already sent coins to the refund's NEAR Intents deposit address; those coins are still delivered. - The refund was prepared in the dashboard and the coins may already have left the wallet. A same-coin refund can then be canceled only in the dashboard; a converted one can be canceled through the API once its deposit address stops accepting coins. Rate limit: 60 per minute per API key, shared with the other endpoints that have this limit.

POST
/api/v1/refunds/{id}/cancel

Authorization

bearerAuth
headerAuthorizationBearer <token>

A live API key, sk_live_ followed by 32 base58 characters.

Path Parameters

id*string

Refund id (starting with ref_) or payout id (starting with pay_).

Header Parameters

Idempotency-Key?string

A unique string of 1 to 255 characters for this operation. A key belongs to the business across every endpoint for 24 hours, so give each operation its own key, for example invoice-order-1042 and refund-order-1042, not the order id alone. A retry with the same key on the same endpoint and with the same body returns the stored response with the header Idempotent-Replayed: true. The same key with a different body or on another endpoint returns 409 idempotency_conflict. Errors are not stored, so a request that failed can be retried with the same key, even with a corrected body. While the first request with a key is still running, a retry gets 409 idempotency_conflict with Retry-After: 1.

Length1 <= length <= 255

Response Body

The canceled refund.

application/json
  1. response

A refund or a payout. Money leaves the business's payout wallet only after the business approves it at sign_url.

id*string

Starts with ref_ for refunds and pay_ for payouts.

object*string
Value in"refund""payout"
status*string
Value in"pending""processing""completed""failed""canceled"
invoice_id*string|null
batch_id*|

Set for payouts created together, from a CSV in the dashboard or with POST /api/v1/payouts/batch.

amount*string

Amount of the business's settlement coin to send.

source_asset*string

The business's settlement coin.

asset_id*string

The coin the recipient receives.

recipient*string
tx_hash*string|null
failure_reason*string|null
sign_url*string

Dashboard page where the business approves the transfer from its payout wallet.

Formaturi
created_at*string
Formatdate-time
Example Request
curl -X POST 'https://example.com/api/v1/refunds/string/cancel'
Example Response
{  "id": "string",  "object": "refund",  "status": "pending",  "invoice_id": "string",  "batch_id": "string",  "amount": "string",  "source_asset": "string",  "asset_id": "string",  "recipient": "string",  "tx_hash": "string",  "failure_reason": "string",  "sign_url": "http://example.com",  "created_at": "2019-08-24T14:15:22Z"}