Cancel Redemption (Redemptions 1.0)

Allows users to cancel their redemption if it has not been processed, enabling them to select a new one without waiting for the redemption code to expire. Once the redemption is processed, the user cannot cancel it.

The cancel_redemption response parameter in the Program Meta API indicates whether the user can revoke (cancel) the generated redemption code from the brand's app. This is controlled by hiding or displaying the cancel redemption button on the brand's app. Contact your Punchh representative to update this Punchh platform configuration.

Cancel Redemption Failure Scenarios

The API returns an error if the discount associated with the redemption you want to cancel is invalid, already redeemed/honored, cancelled, or expired.

View Cancelled Redemption Status

The Punchh platform displays the cancelled redemption on the user’s timeline and in the Account History tab.

If you have a redemption code for the cancelled redemption, you can use the Search Redemption Code API to verify the status of the cancelled redemption.

Path Parameters
  • redemption_id
    Type: integer Format: int64
    required

    Redemption ID returned when the redemption is created

Headers
  • Accept
    Type: string
    required

    Advertises which content types the client is able to understand

  • Authorization
    Type: string
    required

    Used to authorize the request with access_token. It should be supplied as Bearer ACCESS_TOKEN_GOES_HERE.

  • Content-Type
    Type: string
    required

    Set this header to application/json.

  • User-Agent
    Type: string
    required

    Used to Identify the software, device, and application initiating the request, providing information about the client to the server. For details, see User Agent.

  • punchh-app-device-id
    Type: string
    required

    The app device ID helps Punchh identify each device so that certain rewards can be awarded individually to each device instead of per user. For example, the sign-up reward is given to each device ID to prevent fraudulent sign-ups so that a user cannot do repeated sign-ups from a single device to get rewards. It should not change even if the user resets a device. See the sample code to generate the punchh-app-device-id header.

  • x-pch-digest
    Type: string
    required

    The signature for the API call

  • Accept-Language
    Type: string

    Preferred language

Body
application/json
  • client
    Type: string
    required

    OAuth client ID provided by the business

Responses
  • 200

    OK - Redemption successfully cancelled

  • application/json
  • application/json
Request Example for delete/api2/mobile/redemptions/{redemption_id}
curl https://SERVER_NAME_GOES_HERE.punchh.com/api2/mobile/redemptions/1 \
  --request DELETE \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer ACCESS_TOKEN_GOES_HERE' \
  --header 'Content-Type: application/json' \
  --header 'User-Agent: AppIdentifier/VersionNumber/BuildNumber(OS_Type)' \
  --header 'punchh-app-device-id: APP_DEVICE_ID_GOES_HERE' \
  --header 'x-pch-digest: {{$$.env.signature}}' \
  --data '{
  "client": "CLIENT_GOES_HERE",
  "redemption_id": 490636366
}'
No Body