> ## Documentation Index
> Fetch the complete documentation index at: https://developers.bonifiq.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Estimates points, cashback earned and cashback usage limits per product.

> Send an array of products with the store's external `Id` and current `Price`.
Each item is estimated independently. Response order and repeated IDs are preserved.
`Name` and `PriceCurrency` are optional; no currency conversion is performed.
            
### Cashback earned
            
- `Points`: estimated points after bonuses, limits and zero-point rules.
- `Cashback`: cashback earned from those points, truncated to whole currency units.
- `CashbackPercent`: earned percentage before monetary truncation, rounded upward to a whole percentage. Do not calculate it from `Cashback / Price`.
            
### Cashback you can use
            
- `CanUseCashback`: `false` for a restricted product; `true` for a permitted or unknown product, including when restrictions are disabled or empty.
- `CanUseCashbackPercent`: maximum percentage of the price payable with cashback, assuming sufficient balance. Preserves the configured percentage and fractions, reduced by the monetary cap when applicable. Redemption rounding is not applied here.
            
A restricted product can still earn cashback. For a positive price, its `CanUseCashbackPercent` is `0`.
Without active cashback, all four cashback fields are `null`. For a nonpositive price, both percentage fields are `null`.
Percentages use percentage units: `20` means **20%**.
            
### Example
            
With no bonuses, one point per currency unit, cashback worth 0.01 per point, a 20% usage limit and no monetary cap:
            
**Request**
            
```json
[{"Id":"4571633770876","Price":2999.99}]
```
            
**Product estimate**
            
```json
{
  "Id": "4571633770876",
  "Points": 2999,
  "Cashback": 29,
  "CashbackPercent": 1,
  "CanUseCashback": true,
  "CanUseCashbackPercent": 20
}
```
            
For a price of 200, a 30% usage limit and a monetary cap of 40, `CanUseCashbackPercent` is **20%**.
            
### Cart restrictions
            
Minimum purchase requirements are ignored here and checked on the cart.
The monetary cap applies to the **whole order**: do not sum product estimates to authorize redemption.
Actual use also depends on the customer's balance and monetary rounding at redemption.



## OpenAPI

````yaml https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Product/points
openapi: 3.0.0
info:
  title: BonifiQ Private APIs
  description: >-
    # Introduction 

    This is the BonifiQ Private APIs documentation. With these endpoints you can
    interact with BonifiQ systems and enhance your program points.


    # Limitations

    These endpoints are intended to be used in backend communication so they are
    not CORS-compatible and cannot be used by in-browser frontend libraries
    (such as React, Angular, Vue, jQuery, etc)


    If are required to call BonifiQ API from a browser, please refer to our
    [Public APIs](https://api.bonifiq.com.br/apidocs/public)


    # Authentication

    These Private APis use the [Basic
    Authentication](https://en.wikipedia.org/wiki/Basic_access_authentication)
    scheme. You need both an API Token (Username) and API Key (Password) to use
    with it


    You can generate this key pair in BonifiQ admin panel, at the "API Keys"
    menu.


    # How to use this page

    ## Making calls

    You can simulate, test and make calls to API from this Swagger page. To do
    that:

    - Click on the **Authorize** button

    - Inform the Username (API Token) and Passwoird (API Key) and click on
    **Authorize**

    - From the list bellow, choose an API call and click on **Try it out**

    - Inform the required parameters (if any) and click on **Execute**


    ## Verifying requests and responses bodies

    In every API Call there is an explanation of what each field means, theirs
    types and accepted values for all Requests and Responses.


    To view this information, just go to any API Call bellow and in the
    Responses section, click on the Schema.
  version: 1.0.0
servers:
  - url: https://api.bonifiq.com.br
    description: Production
  - url: https://backend--homolog.previewqa.bonifique.com.br
    description: Sandbox
security: []
tags:
  - name: POS
    description: >-
      Flow methods to integrate BonifiQ with a POS system. Check the Flow
      Documentation link on the right
    externalDocs:
      description: Flow Documentation
      url: >-
        https://suporte.bonifiq.com.br/support/solutions/articles/159000319538-integrar-com-pdv
  - name: Checkout
    description: Operations related to checkout cashback redeem, refresh and removal
  - name: Customization
    description: Retrieve customizations for the loyalty program
  - name: Rewards
    description: Interact with rewards already redeemed
paths:
  /v1/pvt/Product/points:
    post:
      tags:
        - Product
      summary: Estimates points, cashback earned and cashback usage limits per product.
      description: >-
        Send an array of products with the store's external `Id` and current
        `Price`.

        Each item is estimated independently. Response order and repeated IDs
        are preserved.

        `Name` and `PriceCurrency` are optional; no currency conversion is
        performed.
                    
        ### Cashback earned
                    
        - `Points`: estimated points after bonuses, limits and zero-point rules.

        - `Cashback`: cashback earned from those points, truncated to whole
        currency units.

        - `CashbackPercent`: earned percentage before monetary truncation,
        rounded upward to a whole percentage. Do not calculate it from `Cashback
        / Price`.
                    
        ### Cashback you can use
                    
        - `CanUseCashback`: `false` for a restricted product; `true` for a
        permitted or unknown product, including when restrictions are disabled
        or empty.

        - `CanUseCashbackPercent`: maximum percentage of the price payable with
        cashback, assuming sufficient balance. Preserves the configured
        percentage and fractions, reduced by the monetary cap when applicable.
        Redemption rounding is not applied here.
                    
        A restricted product can still earn cashback. For a positive price, its
        `CanUseCashbackPercent` is `0`.

        Without active cashback, all four cashback fields are `null`. For a
        nonpositive price, both percentage fields are `null`.

        Percentages use percentage units: `20` means **20%**.
                    
        ### Example
                    
        With no bonuses, one point per currency unit, cashback worth 0.01 per
        point, a 20% usage limit and no monetary cap:
                    
        **Request**
                    
        ```json

        [{"Id":"4571633770876","Price":2999.99}]

        ```
                    
        **Product estimate**
                    
        ```json

        {
          "Id": "4571633770876",
          "Points": 2999,
          "Cashback": 29,
          "CashbackPercent": 1,
          "CanUseCashback": true,
          "CanUseCashbackPercent": 20
        }

        ```
                    
        For a price of 200, a 30% usage limit and a monetary cap of 40,
        `CanUseCashbackPercent` is **20%**.
                    
        ### Cart restrictions
                    
        Minimum purchase requirements are ignored here and checked on the cart.

        The monetary cap applies to the **whole order**: do not sum product
        estimates to authorize redemption.

        Actual use also depends on the customer's balance and monetary rounding
        at redemption.
      operationId: Product_ProductsPoints
      requestBody:
        x-name: request
        description: >-
          Array of products with external Id and Price; Name and PriceCurrency
          are optional.
        content:
          application/json:
            schema:
              type: array
              xml:
                name: ArrayOfProductPointRequest
                wrapped: true
              items:
                xml:
                  name: ProductPointRequest
                oneOf:
                  - $ref: '#/components/schemas/ProductPointRequest'
        required: true
        x-position: 1
      responses:
        '200':
          description: >-
            An ApiResponse envelope. On success, Result contains the product
            estimates.
                         Check HasError: an inactive objective or unsuccessful simulation returns an error envelope,
                         rather than the HTTP 400 used by the public endpoints.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiResponseOfListOfProductPointResponse'
      security:
        - Basic Authentication: []
components:
  schemas:
    ProductPointRequest:
      type: object
      description: >-
        One product to estimate independently. Supply prices in the currency
        used by the loyalty program.
      additionalProperties: false
      required:
        - Id
        - Price
      properties:
        Id:
          type: string
          description: Product Id on the ecommerce platform
          minLength: 1
          example: SKU-001
        Price:
          type: number
          description: Current product selling price
          format: decimal
          example: 499.99
        PriceCurrency:
          type: string
          description: >-
            Optional currency label (for example, BRL). It does not select a
            currency or perform conversion;

            the calculation uses Price as supplied.
          nullable: true
          example: BRL
        Name:
          type: string
          description: >-
            Optional product name. It does not affect product lookup, earning
            rules or cashback restrictions.
          nullable: true
          example: Running shoes
    ApiResponseOfListOfProductPointResponse:
      allOf:
        - $ref: '#/components/schemas/ApiResponse'
        - type: object
          additionalProperties: false
          properties:
            Result:
              type: array
              nullable: true
              xml:
                wrapped: true
              items:
                xml:
                  name: ProductPointResponse
                oneOf:
                  - $ref: '#/components/schemas/ProductPointResponse'
    ApiResponse:
      type: object
      additionalProperties: false
      properties:
        HasError:
          type: boolean
        ErrorMessages:
          type: array
          xml:
            wrapped: true
          items:
            type: string
            xml:
              name: string
        ErrorMessage:
          type: string
        ErrorDescriptions:
          type: array
          xml:
            wrapped: true
          items:
            xml:
              name: ApiResponseError
            oneOf:
              - $ref: '#/components/schemas/ApiResponseError'
    ProductPointResponse:
      type: object
      description: >-
        Earnings estimate and cashback usage eligibility for one requested
        product.
      additionalProperties: false
      properties:
        Id:
          type: string
          description: >-
            External product identifier, returned exactly as supplied in the
            request.
          example: SKU-001
        Points:
          type: integer
          description: >-
            Estimated earned points after applicable bonuses, limits and
            zero-point rules.

            This is a product estimate, not a guarantee of points granted for a
            completed order.
          format: int32
          example: 499
        Cashback:
          type: number
          description: >-
            Estimated cashback earned from the simulated points, truncated to
            whole currency units.

            Null when cashback is unavailable; zero is a valid estimate and
            differs from null.
          format: decimal
          nullable: true
          example: 4
        CashbackPercent:
          type: number
          description: >-
            The cashback percentage calculated from the final simulated points
            and product price,

            including bonuses and limits, rounded up to a whole percentage
            before monetary truncation.

            It will be null if cashback is unavailable or the product price is
            not positive.
          format: decimal
          nullable: true
          example: 1
        CanUseCashback:
          type: boolean
          description: >-
            Whether cashback can be used on this product, considering product
            restrictions only,

            not the customer's balance. False for restricted products, true for
            eligible products

            (including unknown products or disabled restrictions), and null when
            cashback is inactive.
          nullable: true
          example: true
        CanUseCashbackPercent:
          type: number
          description: >-
            Maximum percentage of this product's price payable with cashback,
            assuming sufficient balance.

            Includes product restrictions, the configured percentage limit and
            monetary cap, before redemption rounding.

            Null without active cashback or for a nonpositive price; zero for a
            restricted product.
          format: decimal
          nullable: true
          example: 20
    ApiResponseError:
      type: object
      additionalProperties: false
      properties:
        Description:
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/ApiResponseErrorDescription'
        Field:
          type: string
          nullable: true
        FieldText:
          type: string
    ApiResponseErrorDescription:
      type: integer
      description: |-
        0 = Campaign_InvalidDateRange
        1 = Campaign_Conflict
        2 = ReactivationCampaign_RoundUpPointsRequired
        3 = ReactivationCampaign_LastPurchaseDateRequired
        4 = ReactivationCampaign_LastPurchaseDateFuture
        5 = ReactivationCampaign_ActiveCampaignConflict
        6 = Reward_PointsShouldBePositive
        7 = Reward_ValueShouldBePositive
        8 = Reward_ValueShouldBe100PercentMax
        9 = Reward_ValueShouldBe999ValueMax
        10 = Reward_PointsShouldBe9999ValueMax
        11 = General_FieldCannotBeNullOrBlank
        12 = General_FieldCannotBeDefault
        13 = General_BiggerThanZero
        14 = Genaral_LengthLimitExceeded
        15 = Order_OrderCompletedNeddCompletedDate
        16 = Order_OrderCompletedDateMustBeAfterPlacementDate
        17 = Order_CompletedOrderCannotBeCancelled
        18 = Order_CancelledOrderRequiresCancellationDate
        19 = Order_OrderCancellationDateBeforePlacementDate
        20 = Points_PointsCannotBeZero
        21 = FileUpload_NoFileReceived
        22 = FileUpload_MoreThanOneFileReceived
        23 = Objective_AmountOfPointsCannotBeLessThanOne
        24 = Objective_DiscountValueCannotBeLessThanOne
        25 = Objective_OrderMinimumValueCannotBeLessThanZero
        26 = Objective_DaysToWaitToGrantPointsCannotBeLessThanZero
        27 = Objective_CanceledStatusListMustHaveAValue
        28 = Objective_CompletedStatusListMustHaveAValue
        29 = FileUpload_InvalidFormat
        30 = Objective_SignupStartDateMustHaveAValidValue
        31 = FileUpload_FileTooLarge
        32 = FileUpload_InvalidDimensions
        33 = Account_UserAlreadyExists
        34 = DaysToWaitToGrantPointsInvalidValue
        35 = OrderMinimumValueInvalidValue
        36 = ChangeActiveUser_UniqueAdmin
        37 = ApiOrder_OrderIsCancelled
        38 = PublicApiProductService_ObjectiveDisabled
        39 = PublicApiProductService_ErrorCalculatingPoints
        40 = ApiExternalOrder_Cant_Insert_Update
        41 = ApiExternalOrder_Order_Not_Found
        42 = ApiExternalProduct_Cant_Insert_Update
        43 = ApiExternalErro_Original_Id_Cant_Be_Null
        44 = ApiExternalCustomer_Cant_Insert
        45 = ApiExternalCustomer_Cant_Update
        46 = ApiTrustvoxKeysValidation
        47 = ApiExternalRewardConfiguration_Error
        48 = ApiExternalRewardConfiguration_Get_Error
        49 = ApiExternal_Error_Page_Size
        50 = ApiExternalRewardRedeem_Error_Customer_not_Found
        51 = ApiExternalRewardRedeem_Error_Unable_to_Reedem
        52 = ApiExternalObjective_not_found
        53 = ApiExternalObjective_inactive
        54 = ApiExternalCustomer_document_email_empty
        55 = ApiExternalCustomer_documen_AlphaNumeric_only
        56 = ApiExternalAffiliate_coupon_empty
        57 = ApiJudgeMeAuthorizationError
        58 = ApiExternalCustomObjective_max_bonification_reached
        59 = ApiExternalObjective_type_incorrect
        60 = ApiExternalCoupon_Customer_Not_Found
        61 = ApiExternalCoupon_Cant_Update_Coupon
        62 = ApiExternalCoupon_Not_found
        63 = Referral_FriendAlreadyExists
        64 = Customer_NotFound
        65 = Tier_NotFound
        66 = TierBenefit_Reward_Required
        67 = ChangePoints_CannotAddPointsWithWrongOperationType
        68 = ChangePoints_CannotRemovePointsWithWrongOperationType
        69 = ChangePoints_CannotBeZeroPoints
        70 = ChangePoints_ChangeKeyCannotBeNull
        71 = ChangePoints_ChangeKeyAlreadyExists
        72 = ChangePoints_ReasonCannotBeNullOrBlank
        73 = ChangePoints_CustomerReasonTooLong
        74 = ApiCustomer_InsertAlreadyExists
        75 = ApiCustomer_ChangeCashback_Inactive
        76 = ApiCustomer_RedeemCashback_Error
        77 = ImportCoupons_AllCouponsAlreadyExists
        78 = ApiCustomer_CannotChangeBirthday
        79 = ApiRewardCancel_NotFound
        80 = ApiRewardCancel_AlreadyCanceled
        81 = ApiRewardCancel_InternalError
        82 = ApiKonfidencyKeysValidation
        83 = GenericError
        84 = Account_UserWithoutLastName
        85 = ApiDomain_NotFound
        86 = ApiTenant_NotFound
        87 = PdvUser_InvalidCredentials
        88 = ApiReward_NoActiveRewards
        89 = PdvReward_CustomerMismatch
        90 = PdvReward_CoupomNotFound
        91 = PdvReward_CoupomAlreadyUsed
        92 = PdvReward_CoupomAlreadyRefunded
        93 = PdvReward_RewardNotFound
        94 = PdvReward_PurchaseValueInvalid
        95 = PdvReward_CashbackValueInvalid
        96 = PdvUser_NotFound
        97 = PdvUser_NotInserted
        98 = PdvOrder_WrongAmountOfPoints
        99 = PdvOrder_ExcededMaxValue
        100 = PdvOrder_NotEnoughPoints
        101 = PdvOrder_OrderIdAlreadyExists
        102 = PdvOrder_CreationError
        103 = PdvOrder_CancellationError
        104 = PdvOrder_NotFound
        105 = PdvOrder_CustomerMismatch
        106 = PdvOrder_OriginalIdUpdateError
        107 = PdvBranch_NotInserted
        108 = PdvBranch_OriginalIdAlreadyExists
        109 = Too_Many_Requests
        110 = PdvCustomer_AlreadyCompleted
        111 = Quiz_QuizNotFound
        112 = Quiz_MinimumAmountOfOptions
        113 = Quiz_MaximumAmountOfOptions
        114 = Quiz_MaximumAmountOfQuestions
        115 = BillingGroupParticipants_ParticipantTenantIdIsActive
        116 = BillingGroup_BillingGroupTenantIdIsActive
        117 = BillingGroup_DuplicateTenantId
        118 = AffiliateCouponGenericError
        119 = AffiliateCouponNoExistsInPlatform
        120 = AffiliateSettingsNotExist
        121 = EndDate_ManageAdditionalBonuses
        122 = AdditionalBonuses_ManageAdditionalBonuses
        123 = Reinstall_The_App
        124 = NewCustomer_EmailAlreadyUsed
        125 = NewCustomer_DocumentAlreadyUsed
        126 = WebhookSubscription_TopicRequired
        127 = ParticipationCampaign_TotalAvailableLessThanRegistered
        128 = FitnessChallenge_ActivityRequired
        129 = FitnessChallenge_InvalidDateRange
        130 = FitnessChallenge_RecurrenceRequired
        131 = FitnessChallenge_ParticipationLimitRequired
        132 = FitnessChallenge_DistanceNotSupported
        133 = FitnessChallenge_DeleteHasParticipations
        134 = ApiExternalOrder_Invalid_Partial_Cancel_Products
        135 = CustomerNotFoundByDocument
        136 = CustomerNotFoundByEmail
        137 = ChangePoints_BalanceCannotBeNegative
        138 = ChangePoints_BalanceCannotExceedLimit
        139 = ChangePoints_CouldNotAcquireLock
        140 = AdvancedRule_ActionButtonUrlInvalid
        141 = AdvancedRule_InvalidPurchaseAmountRange
        142 = AdvancedRule_StartDateCannotBeInThePast
        143 = AdvancedRule_EndDateCannotBeInThePast
        144 = AdvancedRule_AtLeastOneConditionRequired
        145 = AdvancedRule_PurchaseAmountMustBePositive
        146 = AdvancedRule_NotFound
        147 = AdvancedRule_FeatureNotEnabled
        148 = Objective_MaxCashbackPercentageLimitRequired
        149 = Objective_MaxCashbackPercentageLimitInvalidValue
        150 = Objective_MaxCashbackPercentageLimitBelowBase
        151 = ReactivationCampaign_NeverPurchasedConflictsWithLastPurchase
        152 = Objective_CustomGrantDelayRequiresPdvIntegration
        153 = AccelerationCampaign_PointsAndCashbackAreMutuallyExclusive
        154 = AdvancedRule_CompletedCannotBeEdited
        155 = Reward_VtexCollectionSalesChannelOnlyCashback
        156 = Reward_VtexCollectionSalesChannelPairsInvalid
        157 = AdvancedRule_ActionButtonUrlRequired
        158 = AdvancedRule_ActionButtonTextRequired
        159 = CustomerSegment_TagInvalidFormat
        160 = CustomerSegment_MembersRequired
        161 = CustomerSegment_TagAlreadyExists
        162 = CustomerSegment_FeatureNotEnabled
        163 = CustomerSegment_ConcurrentUpdate
        164 = CustomerSegment_NotFound
        165 = CustomerSegment_MemberChangeNotQueued
        166 = AdvancedRule_SegmentNotFound
        167 = CustomerSegment_InUseByActiveAdvancedRules
        168 = AffiliateOrderReprocess_CouponsRequired
        169 = AffiliateOrderReprocess_StartDateRequired
        170 = AffiliateOrderReprocess_TooManyCoupons
        171 = AffiliateOrderReprocess_InvalidDateRange
      x-enumNames:
        - Campaign_InvalidDateRange
        - Campaign_Conflict
        - ReactivationCampaign_RoundUpPointsRequired
        - ReactivationCampaign_LastPurchaseDateRequired
        - ReactivationCampaign_LastPurchaseDateFuture
        - ReactivationCampaign_ActiveCampaignConflict
        - Reward_PointsShouldBePositive
        - Reward_ValueShouldBePositive
        - Reward_ValueShouldBe100PercentMax
        - Reward_ValueShouldBe999ValueMax
        - Reward_PointsShouldBe9999ValueMax
        - General_FieldCannotBeNullOrBlank
        - General_FieldCannotBeDefault
        - General_BiggerThanZero
        - Genaral_LengthLimitExceeded
        - Order_OrderCompletedNeddCompletedDate
        - Order_OrderCompletedDateMustBeAfterPlacementDate
        - Order_CompletedOrderCannotBeCancelled
        - Order_CancelledOrderRequiresCancellationDate
        - Order_OrderCancellationDateBeforePlacementDate
        - Points_PointsCannotBeZero
        - FileUpload_NoFileReceived
        - FileUpload_MoreThanOneFileReceived
        - Objective_AmountOfPointsCannotBeLessThanOne
        - Objective_DiscountValueCannotBeLessThanOne
        - Objective_OrderMinimumValueCannotBeLessThanZero
        - Objective_DaysToWaitToGrantPointsCannotBeLessThanZero
        - Objective_CanceledStatusListMustHaveAValue
        - Objective_CompletedStatusListMustHaveAValue
        - FileUpload_InvalidFormat
        - Objective_SignupStartDateMustHaveAValidValue
        - FileUpload_FileTooLarge
        - FileUpload_InvalidDimensions
        - Account_UserAlreadyExists
        - DaysToWaitToGrantPointsInvalidValue
        - OrderMinimumValueInvalidValue
        - ChangeActiveUser_UniqueAdmin
        - ApiOrder_OrderIsCancelled
        - PublicApiProductService_ObjectiveDisabled
        - PublicApiProductService_ErrorCalculatingPoints
        - ApiExternalOrder_Cant_Insert_Update
        - ApiExternalOrder_Order_Not_Found
        - ApiExternalProduct_Cant_Insert_Update
        - ApiExternalErro_Original_Id_Cant_Be_Null
        - ApiExternalCustomer_Cant_Insert
        - ApiExternalCustomer_Cant_Update
        - ApiTrustvoxKeysValidation
        - ApiExternalRewardConfiguration_Error
        - ApiExternalRewardConfiguration_Get_Error
        - ApiExternal_Error_Page_Size
        - ApiExternalRewardRedeem_Error_Customer_not_Found
        - ApiExternalRewardRedeem_Error_Unable_to_Reedem
        - ApiExternalObjective_not_found
        - ApiExternalObjective_inactive
        - ApiExternalCustomer_document_email_empty
        - ApiExternalCustomer_documen_AlphaNumeric_only
        - ApiExternalAffiliate_coupon_empty
        - ApiJudgeMeAuthorizationError
        - ApiExternalCustomObjective_max_bonification_reached
        - ApiExternalObjective_type_incorrect
        - ApiExternalCoupon_Customer_Not_Found
        - ApiExternalCoupon_Cant_Update_Coupon
        - ApiExternalCoupon_Not_found
        - Referral_FriendAlreadyExists
        - Customer_NotFound
        - Tier_NotFound
        - TierBenefit_Reward_Required
        - ChangePoints_CannotAddPointsWithWrongOperationType
        - ChangePoints_CannotRemovePointsWithWrongOperationType
        - ChangePoints_CannotBeZeroPoints
        - ChangePoints_ChangeKeyCannotBeNull
        - ChangePoints_ChangeKeyAlreadyExists
        - ChangePoints_ReasonCannotBeNullOrBlank
        - ChangePoints_CustomerReasonTooLong
        - ApiCustomer_InsertAlreadyExists
        - ApiCustomer_ChangeCashback_Inactive
        - ApiCustomer_RedeemCashback_Error
        - ImportCoupons_AllCouponsAlreadyExists
        - ApiCustomer_CannotChangeBirthday
        - ApiRewardCancel_NotFound
        - ApiRewardCancel_AlreadyCanceled
        - ApiRewardCancel_InternalError
        - ApiKonfidencyKeysValidation
        - GenericError
        - Account_UserWithoutLastName
        - ApiDomain_NotFound
        - ApiTenant_NotFound
        - PdvUser_InvalidCredentials
        - ApiReward_NoActiveRewards
        - PdvReward_CustomerMismatch
        - PdvReward_CoupomNotFound
        - PdvReward_CoupomAlreadyUsed
        - PdvReward_CoupomAlreadyRefunded
        - PdvReward_RewardNotFound
        - PdvReward_PurchaseValueInvalid
        - PdvReward_CashbackValueInvalid
        - PdvUser_NotFound
        - PdvUser_NotInserted
        - PdvOrder_WrongAmountOfPoints
        - PdvOrder_ExcededMaxValue
        - PdvOrder_NotEnoughPoints
        - PdvOrder_OrderIdAlreadyExists
        - PdvOrder_CreationError
        - PdvOrder_CancellationError
        - PdvOrder_NotFound
        - PdvOrder_CustomerMismatch
        - PdvOrder_OriginalIdUpdateError
        - PdvBranch_NotInserted
        - PdvBranch_OriginalIdAlreadyExists
        - Too_Many_Requests
        - PdvCustomer_AlreadyCompleted
        - Quiz_QuizNotFound
        - Quiz_MinimumAmountOfOptions
        - Quiz_MaximumAmountOfOptions
        - Quiz_MaximumAmountOfQuestions
        - BillingGroupParticipants_ParticipantTenantIdIsActive
        - BillingGroup_BillingGroupTenantIdIsActive
        - BillingGroup_DuplicateTenantId
        - AffiliateCouponGenericError
        - AffiliateCouponNoExistsInPlatform
        - AffiliateSettingsNotExist
        - EndDate_ManageAdditionalBonuses
        - AdditionalBonuses_ManageAdditionalBonuses
        - Reinstall_The_App
        - NewCustomer_EmailAlreadyUsed
        - NewCustomer_DocumentAlreadyUsed
        - WebhookSubscription_TopicRequired
        - ParticipationCampaign_TotalAvailableLessThanRegistered
        - FitnessChallenge_ActivityRequired
        - FitnessChallenge_InvalidDateRange
        - FitnessChallenge_RecurrenceRequired
        - FitnessChallenge_ParticipationLimitRequired
        - FitnessChallenge_DistanceNotSupported
        - FitnessChallenge_DeleteHasParticipations
        - ApiExternalOrder_Invalid_Partial_Cancel_Products
        - CustomerNotFoundByDocument
        - CustomerNotFoundByEmail
        - ChangePoints_BalanceCannotBeNegative
        - ChangePoints_BalanceCannotExceedLimit
        - ChangePoints_CouldNotAcquireLock
        - AdvancedRule_ActionButtonUrlInvalid
        - AdvancedRule_InvalidPurchaseAmountRange
        - AdvancedRule_StartDateCannotBeInThePast
        - AdvancedRule_EndDateCannotBeInThePast
        - AdvancedRule_AtLeastOneConditionRequired
        - AdvancedRule_PurchaseAmountMustBePositive
        - AdvancedRule_NotFound
        - AdvancedRule_FeatureNotEnabled
        - Objective_MaxCashbackPercentageLimitRequired
        - Objective_MaxCashbackPercentageLimitInvalidValue
        - Objective_MaxCashbackPercentageLimitBelowBase
        - ReactivationCampaign_NeverPurchasedConflictsWithLastPurchase
        - Objective_CustomGrantDelayRequiresPdvIntegration
        - AccelerationCampaign_PointsAndCashbackAreMutuallyExclusive
        - AdvancedRule_CompletedCannotBeEdited
        - Reward_VtexCollectionSalesChannelOnlyCashback
        - Reward_VtexCollectionSalesChannelPairsInvalid
        - AdvancedRule_ActionButtonUrlRequired
        - AdvancedRule_ActionButtonTextRequired
        - CustomerSegment_TagInvalidFormat
        - CustomerSegment_MembersRequired
        - CustomerSegment_TagAlreadyExists
        - CustomerSegment_FeatureNotEnabled
        - CustomerSegment_ConcurrentUpdate
        - CustomerSegment_NotFound
        - CustomerSegment_MemberChangeNotQueued
        - AdvancedRule_SegmentNotFound
        - CustomerSegment_InUseByActiveAdvancedRules
        - AffiliateOrderReprocess_CouponsRequired
        - AffiliateOrderReprocess_StartDateRequired
        - AffiliateOrderReprocess_TooManyCoupons
        - AffiliateOrderReprocess_InvalidDateRange
      enum:
        - 0
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        - 7
        - 8
        - 9
        - 10
        - 11
        - 12
        - 13
        - 14
        - 15
        - 16
        - 17
        - 18
        - 19
        - 20
        - 21
        - 22
        - 23
        - 24
        - 25
        - 26
        - 27
        - 28
        - 29
        - 30
        - 31
        - 32
        - 33
        - 34
        - 35
        - 36
        - 37
        - 38
        - 39
        - 40
        - 41
        - 42
        - 43
        - 44
        - 45
        - 46
        - 47
        - 48
        - 49
        - 50
        - 51
        - 52
        - 53
        - 54
        - 55
        - 56
        - 57
        - 58
        - 59
        - 60
        - 61
        - 62
        - 63
        - 64
        - 65
        - 66
        - 67
        - 68
        - 69
        - 70
        - 71
        - 72
        - 73
        - 74
        - 75
        - 76
        - 77
        - 78
        - 79
        - 80
        - 81
        - 82
        - 83
        - 84
        - 85
        - 86
        - 87
        - 88
        - 89
        - 90
        - 91
        - 92
        - 93
        - 94
        - 95
        - 96
        - 97
        - 98
        - 99
        - 100
        - 101
        - 102
        - 103
        - 104
        - 105
        - 106
        - 107
        - 108
        - 109
        - 110
        - 111
        - 112
        - 113
        - 114
        - 115
        - 116
        - 117
        - 118
        - 119
        - 120
        - 121
        - 122
        - 123
        - 124
        - 125
        - 126
        - 127
        - 128
        - 129
        - 130
        - 131
        - 132
        - 133
        - 134
        - 135
        - 136
        - 137
        - 138
        - 139
        - 140
        - 141
        - 142
        - 143
        - 144
        - 145
        - 146
        - 147
        - 148
        - 149
        - 150
        - 151
        - 152
        - 153
        - 154
        - 155
        - 156
        - 157
        - 158
        - 159
        - 160
        - 161
        - 162
        - 163
        - 164
        - 165
        - 166
        - 167
        - 168
        - 169
        - 170
        - 171
  securitySchemes:
    Basic Authentication:
      type: http
      description: Use API Basic Auth Keys
      scheme: basic

````