---
title: "Returns a estimated value of points give from a list of products."
method: POST
path: "/v1/pvt/Product/points"
tags: ["Product"]
---

# Returns a estimated value of points give from a list of products.

`POST /v1/pvt/Product/points`

## Request body

- object[]
  - `Id` string, required — Product Id on the ecommerce platform
  - `Price` number, required — Current product selling price
  - `PriceCurrency` string, nullable — Optional: the currency used in the pricing (eg: BRL)
  - `Name` string, nullable — Name of the product which price is being calculated

## Response `200`

- ApiResponseOfListOfProductPointResponse
  - `HasError` boolean
  - `ErrorMessages` string[]
  - `ErrorMessage` string
  - `ErrorDescriptions` object[]
    - `Description` 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 — 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
    - `Field` string, nullable
    - `FieldText` string
  - `Result` object[], nullable
    - `Id` string — Product Id
    - `Points` integer — Amount of points this product will give.
    - `Cashback` number, nullable — The amount of cashback that will be received from purchasing this product. It will be null if the cashback is not available.

---

[API](https://skmtc.net/bonifiq/apis/bonifiq-private-apis.md) · [All operations](https://skmtc.net/bonifiq/apis/bonifiq-private-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bonifiq/bonifiq-private-apis/revisions/fafbe5673edc/schema)
