Skip to main content
POST
/
v1
/
pvt
/
Checkout
/
redeem
Redeems cashback for a checkout
curl --request POST \
  --url https://api.bonifiq.com.br/v1/pvt/Checkout/redeem \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "CustomerId": "<string>",
  "CheckoutId": "<string>",
  "CashbackValue": 123,
  "Total": 123,
  "Token": "<string>",
  "OriginalKey": "<string>",
  "Items": [
    {
      "ExternalProductId": "<string>",
      "Value": 123,
      "Quantity": 123
    }
  ]
}
'
{
  "ErrorMessage": "<string>",
  "ErrorCode": 123,
  "Result": {
    "RewardId": 123,
    "Point": {
      "PointId": 123,
      "Quantity": 123,
      "Metadatas": [
        {
          "Name": "<string>",
          "Value": "<string>"
        }
      ]
    },
    "ExternalCode": "<string>",
    "OriginalKey": "<string>",
    "Coupon": {
      "CouponCode": "<string>",
      "CouponValue": 123,
      "ValidDateStart": "2023-11-07T05:31:56Z",
      "ValidDateEnd": "2023-11-07T05:31:56Z"
    }
  },
  "Code": "<string>",
  "CodeName": "<string>",
  "HasWarning": true,
  "HasError": true
}

Authorizations

Authorization
string
header
required

Use API Basic Auth Keys

Body

application/json

The redeem request

Request to redeem cashback in a checkout

CustomerId
string

Customer identifier (email or document/CPF)

CheckoutId
string

The checkout/cart ID from the e-commerce platform

CashbackValue
number<decimal> | null

Optional: The specific amount of cashback to apply. If not provided, the maximum available cashback will be used.

Total
number<decimal> | null

Optional: The checkout total value. Used for validation.

Token
string | null

Optional: Platform-specific token for the checkout

OriginalKey
string | null

Optional: A unique key to identify this redemption (for idempotency)

RedeemOrigin
enum<integer>

Optional: The origin of the redeem request

Available options:
0,
1,
2,
3,
4,
5
Items
object[] | null

Optional: List of order items for cashback eligibility validation. If provided, only eligible items will be considered for cashback calculation. If not provided, the full order total will be used (backward compatible behavior).

Response

200 - application/json

The reward information

Standard response envelope used by the External API.

ErrorMessage
string | null

Error message returned when the request fails validation or processing. For warnings and successful responses, consumers should usually inspect Result, Code and Severity first.

ErrorCode
integer<int32> | null

Legacy numeric error code derived from internal API errors when available. This field is relevant only for error flows that use ApiResponseErrorDescription.

Result
object

Business payload returned by the endpoint.

Code
string | null

Endpoint-specific business code formatted as a two-digit string, such as 03 or 07. This field is available for success, warning and error outcomes.

CodeName
string | null

Symbolic enum name associated with Code, such as CheckoutNotFound.

Severity
enum<integer>

Final severity of the response. Success means the action completed as expected, Warning means the request was valid but the business outcome is informational or non-ideal, and Error means the request should be treated as a failure.

Available options:
0,
1,
2
HasWarning
boolean

Convenience flag that is true when Severity is Warning. Warnings are valid 200 OK business outcomes and should not be handled as transport or validation errors.

HasError
boolean

Indicates whether the request failed and should be handled as an error response. This flag is reserved for real API errors; warnings must keep this property as false.