Estimates the points, cashback and availability dates for a sale without saving an order.
Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale,
even if an order with the same OriginalId exists. The estimate applies the store’s customer enrollment rules.
POST
/
v1
/
pvt
/
POS
/
orders
/
estimate
Estimates the points, cashback and availability dates for a sale without saving an order.
Date the order reached the completed state (usually it's invoiced or delivered).
OrderCancelledDate
string<date-time> | null
if the order is cancelled, contains the date.
OrderStatus
string
Status at the client's order system.
IsCancelledOrReturned
boolean
if true the order was cancelled or returned.
IsCompleted
boolean
If true it means the order has reached its final status and points can be awarded to the consumer.
OrderTotal
number<decimal>
Can be used at Loyalty Programs. Important: these values should not include Shipping costs.
Customer
object
Buyer registration.
Show child attributes
Products
object[] | null
Products listed on the order.
Show child attributes
UpdatedDate
string<date-time>
the date from the last update on this order.
Coupon
string | null
Coupon code used on this order.
Metadatas
object[] | null
This is a key-value list of extra information regarding the order.
It could be informative only or being part of an business rule to be used later.
Show child attributes
PaymentMethod
object | null
Obsolete: use PaymentMethods instead. This legacy field is still supported for backward compatibility.
The Payment Method used in this purchase. Should be the more specific as possible (ie: instead of using "Credit Card" use "Visa Credit Card" and so on).
This field can be used later on to create extra points purchase rules.
Show child attributes
PaymentMethods
object[] | null
Preferred field for the payment methods used in this purchase. Each item should be as specific as possible
(ie: instead of using "Credit Card" use "Visa Credit Card" and so on).
Show child attributes
Branch
object | null
A Branch is physical location or outlet of a store (loja, filial, etc). This is used to receive information of which store the purchase was made. It can be later used to create rules for points or filtering reports.
Show child attributes
SalesPerson
object | null
A sales person is the person responsible for the sale. It can be used for filtering reports.
Show child attributes
TradePolicy
object | null
Optional trade policy (política comercial) of the sale, such as a full price store or an outlet store.
It can be used to create extra points rules by trade policy.
Show child attributes
ExternalCoupon
string | null
Response
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 | null
Business payload returned by the endpoint.
Show child attributes
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.
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"BonifiQ Developers","colors":{"primary":"#8849f9","light":"#4DCCF8","dark":"#291D5C"},"logo":{"light":"https://mintcdn.com/bonifiq/GKwMiRtr4XYxzOf1/logo/logobonifiq.svg?fit=max\u0026auto=format\u0026n=GKwMiRtr4XYxzOf1\u0026q=85\u0026s=37aa2bf1ee2234bd01c4e9a3c1000de8","dark":"https://mintcdn.com/bonifiq/GKwMiRtr4XYxzOf1/logo/logobonifiq.svg?fit=max\u0026auto=format\u0026n=GKwMiRtr4XYxzOf1\u0026q=85\u0026s=37aa2bf1ee2234bd01c4e9a3c1000de8"},"favicon":"https://mintcdn.com/bonifiq/PGe7x4hEVfeKAenM/favicon2.png?fit=max\u0026auto=format\u0026n=PGe7x4hEVfeKAenM\u0026q=85\u0026s=5280058f655795a8d99791fd8e446790","navbar":{"links":[{"href":"https://suporte.bonifiq.com.br","label":"Suporte"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.bonifiq.com.br"}},"footer":{"socials":{"github":"https://github.com/bonifiq","linkedin":"https://linkedin.com/company/bonifiq"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"bonifiq","hasAudioNarration":false,"actualSubdomain":"bonifiq","customDomains":["developers.bonifiq.com.br"],"gitSource":{"type":"github","owner":"bonifiq","repo":"developers-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"issues":false,"edits":false,"thumbs":true},"entitlements":{},"buildId":"6af5f24404140d5ce9d787ab","clientVersion":"0.0.4142","searchFilterCounts":[{"language":"default","tag":"API Backend (Privada)","count":174},{"language":"default","tag":"Customer","count":25},{"language":"default","tag":"API Frontend (Pública)","count":22},{"language":"default","tag":"Reports","count":11},{"language":"default","tag":"API Widget","count":10},{"language":"default","tag":"POS","count":10},{"language":"default","tag":"Tiers","count":9},{"language":"default","tag":"Webhooks","count":8},{"language":"default","tag":"Tópicos","count":6},{"language":"default","tag":"Checkout","count":5}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order","slug":"/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order","pageMetadata":{"title":"Estimates the points, cashback and availability dates for a sale without saving an order.","description":"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale,\neven if an order with the same OriginalId exists. The estimate applies the store's customer enrollment rules.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/orders/estimate","href":"/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale,\\neven if an order with the same OriginalId exists. The estimate applies the store’s customer enrollment rules.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Estimates the points, cashback and availability dates for a sale without saving an order.","description":"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale,\neven if an order with the same OriginalId exists. The estimate applies the store's customer enrollment rules.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/orders/estimate","href":"/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["POS"],"summary":"Estimates the points, cashback and availability dates for a sale without saving an order.","description":"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale,\neven if an order with the same OriginalId exists. The estimate applies the store's customer enrollment rules.","operationId":"POS_EstimateOrderBonus","requestBody":"214f13d6-3bd3-4699-8859-dd1f549e72f1","responses":{"200":"ea241f84-71bf-4bff-a37e-3cc3a6a04bc1","400":"a95c04f6-f9da-49ae-8464-0fddc73fdf82","500":"cc9879ad-fc3b-4f8c-9042-44fd7f27fa62"},"security":["50be5074-956e-4699-a4a9-feed1cb9e752"],"method":"post","type":"path","servers":["92d21c7a-9ec0-4a20-a16e-a093c5294a3e","27e16232-a307-4b26-8d0a-ecffcae01868"],"path":"/v1/pvt/POS/orders/estimate","baseUrlOptions":["https://api.bonifiq.com.br","https://backend--homolog.previewqa.bonifique.com.br"],"title":"Estimates the points, cashback and availability dates for a sale without saving an order.","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"x-name":"orderData","content":{"application/json":{"schema":{"type":"object","description":"Purchase Order Model","additionalProperties":false,"properties":{"OriginalId":{"type":"string","description":"This is the Id in the client store. ","uniqueKey":"OriginalId","typeLabel":"string"},"OrderPlacementDate":{"type":"string","description":"Date of the customer's purchase. ","format":"date-time","uniqueKey":"OrderPlacementDate","typeLabel":"string\u003cdate-time>"},"OrderCompletedDate":{"oneOf":[{"type":"string","description":"Date the order reached the completed state (usually it's invoiced or delivered).","format":"date-time","uniqueKey":"OrderCompletedDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Date the order reached the completed state (usually it's invoiced or delivered).","format":"date-time","uniqueKey":"OrderCompletedDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"OrderCompletedDate","typeLabel":"string\u003cdate-time> | null"},"OrderCancelledDate":{"oneOf":[{"type":"string","description":"if the order is cancelled, contains the date.","format":"date-time","uniqueKey":"OrderCancelledDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"if the order is cancelled, contains the date.","format":"date-time","uniqueKey":"OrderCancelledDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"OrderCancelledDate","typeLabel":"string\u003cdate-time> | null"},"OrderStatus":{"type":"string","description":"Status at the client's order system.","uniqueKey":"OrderStatus","typeLabel":"string"},"IsCancelledOrReturned":{"type":"boolean","description":"if true the order was cancelled or returned.","uniqueKey":"IsCancelledOrReturned","typeLabel":"boolean"},"IsCompleted":{"type":"boolean","description":"If true it means the order has reached its final status and points can be awarded to the consumer.","uniqueKey":"IsCompleted","typeLabel":"boolean"},"OrderTotal":{"type":"number","description":"Can be used at Loyalty Programs. Important: these values should not include Shipping costs.","format":"decimal","uniqueKey":"OrderTotal","typeLabel":"number\u003cdecimal>"},"Customer":{"type":"object","description":"Buyer registration.","properties":{"OriginalId":{"type":"string","description":"This is the Id in the client store. ","uniqueKey":"Customer.OriginalId","typeLabel":"string"},"Name":{"type":"string","description":"Customer name.","uniqueKey":"Customer.Name","typeLabel":"string"},"Email":{"oneOf":[{"type":"string","description":"Customer email.","uniqueKey":"Customer.Email.oneOf.0","typeLabel":"string"},{"type":"null","description":"Customer email.","uniqueKey":"Customer.Email.oneOf.1","typeLabel":"null"}],"uniqueKey":"Customer.Email","typeLabel":"string | null"},"Phone":{"oneOf":[{"type":"string","description":"Customer Contact Phone.","uniqueKey":"Customer.Phone.oneOf.0","typeLabel":"string"},{"type":"null","description":"Customer Contact Phone.","uniqueKey":"Customer.Phone.oneOf.1","typeLabel":"null"}],"uniqueKey":"Customer.Phone","typeLabel":"string | null"},"BirthdayDate":{"oneOf":[{"type":"string","description":"Customer Birthdate.","format":"date-time","uniqueKey":"Customer.BirthdayDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Customer Birthdate.","format":"date-time","uniqueKey":"Customer.BirthdayDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"Customer.BirthdayDate","typeLabel":"string\u003cdate-time> | null"},"SignupDate":{"oneOf":[{"type":"string","description":"Date when the customer made the register on client store.","format":"date-time","uniqueKey":"Customer.SignupDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Date when the customer made the register on client store.","format":"date-time","uniqueKey":"Customer.SignupDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"Customer.SignupDate","typeLabel":"string\u003cdate-time> | null"},"Document":{"oneOf":[{"type":"string","description":"Some document number from the customer, accepts any string.","uniqueKey":"Customer.Document.oneOf.0","typeLabel":"string"},{"type":"null","description":"Some document number from the customer, accepts any string.","uniqueKey":"Customer.Document.oneOf.1","typeLabel":"null"}],"uniqueKey":"Customer.Document","typeLabel":"string | null"},"IsEnrolled":{"type":"boolean","description":"If true the customer is participating on the points plan from the store.","uniqueKey":"Customer.IsEnrolled","typeLabel":"boolean"},"EnrolledDate":{"oneOf":[{"type":"string","description":"Date when the customer made entered into the program. Use the OrderPlacementDate if not informed.","format":"date-time","uniqueKey":"Customer.EnrolledDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Date when the customer made entered into the program. Use the OrderPlacementDate if not informed.","format":"date-time","uniqueKey":"Customer.EnrolledDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"Customer.EnrolledDate","typeLabel":"string\u003cdate-time> | null"}},"additionalProperties":false,"uniqueKey":"Customer","typeLabel":"object"},"Products":{"oneOf":[{"type":"array","description":"Products listed on the order.","xml":{"wrapped":true},"items":{"type":"object","description":"Product model.","properties":{"OriginalId":{"type":"string","description":"Id from the client store.","uniqueKey":"Products.oneOf.0.items.[INDEX].OriginalId","typeLabel":"string"},"Title":{"type":"string","description":"Product Name","uniqueKey":"Products.oneOf.0.items.[INDEX].Title","typeLabel":"string"},"Url":{"oneOf":[{"type":"string","description":"Direct url to the product on the client store.","uniqueKey":"Products.oneOf.0.items.[INDEX].Url.oneOf.0","typeLabel":"string"},{"type":"null","description":"Direct url to the product on the client store.","uniqueKey":"Products.oneOf.0.items.[INDEX].Url.oneOf.1","typeLabel":"null"}],"uniqueKey":"Products.oneOf.0.items.[INDEX].Url","typeLabel":"string | null"},"ImageUrl":{"oneOf":[{"type":"string","description":"Product img url.","uniqueKey":"Products.oneOf.0.items.[INDEX].ImageUrl.oneOf.0","typeLabel":"string"},{"type":"null","description":"Product img url.","uniqueKey":"Products.oneOf.0.items.[INDEX].ImageUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"Products.oneOf.0.items.[INDEX].ImageUrl","typeLabel":"string | null"},"IsActive":{"type":"boolean","description":"if true the product is active on the store.","uniqueKey":"Products.oneOf.0.items.[INDEX].IsActive","typeLabel":"boolean"},"ProductPrice":{"oneOf":[{"type":"number","description":"How much the customer paid for this product. If it is not null and not zero it can be used with extra points for products rule","format":"decimal","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductPrice.oneOf.0","typeLabel":"number\u003cdecimal>"},{"type":"null","description":"How much the customer paid for this product. If it is not null and not zero it can be used with extra points for products rule","format":"decimal","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductPrice.oneOf.1","typeLabel":"null"}],"uniqueKey":"Products.oneOf.0.items.[INDEX].ProductPrice","typeLabel":"number\u003cdecimal> | null"},"ProductBrand":{"oneOf":[{"type":"object","description":"Product Brand","properties":{"OriginalId":{"type":"string","description":"Id from the client store","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductBrand.oneOf.0.OriginalId","typeLabel":"string"},"Name":{"type":"string","description":"Brand Name","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductBrand.oneOf.0.Name","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"Products.oneOf.0.items.[INDEX].ProductBrand.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductBrand.oneOf.1","typeLabel":"null"}],"uniqueKey":"Products.oneOf.0.items.[INDEX].ProductBrand","typeLabel":"object | null"},"ProductCategory":{"oneOf":[{"type":"object","description":"Product Category. Supports hierarchical categories with parent references.","properties":{"OriginalId":{"type":"string","description":"Id from the client store","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0.OriginalId","typeLabel":"string"},"Name":{"type":"string","description":"Category Name","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0.Name","typeLabel":"string"},"Description":{"oneOf":[{"type":"string","description":"Category Description","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0.Description.oneOf.0","typeLabel":"string"},{"type":"null","description":"Category Description","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0.Description.oneOf.1","typeLabel":"null"}],"uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0.Description","typeLabel":"string | null"},"ParentCategory":{"oneOf":[{"description":"Parent Category. Use this to create a category tree.\nFor example, if you have Electronics > Smartphones > Android,\nthe Android category would have Smartphones as its ParentCategory,\nand Smartphones would have Electronics as its ParentCategory.","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0.ParentCategory.oneOf.0","typeLabel":"any"},{"type":"null","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0.ParentCategory.oneOf.1","typeLabel":"null"}],"uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0.ParentCategory","typeLabel":"any | null"}},"additionalProperties":false,"uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory.oneOf.1","typeLabel":"null"}],"uniqueKey":"Products.oneOf.0.items.[INDEX].ProductCategory","typeLabel":"object | null"}},"additionalProperties":false,"uniqueKey":"Products.oneOf.0.items.[INDEX]","typeLabel":"object"},"uniqueKey":"Products.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"Products listed on the order.","xml":{"wrapped":true},"items":{"type":"object","description":"Product model.","properties":{"OriginalId":{"type":"string","description":"Id from the client store."},"Title":{"type":"string","description":"Product Name"},"Url":{"oneOf":[{"type":"string","description":"Direct url to the product on the client store."},{"type":"null","description":"Direct url to the product on the client store."}]},"ImageUrl":{"oneOf":[{"type":"string","description":"Product img url."},{"type":"null","description":"Product img url."}]},"IsActive":{"type":"boolean","description":"if true the product is active on the store."},"ProductPrice":{"oneOf":[{"type":"number","description":"How much the customer paid for this product. If it is not null and not zero it can be used with extra points for products rule","format":"decimal"},{"type":"null","description":"How much the customer paid for this product. If it is not null and not zero it can be used with extra points for products rule","format":"decimal"}]},"ProductBrand":{"oneOf":[{"type":"object","description":"Product Brand","properties":{"OriginalId":{"type":"string","description":"Id from the client store"},"Name":{"type":"string","description":"Brand Name"}},"additionalProperties":false},{"type":"null"}]},"ProductCategory":{"oneOf":[{"type":"object","description":"Product Category. Supports hierarchical categories with parent references.","properties":{"OriginalId":{"type":"string","description":"Id from the client store"},"Name":{"type":"string","description":"Category Name"},"Description":{"oneOf":[{"type":"string","description":"Category Description"},{"type":"null","description":"Category Description"}]},"ParentCategory":{"oneOf":[{"description":"Parent Category. Use this to create a category tree.\nFor example, if you have Electronics > Smartphones > Android,\nthe Android category would have Smartphones as its ParentCategory,\nand Smartphones would have Electronics as its ParentCategory."},{"type":"null"}]}},"additionalProperties":false},{"type":"null"}]}},"additionalProperties":false},"uniqueKey":"Products.oneOf.1","typeLabel":"null"}],"uniqueKey":"Products","typeLabel":"object[] | null"},"UpdatedDate":{"type":"string","description":"the date from the last update on this order.","format":"date-time","uniqueKey":"UpdatedDate","typeLabel":"string\u003cdate-time>"},"Coupon":{"oneOf":[{"type":"string","description":"Coupon code used on this order.","uniqueKey":"Coupon.oneOf.0","typeLabel":"string"},{"type":"null","description":"Coupon code used on this order.","uniqueKey":"Coupon.oneOf.1","typeLabel":"null"}],"uniqueKey":"Coupon","typeLabel":"string | null"},"Metadatas":{"oneOf":[{"type":"array","description":"This is a key-value list of extra information regarding the order.\nIt could be informative only or being part of an business rule to be used later.","xml":{"wrapped":true},"items":{"type":"object","properties":{"Name":{"type":"string","uniqueKey":"Metadatas.oneOf.0.items.[INDEX].Name","typeLabel":"string"},"Value":{"type":"string","uniqueKey":"Metadatas.oneOf.0.items.[INDEX].Value","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"Metadatas.oneOf.0.items.[INDEX]","typeLabel":"object"},"uniqueKey":"Metadatas.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"This is a key-value list of extra information regarding the order.\nIt could be informative only or being part of an business rule to be used later.","xml":{"wrapped":true},"items":{"type":"object","properties":{"Name":{"type":"string"},"Value":{"type":"string"}},"additionalProperties":false},"uniqueKey":"Metadatas.oneOf.1","typeLabel":"null"}],"uniqueKey":"Metadatas","typeLabel":"object[] | null"},"PaymentMethod":{"oneOf":[{"type":"object","description":"Obsolete: use PaymentMethods instead. This legacy field is still supported for backward compatibility.\nThe Payment Method used in this purchase. Should be the more specific as possible (ie: instead of using \"Credit Card\" use \"Visa Credit Card\" and so on).\nThis field can be used later on to create extra points purchase rules.","properties":{"OriginalId":{"type":"string","description":"The If of the Payment method. Can be any string unique to this Payment Method. If no Id is available you can used the Payment Method Name as Id","uniqueKey":"PaymentMethod.oneOf.0.OriginalId","typeLabel":"string"},"Name":{"type":"string","description":"Name of the payment method used. It could be shown to the customer so it should be meaningful.","uniqueKey":"PaymentMethod.oneOf.0.Name","typeLabel":"string"},"PaidAmount":{"oneOf":[{"type":"number","description":"Optional amount paid using this payment method.","format":"decimal","uniqueKey":"PaymentMethod.oneOf.0.PaidAmount.oneOf.0","typeLabel":"number\u003cdecimal>"},{"type":"null","description":"Optional amount paid using this payment method.","format":"decimal","uniqueKey":"PaymentMethod.oneOf.0.PaidAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"PaymentMethod.oneOf.0.PaidAmount","typeLabel":"number\u003cdecimal> | null"}},"additionalProperties":false,"uniqueKey":"PaymentMethod.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"PaymentMethod.oneOf.1","typeLabel":"null"}],"uniqueKey":"PaymentMethod","typeLabel":"object | null"},"PaymentMethods":{"oneOf":[{"type":"array","description":"Preferred field for the payment methods used in this purchase. Each item should be as specific as possible\n(ie: instead of using \"Credit Card\" use \"Visa Credit Card\" and so on).","xml":{"wrapped":true},"items":{"type":"object","properties":{"OriginalId":{"type":"string","description":"The If of the Payment method. Can be any string unique to this Payment Method. If no Id is available you can used the Payment Method Name as Id","uniqueKey":"PaymentMethods.oneOf.0.items.[INDEX].OriginalId","typeLabel":"string"},"Name":{"type":"string","description":"Name of the payment method used. It could be shown to the customer so it should be meaningful.","uniqueKey":"PaymentMethods.oneOf.0.items.[INDEX].Name","typeLabel":"string"},"PaidAmount":{"oneOf":[{"type":"number","description":"Optional amount paid using this payment method.","format":"decimal","uniqueKey":"PaymentMethods.oneOf.0.items.[INDEX].PaidAmount.oneOf.0","typeLabel":"number\u003cdecimal>"},{"type":"null","description":"Optional amount paid using this payment method.","format":"decimal","uniqueKey":"PaymentMethods.oneOf.0.items.[INDEX].PaidAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"PaymentMethods.oneOf.0.items.[INDEX].PaidAmount","typeLabel":"number\u003cdecimal> | null"}},"additionalProperties":false,"uniqueKey":"PaymentMethods.oneOf.0.items.[INDEX]","typeLabel":"object"},"uniqueKey":"PaymentMethods.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"Preferred field for the payment methods used in this purchase. Each item should be as specific as possible\n(ie: instead of using \"Credit Card\" use \"Visa Credit Card\" and so on).","xml":{"wrapped":true},"items":{"type":"object","properties":{"OriginalId":{"type":"string","description":"The If of the Payment method. Can be any string unique to this Payment Method. If no Id is available you can used the Payment Method Name as Id"},"Name":{"type":"string","description":"Name of the payment method used. It could be shown to the customer so it should be meaningful."},"PaidAmount":{"oneOf":[{"type":"number","description":"Optional amount paid using this payment method.","format":"decimal"},{"type":"null","description":"Optional amount paid using this payment method.","format":"decimal"}]}},"additionalProperties":false},"uniqueKey":"PaymentMethods.oneOf.1","typeLabel":"null"}],"uniqueKey":"PaymentMethods","typeLabel":"object[] | null"},"Branch":{"oneOf":[{"type":"object","description":"A Branch is physical location or outlet of a store (loja, filial, etc). This is used to receive information of which store the purchase was made. It can be later used to create rules for points or filtering reports.","properties":{"OriginalId":{"type":"string","description":"This is the Id of the branch (filial, loja, etc) in the client store. Can be any string.","uniqueKey":"Branch.oneOf.0.OriginalId","typeLabel":"string"},"Name":{"type":"string","description":"This is the name of the branch. Can be any string possible","uniqueKey":"Branch.oneOf.0.Name","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"Branch.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"Branch.oneOf.1","typeLabel":"null"}],"uniqueKey":"Branch","typeLabel":"object | null"},"SalesPerson":{"oneOf":[{"type":"object","description":"A sales person is the person responsible for the sale. It can be used for filtering reports.","properties":{"OriginalId":{"type":"string","description":"This is the Id of the Sales Person. Can be any string or number.","uniqueKey":"SalesPerson.oneOf.0.OriginalId","typeLabel":"string"},"Name":{"type":"string","description":"This is the name of the sales person. Can be any string.","uniqueKey":"SalesPerson.oneOf.0.Name","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"SalesPerson.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"SalesPerson.oneOf.1","typeLabel":"null"}],"uniqueKey":"SalesPerson","typeLabel":"object | null"},"TradePolicy":{"oneOf":[{"type":"object","description":"Optional trade policy (política comercial) of the sale, such as a full price store or an outlet store.\nIt can be used to create extra points rules by trade policy.","properties":{"OriginalId":{"type":"string","description":"Id of the trade policy in the client system. Can be any string, such as `FULLPRICE` or `OUTLET`.\nTrade policies received from the ecommerce platform share the same ids, so use a distinct id unless the rule should be shared.","example":"OUTLET","uniqueKey":"TradePolicy.oneOf.0.OriginalId","typeLabel":"string"},"Name":{"oneOf":[{"type":"string","description":"Name of the trade policy shown in the BonifiQ panel. When empty, `OriginalId` is used as the name.","example":"Loja Outlet","uniqueKey":"TradePolicy.oneOf.0.Name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Name of the trade policy shown in the BonifiQ panel. When empty, `OriginalId` is used as the name.","example":"Loja Outlet","uniqueKey":"TradePolicy.oneOf.0.Name.oneOf.1","typeLabel":"null"}],"uniqueKey":"TradePolicy.oneOf.0.Name","typeLabel":"string | null"}},"additionalProperties":false,"uniqueKey":"TradePolicy.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"TradePolicy.oneOf.1","typeLabel":"null"}],"uniqueKey":"TradePolicy","typeLabel":"object | null"},"ExternalCoupon":{"oneOf":[{"type":"string","uniqueKey":"ExternalCoupon.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"ExternalCoupon.oneOf.1","typeLabel":"null"}],"uniqueKey":"ExternalCoupon","typeLabel":"string | null"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"OriginalId":"\u003cstring>","OrderPlacementDate":"2023-11-07T05:31:56Z","OrderCompletedDate":"2023-11-07T05:31:56Z","OrderCancelledDate":"2023-11-07T05:31:56Z","OrderStatus":"\u003cstring>","IsCancelledOrReturned":true,"IsCompleted":true,"OrderTotal":123,"Customer":{"OriginalId":"\u003cstring>","Name":"\u003cstring>","Email":"\u003cstring>","Phone":"\u003cstring>","BirthdayDate":"2023-11-07T05:31:56Z","SignupDate":"2023-11-07T05:31:56Z","Document":"\u003cstring>","IsEnrolled":true,"EnrolledDate":"2023-11-07T05:31:56Z"},"Products":[{"OriginalId":"\u003cstring>","Title":"\u003cstring>","Url":"\u003cstring>","ImageUrl":"\u003cstring>","IsActive":true,"ProductPrice":123,"ProductBrand":{"OriginalId":"\u003cstring>","Name":"\u003cstring>"},"ProductCategory":{"OriginalId":"\u003cstring>","Name":"\u003cstring>","Description":"\u003cstring>","ParentCategory":"\u003cunknown>"}}],"UpdatedDate":"2023-11-07T05:31:56Z","Coupon":"\u003cstring>","Metadatas":[{"Name":"\u003cstring>","Value":"\u003cstring>"}],"PaymentMethod":{"OriginalId":"\u003cstring>","Name":"\u003cstring>","PaidAmount":123},"PaymentMethods":[{"OriginalId":"\u003cstring>","Name":"\u003cstring>","PaidAmount":123}],"Branch":{"OriginalId":"\u003cstring>","Name":"\u003cstring>"},"SalesPerson":{"OriginalId":"\u003cstring>","Name":"\u003cstring>"},"TradePolicy":{"OriginalId":"OUTLET","Name":"Loja Outlet"},"ExternalCoupon":"\u003cstring>"}}},"exampleType":"generated"}},"required":true,"x-position":1,"exampleType":"generated"},"responses":{"ea241f84-71bf-4bff-a37e-3cc3a6a04bc1":{"description":"","content":{"application/json":{"schema":{"type":"object","description":"Standard response envelope used by the External API.","additionalProperties":false,"properties":{"ErrorMessage":{"oneOf":[{"type":"string","description":"Error message returned when the request fails validation or processing.\nFor warnings and successful responses, consumers should usually inspect `Result`, `Code` and `Severity` first.","uniqueKey":"ErrorMessage.oneOf.0","typeLabel":"string"},{"type":"null","description":"Error message returned when the request fails validation or processing.\nFor warnings and successful responses, consumers should usually inspect `Result`, `Code` and `Severity` first.","uniqueKey":"ErrorMessage.oneOf.1","typeLabel":"null"}],"uniqueKey":"ErrorMessage","typeLabel":"string | null"},"ErrorCode":{"oneOf":[{"type":"integer","description":"Legacy numeric error code derived from internal API errors when available.\nThis field is relevant only for error flows that use `ApiResponseErrorDescription`.","format":"int32","uniqueKey":"ErrorCode.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","description":"Legacy numeric error code derived from internal API errors when available.\nThis field is relevant only for error flows that use `ApiResponseErrorDescription`.","format":"int32","uniqueKey":"ErrorCode.oneOf.1","typeLabel":"null"}],"uniqueKey":"ErrorCode","typeLabel":"integer\u003cint32> | null"},"Result":{"oneOf":[{"type":"object","description":"Business payload returned by the endpoint.","properties":{"GenerateBonus":{"type":"boolean","description":"`true` when this order is expected to generate a bonus for the customer.\n`false` when it is not expected to generate one (eg: customer not enrolled, order not eligible, no points)\nor when the estimate could not be calculated. In both cases the order itself was saved successfully.","uniqueKey":"Result.oneOf.0.GenerateBonus","typeLabel":"boolean"},"EstimatedPoints":{"type":"integer","description":"Estimated points the customer will earn. `0` when `GenerateBonus` is `false`.","format":"int32","uniqueKey":"Result.oneOf.0.EstimatedPoints","typeLabel":"integer\u003cint32>"},"EstimatedCashback":{"type":"number","description":"Estimated points converted to cashback using the store's active cashback reward,\nrounded down like the customer's cashback balance (eg: 45 points at R$ 0,10 each = R$ 4,00).\n`0` when the store has no active cashback reward or `GenerateBonus` is `false`.","format":"decimal","uniqueKey":"Result.oneOf.0.EstimatedCashback","typeLabel":"number\u003cdecimal>"},"EstimatedCashbackFormatted":{"type":"string","description":"`EstimatedCashback` formatted in the store's currency and culture (eg: \"R$ 4,00\"). Use it only for display.","uniqueKey":"Result.oneOf.0.EstimatedCashbackFormatted","typeLabel":"string"},"DaysToAvailable":{"type":"integer","description":"Days after the order is completed until the points are granted and available to use\n(the store's grant delay for this sales channel, or an advanced rule's). `0` means right after the order is completed.","format":"int32","uniqueKey":"Result.oneOf.0.DaysToAvailable","typeLabel":"integer\u003cint32>"},"EstimatedAvailableDate":{"oneOf":[{"type":"string","description":"Estimated date (UTC) from which the points are available to use: `OrderCompletedDate` + `DaysToAvailable`.\n`null` when the order is not completed yet or `GenerateBonus` is `false`.","format":"date-time","uniqueKey":"Result.oneOf.0.EstimatedAvailableDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Estimated date (UTC) from which the points are available to use: `OrderCompletedDate` + `DaysToAvailable`.\n`null` when the order is not completed yet or `GenerateBonus` is `false`.","format":"date-time","uniqueKey":"Result.oneOf.0.EstimatedAvailableDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"Result.oneOf.0.EstimatedAvailableDate","typeLabel":"string\u003cdate-time> | null"},"ExpirationDays":{"oneOf":[{"type":"integer","description":"How many days the points are valid after being granted. `null` when the store's points do not expire or `GenerateBonus` is `false`.","format":"int32","uniqueKey":"Result.oneOf.0.ExpirationDays.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","description":"How many days the points are valid after being granted. `null` when the store's points do not expire or `GenerateBonus` is `false`.","format":"int32","uniqueKey":"Result.oneOf.0.ExpirationDays.oneOf.1","typeLabel":"null"}],"uniqueKey":"Result.oneOf.0.ExpirationDays","typeLabel":"integer\u003cint32> | null"},"EstimatedExpirationDate":{"oneOf":[{"type":"string","description":"Estimated date (UTC) when the points expire, counted from `EstimatedAvailableDate`.\n`null` when the points do not expire, the order is not completed yet or `GenerateBonus` is `false`.","format":"date-time","uniqueKey":"Result.oneOf.0.EstimatedExpirationDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Estimated date (UTC) when the points expire, counted from `EstimatedAvailableDate`.\n`null` when the points do not expire, the order is not completed yet or `GenerateBonus` is `false`.","format":"date-time","uniqueKey":"Result.oneOf.0.EstimatedExpirationDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"Result.oneOf.0.EstimatedExpirationDate","typeLabel":"string\u003cdate-time> | null"}},"additionalProperties":false,"uniqueKey":"Result.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"Result.oneOf.1","typeLabel":"null"}],"uniqueKey":"Result","typeLabel":"object | null"},"Code":{"oneOf":[{"type":"string","description":"Endpoint-specific business code formatted as a two-digit string, such as `03` or `07`.\nThis field is available for success, warning and error outcomes.","uniqueKey":"Code.oneOf.0","typeLabel":"string"},{"type":"null","description":"Endpoint-specific business code formatted as a two-digit string, such as `03` or `07`.\nThis field is available for success, warning and error outcomes.","uniqueKey":"Code.oneOf.1","typeLabel":"null"}],"uniqueKey":"Code","typeLabel":"string | null"},"CodeName":{"oneOf":[{"type":"string","description":"Symbolic enum name associated with `Code`, such as `CheckoutNotFound`.","uniqueKey":"CodeName.oneOf.0","typeLabel":"string"},{"type":"null","description":"Symbolic enum name associated with `Code`, such as `CheckoutNotFound`.","uniqueKey":"CodeName.oneOf.1","typeLabel":"null"}],"uniqueKey":"CodeName","typeLabel":"string | null"},"Severity":{"type":"integer","description":"Final severity of the response.\n`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.","enum":[0,1,2],"x-enumNames":["Success","Warning","Error"],"uniqueKey":"Severity","typeLabel":"enum\u003cinteger>"},"HasWarning":{"type":"boolean","description":"Convenience flag that is `true` when `Severity` is `Warning`.\nWarnings are valid `200 OK` business outcomes and should not be handled as transport or validation errors.","uniqueKey":"HasWarning","typeLabel":"boolean"},"HasError":{"type":"boolean","description":"Indicates whether the request failed and should be handled as an error response.\nThis flag is reserved for real API errors; warnings must keep this property as `false`.","uniqueKey":"HasError","typeLabel":"boolean"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"ErrorMessage":"\u003cstring>","ErrorCode":123,"Result":{"GenerateBonus":true,"EstimatedPoints":123,"EstimatedCashback":123,"EstimatedCashbackFormatted":"\u003cstring>","DaysToAvailable":123,"EstimatedAvailableDate":"2023-11-07T05:31:56Z","ExpirationDays":123,"EstimatedExpirationDate":"2023-11-07T05:31:56Z"},"Code":"\u003cstring>","CodeName":"\u003cstring>","Severity":0,"HasWarning":true,"HasError":true}}},"exampleType":"generated"}},"exampleType":"generated"},"a95c04f6-f9da-49ae-8464-0fddc73fdf82":{"description":"","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"oneOf":[{},{"type":"null","uniqueKey":"additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"additionalProperties","typeLabel":"null"},"properties":{"type":{"oneOf":[{"type":"string","uniqueKey":"type.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"type.oneOf.1","typeLabel":"null"}],"uniqueKey":"type","typeLabel":"string | null"},"title":{"oneOf":[{"type":"string","uniqueKey":"title.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"title.oneOf.1","typeLabel":"null"}],"uniqueKey":"title","typeLabel":"string | null"},"status":{"oneOf":[{"type":"integer","format":"int32","uniqueKey":"status.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","format":"int32","uniqueKey":"status.oneOf.1","typeLabel":"null"}],"uniqueKey":"status","typeLabel":"integer\u003cint32> | null"},"detail":{"oneOf":[{"type":"string","uniqueKey":"detail.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"detail.oneOf.1","typeLabel":"null"}],"uniqueKey":"detail","typeLabel":"string | null"},"instance":{"oneOf":[{"type":"string","uniqueKey":"instance.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"instance.oneOf.1","typeLabel":"null"}],"uniqueKey":"instance","typeLabel":"string | null"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"\u003cstring>","title":"\u003cstring>","status":123,"detail":"\u003cstring>","instance":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"cc9879ad-fc3b-4f8c-9042-44fd7f27fa62":{"description":"","content":{"application/json":{"schema":{"type":"object","description":"Standard response envelope used by the External API.","additionalProperties":false,"properties":{"ErrorMessage":{"oneOf":[{"type":"string","description":"Error message returned when the request fails validation or processing.\nFor warnings and successful responses, consumers should usually inspect `Result`, `Code` and `Severity` first.","uniqueKey":"ErrorMessage.oneOf.0","typeLabel":"string"},{"type":"null","description":"Error message returned when the request fails validation or processing.\nFor warnings and successful responses, consumers should usually inspect `Result`, `Code` and `Severity` first.","uniqueKey":"ErrorMessage.oneOf.1","typeLabel":"null"}],"uniqueKey":"ErrorMessage","typeLabel":"string | null"},"ErrorCode":{"oneOf":[{"type":"integer","description":"Legacy numeric error code derived from internal API errors when available.\nThis field is relevant only for error flows that use `ApiResponseErrorDescription`.","format":"int32","uniqueKey":"ErrorCode.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","description":"Legacy numeric error code derived from internal API errors when available.\nThis field is relevant only for error flows that use `ApiResponseErrorDescription`.","format":"int32","uniqueKey":"ErrorCode.oneOf.1","typeLabel":"null"}],"uniqueKey":"ErrorCode","typeLabel":"integer\u003cint32> | null"},"Result":{"oneOf":[{"type":"object","description":"Business payload returned by the endpoint.","properties":{"GenerateBonus":{"type":"boolean","description":"`true` when this order is expected to generate a bonus for the customer.\n`false` when it is not expected to generate one (eg: customer not enrolled, order not eligible, no points)\nor when the estimate could not be calculated. In both cases the order itself was saved successfully.","uniqueKey":"Result.oneOf.0.GenerateBonus","typeLabel":"boolean"},"EstimatedPoints":{"type":"integer","description":"Estimated points the customer will earn. `0` when `GenerateBonus` is `false`.","format":"int32","uniqueKey":"Result.oneOf.0.EstimatedPoints","typeLabel":"integer\u003cint32>"},"EstimatedCashback":{"type":"number","description":"Estimated points converted to cashback using the store's active cashback reward,\nrounded down like the customer's cashback balance (eg: 45 points at R$ 0,10 each = R$ 4,00).\n`0` when the store has no active cashback reward or `GenerateBonus` is `false`.","format":"decimal","uniqueKey":"Result.oneOf.0.EstimatedCashback","typeLabel":"number\u003cdecimal>"},"EstimatedCashbackFormatted":{"type":"string","description":"`EstimatedCashback` formatted in the store's currency and culture (eg: \"R$ 4,00\"). Use it only for display.","uniqueKey":"Result.oneOf.0.EstimatedCashbackFormatted","typeLabel":"string"},"DaysToAvailable":{"type":"integer","description":"Days after the order is completed until the points are granted and available to use\n(the store's grant delay for this sales channel, or an advanced rule's). `0` means right after the order is completed.","format":"int32","uniqueKey":"Result.oneOf.0.DaysToAvailable","typeLabel":"integer\u003cint32>"},"EstimatedAvailableDate":{"oneOf":[{"type":"string","description":"Estimated date (UTC) from which the points are available to use: `OrderCompletedDate` + `DaysToAvailable`.\n`null` when the order is not completed yet or `GenerateBonus` is `false`.","format":"date-time","uniqueKey":"Result.oneOf.0.EstimatedAvailableDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Estimated date (UTC) from which the points are available to use: `OrderCompletedDate` + `DaysToAvailable`.\n`null` when the order is not completed yet or `GenerateBonus` is `false`.","format":"date-time","uniqueKey":"Result.oneOf.0.EstimatedAvailableDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"Result.oneOf.0.EstimatedAvailableDate","typeLabel":"string\u003cdate-time> | null"},"ExpirationDays":{"oneOf":[{"type":"integer","description":"How many days the points are valid after being granted. `null` when the store's points do not expire or `GenerateBonus` is `false`.","format":"int32","uniqueKey":"Result.oneOf.0.ExpirationDays.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","description":"How many days the points are valid after being granted. `null` when the store's points do not expire or `GenerateBonus` is `false`.","format":"int32","uniqueKey":"Result.oneOf.0.ExpirationDays.oneOf.1","typeLabel":"null"}],"uniqueKey":"Result.oneOf.0.ExpirationDays","typeLabel":"integer\u003cint32> | null"},"EstimatedExpirationDate":{"oneOf":[{"type":"string","description":"Estimated date (UTC) when the points expire, counted from `EstimatedAvailableDate`.\n`null` when the points do not expire, the order is not completed yet or `GenerateBonus` is `false`.","format":"date-time","uniqueKey":"Result.oneOf.0.EstimatedExpirationDate.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Estimated date (UTC) when the points expire, counted from `EstimatedAvailableDate`.\n`null` when the points do not expire, the order is not completed yet or `GenerateBonus` is `false`.","format":"date-time","uniqueKey":"Result.oneOf.0.EstimatedExpirationDate.oneOf.1","typeLabel":"null"}],"uniqueKey":"Result.oneOf.0.EstimatedExpirationDate","typeLabel":"string\u003cdate-time> | null"}},"additionalProperties":false,"uniqueKey":"Result.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"Result.oneOf.1","typeLabel":"null"}],"uniqueKey":"Result","typeLabel":"object | null"},"Code":{"oneOf":[{"type":"string","description":"Endpoint-specific business code formatted as a two-digit string, such as `03` or `07`.\nThis field is available for success, warning and error outcomes.","uniqueKey":"Code.oneOf.0","typeLabel":"string"},{"type":"null","description":"Endpoint-specific business code formatted as a two-digit string, such as `03` or `07`.\nThis field is available for success, warning and error outcomes.","uniqueKey":"Code.oneOf.1","typeLabel":"null"}],"uniqueKey":"Code","typeLabel":"string | null"},"CodeName":{"oneOf":[{"type":"string","description":"Symbolic enum name associated with `Code`, such as `CheckoutNotFound`.","uniqueKey":"CodeName.oneOf.0","typeLabel":"string"},{"type":"null","description":"Symbolic enum name associated with `Code`, such as `CheckoutNotFound`.","uniqueKey":"CodeName.oneOf.1","typeLabel":"null"}],"uniqueKey":"CodeName","typeLabel":"string | null"},"Severity":{"type":"integer","description":"Final severity of the response.\n`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.","enum":[0,1,2],"x-enumNames":["Success","Warning","Error"],"uniqueKey":"Severity","typeLabel":"enum\u003cinteger>"},"HasWarning":{"type":"boolean","description":"Convenience flag that is `true` when `Severity` is `Warning`.\nWarnings are valid `200 OK` business outcomes and should not be handled as transport or validation errors.","uniqueKey":"HasWarning","typeLabel":"boolean"},"HasError":{"type":"boolean","description":"Indicates whether the request failed and should be handled as an error response.\nThis flag is reserved for real API errors; warnings must keep this property as `false`.","uniqueKey":"HasError","typeLabel":"boolean"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"ErrorMessage":"\u003cstring>","ErrorCode":123,"Result":{"GenerateBonus":true,"EstimatedPoints":123,"EstimatedCashback":123,"EstimatedCashbackFormatted":"\u003cstring>","DaysToAvailable":123,"EstimatedAvailableDate":"2023-11-07T05:31:56Z","ExpirationDays":123,"EstimatedExpirationDate":"2023-11-07T05:31:56Z"},"Code":"\u003cstring>","CodeName":"\u003cstring>","Severity":0,"HasWarning":true,"HasError":true}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"50be5074-956e-4699-a4a9-feed1cb9e752":{"Basic Authentication":{"type":"http","description":"Use API Basic Auth Keys","scheme":"basic","scopes":[],"schemeName":"Basic Authentication"}}},"servers":{"92d21c7a-9ec0-4a20-a16e-a093c5294a3e":{"url":"https://api.bonifiq.com.br","description":"Production"},"27e16232-a307-4b26-8d0a-ecffcae01868":{"url":"https://backend--homolog.previewqa.bonifique.com.br","description":"Sandbox"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","description":"Use API Basic Auth Keys","scheme":"basic","scopes":[],"schemeName":"Basic Authentication"},"schema":{"title":"Basic Auth","type":"object","description":"Use API Basic Auth Keys","isRequired":true,"properties":{"username":{"type":"string","uniqueKey":"username","isRequired":true,"typeLabel":"string","deprecated":false},"password":{"type":"string","uniqueKey":"password","isRequired":true,"typeLabel":"string","deprecated":false}},"additionalProperties":false,"deprecated":false},"schemeName":"Basic Authentication","name":"Authorization"}],"title":"Basic Authentication"}]},"originalFileLocation":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json"},"subdomain":"bonifiq","siteName":"BonifiQ Developers","title":"Estimates the points, cashback and availability dates for a sale without saving an order. - BonifiQ Developers","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-12T17:07:22.235Z","originalFileLocation":"api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale, even if an order with the same OriginalId exists. The estimate applies the store\u0026#x27;s customer enrollment rules.\">\u003cmeta data-mint-head name=\"application-name\" content=\"BonifiQ Developers\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Estimates the points, cashback and availability dates for a sale without saving an order. - BonifiQ Developers\">\u003cmeta data-mint-head property=\"og:description\" content=\"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale, even if an order with the same OriginalId exists. The estimate applies the store\u0026#x27;s customer enrollment rules.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"BonifiQ Developers\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://bonifiq.mintlify.site/_mintlify/api/og/v2?division=POS\u0026amp;title=Estimates+the+points%2C+cashback+and+availability+dates+for+a+sale+without+saving+an+order.\u0026amp;description=Send+the+same+body+as+POST+%2Fv1%2Fpvt%2FPOS%2Forders.+The+estimate+in+Result+uses+the+submitted+sale%2C%0Aeven+if+an+order+with+the+same+OriginalId+exists.+The+estimate+ap\u0026amp;theme=41b9a9f9c27c329f70ad9358\u0026amp;signature=7b895dc9a8c775f108876c35c735b7393b0dc48f7cabb2528173419e9e5d6bc4\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Estimates the points, cashback and availability dates for a sale without saving an order. - BonifiQ Developers\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale, even if an order with the same OriginalId exists. The estimate applies the store\u0026#x27;s customer enrollment rules.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://bonifiq.mintlify.site/_mintlify/api/og/v2?division=POS\u0026amp;title=Estimates+the+points%2C+cashback+and+availability+dates+for+a+sale+without+saving+an+order.\u0026amp;description=Send+the+same+body+as+POST+%2Fv1%2Fpvt%2FPOS%2Forders.+The+estimate+in+Result+uses+the+submitted+sale%2C%0Aeven+if+an+order+with+the+same+OriginalId+exists.+The+estimate+ap\u0026amp;theme=41b9a9f9c27c329f70ad9358\u0026amp;signature=7b895dc9a8c775f108876c35c735b7393b0dc48f7cabb2528173419e9e5d6bc4\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/bonifiq/xvI3adUtu7NmJ0Yq/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"BonifiQ Developers\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#8849f9\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developers.bonifiq.com.br/#organization\",\"name\":\"BonifiQ Developers\",\"url\":\"https://developers.bonifiq.com.br\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/bonifiq/GKwMiRtr4XYxzOf1/logo/logobonifiq.svg?fit=max\u0026auto=format\u0026n=GKwMiRtr4XYxzOf1\u0026q=85\u0026s=37aa2bf1ee2234bd01c4e9a3c1000de8\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developers.bonifiq.com.br#website\",\"name\":\"BonifiQ Developers\",\"url\":\"https://developers.bonifiq.com.br\",\"publisher\":{\"@id\":\"https://developers.bonifiq.com.br/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order#webpage\",\"url\":\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order\",\"name\":\"Estimates the points, cashback and availability dates for a sale without saving an order.\",\"description\":\"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale, even if an order with the same OriginalId exists. The estimate applies the store's customer enrollment rules.\",\"dateModified\":\"2026-11-12T17:07:22.235Z\",\"isPartOf\":{\"@id\":\"https://developers.bonifiq.com.br#website\"},\"breadcrumb\":{\"@id\":\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API Backend (Privada)\",\"item\":\"https://developers.bonifiq.com.br/api-private/introduction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"POS\",\"item\":\"https://developers.bonifiq.com.br/api/private/pos/returns-a-list-of-available-rewards-for-a-given-customer-and-purchase\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Estimates the points, cashback and availability dates for a sale without saving an order.\",\"item\":\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order#apireference\",\"headline\":\"Estimates the points, cashback and availability dates for a sale without saving an order.\",\"name\":\"Estimates the points, cashback and availability dates for a sale without saving an order.\",\"description\":\"Send the same body as POST /v1/pvt/POS/orders. The estimate in Result uses the submitted sale, even if an order with the same OriginalId exists. The estimate applies the store's customer enrollment rules.\",\"url\":\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order\",\"mainEntityOfPage\":{\"@id\":\"https://developers.bonifiq.com.br/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order#webpage\"},\"dateModified\":\"2026-11-12T17:07:22.235Z\",\"publisher\":{\"@id\":\"https://developers.bonifiq.com.br/#organization\"},\"isPartOf\":{\"@id\":\"https://developers.bonifiq.com.br#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"BonifiQ Developers\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"BonifiQ Developers\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order.md","siteName":"BonifiQ Developers","nav":{"global":null,"tabs":[{"tab":"Bem-vindo!","pages":[{"title":"Bem-vindo!","href":""}]},{"tab":"API Backend (Privada)","groups":[{"group":"API Backend (Privada)","pages":[{"title":"APIs Privadas","href":"/api-private/introduction"},{"group":"Customer","pages":[{"title":"Retrieve the amount of points of a given customer","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Customer/{id}/points","href":"/api/private/customer/retrieve-the-amount-of-points-of-a-given-customer"},{"title":"Add or remove points from a customer","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{id}/points","href":"/api/private/customer/add-or-remove-points-from-a-customer"},{"title":"Retrieve the amount of points of a given customer using a body-based customer identifier.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/points","href":"/api/private/customer/retrieve-the-amount-of-points-of-a-given-customer-using-a-body-based-customer-identifier"},{"title":"Retrieve pending purchase points and cashback for a given customer.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Customer/{id}/pendingpoints","href":"/api/private/customer/retrieve-pending-purchase-points-and-cashback-for-a-given-customer"},{"title":"Creates a new customer","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer","href":"/api/private/customer/creates-a-new-customer"},{"title":"Get a customer information from its ID","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Customer/{id}","href":"/api/private/customer/get-a-customer-information-from-its-id"},{"title":"Update a customer based on the Id from the client store","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json put /v1/pvt/Customer/{id}","href":"/api/private/customer/update-a-customer-based-on-the-id-from-the-client-store"},{"title":"Creates or updates a customer using the OriginalId provided in the request body.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/upsert","href":"/api/private/customer/creates-or-updates-a-customer-using-the-originalid-provided-in-the-request-body"},{"title":"Allows a customer to refer (recommend) the store to a friend by using the Referral Objective","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{id}/referfriend/{email}","href":"/api/private/customer/allows-a-customer-to-refer-recommend-the-store-to-a-friend-by-using-the-referral-objective"},{"title":"Add or remove cashback from a customer","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{id}/cashback","href":"/api/private/customer/add-or-remove-cashback-from-a-customer"},{"title":"Redeem points for a cashback value","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{id}/redeemcashback","href":"/api/private/customer/redeem-points-for-a-cashback-value"},{"title":"Returns the customer's paginated points and tier history","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{id}/history","href":"/api/private/customer/returns-the-customers-paginated-points-and-tier-history"},{"title":"Get the progress toward the next tier for a customer.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Customer/{id}/tier/next","href":"/api/private/customer/get-the-progress-toward-the-next-tier-for-a-customer"},{"title":"Returns the advanced rules currently available to a customer because of the customer segments they belong to.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Customer/{id}/segmentrules","href":"/api/private/customer/returns-the-advanced-rules-currently-available-to-a-customer-because-of-the-customer-segments-they-belong-to"},{"title":"Checks whether a customer exists and returns only its basic identification data.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Customer/{id}/exists","href":"/api/private/customer/checks-whether-a-customer-exists-and-returns-only-its-basic-identification-data"},{"title":"Set the birthday date of the given customer","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{id}/setbirthday","href":"/api/private/customer/set-the-birthday-date-of-the-given-customer"},{"title":"Returns a list of unused coupons that the customer have redeemed in the past","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{id}/availablecoupons","href":"/api/private/customer/returns-a-list-of-unused-coupons-that-the-customer-have-redeemed-in-the-past"},{"title":"Returns a list of unused coupons that the customer have redeemed in the past using a body-based customer identifier.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/availablecoupons","href":"/api/private/customer/returns-a-list-of-unused-coupons-that-the-customer-have-redeemed-in-the-past-using-a-body-based-customer-identifier"},{"title":"Filter a list of customers based on the filter parameters. The return can be paginated.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/list","href":"/api/private/customer/filter-a-list-of-customers-based-on-the-filter-parameters-the-return-can-be-paginated"},{"title":"Change the tier of a customer in BonifiQ","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{originalId}/changetier","href":"/api/private/customer/change-the-tier-of-a-customer-in-bonifiq"},{"title":"Remove the current tier from a customer","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json delete /v1/pvt/Customer/{originalId}/removetier","href":"/api/private/customer/remove-the-current-tier-from-a-customer"},{"title":"Change the Status of the customer in BonifiQ","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Customer/{originalId}/changestatus","href":"/api/private/customer/change-the-status-of-the-customer-in-bonifiq"}]},{"group":"Order","pages":[{"title":"Add an order or purchase","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Order","href":"/api/private/order/add-an-order-or-purchase"},{"title":"request for cancelling a purchase order","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Order/{orderId}/cancel","href":"/api/private/order/request-for-cancelling-a-purchase-order"},{"title":"request for setting a purchase order completed.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Order/{orderId}/complete","href":"/api/private/order/request-for-setting-a-purchase-order-completed"},{"title":"Get v1pvtorder","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Order/{orderId}","href":"/api/private/order/get-v1pvtorder"},{"title":"Partially cancel an order","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Order/{orderId}/partialcancel","href":"/api/private/order/partially-cancel-an-order"}]},{"group":"POS","pages":[{"title":"Returns a list of available rewards for a given customer and purchase.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/rewards/available","href":"/api/private/pos/returns-a-list-of-available-rewards-for-a-given-customer-and-purchase"},{"title":"This method can be used to redeem a reward in behalf of a customer.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/rewards/{id}/redeem","href":"/api/private/pos/this-method-can-be-used-to-redeem-a-reward-in-behalf-of-a-customer"},{"title":"Cancel an existing reward using the OriginalKey","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json delete /v1/pvt/POS/rewards","href":"/api/private/pos/cancel-an-existing-reward-using-the-originalkey"},{"title":"Cancel an existing reward. By canceling the customer will have their points back. The reward will be in the canceled state.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json delete /v1/pvt/POS/rewards/{id}","href":"/api/private/pos/cancel-an-existing-reward-by-canceling-the-customer-will-have-their-points-back-the-reward-will-be-in-the-canceled-state"},{"title":"This is shortcut for the original /orders endpoint to add orders into BonifiQ","description":"An important part of the program points is awarding point for purchases that customers made. \nIn order for points to be given we need to receive purchases that the customers made.\n\n## Order State\nIn BonifiQ an order can be in one of these 3 states:\n- Completed: An order in a completed state will receive points according to the configuration in BonifiQ panel\n- Canceled: An order that is incomplete, not paide or returned. If any points was awarded they will be removed\n- Pending: An order that is neither Completed nor Canceled. \n\nYou dont need to send `pending` orders to BonifiQ. You can send them when they are completed (or canceled). \nThe pending state exists for integrations that requires this flow.\n\nTo set the State of the order use the `IsCompleted` and `IsCancelledOrReturned` fields. Whenever one of them is `true` the respective `OrderCompletedDate` or `OrderCancelledDate` must be set.\n\n## Order Status\nThe `OrderStatus` field is the status in the platform. This is merely informative \n\n## Order Total\nThis is a very important field as it determines how many points the user will be awarded.\nThis value must not consider shipping costs, taxes, discounts, promotions, giftcard, etc\nIn other words, the value must be what the customer really paid discounted shipping\n\n## Coupon\nThe Coupon field is important as is the way BonifiQ is aware of an used coupon or reward. Use this field as follow:\n- If this order used a reward from the `Redeem` endpoint, them pass here the `ExternalCode` return from the redeem api call\n- If this order didt not used an reward from BonifiQ pass here the coupon used by the customer, if available\n \n## Extra points rules\nExtra points rules configured in the BonifiQ panel use these fields:\n- By product, brand or category: `Products[].OriginalId`, `ProductPrice`, `ProductBrand` and `ProductCategory`\n- By store: `Branch`\n- By trade policy (eg: full price or outlet store): `TradePolicy`\n- By payment method: `PaymentMethods` (only the first item is considered)\n- By period or purchase amount: `OrderPlacementDate` and `OrderTotal`\n \n## Estimated bonus\nThe response `EstimatedBonus` estimates the points and cashback the customer will earn for this sale,\nso the POS can show them on the sale receipt or confirmation screen:\n- `GenerateBonus`: `false` when no bonus is expected or the estimate could not be calculated (the order is still saved)\n- `EstimatedPoints`: estimated points\n- `EstimatedCashback`: points converted to cashback, rounded down like the customer's cashback balance\n- `EstimatedCashbackFormatted`: cashback formatted in the store's currency, for display only\n- `DaysToAvailable` / `EstimatedAvailableDate`: grant delay in days and the date (UTC) from which the points can be used (`OrderCompletedDate` + delay; `null` while the order is not completed)\n- `ExpirationDays` / `EstimatedExpirationDate`: how long the points are valid and the date (UTC) they expire, counted from the grant (`null` when the points do not expire)\n \nIt is an estimate made when the order is saved; the bonus actually granted may differ.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/orders","href":"/api/private/pos/this-is-shortcut-for-the-original-orders-endpoint-to-add-orders-into-bonifiq"},{"title":"Estimates the points, cashback and availability dates for a sale without saving an order.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/orders/estimate","href":"/api/private/pos/estimates-the-points-cashback-and-availability-dates-for-a-sale-without-saving-an-order"},{"title":"This is shortcut for the original /orders/cancel endpoint for canceling orders.","description":"When an order is cancelled BonifiQ will remove the points from customer (if they have been already given)","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/orders/{orderId}/cancel","href":"/api/private/pos/this-is-shortcut-for-the-original-orderscancel-endpoint-for-canceling-orders"},{"title":"Partially cancel an order","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/{orderId}/partialcancel","href":"/api/private/pos/partially-cancel-an-order"},{"title":"Creates a challenge (OTP) to confirm that the customer is the owner of the points","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/customers/{id}/challenge","href":"/api/private/pos/creates-a-challenge-otp-to-confirm-that-the-customer-is-the-owner-of-the-points"},{"title":"After sending the challenge request the app must ask the user for the PIN Code.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/POS/customers/{id}/challengevalidate","href":"/api/private/pos/after-sending-the-challenge-request-the-app-must-ask-the-user-for-the-pin-code"}]},{"group":"Reports","pages":[{"title":"Returns the latest known forecast and granted purchase points for each order.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListPurchasePoints","href":"/api/private/reports/returns-the-latest-known-forecast-and-granted-purchase-points-for-each-order"},{"title":"Returns a list of points that will expire soon and can be sent a notification to the customer warning about the expiration.\nThe date range is based on the days before expiration configured in the BonifiQ Admin Panel","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListExpirePointsNotification","href":"/api/private/reports/returns-a-list-of-points-that-will-expire-soon-and-can-be-sent-a-notification-to-the-customer-warning-about-the-expirationthe-date-range-is-based-on-the-days-before-expiration-configured-in-the-bonifiq-admin-panel"},{"title":"Get v1pvtreportslistpointsavailablenotification","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListPointsAvailableNotification","href":"/api/private/reports/get-v1pvtreportslistpointsavailablenotification"},{"title":"Returns earned points that can be used to track received-point events and customer notification flows.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListReceivedPoints","href":"/api/private/reports/returns-earned-points-that-can-be-used-to-track-received-point-events-and-customer-notification-flows"},{"title":"Returns a list of sales (orders that used an BonifiQ reward) filtered by date.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListSalesReport","href":"/api/private/reports/returns-a-list-of-sales-orders-that-used-an-bonifiq-reward-filtered-by-date"},{"title":"Returns a list of orders filtered by date.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListOrdersReport","href":"/api/private/reports/returns-a-list-of-orders-filtered-by-date"},{"title":"Returns the general points ledger report filtered by point event date.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListPointsReport","href":"/api/private/reports/returns-the-general-points-ledger-report-filtered-by-point-event-date"},{"title":"Returns a list of cashback transactions filtered by redeem date.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListCashbackReport","href":"/api/private/reports/returns-a-list-of-cashback-transactions-filtered-by-redeem-date"},{"title":"Returns a list of canceled cashback redemptions filtered by cancellation date.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListCanceledCashbackReport","href":"/api/private/reports/returns-a-list-of-canceled-cashback-redemptions-filtered-by-cancellation-date"},{"title":"Returns a list of generated coupons filtered by creation date.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListGeneratedCouponList","href":"/api/private/reports/returns-a-list-of-generated-coupons-filtered-by-creation-date"},{"title":"Returns a list of customers with their points balance, points to expire and point history.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Reports/ListCustomersReport","href":"/api/private/reports/returns-a-list-of-customers-with-their-points-balance-points-to-expire-and-point-history"}]},{"group":"Tiers","pages":[{"title":"Get v1pvttiers","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Tiers","href":"/api/private/tiers/get-v1pvttiers"},{"title":"Post v1pvttiersavailable","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Tiers/available","href":"/api/private/tiers/post-v1pvttiersavailable"},{"title":"Get v1pvttiers 1","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Tiers/{tierId}","href":"/api/private/tiers/get-v1pvttiers-1"},{"title":"Get v1pvttiers targets","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Tiers/{tierId}/targets","href":"/api/private/tiers/get-v1pvttiers-targets"},{"title":"Get v1pvttiers benefits","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Tiers/{tierId}/benefits","href":"/api/private/tiers/get-v1pvttiers-benefits"}]},{"group":"Affiliate","pages":[{"title":"To create and update an affiliate, it's possible to create a customer for the same.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Affiliate","href":"/api/private/affiliate/to-create-and-update-an-affiliate-its-possible-to-create-a-customer-for-the-same"},{"title":"Disables an affiliate by email or document.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json delete /v1/pvt/Affiliate/disable/{originalId}","href":"/api/private/affiliate/disables-an-affiliate-by-email-or-document"},{"title":"Reactivates an affiliate by originalId.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Affiliate/reactivate/{originalId}","href":"/api/private/affiliate/reactivates-an-affiliate-by-originalid"}]},{"group":"Checkout","pages":[{"title":"Redeems cashback for a checkout","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Checkout/redeem","href":"/api/private/checkout/redeems-cashback-for-a-checkout"},{"title":"Simulates purchase points for the current checkout/cart state.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Checkout/simulate","href":"/api/private/checkout/simulates-purchase-points-for-the-current-checkoutcart-state"},{"title":"Revalidates a previously redeemed checkout cashback against the current cart state.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Checkout/refresh","href":"/api/private/checkout/revalidates-a-previously-redeemed-checkout-cashback-against-the-current-cart-state"},{"title":"Removes an already applied cashback from a checkout.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Checkout/redeem/remove","href":"/api/private/checkout/removes-an-already-applied-cashback-from-a-checkout"},{"title":"Returns a list of available rewards for a given customer and purchase.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Checkout/rewards/available","href":"/api/private/checkout/returns-a-list-of-available-rewards-for-a-given-customer-and-purchase"}]},{"group":"Coupons","pages":[{"title":"Returns if found a coupon based on the given coupon code.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Coupons/{code}","href":"/api/private/coupons/returns-if-found-a-coupon-based-on-the-given-coupon-code"},{"title":"Creates a coupon for the given customer.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Coupons","href":"/api/private/coupons/creates-a-coupon-for-the-given-customer"},{"title":"Inactives the given coupon on the bonifiq system.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Coupons/{code}/inactive","href":"/api/private/coupons/inactives-the-given-coupon-on-the-bonifiq-system"},{"title":"Retrieves the promotion rules and details associated with a specific coupon code.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Coupons/{couponCode}/rules","href":"/api/private/coupons/retrieves-the-promotion-rules-and-details-associated-with-a-specific-coupon-code"}]},{"group":"Customization","pages":[{"title":"Returns the customizations as configured in the BonifiQ admin panel","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Customization","href":"/api/private/customization/returns-the-customizations-as-configured-in-the-bonifiq-admin-panel"}]},{"group":"Objectives","pages":[{"title":"Returns all active objectives for the client.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Objectives/active","href":"/api/private/objectives/returns-all-active-objectives-for-the-client"},{"title":"Returns all objectives for the client, including active and inactive objectives.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Objectives/all","href":"/api/private/objectives/returns-all-objectives-for-the-client-including-active-and-inactive-objectives"},{"title":"Returns a specific active objective by type.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Objectives/{type}","href":"/api/private/objectives/returns-a-specific-active-objective-by-type"},{"title":"Creates a custom objective.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Objectives/custom","href":"/api/private/objectives/creates-a-custom-objective"},{"title":"Import a customer to be rewarded by a custom objective","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Objectives/{id}/importpoints","href":"/api/private/objectives/import-a-customer-to-be-rewarded-by-a-custom-objective"}]},{"group":"Points","pages":[{"title":"Lists points set to expire within the specified date range (paginated).","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Points/toexpire","href":"/api/private/points/lists-points-set-to-expire-within-the-specified-date-range-paginated"},{"title":"Retrieves a paginated list of customer points generated on or after a specified date.\nThis endpoint allows for filtering points by a start date and supports pagination.\nEach item in the list includes detailed point information along with associated customer data.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Points/list","href":"/api/private/points/retrieves-a-paginated-list-of-customer-points-generated-on-or-after-a-specified-datethis-endpoint-allows-for-filtering-points-by-a-start-date-and-supports-paginationeach-item-in-the-list-includes-detailed-point-information-along-with-associated-customer-data"}]},{"group":"Product","pages":[{"title":"creates a new product register.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Product","href":"/api/private/product/creates-a-new-product-register"},{"title":"Updates a given product based on a given Id from the client store.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json put /v1/pvt/Product/{id}","href":"/api/private/product/updates-a-given-product-based-on-a-given-id-from-the-client-store"},{"title":"Estimates points, cashback earned and cashback usage limits per product.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Product/points","href":"/api/private/product/estimates-points-cashback-earned-and-cashback-usage-limits-per-product"}]},{"group":"Quiz","pages":[{"title":"Retrieves a list of available quizzes.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Quiz/list","href":"/api/private/quiz/retrieves-a-list-of-available-quizzes"},{"title":"Submits answers for a specific quiz by a customer.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Quiz/answer","href":"/api/private/quiz/submits-answers-for-a-specific-quiz-by-a-customer"}]},{"group":"RewardConfigurations","pages":[{"title":"Returns a list of available rewards for a given customer and purchase.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/RewardConfigurations/rewards/available","href":"/api/private/rewardconfigurations/returns-a-list-of-available-rewards-for-a-given-customer-and-purchase"},{"title":"Returns all rewards configuration - either available or not","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/RewardConfigurations","href":"/api/private/rewardconfigurations/returns-all-rewards-configuration--either-available-or-not"},{"title":"on a Given ID, returns the Rewards configuration if found.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/RewardConfigurations/{id}","href":"/api/private/rewardconfigurations/on-a-given-id-returns-the-rewards-configuration-if-found"},{"title":"Redeem a reward for the customer given on the request body","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/RewardConfigurations/{id}/redeem","href":"/api/private/rewardconfigurations/redeem-a-reward-for-the-customer-given-on-the-request-body"}]},{"group":"Rewards","pages":[{"title":"Return an existant reward already redeemed","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Rewards/{id}","href":"/api/private/rewards/return-an-existant-reward-already-redeemed"},{"title":"Cancel an existing reward. By canceling the customer will have their points back. The reward will be in the canceled state.","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json delete /v1/pvt/Rewards/{id}","href":"/api/private/rewards/cancel-an-existing-reward-by-canceling-the-customer-will-have-their-points-back-the-reward-will-be-in-the-canceled-state"},{"title":"Post v1pvtrewardsupdatemetadata","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json post /v1/pvt/Rewards/updatemetadata","href":"/api/private/rewards/post-v1pvtrewardsupdatemetadata"}]},{"group":"Terms","pages":[{"title":"Returns the terms for the program points. Terms can be changed in the BonifiQ admin panel.\nTerms can contains HTML tags that must be rendered to the user when showing it","deprecated":null,"version":null,"openapi":"https://api.bonifiq.com.br/swagger/Private%20APIs/swagger.json get /v1/pvt/Terms","href":"/api/private/terms/returns-the-terms-for-the-program-points-terms-can-be-changed-in-the-bonifiq-admin-panelterms-can-contains-html-tags-that-must-be-rendered-to-the-user-when-showing-it"}]}]}]},{"tab":"API Frontend (Pública)","pages":[{"title":"API Frontend (Pública)","href":"/api-public/introduction"}]},{"tab":"API Widget","pages":[{"title":"API Widget","href":"/api-widget/00-introduction"}]},{"tab":"Webhooks","pages":[{"title":"Webhooks","href":"/webhooks/01-introducao"}]},{"tab":"Guias","pages":[{"title":"Guias","href":"/guias"}]}]},"basePath":"","title":"Estimates the points, cashback and availability dates for a sale without saving an order. - BonifiQ Developers","buildId":"dpl_G2Qd45vZZ7MkBiGF9yYx8ZsbbKXX","deploymentId":"dpl_G2Qd45vZZ7MkBiGF9yYx8ZsbbKXX","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-NXj-Rqjv.js","utils-m0thOP-_.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D13EKcfm.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema--XTdfsEb.js","snippetPresets-D3s4lmAH.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-ChURybxL.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-DL8CiXq2.js","shallow-DI2-YB2E.js","getApiPlaygroundDisplay-DxbW7b_y.js","CodeSnippet-CiNYS0pP.js","CodeSnippets-BT87bThu.js","Page-DSpdRuhM.js","getPastedJson-F_g_IrFQ.js","icon-CCIG5BAs.js","MethodPill-DY3E0jwx.js","DuplicateIcon-BN88xnEg.js","createIcon-VCCc5HO5.js","DynamicMarkdown-CaSwclgK.js","SectionHeading-DXV8nWhc.js","axios-vUo_bRtp.js","Markdown-CV32Re6G.js","clsx-5ydLOnhV.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-pFDdfjRe.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BUGO5bPJ.js"]}