Refunds

Get a Refund Quote

This endpoint allows a refund quote to be retrieved for an Extend contract using the Extend Line Item ID, Extend Contract ID, or Line Item Transaction ID (the merchant’s unique identifier for the order line item).

Refund quotes allow merchants to confirm the refund amount that a contract is eligible for. This might be helpful when determining if the customer should be refunded for their Extend contract, especially if the customer has placed a claim already with Extend or another reason that would indicate the customer shouldn’t be refunded for their Extend contract.

Generally, a contract should return the full purchase price when retrieving refund quotes. There are scenarios where the refund quote may return $0:

  • The contract has already been refunded
  • There is an approved claim on the customer’s contract
  • The shipping protection contract contains at least one product that has shipped already

If an attempt to retrieve a refund quote leads to an unexpected result or amount, please reach out to your merchant success manager to resolve the discrepancy.

get/refunds

Request

  • Base URL
    https://api.helloextend.com
  • URL
    https://api.helloextend.com/refunds
  • Auth
    none declared. Required headers: Accept, Content-Type, X-Extend-Access-Token

Query parameters

lineItemIdstring uuid
Example:cc957cb3-3d5d-430b-90a2-9ec96ee4c3cf

Unique identifier for an Extend order line item.

lineItemTransactionIdstring uuid
Example:cc957cb3-3d5d-430b-90a2-9ec96ee4c3cf

Unique identifier for an Extend Order Line Item's transaction

contractIdstring uuid
Example:cc957cb3-3d5d-430b-90a2-9ec96ee4c3cf

Unique identifier for an Extend contract.

Response

Returns refund information associated with a contract

createdAtnumber required

The timestamp for when the Refund object was created (generated by Extend)

contractCoverageStartDatenumber

Start date of coverage for the Extend contract

contractCoverageEndDatenumber

End date of coverage for the Extend contract

contractIdstring required

The ID of the Contract (generated by Extend)

contractPurchaseDatenumber

Date provided by merchant that is associated to the transaction where the Extend contract was sold

contractCurrencystring

The ISO 4217 currency code for the contract (e.g., USD, EUR, GBP)

idstring required

The unique Extend ID for the Refund (generated by Extend)

expiresAtnumber

The timestamp for when the Refund object will expire (generated by Extend). Refund objects live for 20 minutes, after which a new Refund object will be created the next time you request a Refund Quote or report a Refund as Paid

newContractIdstring

The new ID of the Contract (generated by Extend) in the case of a partial refund.

newPremiumnumber

The new premium of the contract (generated by Extend) in the case of a partial refund.

lineItemIdstring

Unique line item ID associated with the Contract (generated by Extend)

sellerIdstring required

Unique ID representing the seller provided by Extend

status'refund_quoted' | 'refund_paid' | 'refund_denied' required

Represents the current status of the Refund <ul> <li><b>refund_quoted</b>: Refund amounts have been previewed via Get a Refund Quote at least once, but you have not reported that you have refunded the customer yet</li> <li><b>refund_paid</b>: You have reported the Refund as paid and the associated Contract has been canceled. Extend will credit you in the next invoicing period</li> <li><b>refund_denied</b>: The end customer is not eligible for a Refund because they have consumed all entitlements associated with the Contract.</li> </ul>

spQuoteIdstring

Quote id when a valid shipping protection quote is created.

originalPremiumnumber

The original premium of the contract before a partial refund adjustment due to shipped products.

shippedProductsQuoteIdstring

Quote id for the shipped or delivered products when partially refunding a shipping protection contract.

reasonstring

Reason for refund, defined when refund is created.

note'coverage_expired' | 'claim_active' | 'claim_applied' | 'claim_cost_exceeded' | 'refund_amount_not_owed' | 'unknown_error'

Captures additional notes about the refund <ul> <li><b>coverage_expired</b>: contract coverage date expired</li> <li><b>claim_active</b>: one or more claim(s) are active</li> <li><b>claim_applied</b>: at least one claim was applied against the contract</li><li><b>claim_cost_exceeded</b>: claim cost exceeded contract limit of liability</li><li><b>refund_amount_not_owed</b>: refund amount zero</li> </ul>

Example response

{
  "createdAt": 1557267465,
  "contractCoverageStartDate": 1557267465,
  "contractCoverageEndDate": 1557267465,
  "contractId": "81f75af3-b92b-4de8-b56a-6c36d75b4fa1",
  "contractPurchaseDate": 1557267465,
  "contractCurrency": "USD",
  "id": "c57ed096-24ef-49a4-a20a-d1b8bf770980",
  "expiresAt": 1557267465,
  "newContractId": "81f75af3-b92b-4de8-b56a-6c36d75b4fa1",
  "newPremium": 130,
  "lineItemId": "81f75af3-b92b-4de8-b56a-6c36d75b4fa1",
  "productsRemoved": [
    {
      "referenceId": "81f75af3-b92b-4de8-b56a-6c36d75b4fa1",
      "quantity": "1"
    }
  ],
  "sellerId": "81f75af3-b92b-4de8-b56a-6c36d75b4fa1",
  "status": "refund_quoted",
  "spQuoteId": "81f75af3-b92b-4de8-b56a-6c36d75b4fa1",
  "originalPremium": 4000,
  "shippedProductsQuoteId": "7a0e0b3b-f695-4332-8ef1-efd773e27d9d",
  "reason": "Customer requested refund",
  "note": "coverage_expired"
}

Changes

No recorded changes to this operation across all 1 revision of this API.