v1

latestOpenAPI 3.1.02026-07-2671111437.2 KB
Refunds

Process Refund

Deletes eligible domains and security products during the Add Grace Period (AGP) and automatically issues refunds for the associated order items.

Eligibility Requirements

  • Product Types: Only registration and whois_privacy product types are eligible for refunds.
  • AGP Timing: Items must be within the Add Grace Period (typically 5 days from registration, varies by TLD).
  • Order Ownership: All orderItemIds must belong to the specified orderId.

Refund Processing

Refunds are processed in the following order:

  1. Domain deletion is attempted for each eligible order item
  2. Upon successful deletion, the refund is issued
  3. Refunds are sent to the original payment method on file
  4. If the original payment method is unavailable, the refund is credited to the account balance

Idempotency

This endpoint supports idempotent requests via the X-Idempotency-Key header. If you retry a request with the same idempotency key, you will receive the same response as the original request. This is useful for safely retrying requests without risk of processing duplicate refunds.

post/core/v1/refund

Headers

X-Idempotency-Keystring
Example:083910ef-04e4-4bd1-a0bf-3737fe005ca8

A unique string (e.g., a UUID v4) to make the request idempotent. This key ensures that if the request is retried, the operation will not be performed multiple times. Subsequent requests with the same key will return the original result. Idempotency keys are valid for 12 hours.

Request body

orderIdinteger required

The unique identifier of the order containing the item(s) to be refunded. Use the List Orders endpoint to retrieve order IDs.

orderItemIdsinteger[] required

An array of order item IDs to be refunded. All items must belong to the specified order. Use the List Orders endpoint to retrieve order item IDs.

Example request

{
  "orderId": 123456,
  "orderItemIds": [
    987654,
    987655
  ]
}

Response

Refund processed successfully. The response includes the detailed results for each refunded item.

totalRefundAmountnumber float required

The total amount refunded across all order items in USD.

Example response

{
  "results": [
    {
      "orderId": 987654,
      "orderItemId": 987654,
      "orderItemStatus": "refunded",
      "refundAmount": 10.99,
      "message": "Domain successfully deleted and refund processed."
    }
  ],
  "totalRefundAmount": 21.98
}