@epilot/pricing-client 1.2.3 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- !function(e,t){for(var r in t)e[r]=t[r];t.__esModule&&Object.defineProperty(e,"__esModule",{value:!0})}(exports,(()=>{"use strict";var e={914:function(e,t,r){var a=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var i=a(r(279));t.default=i.default},279:e=>{e.exports=JSON.parse('{"openapi":"3.0.3","info":{"title":"Pricing API","description":"This API hub sets the foundations for the following Pricing APIs:\\n\\n- Shopping Cart API, used to interact with a cart during a customer\'s checkout session, and it\'s responsible for providing the following set of features:\\n - A unified data model to model a Shopping Cart\\n - Cart abandonment recovery\\n - Pricing features such as automatic calculation of totals and price breakdowns for taxes\\n - Product and pricing data validation\\n - Checkout a cart into an order, invoice, or quote\\n\\n- Order API, provides a way to manage orders, keep track of inventory, with individual adjustments, tax calculation, and shipping, apply discounts, store tracking information, and handle returns. The responsibilities of this API contemplate the following set of features:\\n - Create or update a new Order from a Shopping Cart\\n - Marking a Shopping Cart as complete once the Order is set as open (immutable/closed for modification)\\n - Pricing features such as automatic calculation of totals and price breakdowns for taxes\\n","contact":{"name":"Maintainers Channel","url":"https://epilot.slack.com/archives/C020B4URQNS"},"version":"1.0.0"},"externalDocs":{"description":"Read the full docs here","url":"https://e-pilot.atlassian.net/wiki/spaces/EO/pages/5459705918/Shopping+Cart+Orders+API"},"tags":[{"name":"Draft","description":"Operations not implement under the current release."},{"name":"Public","description":"Customer-facing Endpoints (requiring a X-Ivy-Org-ID identification)"},{"name":"Cart","description":"The shopping cart & checkout management operations"},{"name":"Order","description":"Order management operations"},{"name":"Product Catalog","description":"Product querying operations"}],"security":[{"EpilotAuth":[]},{"AsOrganization":[]}],"paths":{"/v1/public/cart":{"put":{"description":"Creates a new cart or updates an existing one.","operationId":"$upsertCart","summary":"upsertCart","security":[],"tags":["Cart","Public","Draft"],"parameters":[{"in":"header","name":"X-Ivy-Org-ID","description":"The target Organization Id represented by the caller","schema":{"type":"string"},"required":true}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CartDto"}}}},"responses":{"200":{"description":"The updated Cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"}}}},"201":{"description":"The new Cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/public/cart:checkout":{"post":{"description":"Checkouts a cart and executes the specified checkout `mode` process. \\n\\nA Checkout implicitly finalizes the provided cart (if not transient from a fast-checkout) and behaves in one of the following modes:\\n- `create_order` (**default**): the payment happens at a later date or managed by 3rd-party CRM (SAP)\\n- `create_invoice`: the payment happens on the online checkout (paypal, stripe, adyen)\\n- `create_quote`: the checkout represents a price quote request\\n\\nFast checkout is also supported, by passing the Cart contents directly.\\nWhen a fast checkout is performed the cart is considered transient and there is no cart persistance.\\n\\nIf the checkout `mode` is omitted, the `mode` will default to `create_order`.\\n","operationId":"$checkoutCart","summary":"checkoutCart","security":[],"tags":["Cart","Public"],"parameters":[{"in":"header","name":"X-Ivy-Org-ID","description":"The target Organization Id represented by the caller","schema":{"type":"string"},"required":true}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutCart"},"examples":{"Checkout with a CartID":{"$ref":"#/components/examples/checkoutWithCartId"},"Fast Checkout with a transient Cart":{"$ref":"#/components/examples/checkoutWithTransientCart"}}}}},"responses":{"200":{"description":"The checkout result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutCartResult"},"examples":{"Checkout with created order":{"$ref":"#/components/examples/checkoutResult"}}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/cart/{cart-id}":{"get":{"description":"Retrieves a cart by id.","operationId":"$getCart","summary":"getCart","tags":["Cart","Draft"],"parameters":[{"in":"path","name":"cart-id","schema":{"type":"string"},"description":"The id of the cart to be fetched","required":true}],"responses":{"200":{"description":"The customer\'s cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Cart not found"}}},"delete":{"description":"Deletes the Cart specified and returns its content.","operationId":"$deleteCart","summary":"deleteCart","tags":["Cart","Draft"],"parameters":[{"in":"path","name":"cart-id","schema":{"type":"string"},"description":"The id of the cart to be deleted","required":true}],"responses":{"200":{"description":"The customer\'s cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/order":{"put":{"description":"Creates a new order or updates an existing one. During the creation of an order, an unique customer-readable `order_number` will be generated.\\nThe `order_number` can be used to universally identify an order within epilot platform.\\n\\nThe upsert operation is idempotent, meaning that multiple calls will have effect just once. Calling the upsert multiple times will not duplicate the items on an order.\\n\\nWhen the the `cart_id` payload field is specified, the cart items are appended to the existing order items, or replaced in-place if they belong to the same `cart_id`.\\n\\nOn multiple updates with the same `cart_id` the line items linked with that `cart_id` (`order.line_items[]?.metadata.cart_id`) are removed and re-added.\\n","operationId":"$upsertOrder","summary":"upsertOrder","tags":["Order","Draft"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"}}}},"responses":{"200":{"description":"The updated Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"}}}},"201":{"description":"The new Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/public/catalog":{"post":{"description":"Provides a querying functionalities over products and prices of the Catalog for a given organization.","operationId":"$searchCatalog","summary":"searchCatalog","security":[],"tags":["Product Catalog","Public"],"parameters":[{"in":"header","name":"X-Ivy-Org-ID","description":"The target Organization Id represented by the caller","schema":{"type":"string"},"required":true}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogSearch"}}}},"responses":{"200":{"description":"The search result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogSearchResult"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"securitySchemes":{"EpilotAuth":{"type":"http","scheme":"bearer","description":"Epilot Bearer Token"},"AsOrganization":{"type":"apiKey","in":"header","name":"x-ivy-org-id","description":"Set organization id when using internal auth"},"AsUser":{"type":"apiKey","in":"header","name":"x-ivy-user-id","description":"Set user id when using internal auth"}},"schemas":{"Error":{"required":["message"],"properties":{"message":{"type":"string","description":"Error message"}}},"MetaData":{"description":"A set of key-value pairs.","type":"array","items":{"oneOf":[{"type":"object","description":"Key value pair entry","properties":{"key":{"type":"string","description":"Item key"},"value":{"type":"string","description":"Item value"}}}]}},"CatalogSearch":{"description":"A catalog search payload","type":"object","properties":{"q":{"description":"The query to perform using lucene query syntax.","type":"string"},"sort":{"description":"The sort expression to sort the results.","type":"string"},"from":{"description":"The index from which to query, used for pagination purposes. Defaults to 0","type":"number"},"size":{"description":"The max size of the response, defaults to 2000.","type":"number"},"expand":{"type":"array","description":"A list of additional fields to expand on the search results, such as non-indexed fields.","items":{"type":"string"}}},"example":{"q":"_id:1233432 OR _id:123432454 OR _id:23445433","sort":"description ASC","from":0,"size":200}},"CatalogSearchResult":{"description":"The query result payload","type":"object","properties":{"hits":{"type":"number","description":"The number os results returned."},"results":{"type":"array","items":{"anyOf":[{"$ref":"#/components/schemas/Product"},{"$ref":"#/components/schemas/Price"}]}}},"example":{"hits":2,"results":[{"schema":"product","description":"product a"},{"schema":"price","unit_amount_decimal":"124.342343434"}]}},"CartDto":{"description":"A valid cart payload from a client.","properties":{"metadata":{"$ref":"#/components/schemas/MetaData"},"customer":{"$ref":"#/components/schemas/Customer"},"billing_address":{"$ref":"#/components/schemas/Address"},"delivery_address":{"$ref":"#/components/schemas/Address"},"payment_method":{"$ref":"#/components/schemas/PaymentMethod"},"line_items":{"$ref":"#/components/schemas/PriceItemsDto"}},"required":["line_items"]},"CheckoutCart":{"type":"object","description":"The cart checkout request payload","properties":{"cart":{"anyOf":[{"description":"the cart id","type":"string"},{"$ref":"#/components/schemas/CartDto"}]},"mode":{"$ref":"#/components/schemas/CheckoutMode"}}},"CheckoutCartResult":{"type":"object","description":"The cart checkout result","properties":{"order":{"$ref":"#/components/schemas/Order"}}},"CheckoutMode":{"type":"string","description":"The checkout mode for the cart checkout.","enum":["create_order","create_invoice","create_quote"]},"PriceItemsDto":{"description":"A valid set of product prices, quantities, (discounts) and taxes from a client.","type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/PriceItemDto"}]}},"PriceItemDto":{"description":"Represents a valid price item from a client.","type":"object","properties":{"metadata":{"$ref":"#/components/schemas/MetaData"},"quantity":{"type":"integer","description":"The quantity of products being purchased."},"product_id":{"type":"string","description":"The id of the product."},"price_id":{"type":"string","description":"The id of the price."},"taxes":{"type":"array","description":"The taxes applied to the price item.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/TaxAmountDto"}]}},"recurrences":{"type":"array","description":"The taxes applied to the price item.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/RecurrenceAmountDto"}]}},"_price":{"$ref":"#/components/schemas/Price"}}},"TaxAmountDto":{"type":"object","description":"A valid tax rate from a client.","properties":{"rate":{"type":"string","description":"The tax rate applied."}}},"RecurrenceAmountDto":{"type":"object","description":"An amount associated with a specific recurrence.","properties":{"type":{"type":"string","description":"The price type."},"billing_period":{"type":"string","description":"The price billing period."},"amount_subtotal":{"type":"integer","description":"Total of all items, with same recurrence, before (discounts or) taxes are applied."},"amount_total":{"type":"integer","description":"Total of all items, with same recurrence, after (discounts and) taxes are applied."},"amount_tax":{"type":"integer","description":"Total of all items taxes, with same recurrence."}},"required":["type","amount_subtotal","amount_total"]},"Cart":{"description":"Supports shopping for products and services until ready for checkout.","properties":{"id":{"type":"string","description":"The cart identifier"},"org_id":{"type":"string","description":"The user\'s Organization Id the cart belongs to","readOnly":true},"status":{"enum":["open","complete","expired"],"type":"string","readOnly":true,"description":"The status of the Cart:\\n- open - the cart checkout is still in progress. Payment processing has not started\\n- complete - the cart checkout is complete. Payment processing may still be in progress\\n- expired - the cart checkout has expired. No further processing will occur\\n"},"customer":{"$ref":"#/components/schemas/Customer"},"billing_address":{"$ref":"#/components/schemas/Address"},"delivery_address":{"$ref":"#/components/schemas/Address"},"metadata":{"$ref":"#/components/schemas/MetaData"},"line_items":{"$ref":"#/components/schemas/PriceItems"},"amount_subtotal":{"readOnly":true,"type":"integer","description":"Total of all items before (discounts or) taxes are applied."},"amount_total":{"readOnly":true,"type":"integer","description":"Total of all items after (discounts and) taxes are applied."},"total_details":{"$ref":"#/components/schemas/TotalDetails"},"created_at":{"readOnly":true,"type":"string","format":"date-time"},"updated_at":{"readOnly":true,"type":"string","format":"date-time"}}},"Currency":{"type":"string","description":"Three-letter ISO currency code, in lowercase. Must be a supported currency.\\nISO 4217 CURRENCY CODES as specified in the documentation: https://www.iso.org/iso-4217-currency-codes.html\\n"},"Order":{"type":"object","description":"The order entity","properties":{"order_number":{"type":"string","description":"The Order Id Number for the customer"},"cart_id":{"type":"string","description":"The Cart Id that originated or is associated with the order"},"status":{"type":"string","enum":["Draft","Open","Paid","Shipped","Delivered","Complete"],"description":"The order status"},"metadata":{"$ref":"#/components/schemas/MetaData"},"billing_first_name":{"type":"string"},"billing_last_name":{"type":"string"},"billing_company_name":{"type":"string"},"billing_vat":{"type":"string"},"billing_email":{"type":"string"},"billing_phone":{"type":"string"},"billing_address":{"type":"array","items":{"$ref":"#/components/schemas/Address"}},"currency":{"$ref":"#/components/schemas/Currency"},"delivery_address":{"type":"array","items":{"$ref":"#/components/schemas/Address"}},"payment_method":{"type":"array","items":{"$ref":"#/components/schemas/PaymentMethod"}},"contact":{"readOnly":true,"type":"string","description":"The id of an existing contact."},"line_items":{"$ref":"#/components/schemas/PriceItems"},"amount_subtotal":{"readOnly":true,"type":"integer","description":"Total of all items before (discounts or) taxes are applied."},"amount_total":{"readOnly":true,"type":"integer","description":"Total of all items after (discounts and) taxes are applied."},"total_details":{"$ref":"#/components/schemas/TotalDetails"},"_org_id":{"type":"string","description":"Organization Id the order belongs to"},"_id":{"type":"string","readOnly":true},"_created_at":{"type":"string","readOnly":true},"_updated_at":{"type":"string","readOnly":true},"_tags":{"type":"array","items":{"type":"string"}}}},"PriceItems":{"description":"Tracks a set of product prices, quantities, (discounts) and taxes.","type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/PriceItem"}]}},"PriceItem":{"description":"Represents a price item","type":"object","properties":{"id":{"type":"string","description":"price item id","readOnly":true},"metadata":{"$ref":"#/components/schemas/MetaData"},"unit_amount":{"type":"integer","description":"The unit amount value","readOnly":true},"amount_subtotal":{"type":"integer","description":"Total before any (discounts or) taxes are applied.","readOnly":true},"amount_total":{"type":"integer","description":"Total after (discounts and) taxes.","readOnly":true},"currency":{"$ref":"#/components/schemas/Currency"},"description":{"type":"string","description":"An arbitrary string attached to the price item. Often useful for displaying to users. Defaults to product name."},"quantity":{"type":"integer","description":"The quantity of products being purchased."},"product_id":{"type":"string","description":"The id of the product."},"price_id":{"type":"string","description":"The id of the price."},"_price":{"$ref":"#/components/schemas/Price"},"_product":{"$ref":"#/components/schemas/Product"},"taxes":{"type":"array","description":"The taxes applied to the price item.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/TaxAmount"}]}},"recurrences":{"type":"array","description":"The sum of amounts of the price items by recurrence.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/RecurrenceAmount"}]}}}},"TaxAmount":{"type":"object","description":"A tax amount associated with a specific tax rate.","readOnly":true,"properties":{"amount":{"type":"integer","description":"The tax amount."},"rate":{"type":"string","description":"The tax rate applied."}}},"RecurrenceAmount":{"type":"object","description":"An amount associated with a specific recurrence.","readOnly":true,"properties":{"type":{"type":"string","description":"The price type."},"billing_period":{"type":"string","description":"The price billing period."},"amount_subtotal":{"type":"integer","description":"Total of all items, with same recurrence, before (discounts or) taxes are applied."},"amount_total":{"type":"integer","description":"Total of all items, with same recurrence, after (discounts and) taxes are applied."},"amount_tax":{"type":"integer","description":"Total of all items taxes, with same recurrence."}},"required":["type","amount_subtotal","amount_total"]},"TotalDetails":{"type":"object","description":"The total details with tax (and discount) aggregated totals.","readOnly":true,"properties":{"amount_shipping":{"type":"integer","description":"This is the sum of all the price item shipping amounts."},"amount_tax":{"type":"integer","description":"This is the sum of all the price item tax amounts."},"breakdown":{"type":"object","description":"Breakdown of individual tax (and discount) amounts that add up to the totals.","properties":{"taxes":{"type":"array","description":"The aggregated price items tax amount per rate.","items":{"oneOf":[{"$ref":"#/components/schemas/TaxAmount"}]}},"recurrences":{"type":"array","description":"The aggregated price items tax amount per rate.","items":{"oneOf":[{"$ref":"#/components/schemas/RecurrenceAmount"}]}}}}}},"PricingDetails":{"type":"object","description":"The result from the calculation of a set of price items.","properties":{"items":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/PriceItem"}]}},"amount_subtotal":{"type":"integer","description":"Total of all items before (discounts or) taxes are applied."},"amount_total":{"type":"integer","description":"Total of all items after (discounts and) taxes are applied."},"total_details":{"$ref":"#/components/schemas/TotalDetails"}}},"BillingPeriod":{"type":"string","enum":["Weekly","Monthly","Every Quarter","Every 6 months","Yearly"]},"Price":{"type":"object","description":"The price configuration","additionalProperties":true,"readOnly":true,"properties":{"active":{"type":"boolean"},"billing_scheme":{"type":"string","enum":["Per Unit"]},"description":{"type":"string"},"sales_tax":{"type":"string","enum":["Nontaxable","Reduced (7%)","Standard (19%)"]},"tax_behavior":{"type":"string","enum":["Inclusive (Price amount includes Tax)","Exclusive (Price amount excludes Tax)"]},"tiers_mode":{"type":"string","enum":["Standard"]},"type":{"type":"string","enum":["One Time","Recurring"]},"billing_period":{"$ref":"#/components/schemas/BillingPeriod"},"unit_amount":{"type":"number"},"unit_amount_decimal":{"type":"string"},"unit_amount_currency":{"$ref":"#/components/schemas/Currency"},"billing_duration_amount":{"type":"number"},"billing_duration_unit":{"type":"string","enum":["Weeks","Months","Years"]},"notice_time_amount":{"type":"number"},"notice_time_unit":{"type":"string","enum":["Weeks","Months","Years"]},"termination_time_amount":{"type":"number"},"termination_time_unit":{"type":"string","enum":["Weeks","Months","Years"]},"renewal_duration_amount":{"type":"number"},"renewal_duration_unit":{"type":"string","enum":["Weeks","Months","Years"]},"_created_at":{"type":"string"},"_id":{"type":"string"},"_title":{"type":"string"},"_updated_at":{"type":"string"}}},"Address":{"type":"object","additionalProperties":true,"properties":{"street":{"type":"string","description":"The first line of the address. Typically the street address or PO Box number."},"street_number":{"type":"string","description":"The second line of the address. Typically the number of the apartment, suite, or unit."},"postal_code":{"type":"string","description":"The postal code for the address."},"city":{"type":"string","description":"The name of the city, district, village, or town."},"country":{"type":"string","description":"The two-letter code for the country of the address."},"additional_info":{"type":"string","description":"An additional description for the address"}}},"PaymentMethod":{"type":"object","description":"A PaymentMethod represent your customer\'s payment instruments.\\n","properties":{"type":{"type":"string","description":"The type of the PaymentMethod."},"details":{"type":"object","description":"Contains relevant data associated with the payment method type.","additionalProperties":true}}},"Customer":{"type":"object","properties":{"first_name":{"type":"string"},"last_name":{"type":"string"},"company_name":{"type":"string"},"vat_id":{"type":"string"},"email":{"type":"string","description":"A valid email identifying the customer."},"phone":{"type":"string"}}},"Product":{"type":"object","description":"The product configuration","readOnly":true,"additionalProperties":true,"properties":{"code":{"type":"string"},"type":{"type":"string","enum":["Product","Service"]},"name":{"type":"string"},"_id":{"type":"string"},"_title":{"type":"string"}}}},"examples":{"checkoutWithCartId":{"value":{"mode":"create_order","cart":"pZ324jnndf"}},"checkoutWithTransientCart":{"value":{"mode":"create_order","cart":{"metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"customer":{"first_name":"john","last_name":"doe","company_name":"company limited","vat_id":"123892321","email":"johndoe@company.com","phone":"+44233242423"},"billing_address":{"street1":"wallstreet","street2":1,"city":"new york city","country":"united states","country_code":"US","additional_info":"headquarters office"},"delivery_address":{"street1":"berverly hills avenue","street2":"block 1","city":"berverly hills","country":"california","country_code":"CA","additional_info":"remote cowork place"},"line_items":[{"quantity":1,"product":"b7185fb7-b10f-4875-bda7-288631446555","price":"df240bab-9f71-4a9a-a9e1-59f18827dbf9"},{"quantity":1,"product":"zzzzzz-b10f-4875-bda7-288631446555","price":"zzzzz-9f71-4a9a-a9e1-59f18827dbf9"}]}}},"checkoutResult":{"value":{"order":{"_id":"d1ZoC1FwZ6","type":"Draft","cart_id":"p0ZoB1FwH6","order_number":"20201021-234324","_org_id":123,"metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"billing_first_name":"john","billing_last_name":"doe","billing_company_name":"i me and myself","billing_vat":"234823948","billing_email":"johndoe@nowhere.com","currency":"EUR","billing_phone":"+1234234545","billing_address":"wallstreet, 1","billing_contact":"villy or zilly","line_items":[{"id":"mSjGCTfn8w","metadata":[{"cart_id":"p0ZoB1FwH6"}],"description":"Wallbox Premium - Premium Price","currency":"EUR","unit_amount":78900,"amount_subtotal":50000,"amount_total":61500,"quantity":1,"product_id":"b7185fb7-b10f-4875-bda7-288631446555","price_id":"df240bab-9f71-4a9a-a9e1-59f18827dbf9","taxes":[{"amount":11500,"rate":"MwSt. 23%"}],"_price":{"_id":"df240bab-9f71-4a9a-a9e1-59f18827dbf9","unit_amount":"€ 789","type":"One Time","active":true,"sales_tax":"Standard (19%)","tax_behavior":"Inclusive (Price amount includes Tax)","description":"Winter Sale","billing_scheme":"Per Unit","tiers_mode":"Standard","_created_at":"2021-11-10T18:02:58.318Z","_updated_at":"2021-11-10T18:02:58.318Z","_title":"Winter Sale"}},{"id":"mZkGCTfn6p","metadata":[{"cart_id":"p0ZoB1FwH6"}],"description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","unit_amount":78900,"amount_subtotal":50000,"amount_total":53500,"quantity":1,"product_id":"zzzzzz-b10f-4875-bda7-288631446555","price_id":"zzzzz-9f71-4a9a-a9e1-59f18827dbf9","taxes":[{"amount":3500,"rate":"MwSt. 7%"}],"_price":{"_id":"zzzzz-9f71-4a9a-a9e1-59f18827dbf9","unit_amount":"€ 789","type":"One Time","active":true,"sales_tax":"Standard (19%)","tax_behavior":"Inclusive (Price amount includes Tax)","description":"Winter Sale","billing_scheme":"Per Unit","tiers_mode":"Standard","_created_at":"2021-11-10T18:02:58.318Z","_updated_at":"2021-11-10T18:02:58.318Z","_title":"Winter Sale"}}],"amount_subtotal":100000,"amount_total":115000,"total_details":{"amount_shipping":10000,"amount_tax":15000,"breakdown":[{"amount":11500,"rate":"MwSt. 23%"},{"amount":3500,"rate":"MwSt. 7%"}]},"_created_at":"2021-11-10T18:02:58.318Z","_updated_at":"2021-11-10T18:02:58.318Z"}}}}}}')}},t={};return function r(a){if(t[a])return t[a].exports;var i=t[a]={exports:{}};return e[a].call(i.exports,i,i.exports,r),i.exports}(914)})());
1
+ !function(e,t){for(var r in t)e[r]=t[r];t.__esModule&&Object.defineProperty(e,"__esModule",{value:!0})}(exports,(()=>{"use strict";var e={914:function(e,t,r){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=i(r(279));t.default=a.default},279:e=>{e.exports=JSON.parse('{"openapi":"3.0.3","info":{"title":"Pricing API","description":"This API hub sets the foundations for the following Pricing APIs:\\n\\n- Shopping Cart API, used to interact with a cart during a customer\'s checkout session, and it\'s responsible for providing the following set of features:\\n - A unified data model to model a Shopping Cart\\n - Cart abandonment recovery\\n - Pricing features such as automatic calculation of totals and price breakdowns for taxes\\n - Product and pricing data validation\\n - Checkout a cart into an order, invoice, or quote\\n\\n- Order API, provides a way to manage orders, keep track of inventory, with individual adjustments, tax calculation, and shipping, apply discounts, store tracking information, and handle returns. The responsibilities of this API contemplate the following set of features:\\n - Create or update a new Order from a Shopping Cart\\n - Marking a Shopping Cart as complete once the Order is set as open (immutable/closed for modification)\\n - Pricing features such as automatic calculation of totals and price breakdowns for taxes\\n","contact":{"name":"Maintainers Channel","url":"https://epilot.slack.com/archives/C020B4URQNS"},"version":"1.0.0"},"externalDocs":{"description":"Read the full docs here","url":"https://e-pilot.atlassian.net/wiki/spaces/EO/pages/5459705918/Shopping+Cart+Orders+API"},"tags":[{"name":"Draft","description":"Operations not implement under the current release."},{"name":"Public","description":"Customer-facing Endpoints (requiring a X-Ivy-Org-ID identification)"},{"name":"Cart","description":"The shopping cart & checkout management operations"},{"name":"Order","description":"Order management operations"},{"name":"Product Catalog","description":"Product querying operations"}],"security":[{"EpilotAuth":[]},{"AsOrganization":[]}],"paths":{"/v1/public/cart":{"put":{"description":"Creates a new cart or updates an existing one.","operationId":"$upsertCart","summary":"upsertCart","security":[],"tags":["Cart","Public","Draft"],"parameters":[{"in":"header","name":"X-Ivy-Org-ID","description":"The target Organization Id represented by the caller","schema":{"type":"string"},"required":true}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CartDto"}}}},"responses":{"200":{"description":"The updated Cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"}}}},"201":{"description":"The new Cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/public/cart:checkout":{"post":{"description":"Checkouts a cart and executes the specified checkout `mode` process. \\n\\nA Checkout implicitly finalizes the provided cart (if not transient from a fast-checkout) and behaves in one of the following modes:\\n- `create_order` (**default**): the payment happens at a later date or managed by 3rd-party CRM (SAP)\\n- `create_invoice`: the payment happens on the online checkout (paypal, stripe, adyen)\\n- `create_quote`: the checkout represents a price quote request\\n\\nFast checkout is also supported, by passing the Cart contents directly.\\nWhen a fast checkout is performed the cart is considered transient and there is no cart persistance.\\n\\nIf the checkout `mode` is omitted, the `mode` will default to `create_order`.\\n","operationId":"$checkoutCart","summary":"checkoutCart","security":[],"tags":["Cart","Public"],"parameters":[{"in":"header","name":"X-Ivy-Org-ID","description":"The target Organization Id represented by the caller","schema":{"type":"string"},"required":true}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutCart"},"examples":{"Checkout with a CartID":{"$ref":"#/components/examples/checkoutWithCartId"},"Fast Checkout with a transient Cart":{"$ref":"#/components/examples/checkoutWithTransientCart"}}}}},"responses":{"200":{"description":"The checkout result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutCartResult"},"examples":{"Checkout with created order":{"$ref":"#/components/examples/checkoutResult"}}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/cart/{cart-id}":{"get":{"description":"Retrieves a cart by id.","operationId":"$getCart","summary":"getCart","tags":["Cart","Draft"],"parameters":[{"in":"path","name":"cart-id","schema":{"type":"string"},"description":"The id of the cart to be fetched","required":true}],"responses":{"200":{"description":"The customer\'s cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Cart not found"}}},"delete":{"description":"Deletes the Cart specified and returns its content.","operationId":"$deleteCart","summary":"deleteCart","tags":["Cart","Draft"],"parameters":[{"in":"path","name":"cart-id","schema":{"type":"string"},"description":"The id of the cart to be deleted","required":true}],"responses":{"200":{"description":"The customer\'s cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/order":{"put":{"description":"Creates a new order or updates an existing one. During the creation of an order, an unique customer-readable `order_number` will be generated.\\nThe `order_number` can be used to universally identify an order within epilot platform.\\n\\nThe upsert operation is idempotent, meaning that multiple calls will have effect just once. Calling the upsert multiple times will not duplicate the items on an order.\\n\\nWhen the the `cart_id` payload field is specified, the cart items are appended to the existing order items, or replaced in-place if they belong to the same `cart_id`.\\n\\nOn multiple updates with the same `cart_id` the line items linked with that `cart_id` (`order.line_items[]?.metadata.cart_id`) are removed and re-added.\\n","operationId":"$upsertOrder","summary":"upsertOrder","tags":["Order","Draft"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"}}}},"responses":{"200":{"description":"The updated Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"}}}},"201":{"description":"The new Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/public/catalog":{"post":{"description":"Provides a querying functionalities over products and prices of the Catalog for a given organization.","operationId":"$searchCatalog","summary":"searchCatalog","security":[],"tags":["Product Catalog","Public"],"parameters":[{"in":"header","name":"X-Ivy-Org-ID","description":"The target Organization Id represented by the caller","schema":{"type":"string"},"required":true}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogSearch"}}}},"responses":{"200":{"description":"The search result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogSearchResult"}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}},"components":{"securitySchemes":{"EpilotAuth":{"type":"http","scheme":"bearer","description":"Epilot Bearer Token"},"AsOrganization":{"type":"apiKey","in":"header","name":"x-ivy-org-id","description":"Set organization id when using internal auth"},"AsUser":{"type":"apiKey","in":"header","name":"x-ivy-user-id","description":"Set user id when using internal auth"}},"schemas":{"Error":{"required":["message"],"properties":{"message":{"type":"string","description":"Error message"}}},"MetaData":{"description":"A set of key-value pairs.","type":"array","items":{"oneOf":[{"type":"object","description":"Key value pair entry","properties":{"key":{"type":"string","description":"Item key"},"value":{"type":"string","description":"Item value"}}}]}},"CatalogSearch":{"description":"A catalog search payload","type":"object","properties":{"q":{"description":"The query to perform using lucene query syntax.","type":"string"},"sort":{"description":"The sort expression to sort the results.","type":"string"},"from":{"description":"The index from which to query, used for pagination purposes. Defaults to 0","type":"number"},"size":{"description":"The max size of the response, defaults to 2000.","type":"number"},"expand":{"type":"array","description":"A list of additional fields to expand on the search results, such as non-indexed fields.","items":{"type":"string"}}},"example":{"q":"_id:1233432 OR _id:123432454 OR _id:23445433","sort":"description ASC","from":0,"size":200}},"CatalogSearchResult":{"description":"The query result payload","type":"object","properties":{"hits":{"type":"number","description":"The number os results returned."},"results":{"type":"array","items":{"anyOf":[{"$ref":"#/components/schemas/Product"},{"$ref":"#/components/schemas/Price"}]}}},"example":{"hits":2,"results":[{"schema":"product","description":"product a"},{"schema":"price","unit_amount_decimal":"124.342343434"}]}},"CartDto":{"description":"A valid cart payload from a client.","properties":{"metadata":{"$ref":"#/components/schemas/MetaData"},"customer":{"$ref":"#/components/schemas/Customer"},"billing_address":{"$ref":"#/components/schemas/Address"},"delivery_address":{"$ref":"#/components/schemas/Address"},"payment_method":{"$ref":"#/components/schemas/PaymentMethod"},"line_items":{"$ref":"#/components/schemas/PriceItemsDto"}},"required":["line_items"]},"CheckoutCart":{"type":"object","description":"The cart checkout request payload","properties":{"cart":{"anyOf":[{"description":"the cart id","type":"string"},{"$ref":"#/components/schemas/CartDto"}]},"mode":{"$ref":"#/components/schemas/CheckoutMode"}}},"CheckoutCartResult":{"type":"object","description":"The cart checkout result","properties":{"order":{"$ref":"#/components/schemas/Order"}}},"CheckoutMode":{"type":"string","description":"The checkout mode for the cart checkout.","enum":["create_order","create_invoice","create_quote"]},"PriceItemsDto":{"description":"A valid set of product prices, quantities, (discounts) and taxes from a client.","type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/PriceItemDto"}]}},"PriceItemDto":{"description":"Represents a valid price item from a client.","type":"object","properties":{"metadata":{"$ref":"#/components/schemas/MetaData"},"quantity":{"type":"integer","description":"The quantity of products being purchased."},"product_id":{"type":"string","description":"The id of the product."},"price_id":{"type":"string","description":"The id of the price."},"taxes":{"type":"array","description":"The taxes applied to the price item.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/TaxAmountDto"}]}},"recurrences":{"type":"array","description":"The taxes applied to the price item.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/RecurrenceAmountDto"}]}},"_price":{"$ref":"#/components/schemas/Price"}}},"TaxAmountDto":{"type":"object","description":"A valid tax rate from a client.","properties":{"rate":{"type":"string","description":"The tax rate applied."}}},"RecurrenceAmountDto":{"type":"object","description":"An amount associated with a specific recurrence.","properties":{"type":{"type":"string","description":"The price type."},"billing_period":{"type":"string","description":"The price billing period."},"amount_subtotal":{"type":"integer","description":"Total of all items, with same recurrence, before (discounts or) taxes are applied."},"amount_total":{"type":"integer","description":"Total of all items, with same recurrence, after (discounts and) taxes are applied."},"amount_tax":{"type":"integer","description":"Total of all items taxes, with same recurrence."}},"required":["type","amount_subtotal","amount_total"]},"Cart":{"description":"Supports shopping for products and services until ready for checkout.","properties":{"id":{"type":"string","description":"The cart identifier"},"org_id":{"type":"string","description":"The user\'s Organization Id the cart belongs to","readOnly":true},"status":{"enum":["open","complete","expired"],"type":"string","readOnly":true,"description":"The status of the Cart:\\n- open - the cart checkout is still in progress. Payment processing has not started\\n- complete - the cart checkout is complete. Payment processing may still be in progress\\n- expired - the cart checkout has expired. No further processing will occur\\n"},"customer":{"$ref":"#/components/schemas/Customer"},"billing_address":{"$ref":"#/components/schemas/Address"},"delivery_address":{"$ref":"#/components/schemas/Address"},"metadata":{"$ref":"#/components/schemas/MetaData"},"line_items":{"$ref":"#/components/schemas/PriceItems"},"amount_subtotal":{"readOnly":true,"type":"integer","description":"Total of all items before (discounts or) taxes are applied."},"amount_total":{"readOnly":true,"type":"integer","description":"Total of all items after (discounts and) taxes are applied."},"total_details":{"$ref":"#/components/schemas/TotalDetails"},"created_at":{"readOnly":true,"type":"string","format":"date-time"},"updated_at":{"readOnly":true,"type":"string","format":"date-time"}}},"Currency":{"type":"string","description":"Three-letter ISO currency code, in lowercase. Must be a supported currency.\\nISO 4217 CURRENCY CODES as specified in the documentation: https://www.iso.org/iso-4217-currency-codes.html\\n"},"Order":{"type":"object","description":"The order entity","properties":{"order_number":{"type":"string","description":"The Order Id Number for the customer"},"cart_id":{"type":"string","description":"The Cart Id that originated or is associated with the order"},"status":{"type":"string","enum":["Draft","Open","Paid","Shipped","Delivered","Complete"],"description":"The order status"},"metadata":{"$ref":"#/components/schemas/MetaData"},"billing_first_name":{"type":"string"},"billing_last_name":{"type":"string"},"billing_company_name":{"type":"string"},"billing_vat":{"type":"string"},"billing_email":{"type":"string"},"billing_phone":{"type":"string"},"billing_address":{"type":"array","items":{"$ref":"#/components/schemas/Address"}},"currency":{"$ref":"#/components/schemas/Currency"},"delivery_address":{"type":"array","items":{"$ref":"#/components/schemas/Address"}},"payment_method":{"type":"array","items":{"$ref":"#/components/schemas/PaymentMethod"}},"contact":{"readOnly":true,"type":"string","description":"The id of an existing contact."},"line_items":{"$ref":"#/components/schemas/PriceItems"},"amount_subtotal":{"readOnly":true,"type":"integer","description":"Total of all items before (discounts or) taxes are applied."},"amount_total":{"readOnly":true,"type":"integer","description":"Total of all items after (discounts and) taxes are applied."},"total_details":{"$ref":"#/components/schemas/TotalDetails"},"_org_id":{"type":"string","description":"Organization Id the order belongs to"},"_id":{"type":"string","readOnly":true},"_created_at":{"type":"string","readOnly":true},"_updated_at":{"type":"string","readOnly":true},"_tags":{"type":"array","items":{"type":"string"}}}},"PriceItems":{"description":"Tracks a set of product prices, quantities, (discounts) and taxes.","type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/PriceItem"}]}},"PriceItem":{"description":"Represents a price item","type":"object","properties":{"id":{"type":"string","description":"price item id","readOnly":true},"metadata":{"$ref":"#/components/schemas/MetaData"},"unit_amount":{"type":"integer","description":"The unit amount value","readOnly":true},"amount_subtotal":{"type":"integer","description":"Total before any (discounts or) taxes are applied.","readOnly":true},"amount_total":{"type":"integer","description":"Total after (discounts and) taxes.","readOnly":true},"currency":{"$ref":"#/components/schemas/Currency"},"description":{"type":"string","description":"An arbitrary string attached to the price item. Often useful for displaying to users. Defaults to product name."},"quantity":{"type":"integer","description":"The quantity of products being purchased."},"product_id":{"type":"string","description":"The id of the product."},"price_id":{"type":"string","description":"The id of the price."},"_price":{"$ref":"#/components/schemas/Price"},"_product":{"$ref":"#/components/schemas/Product"},"taxes":{"type":"array","description":"The taxes applied to the price item.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/TaxAmount"}]}},"recurrences":{"type":"array","description":"The sum of amounts of the price items by recurrence.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/RecurrenceAmount"}]}}}},"TaxAmount":{"type":"object","description":"A tax amount associated with a specific tax rate.","readOnly":true,"properties":{"amount":{"type":"integer","description":"The tax amount."},"rate":{"type":"string","description":"The tax rate applied."}}},"RecurrenceAmount":{"type":"object","description":"An amount associated with a specific recurrence.","readOnly":true,"properties":{"type":{"type":"string","description":"The price type."},"billing_period":{"type":"string","description":"The price billing period."},"amount_subtotal":{"type":"integer","description":"Total of all items, with same recurrence, before (discounts or) taxes are applied."},"amount_total":{"type":"integer","description":"Total of all items, with same recurrence, after (discounts and) taxes are applied."},"amount_tax":{"type":"integer","description":"Total of all items taxes, with same recurrence."}},"required":["type","amount_subtotal","amount_total"]},"TotalDetails":{"type":"object","description":"The total details with tax (and discount) aggregated totals.","readOnly":true,"properties":{"amount_shipping":{"type":"integer","description":"This is the sum of all the price item shipping amounts."},"amount_tax":{"type":"integer","description":"This is the sum of all the price item tax amounts."},"breakdown":{"type":"object","description":"Breakdown of individual tax (and discount) amounts that add up to the totals.","properties":{"taxes":{"type":"array","description":"The aggregated price items tax amount per rate.","items":{"oneOf":[{"$ref":"#/components/schemas/TaxAmount"}]}},"recurrences":{"type":"array","description":"The aggregated price items tax amount per rate.","items":{"oneOf":[{"$ref":"#/components/schemas/RecurrenceAmount"}]}}}}}},"PricingDetails":{"type":"object","description":"The result from the calculation of a set of price items.","properties":{"items":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/PriceItem"}]}},"amount_subtotal":{"type":"integer","description":"Total of all items before (discounts or) taxes are applied."},"amount_total":{"type":"integer","description":"Total of all items after (discounts and) taxes are applied."},"total_details":{"$ref":"#/components/schemas/TotalDetails"}}},"BillingPeriod":{"type":"string","enum":["weekly","monthly","every_quarter","every_6_months","yearly"]},"Price":{"type":"object","description":"The price configuration","additionalProperties":true,"readOnly":true,"properties":{"active":{"type":"boolean"},"billing_scheme":{"type":"string","enum":["Per Unit"]},"description":{"type":"string"},"sales_tax":{"type":"string","enum":["nontaxable","reduced","standard"]},"tax_behavior":{"type":"string","enum":["inclusive","exclusive"]},"tiers_mode":{"type":"string","enum":["Standard"]},"type":{"type":"string","enum":["one_time","recurring"]},"billing_period":{"$ref":"#/components/schemas/BillingPeriod"},"unit_amount":{"type":"number"},"unit_amount_decimal":{"type":"string"},"unit_amount_currency":{"$ref":"#/components/schemas/Currency"},"billing_duration_amount":{"type":"number"},"billing_duration_unit":{"type":"string","enum":["weeks","months","years"]},"notice_time_amount":{"type":"number"},"notice_time_unit":{"type":"string","enum":["weeks","months","years"]},"termination_time_amount":{"type":"number"},"termination_time_unit":{"type":"string","enum":["weeks","months","years"]},"renewal_duration_amount":{"type":"number"},"renewal_duration_unit":{"type":"string","enum":["weeks","months","years"]},"_created_at":{"type":"string"},"_id":{"type":"string"},"_title":{"type":"string"},"_updated_at":{"type":"string"}}},"Address":{"type":"object","additionalProperties":true,"properties":{"street":{"type":"string","description":"The first line of the address. Typically the street address or PO Box number."},"street_number":{"type":"string","description":"The second line of the address. Typically the number of the apartment, suite, or unit."},"postal_code":{"type":"string","description":"The postal code for the address."},"city":{"type":"string","description":"The name of the city, district, village, or town."},"country":{"type":"string","description":"The two-letter code for the country of the address."},"additional_info":{"type":"string","description":"An additional description for the address"}}},"PaymentMethod":{"type":"object","description":"A PaymentMethod represent your customer\'s payment instruments.\\n","properties":{"type":{"type":"string","description":"The type of the PaymentMethod."},"details":{"type":"object","description":"Contains relevant data associated with the payment method type.","additionalProperties":true}}},"Customer":{"type":"object","properties":{"first_name":{"type":"string"},"last_name":{"type":"string"},"company_name":{"type":"string"},"vat_id":{"type":"string"},"email":{"type":"string","description":"A valid email identifying the customer."},"phone":{"type":"string"}}},"Product":{"type":"object","description":"The product configuration","readOnly":true,"additionalProperties":true,"properties":{"code":{"type":"string"},"type":{"type":"string","enum":["Product","Service"]},"name":{"type":"string"},"_id":{"type":"string"},"_title":{"type":"string"}}}},"examples":{"checkoutWithCartId":{"value":{"mode":"create_order","cart":"pZ324jnndf"}},"checkoutWithTransientCart":{"value":{"mode":"create_order","cart":{"metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"customer":{"first_name":"john","last_name":"doe","company_name":"company limited","vat_id":"123892321","email":"johndoe@company.com","phone":"+44233242423"},"billing_address":{"street1":"wallstreet","street2":1,"city":"new york city","country":"united states","country_code":"US","additional_info":"headquarters office"},"delivery_address":{"street1":"berverly hills avenue","street2":"block 1","city":"berverly hills","country":"california","country_code":"CA","additional_info":"remote cowork place"},"line_items":[{"quantity":1,"product":"b7185fb7-b10f-4875-bda7-288631446555","price":"df240bab-9f71-4a9a-a9e1-59f18827dbf9"},{"quantity":1,"product":"zzzzzz-b10f-4875-bda7-288631446555","price":"zzzzz-9f71-4a9a-a9e1-59f18827dbf9"}]}}},"checkoutResult":{"value":{"order":{"_id":"d1ZoC1FwZ6","type":"Draft","cart_id":"p0ZoB1FwH6","order_number":"20201021-234324","_org_id":123,"metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"billing_first_name":"john","billing_last_name":"doe","billing_company_name":"i me and myself","billing_vat":"234823948","billing_email":"johndoe@nowhere.com","currency":"EUR","billing_phone":"+1234234545","billing_address":"wallstreet, 1","billing_contact":"villy or zilly","line_items":[{"id":"mSjGCTfn8w","metadata":[{"cart_id":"p0ZoB1FwH6"}],"description":"Wallbox Premium - Premium Price","currency":"EUR","unit_amount":78900,"amount_subtotal":50000,"amount_total":61500,"quantity":1,"product_id":"b7185fb7-b10f-4875-bda7-288631446555","price_id":"df240bab-9f71-4a9a-a9e1-59f18827dbf9","taxes":[{"amount":11500,"rate":"MwSt. 23%"}],"_price":{"_id":"df240bab-9f71-4a9a-a9e1-59f18827dbf9","unit_amount":"€ 789","type":"one_time","active":true,"sales_tax":"standard","tax_behavior":"inclusive","description":"Winter Sale","billing_scheme":"Per Unit","tiers_mode":"Standard","_created_at":"2021-11-10T18:02:58.318Z","_updated_at":"2021-11-10T18:02:58.318Z","_title":"Winter Sale"}},{"id":"mZkGCTfn6p","metadata":[{"cart_id":"p0ZoB1FwH6"}],"description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","unit_amount":78900,"amount_subtotal":50000,"amount_total":53500,"quantity":1,"product_id":"zzzzzz-b10f-4875-bda7-288631446555","price_id":"zzzzz-9f71-4a9a-a9e1-59f18827dbf9","taxes":[{"amount":3500,"rate":"MwSt. 7%"}],"_price":{"_id":"zzzzz-9f71-4a9a-a9e1-59f18827dbf9","unit_amount":"€ 789","type":"one_time","active":true,"sales_tax":"standard","tax_behavior":"inclusive","description":"Winter Sale","billing_scheme":"Per Unit","tiers_mode":"Standard","_created_at":"2021-11-10T18:02:58.318Z","_updated_at":"2021-11-10T18:02:58.318Z","_title":"Winter Sale"}}],"amount_subtotal":100000,"amount_total":115000,"total_details":{"amount_shipping":10000,"amount_tax":15000,"breakdown":[{"amount":11500,"rate":"MwSt. 23%"},{"amount":3500,"rate":"MwSt. 7%"}]},"_created_at":"2021-11-10T18:02:58.318Z","_updated_at":"2021-11-10T18:02:58.318Z"}}}}}}')}},t={};return function r(i){if(t[i])return t[i].exports;var a=t[i]={exports:{}};return e[i].call(a.exports,a,a.exports,r),a.exports}(914)})());
package/dist/openapi.d.ts CHANGED
@@ -36,7 +36,7 @@ declare namespace Components {
36
36
  */
37
37
  additional_info?: string;
38
38
  }
39
- export type BillingPeriod = "Weekly" | "Monthly" | "Every Quarter" | "Every 6 months" | "Yearly";
39
+ export type BillingPeriod = "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly";
40
40
  /**
41
41
  * Supports shopping for products and services until ready for checkout.
42
42
  */
@@ -268,22 +268,22 @@ declare namespace Components {
268
268
  active?: boolean;
269
269
  billing_scheme?: "Per Unit";
270
270
  description?: string;
271
- sales_tax?: "Nontaxable" | "Reduced (7%)" | "Standard (19%)";
272
- tax_behavior?: "Inclusive (Price amount includes Tax)" | "Exclusive (Price amount excludes Tax)";
271
+ sales_tax?: "nontaxable" | "reduced" | "standard";
272
+ tax_behavior?: "inclusive" | "exclusive";
273
273
  tiers_mode?: "Standard";
274
- type?: "One Time" | "Recurring";
274
+ type?: "one_time" | "recurring";
275
275
  billing_period?: BillingPeriod;
276
276
  unit_amount?: number;
277
277
  unit_amount_decimal?: string;
278
278
  unit_amount_currency?: Currency;
279
279
  billing_duration_amount?: number;
280
- billing_duration_unit?: "Weeks" | "Months" | "Years";
280
+ billing_duration_unit?: "weeks" | "months" | "years";
281
281
  notice_time_amount?: number;
282
- notice_time_unit?: "Weeks" | "Months" | "Years";
282
+ notice_time_unit?: "weeks" | "months" | "years";
283
283
  termination_time_amount?: number;
284
- termination_time_unit?: "Weeks" | "Months" | "Years";
284
+ termination_time_unit?: "weeks" | "months" | "years";
285
285
  renewal_duration_amount?: number;
286
- renewal_duration_unit?: "Weeks" | "Months" | "Years";
286
+ renewal_duration_unit?: "weeks" | "months" | "years";
287
287
  _created_at?: string;
288
288
  _id?: string;
289
289
  _title?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/pricing-client",
3
- "version": "1.2.3",
3
+ "version": "1.2.4",
4
4
  "description": "Client for epilot Pricing APIs",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/openapi.d.ts DELETED
@@ -1,751 +0,0 @@
1
- /* eslint-disable */
2
- import {
3
- OpenAPIClient,
4
- Parameters,
5
- UnknownParamsObject,
6
- OperationResponse,
7
- AxiosRequestConfig,
8
- } from 'openapi-client-axios';
9
-
10
- declare namespace Components {
11
- namespace Schemas {
12
- export interface Address {
13
- [name: string]: any;
14
- /**
15
- * The first line of the address. Typically the street address or PO Box number.
16
- */
17
- street?: string;
18
- /**
19
- * The second line of the address. Typically the number of the apartment, suite, or unit.
20
- */
21
- street_number?: string;
22
- /**
23
- * The postal code for the address.
24
- */
25
- postal_code?: string;
26
- /**
27
- * The name of the city, district, village, or town.
28
- */
29
- city?: string;
30
- /**
31
- * The two-letter code for the country of the address.
32
- */
33
- country?: string;
34
- /**
35
- * An additional description for the address
36
- */
37
- additional_info?: string;
38
- }
39
- export type BillingPeriod = "Weekly" | "Monthly" | "Every Quarter" | "Every 6 months" | "Yearly";
40
- /**
41
- * Supports shopping for products and services until ready for checkout.
42
- */
43
- export interface Cart {
44
- /**
45
- * The cart identifier
46
- */
47
- id?: string;
48
- /**
49
- * The user's Organization Id the cart belongs to
50
- */
51
- readonly org_id?: string;
52
- /**
53
- * The status of the Cart:
54
- * - open - the cart checkout is still in progress. Payment processing has not started
55
- * - complete - the cart checkout is complete. Payment processing may still be in progress
56
- * - expired - the cart checkout has expired. No further processing will occur
57
- *
58
- */
59
- readonly status?: "open" | "complete" | "expired";
60
- customer?: Customer;
61
- billing_address?: Address;
62
- delivery_address?: Address;
63
- metadata?: MetaData;
64
- line_items?: PriceItems;
65
- /**
66
- * Total of all items before (discounts or) taxes are applied.
67
- */
68
- readonly amount_subtotal?: number;
69
- /**
70
- * Total of all items after (discounts and) taxes are applied.
71
- */
72
- readonly amount_total?: number;
73
- total_details?: TotalDetails;
74
- readonly created_at?: string; // date-time
75
- readonly updated_at?: string; // date-time
76
- }
77
- /**
78
- * A valid cart payload from a client.
79
- */
80
- export interface CartDto {
81
- metadata?: MetaData;
82
- customer?: Customer;
83
- billing_address?: Address;
84
- delivery_address?: Address;
85
- payment_method?: PaymentMethod;
86
- line_items: PriceItemsDto;
87
- }
88
- /**
89
- * A catalog search payload
90
- * example:
91
- * {
92
- * "q": "_id:1233432 OR _id:123432454 OR _id:23445433",
93
- * "sort": "description ASC",
94
- * "from": 0,
95
- * "size": 200
96
- * }
97
- */
98
- export interface CatalogSearch {
99
- /**
100
- * The query to perform using lucene query syntax.
101
- */
102
- q?: string;
103
- /**
104
- * The sort expression to sort the results.
105
- */
106
- sort?: string;
107
- /**
108
- * The index from which to query, used for pagination purposes. Defaults to 0
109
- */
110
- from?: number;
111
- /**
112
- * The max size of the response, defaults to 2000.
113
- */
114
- size?: number;
115
- /**
116
- * A list of additional fields to expand on the search results, such as non-indexed fields.
117
- */
118
- expand?: string[];
119
- }
120
- /**
121
- * The query result payload
122
- * example:
123
- * {
124
- * "hits": 2,
125
- * "results": [
126
- * {
127
- * "schema": "product",
128
- * "description": "product a"
129
- * },
130
- * {
131
- * "schema": "price",
132
- * "unit_amount_decimal": "124.342343434"
133
- * }
134
- * ]
135
- * }
136
- */
137
- export interface CatalogSearchResult {
138
- /**
139
- * The number os results returned.
140
- */
141
- hits?: number;
142
- results?: (Product | Price)[];
143
- }
144
- /**
145
- * The cart checkout request payload
146
- */
147
- export interface CheckoutCart {
148
- cart?: string | CartDto;
149
- mode?: CheckoutMode;
150
- }
151
- /**
152
- * The cart checkout result
153
- */
154
- export interface CheckoutCartResult {
155
- order?: Order;
156
- }
157
- /**
158
- * The checkout mode for the cart checkout.
159
- */
160
- export type CheckoutMode = "create_order" | "create_invoice" | "create_quote";
161
- /**
162
- * Three-letter ISO currency code, in lowercase. Must be a supported currency.
163
- * ISO 4217 CURRENCY CODES as specified in the documentation: https://www.iso.org/iso-4217-currency-codes.html
164
- *
165
- */
166
- export type Currency = string;
167
- export interface Customer {
168
- first_name?: string;
169
- last_name?: string;
170
- company_name?: string;
171
- vat_id?: string;
172
- /**
173
- * A valid email identifying the customer.
174
- */
175
- email?: string;
176
- phone?: string;
177
- }
178
- export interface Error {
179
- /**
180
- * Error message
181
- */
182
- message: string;
183
- }
184
- /**
185
- * A set of key-value pairs.
186
- */
187
- export type MetaData = ({
188
- /**
189
- * Item key
190
- */
191
- key?: string;
192
- /**
193
- * Item value
194
- */
195
- value?: string;
196
- })[];
197
- /**
198
- * The order entity
199
- */
200
- export interface Order {
201
- /**
202
- * The Order Id Number for the customer
203
- */
204
- order_number?: string;
205
- /**
206
- * The Cart Id that originated or is associated with the order
207
- */
208
- cart_id?: string;
209
- /**
210
- * The order status
211
- */
212
- status?: "Draft" | "Open" | "Paid" | "Shipped" | "Delivered" | "Complete";
213
- metadata?: MetaData;
214
- billing_first_name?: string;
215
- billing_last_name?: string;
216
- billing_company_name?: string;
217
- billing_vat?: string;
218
- billing_email?: string;
219
- billing_phone?: string;
220
- billing_address?: Address[];
221
- currency?: Currency;
222
- delivery_address?: Address[];
223
- payment_method?: PaymentMethod[];
224
- /**
225
- * The id of an existing contact.
226
- */
227
- readonly contact?: string;
228
- line_items?: PriceItems;
229
- /**
230
- * Total of all items before (discounts or) taxes are applied.
231
- */
232
- readonly amount_subtotal?: number;
233
- /**
234
- * Total of all items after (discounts and) taxes are applied.
235
- */
236
- readonly amount_total?: number;
237
- total_details?: TotalDetails;
238
- /**
239
- * Organization Id the order belongs to
240
- */
241
- _org_id?: string;
242
- readonly _id?: string;
243
- readonly _created_at?: string;
244
- readonly _updated_at?: string;
245
- _tags?: string[];
246
- }
247
- /**
248
- * A PaymentMethod represent your customer's payment instruments.
249
- *
250
- */
251
- export interface PaymentMethod {
252
- /**
253
- * The type of the PaymentMethod.
254
- */
255
- type?: string;
256
- /**
257
- * Contains relevant data associated with the payment method type.
258
- */
259
- details?: {
260
- [name: string]: any;
261
- };
262
- }
263
- /**
264
- * The price configuration
265
- */
266
- export interface Price {
267
- [name: string]: any;
268
- active?: boolean;
269
- billing_scheme?: "Per Unit";
270
- description?: string;
271
- sales_tax?: "Nontaxable" | "Reduced (7%)" | "Standard (19%)";
272
- tax_behavior?: "Inclusive (Price amount includes Tax)" | "Exclusive (Price amount excludes Tax)";
273
- tiers_mode?: "Standard";
274
- type?: "One Time" | "Recurring";
275
- billing_period?: BillingPeriod;
276
- unit_amount?: number;
277
- unit_amount_decimal?: string;
278
- unit_amount_currency?: Currency;
279
- billing_duration_amount?: number;
280
- billing_duration_unit?: "Weeks" | "Months" | "Years";
281
- notice_time_amount?: number;
282
- notice_time_unit?: "Weeks" | "Months" | "Years";
283
- termination_time_amount?: number;
284
- termination_time_unit?: "Weeks" | "Months" | "Years";
285
- renewal_duration_amount?: number;
286
- renewal_duration_unit?: "Weeks" | "Months" | "Years";
287
- _created_at?: string;
288
- _id?: string;
289
- _title?: string;
290
- _updated_at?: string;
291
- }
292
- /**
293
- * Represents a price item
294
- */
295
- export interface PriceItem {
296
- /**
297
- * price item id
298
- */
299
- readonly id?: string;
300
- metadata?: MetaData;
301
- /**
302
- * The unit amount value
303
- */
304
- readonly unit_amount?: number;
305
- /**
306
- * Total before any (discounts or) taxes are applied.
307
- */
308
- readonly amount_subtotal?: number;
309
- /**
310
- * Total after (discounts and) taxes.
311
- */
312
- readonly amount_total?: number;
313
- currency?: Currency;
314
- /**
315
- * An arbitrary string attached to the price item. Often useful for displaying to users. Defaults to product name.
316
- */
317
- description?: string;
318
- /**
319
- * The quantity of products being purchased.
320
- */
321
- quantity?: number;
322
- /**
323
- * The id of the product.
324
- */
325
- product_id?: string;
326
- /**
327
- * The id of the price.
328
- */
329
- price_id?: string;
330
- _price?: Price;
331
- _product?: Product;
332
- /**
333
- * The taxes applied to the price item.
334
- */
335
- readonly taxes?: (TaxAmount)[];
336
- /**
337
- * The sum of amounts of the price items by recurrence.
338
- */
339
- readonly recurrences?: (RecurrenceAmount)[];
340
- }
341
- /**
342
- * Represents a valid price item from a client.
343
- */
344
- export interface PriceItemDto {
345
- metadata?: MetaData;
346
- /**
347
- * The quantity of products being purchased.
348
- */
349
- quantity?: number;
350
- /**
351
- * The id of the product.
352
- */
353
- product_id?: string;
354
- /**
355
- * The id of the price.
356
- */
357
- price_id?: string;
358
- /**
359
- * The taxes applied to the price item.
360
- */
361
- readonly taxes?: (TaxAmountDto)[];
362
- /**
363
- * The taxes applied to the price item.
364
- */
365
- readonly recurrences?: (RecurrenceAmountDto)[];
366
- _price?: Price;
367
- }
368
- /**
369
- * Tracks a set of product prices, quantities, (discounts) and taxes.
370
- */
371
- export type PriceItems = (PriceItem)[];
372
- /**
373
- * A valid set of product prices, quantities, (discounts) and taxes from a client.
374
- */
375
- export type PriceItemsDto = (PriceItemDto)[];
376
- /**
377
- * The result from the calculation of a set of price items.
378
- */
379
- export interface PricingDetails {
380
- items?: (PriceItem)[];
381
- /**
382
- * Total of all items before (discounts or) taxes are applied.
383
- */
384
- amount_subtotal?: number;
385
- /**
386
- * Total of all items after (discounts and) taxes are applied.
387
- */
388
- amount_total?: number;
389
- total_details?: TotalDetails;
390
- }
391
- /**
392
- * The product configuration
393
- */
394
- export interface Product {
395
- [name: string]: any;
396
- code?: string;
397
- type?: "Product" | "Service";
398
- name?: string;
399
- _id?: string;
400
- _title?: string;
401
- }
402
- /**
403
- * An amount associated with a specific recurrence.
404
- */
405
- export interface RecurrenceAmount {
406
- /**
407
- * The price type.
408
- */
409
- type: string;
410
- /**
411
- * The price billing period.
412
- */
413
- billing_period?: string;
414
- /**
415
- * Total of all items, with same recurrence, before (discounts or) taxes are applied.
416
- */
417
- amount_subtotal: number;
418
- /**
419
- * Total of all items, with same recurrence, after (discounts and) taxes are applied.
420
- */
421
- amount_total: number;
422
- /**
423
- * Total of all items taxes, with same recurrence.
424
- */
425
- amount_tax?: number;
426
- }
427
- /**
428
- * An amount associated with a specific recurrence.
429
- */
430
- export interface RecurrenceAmountDto {
431
- /**
432
- * The price type.
433
- */
434
- type: string;
435
- /**
436
- * The price billing period.
437
- */
438
- billing_period?: string;
439
- /**
440
- * Total of all items, with same recurrence, before (discounts or) taxes are applied.
441
- */
442
- amount_subtotal: number;
443
- /**
444
- * Total of all items, with same recurrence, after (discounts and) taxes are applied.
445
- */
446
- amount_total: number;
447
- /**
448
- * Total of all items taxes, with same recurrence.
449
- */
450
- amount_tax?: number;
451
- }
452
- /**
453
- * A tax amount associated with a specific tax rate.
454
- */
455
- export interface TaxAmount {
456
- /**
457
- * The tax amount.
458
- */
459
- amount?: number;
460
- /**
461
- * The tax rate applied.
462
- */
463
- rate?: string;
464
- }
465
- /**
466
- * A valid tax rate from a client.
467
- */
468
- export interface TaxAmountDto {
469
- /**
470
- * The tax rate applied.
471
- */
472
- rate?: string;
473
- }
474
- /**
475
- * The total details with tax (and discount) aggregated totals.
476
- */
477
- export interface TotalDetails {
478
- /**
479
- * This is the sum of all the price item shipping amounts.
480
- */
481
- amount_shipping?: number;
482
- /**
483
- * This is the sum of all the price item tax amounts.
484
- */
485
- amount_tax?: number;
486
- /**
487
- * Breakdown of individual tax (and discount) amounts that add up to the totals.
488
- */
489
- breakdown?: {
490
- /**
491
- * The aggregated price items tax amount per rate.
492
- */
493
- taxes?: (TaxAmount)[];
494
- /**
495
- * The aggregated price items tax amount per rate.
496
- */
497
- recurrences?: (RecurrenceAmount)[];
498
- };
499
- }
500
- }
501
- }
502
- declare namespace Paths {
503
- namespace $CheckoutCart {
504
- export interface HeaderParameters {
505
- "X-Ivy-Org-ID": Parameters.XIvyOrgID;
506
- }
507
- namespace Parameters {
508
- export type XIvyOrgID = string;
509
- }
510
- export type RequestBody = Components.Schemas.CheckoutCart;
511
- namespace Responses {
512
- export type $200 = Components.Schemas.CheckoutCartResult;
513
- export type $400 = Components.Schemas.Error;
514
- }
515
- }
516
- namespace $DeleteCart {
517
- namespace Parameters {
518
- export type CartId = string;
519
- }
520
- export interface PathParameters {
521
- "cart-id": Parameters.CartId;
522
- }
523
- namespace Responses {
524
- export type $200 = Components.Schemas.Cart;
525
- export type $400 = Components.Schemas.Error;
526
- }
527
- }
528
- namespace $GetCart {
529
- namespace Parameters {
530
- export type CartId = string;
531
- }
532
- export interface PathParameters {
533
- "cart-id": Parameters.CartId;
534
- }
535
- namespace Responses {
536
- export type $200 = Components.Schemas.Cart;
537
- export type $400 = Components.Schemas.Error;
538
- }
539
- }
540
- namespace $SearchCatalog {
541
- export interface HeaderParameters {
542
- "X-Ivy-Org-ID": Parameters.XIvyOrgID;
543
- }
544
- namespace Parameters {
545
- export type XIvyOrgID = string;
546
- }
547
- export type RequestBody = Components.Schemas.CatalogSearch;
548
- namespace Responses {
549
- export type $200 = Components.Schemas.CatalogSearchResult;
550
- export type $400 = Components.Schemas.Error;
551
- }
552
- }
553
- namespace $UpsertCart {
554
- export interface HeaderParameters {
555
- "X-Ivy-Org-ID": Parameters.XIvyOrgID;
556
- }
557
- namespace Parameters {
558
- export type XIvyOrgID = string;
559
- }
560
- export type RequestBody = Components.Schemas.CartDto;
561
- namespace Responses {
562
- export type $200 = Components.Schemas.Cart;
563
- export type $201 = Components.Schemas.Cart;
564
- export type $400 = Components.Schemas.Error;
565
- }
566
- }
567
- namespace $UpsertOrder {
568
- export type RequestBody = Components.Schemas.Order;
569
- namespace Responses {
570
- export type $200 = Components.Schemas.Order;
571
- export type $201 = Components.Schemas.Order;
572
- export type $400 = Components.Schemas.Error;
573
- }
574
- }
575
- }
576
-
577
- export interface OperationMethods {
578
- /**
579
- * $upsertCart - upsertCart
580
- *
581
- * Creates a new cart or updates an existing one.
582
- */
583
- '$upsertCart'(
584
- parameters?: Parameters<Paths.$UpsertCart.HeaderParameters> | null,
585
- data?: Paths.$UpsertCart.RequestBody,
586
- config?: AxiosRequestConfig
587
- ): OperationResponse<Paths.$UpsertCart.Responses.$200 | Paths.$UpsertCart.Responses.$201 | Paths.$UpsertCart.Responses.$400>
588
- /**
589
- * $checkoutCart - checkoutCart
590
- *
591
- * Checkouts a cart and executes the specified checkout `mode` process.
592
- *
593
- * A Checkout implicitly finalizes the provided cart (if not transient from a fast-checkout) and behaves in one of the following modes:
594
- * - `create_order` (**default**): the payment happens at a later date or managed by 3rd-party CRM (SAP)
595
- * - `create_invoice`: the payment happens on the online checkout (paypal, stripe, adyen)
596
- * - `create_quote`: the checkout represents a price quote request
597
- *
598
- * Fast checkout is also supported, by passing the Cart contents directly.
599
- * When a fast checkout is performed the cart is considered transient and there is no cart persistance.
600
- *
601
- * If the checkout `mode` is omitted, the `mode` will default to `create_order`.
602
- *
603
- */
604
- '$checkoutCart'(
605
- parameters?: Parameters<Paths.$CheckoutCart.HeaderParameters> | null,
606
- data?: Paths.$CheckoutCart.RequestBody,
607
- config?: AxiosRequestConfig
608
- ): OperationResponse<Paths.$CheckoutCart.Responses.$200 | Paths.$CheckoutCart.Responses.$400>
609
- /**
610
- * $getCart - getCart
611
- *
612
- * Retrieves a cart by id.
613
- */
614
- '$getCart'(
615
- parameters?: Parameters<Paths.$GetCart.PathParameters> | null,
616
- data?: any,
617
- config?: AxiosRequestConfig
618
- ): OperationResponse<Paths.$GetCart.Responses.$200 | Paths.$GetCart.Responses.$400>
619
- /**
620
- * $deleteCart - deleteCart
621
- *
622
- * Deletes the Cart specified and returns its content.
623
- */
624
- '$deleteCart'(
625
- parameters?: Parameters<Paths.$DeleteCart.PathParameters> | null,
626
- data?: any,
627
- config?: AxiosRequestConfig
628
- ): OperationResponse<Paths.$DeleteCart.Responses.$200 | Paths.$DeleteCart.Responses.$400>
629
- /**
630
- * $upsertOrder - upsertOrder
631
- *
632
- * Creates a new order or updates an existing one. During the creation of an order, an unique customer-readable `order_number` will be generated.
633
- * The `order_number` can be used to universally identify an order within epilot platform.
634
- *
635
- * The upsert operation is idempotent, meaning that multiple calls will have effect just once. Calling the upsert multiple times will not duplicate the items on an order.
636
- *
637
- * When the the `cart_id` payload field is specified, the cart items are appended to the existing order items, or replaced in-place if they belong to the same `cart_id`.
638
- *
639
- * On multiple updates with the same `cart_id` the line items linked with that `cart_id` (`order.line_items[]?.metadata.cart_id`) are removed and re-added.
640
- *
641
- */
642
- '$upsertOrder'(
643
- parameters?: Parameters<UnknownParamsObject> | null,
644
- data?: Paths.$UpsertOrder.RequestBody,
645
- config?: AxiosRequestConfig
646
- ): OperationResponse<Paths.$UpsertOrder.Responses.$200 | Paths.$UpsertOrder.Responses.$201 | Paths.$UpsertOrder.Responses.$400>
647
- /**
648
- * $searchCatalog - searchCatalog
649
- *
650
- * Provides a querying functionalities over products and prices of the Catalog for a given organization.
651
- */
652
- '$searchCatalog'(
653
- parameters?: Parameters<Paths.$SearchCatalog.HeaderParameters> | null,
654
- data?: Paths.$SearchCatalog.RequestBody,
655
- config?: AxiosRequestConfig
656
- ): OperationResponse<Paths.$SearchCatalog.Responses.$200 | Paths.$SearchCatalog.Responses.$400>
657
- }
658
-
659
- export interface PathsDictionary {
660
- ['/v1/public/cart']: {
661
- /**
662
- * $upsertCart - upsertCart
663
- *
664
- * Creates a new cart or updates an existing one.
665
- */
666
- 'put'(
667
- parameters?: Parameters<Paths.$UpsertCart.HeaderParameters> | null,
668
- data?: Paths.$UpsertCart.RequestBody,
669
- config?: AxiosRequestConfig
670
- ): OperationResponse<Paths.$UpsertCart.Responses.$200 | Paths.$UpsertCart.Responses.$201 | Paths.$UpsertCart.Responses.$400>
671
- }
672
- ['/v1/public/cart:checkout']: {
673
- /**
674
- * $checkoutCart - checkoutCart
675
- *
676
- * Checkouts a cart and executes the specified checkout `mode` process.
677
- *
678
- * A Checkout implicitly finalizes the provided cart (if not transient from a fast-checkout) and behaves in one of the following modes:
679
- * - `create_order` (**default**): the payment happens at a later date or managed by 3rd-party CRM (SAP)
680
- * - `create_invoice`: the payment happens on the online checkout (paypal, stripe, adyen)
681
- * - `create_quote`: the checkout represents a price quote request
682
- *
683
- * Fast checkout is also supported, by passing the Cart contents directly.
684
- * When a fast checkout is performed the cart is considered transient and there is no cart persistance.
685
- *
686
- * If the checkout `mode` is omitted, the `mode` will default to `create_order`.
687
- *
688
- */
689
- 'post'(
690
- parameters?: Parameters<Paths.$CheckoutCart.HeaderParameters> | null,
691
- data?: Paths.$CheckoutCart.RequestBody,
692
- config?: AxiosRequestConfig
693
- ): OperationResponse<Paths.$CheckoutCart.Responses.$200 | Paths.$CheckoutCart.Responses.$400>
694
- }
695
- ['/v1/cart/{cart-id}']: {
696
- /**
697
- * $getCart - getCart
698
- *
699
- * Retrieves a cart by id.
700
- */
701
- 'get'(
702
- parameters?: Parameters<Paths.$GetCart.PathParameters> | null,
703
- data?: any,
704
- config?: AxiosRequestConfig
705
- ): OperationResponse<Paths.$GetCart.Responses.$200 | Paths.$GetCart.Responses.$400>
706
- /**
707
- * $deleteCart - deleteCart
708
- *
709
- * Deletes the Cart specified and returns its content.
710
- */
711
- 'delete'(
712
- parameters?: Parameters<Paths.$DeleteCart.PathParameters> | null,
713
- data?: any,
714
- config?: AxiosRequestConfig
715
- ): OperationResponse<Paths.$DeleteCart.Responses.$200 | Paths.$DeleteCart.Responses.$400>
716
- }
717
- ['/v1/order']: {
718
- /**
719
- * $upsertOrder - upsertOrder
720
- *
721
- * Creates a new order or updates an existing one. During the creation of an order, an unique customer-readable `order_number` will be generated.
722
- * The `order_number` can be used to universally identify an order within epilot platform.
723
- *
724
- * The upsert operation is idempotent, meaning that multiple calls will have effect just once. Calling the upsert multiple times will not duplicate the items on an order.
725
- *
726
- * When the the `cart_id` payload field is specified, the cart items are appended to the existing order items, or replaced in-place if they belong to the same `cart_id`.
727
- *
728
- * On multiple updates with the same `cart_id` the line items linked with that `cart_id` (`order.line_items[]?.metadata.cart_id`) are removed and re-added.
729
- *
730
- */
731
- 'put'(
732
- parameters?: Parameters<UnknownParamsObject> | null,
733
- data?: Paths.$UpsertOrder.RequestBody,
734
- config?: AxiosRequestConfig
735
- ): OperationResponse<Paths.$UpsertOrder.Responses.$200 | Paths.$UpsertOrder.Responses.$201 | Paths.$UpsertOrder.Responses.$400>
736
- }
737
- ['/v1/public/catalog']: {
738
- /**
739
- * $searchCatalog - searchCatalog
740
- *
741
- * Provides a querying functionalities over products and prices of the Catalog for a given organization.
742
- */
743
- 'post'(
744
- parameters?: Parameters<Paths.$SearchCatalog.HeaderParameters> | null,
745
- data?: Paths.$SearchCatalog.RequestBody,
746
- config?: AxiosRequestConfig
747
- ): OperationResponse<Paths.$SearchCatalog.Responses.$200 | Paths.$SearchCatalog.Responses.$400>
748
- }
749
- }
750
-
751
- export type Client = OpenAPIClient<OperationMethods, PathsDictionary>