Freeze line items

Freezing a line item allows you to investigate errors or concerns. You can freeze a fully unredeemed Choice Product (Reward Link®, Global Choice Link, Promo Link™, and Disbursement Link) up to maximum five (5) calendar days after the reward is issued.

A reward can be frozen as many times as necessary as long as it’s fully unredeemed and within a valid timeframe after the original date of issuance. Once a reward is frozen, the system will automatically unfreeze it after 48 hours, if no other action is taken. See our Tango portal document Freeze and unfreeze rewards.

📘

Note:

  • You can only freeze fully unredeemed Choice products anytime within five (5) calendar days of sending it.
  • With Promo Links, freezing the reward does not move the expiration date. See our Tango portal document about Reissue Promo Links.
  • Freeze and unfreeze can occur on different dates after a reward is issued, as long as each action falls within the allowable time windows.

How to freeze an existing line item?

See the steps below:

  1. Call POST {URI}/line-items/{referenceLineItemid}/freeze.
  2. Enter the referenceLineItemID for the line item you are planning to freeze.
  3. Enter a reason code. A successful returned response is 202 Accepted.
  4. Call GET {URI}/lineItems/{referenceLineItemID}and enter thereferenceLineItemID` again to see the frozen line item. The status of this line item shows up as freeze in the payload.

Use the following endpoint to freeze a qualified line item:

EndpointDescription
POST {URI}/line-items/{referenceLineItemid}/freezeFreeze a line item on this platform.

Use the following path parameter to identify which line item you're freezing:

Path paramDescription
referenceLineItemIDstring(Required) Reference line item ID is returned in the line items response.

The following body parameters are used to provide a reason for freezing your line item. The reason is required for freezing the line item:

Body paramData typeDescription
reasonCodestring(Required) Enter the reason code to freeze this line item. See Get all reason codes for descriptions: -DELIVERY_INFO -REWARD_AMOUNT -REWARD_TYPE -VERIFY_ORDER -FRAUD -OTHER
otherReasonStringThis field is required if reasonCode equals OTHER. Enter the reason why you need to freeze the line item only if the available reasonCodes don't meet your need.

Here is the response returned when freezing a line item is successful:

`POST {URI}/line-items/`{referenceLineItemid}`/freeze`
{
  Accepted
}

If you try to freeze a line item that is already frozen, you will get the 422 unprocessable messages indicating that the Line item is ineligible to freeze. Contact your Tango Customer Success Manager (CSM), or email [email protected] for details.

`POST {URI}/line-items/`{referenceLineItemid}`/freeze`
{
  "timestamp": "2025-02-14T18:17:22.914741615Z",
  "requestId": "37fbcd3b-5022-47d5-a7cf-20f0e5dc0cab",
  "path": "/raas/v2/lineItems/referenceLineItemID/freeze",
  "httpCode": 422,
  "httpPhrase": "Unprocessable Entity",
  "i18nKey": "422.190",
  "message": "Line Item is ineligible to freeze."
}

To see the status change, call GET {URI}/lineItems/{referenceLineItemID}and thereferenceLineItemID`.

Here's an example payload for when you receive any error:

{
  "timestamp": "2025-02-21T23:23:13.930Z",
  "requestId": "string",
  "path": "string",
  "httpCode": 0,
  "httpPhrase": "string",
  "i18nKey": "string",
  "message": "The error message will show here for error codes ",
  "errors": [
    {}
  ]
}

The possible response codes for this endpoint are as follows. For details, see i18nkey codes and their error messages:

ResponseDescription
202The server has received and accepted the request, but has not yet completed processing it.
400The server could not understand the request due to invalid syntax.
403The server understood the request but refuses to authorize it.
422The server understands the request but cannot process it due to semantic errors.

© 2025 Tango API are provided by Tango, a division of BHN, Inc.