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:
- Call
POST {URI}/line-items/
{referenceLineItemid}/freeze
. - Enter the
referenceLineItemID
for the line item you are planning to freeze. - Enter a reason code. A successful returned response is 202 Accepted.
- Call
GET {URI}/lineItems/
{referenceLineItemID}and enter the
referenceLineItemID` 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:
Endpoint | Description |
---|---|
POST {URI}/line-items/ {referenceLineItemid}/freeze | Freeze a line item on this platform. |
Use the following path parameter to identify which line item you're freezing:
Path param | Description | |
---|---|---|
referenceLineItemID | string | (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 param | Data type | Description |
---|---|---|
reasonCode | string | (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 |
otherReason | String | This 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 the
referenceLineItemID`.
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:
Response | Description |
---|---|
202 | The server has received and accepted the request, but has not yet completed processing it. |
400 | The server could not understand the request due to invalid syntax. |
403 | The server understood the request but refuses to authorize it. |
422 | The server understands the request but cannot process it due to semantic errors. |
Updated 4 days ago