@epilot/pricing-client 0.1.1 → 0.2.0

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 a in t)e[a]=t[a];t.__esModule&&Object.defineProperty(e,"__esModule",{value:!0})}(exports,(()=>{"use strict";var e={914:function(e,t,a){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var n=i(a(279));t.default=n.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- 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\\n- Shopping Cart API, used to interact with a cart during a customer\'s checkout session, and is 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","contact":{"name":"Maintainers Channel","url":"https://epilot.slack.com/archives/C020B4URQNS"},"version":"1.0.0"},"externalDocs":{"description":"Read the full RFC here","url":"https://e-pilot.atlassian.net/wiki/spaces/~880810188/pages/5459705918/Shopping+Cart+Orders+API"},"tags":[{"name":"Public","description":"Customer-facing Endpoints (requiring a X-Ivy-Org-ID identification)"},{"name":"Cart","description":"The shopping cart management operations"},{"name":"Order","description":"Order management operations"},{"name":"Pricing","description":"Pricing utility 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"],"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/Cart"},"examples":{"Cart with Line Items":{"$ref":"#/components/examples/cartCreationPayload"}}}}},"responses":{"200":{"description":"The updated Cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"},"examples":{"Cart with Totals and Tax Breakdown":{"$ref":"#/components/examples/cart"}}}}},"201":{"description":"The new Cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"},"examples":{"Cart with Totals and Tax Breakdown":{"$ref":"#/components/examples/cart"}}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"examples":{"Modifying a cart marked as complete":{"value":{"message":"The cart is marked as complete and can no longer be modified."}},"Modifying a cart with an invalid price":{"value":{"message":"The cart update failed due to an invalid price provided."}},"Modifying a cart with an invalid product":{"value":{"message":"The cart update failed due to an invalid provided provided."}}}}}}}}},"/v1/public/cart:finalize":{"post":{"description":"Finalizes the cart by changing its status to \'complete\'.\\nThe cart can no longer be modified after this operation.\\n","operationId":"finalizeCart","summary":"finalizeCart","security":[],"tags":["Cart","Public"],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"type":"object","properties":{"cart_id":{"type":"string","description":"The card_id to be finalized."}}}}}},"responses":{"200":{"description":"The customer\'s cart reflecting the new finalized state.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"},"examples":{"Cart with Totals and Tax Breakdown":{"$ref":"#/components/examples/cartComplete"}}}}},"400":{"description":"Invalid payload.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Cart not found."}}}},"/v1/cart/{cart-id}":{"get":{"description":"Retrieves a cart by id.","operationId":"getCart","summary":"getCart","tags":["Cart"],"parameters":[{"in":"path","name":"cart-id","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"},"examples":{"Cart with Totals and Tax Breakdown":{"$ref":"#/components/examples/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"],"parameters":[{"in":"path","name":"cart-id","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"},"examples":{"Content of the deleted Cart":{"$ref":"#/components/examples/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.\\nThe upsert operation is idempotent, meaning that multiple calls will have effect just once.\\nCalling the upsert multiple times will not duplicate the items on an order.\\n\\nWhen the the `cart_id` 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"],"parameters":[{"in":"query","name":"cart_id","description":"The `cart_id` used to explode order items into the order.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"},"examples":{"Sample order creation":{"$ref":"#/components/examples/orderCreationPayload"}}}}},"responses":{"200":{"description":"The updated Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"},"examples":{"Order with Totals and Tax Breakdown":{"$ref":"#/components/examples/order"}}}}},"201":{"description":"The new Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"},"examples":{"Order with Totals and Tax Breakdown":{"$ref":"#/components/examples/order"}}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/public/pricing:calculate":{"post":{"description":"Calculates the pricing amounts for a set of price items, including aggregated totals such as subtotal, total and aggregates per tax rate.\\n","operationId":"calculatePricing","summary":"calculatePricing","tags":["Pricing"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PriceItems"},"examples":{"Price items sample":{"$ref":"#/components/examples/priceItemsPayload"}}}}},"responses":{"200":{"description":"The","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"},"examples":{"Order with Totals and Tax Breakdown":{"$ref":"#/components/examples/order"}}}}},"201":{"description":"The new Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"},"examples":{"Order with Totals and Tax Breakdown":{"$ref":"#/components/examples/order"}}}}},"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"}}}]}},"Cart":{"description":"Supports shopping for products and services until ready for converting to an order.","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":{"readOnly":true,"type":"string","description":"ID of an existing Customer, if one exists. Or the customer data object."},"customer_email":{"type":"string","description":"A valid email identifying the customer."},"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"}}},"Order":{"type":"object","description":"The order entity","properties":{"order_number":{"type":"string","description":"The Order Id Number for the customer"},"customer_email":{"type":"string","description":"A valid email identifying the customer. \\nWhen the `customer` field is filled with an ID, this field is populated/overwritten with that customer\'s email.\\n"},"customer":{"readOnly":true,"type":"string","description":"ID of an existing Customer, if one exists. Or the customer data object."},"type":{"type":"string","enum":["Draft","Open","Paid","Shipped","Delivered","Complete"],"description":"The order status"},"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":"string"},"billing_contact":{"type":"string"},"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"},"_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}}},"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"},"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":{"type":"string","description":"Three-letter ISO currency code, in lowercase. \\nDefaults to the customer currency when the customer or customer_email field is provided, or to EUR as a fallback.\\n"},"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":{"oneOf":[{"type":"string","description":"The id of the product."},{"$ref":"#/components/schemas/Product"}]},"price":{"oneOf":[{"type":"string","description":"The id of the price."},{"$ref":"#/components/schemas/Price"}]},"taxes":{"type":"array","description":"The taxes applied to the price item.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/TaxAmount"}]}}}},"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."}}},"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"}]}}}}}},"Product":{"type":"object","description":"The product configuration","readOnly":true,"properties":{"code":{"type":"string"},"type":{"type":"string","enum":["Product","Service"]},"categories":{"type":"array","items":[{"type":"string"}]},"name":{"type":"string"},"feature":{"type":"array","items":[{"type":"object","properties":{"_tags":{"type":"array","items":[{"type":"string"}]},"feature":{"type":"string"}}}]},"active":{"type":"boolean"},"_id":{"type":"string"},"_files":{"$ref":"#/components/schemas/FileField"},"_images":{"$ref":"#/components/schemas/FileField"},"_created_at":{"type":"string"},"_updated_at":{"type":"string"},"_title":{"type":"string"},"_tags":{"type":"array","items":[{"type":"string"}]}},"example":{"$ref":"#/components/examples/product"}},"Price":{"type":"object","description":"The price configuration","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"]},"unit_amount":{"type":"string"},"_created_at":{"type":"string"},"_id":{"type":"string"},"_title":{"type":"string"},"_updated_at":{"type":"string"}},"example":{"$ref":"#/components/examples/price"}},"FileField":{"description":"The file field","properties":{"type":{"type":"string","enum":["file","image"]},"attachments":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"key":{"type":"string"},"mime":{"type":"string"},"name":{"type":"string"},"size":{"type":"number"},"image_url":{"type":"string"},"download_url":{"type":"string"}}}]}}},"example":{"$ref":"#/components/examples/price"}}},"examples":{"cart":{"description":"Example of a Shopping Cart","value":{"id":"p0ZoB1FwH6","status":"open","org_id":123,"customer":"fe2ce36e-7577-4dff-b33e-1c7da6f91c89","customer_email":"johndoe@epilot.cloud","metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"line_items":[{"id":"mSjGCTfn8w","description":"Wallbox Premium - Premium Price","currency":"EUR","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}],"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"}},"cartComplete":{"description":"Example of a Shopping Cart marked as complete","value":{"id":"p0ZoB1FwH6","status":"complete","org_id":123,"customer":"fe2ce36e-7577-4dff-b33e-1c7da6f91c89","customer_email":"johndoe@epilot.cloud","metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"line_items":[{"id":"mSjGCTfn8w","description":"Wallbox Premium - Premium Price","currency":"EUR","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}],"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"}},"cartCreationPayload":{"description":"Example of a Cart creation payload","value":{"customer_email":"johndoe@epilot.cloud","metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"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"}]}},"orderCreationPayload":{"description":"Example of an Order creation payload","value":{"order_number":"a34234jd","customer_email":"johndoe@epilot.cloud","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","billing_phone":1234234545,"billing_address":"wallstreet, 1","billing_contact":"villy or zilly","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"}]}},"order":{"description":"Example of an Order","value":{"_id":"d1ZoC1FwZ6","type":"open","_org_id":123,"customer":"fe2ce36e-7577-4dff-b33e-1c7da6f91c89","customer_email":"johndoe@epilot.cloud","metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"},{"key":"cart-id-1","value":"p0ZoB1FwH6"}],"billing_first_name":"john","billing_last_name":"doe","billing_company_name":"i me and myself","billing_vat":234823948,"billing_email":"johndoe@nowhere.com","billing_phone":1234234545,"billing_address":"wallstreet, 1","billing_contact":"villy or zilly","line_items":[{"id":"mSjGCTfn8w","cart_id":"p0ZoB1FwH6","description":"Wallbox Premium - Premium Price","currency":"EUR","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","cart_id":"p0ZoB1FwH6","description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}],"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"}},"priceItemsPayload":{"description":"A price items payload example","value":{"items":[{"id":"mSjGCTfn8w","cart_id":"p0ZoB1FwH6","description":"Wallbox Premium - Premium Price","currency":"EUR","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","cart_id":"p0ZoB1FwH6","description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}]}},"product":{"description":"A product example","value":{"name":"Alfen Eve Single S-line Wallbox","code":"904460583","categories":["House Connection"],"type":"Product","active":true,"_id":"b7185fb7-b10f-4875-bda7-288631446555","_created_at":"2021-11-10T18:01:39.681Z","_updated_at":"2021-11-11T10:40:23.430Z","_title":"Alfen Eve Single S-line Wallbox","_tags":["product review demo"],"feature":[{"_tags":[],"feature":"Bis zu 11 kW Ladeleistung (5x schneller laden)"},{"_tags":[],"feature":"Konfigurierbare Ladeleistung"},{"_tags":[],"feature":"Zugangskontrolle über RFID-Karten"}],"_images":{"type":"image","attachments":[{"key":"files/ckvtu0lq5000108me1pdc7y4k/original","mime":"image/jpeg","name":"juice-charger-me_closeup_bottom.jpeg","size":38210,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu0lq5000108me1pdc7y4k/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu0lq5000108me1pdc7y4k/original","alt_text":""},{"key":"files/ckvtu06ny000008me01xl79ot/original","mime":"image/jpeg","name":"eve-single-s-line-socket-front-_1__web_1.jpeg","size":11587,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu06ny000008me01xl79ot/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu06ny000008me01xl79ot/original","alt_text":""}]},"_files":{"type":"file","attachments":[{"key":"files/ckvutl6wp00000al5cx8063nz/original","mime":"application/pdf","name":"Wallbox_Pulsar-Plus_technisches-Datenblatt.pdf","size":171501,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvutl6wp00000al5cx8063nz/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvutl6wp00000al5cx8063nz/original","alt_text":""}]}}},"price":{"description":"A price example","value":{"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","_schema":"price","_id":"8ca293d6-89f5-4b20-98f5-fa68341ef611","_org":"739224","_created_at":"2021-11-10T18:02:58.318Z","_updated_at":"2021-11-10T18:02:58.318Z","_title":"Winter Sale"}},"fileField":{"description":"A File Field example","value":{"type":"image","attachments":[{"key":"files/ckvtu0lq5000108me1pdc7y4k/original","mime":"image/jpeg","name":"juice-charger-me_closeup_bottom.jpeg","size":38210,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu0lq5000108me1pdc7y4k/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu0lq5000108me1pdc7y4k/original","alt_text":""},{"key":"files/ckvtu06ny000008me01xl79ot/original","mime":"image/jpeg","name":"eve-single-s-line-socket-front-_1__web_1.jpeg","size":11587,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu06ny000008me01xl79ot/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu06ny000008me01xl79ot/original","alt_text":""}]}}}}}')}},t={};return function a(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,a),n.exports}(914)})());
1
+ !function(e,t){for(var a in t)e[a]=t[a];t.__esModule&&Object.defineProperty(e,"__esModule",{value:!0})}(exports,(()=>{"use strict";var e={914:function(e,t,a){var i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var n=i(a(279));t.default=n.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- 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\\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","contact":{"name":"Maintainers Channel","url":"https://epilot.slack.com/archives/C020B4URQNS"},"version":"1.0.0"},"externalDocs":{"description":"Read the full RFC here","url":"https://e-pilot.atlassian.net/wiki/spaces/~880810188/pages/5459705918/Shopping+Cart+Orders+API"},"tags":[{"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":"Pricing","description":"Pricing utility 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"],"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/Cart"},"examples":{"Cart with Line Items":{"$ref":"#/components/examples/cartCreationPayload"}}}}},"responses":{"200":{"description":"The updated Cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"},"examples":{"Cart with Totals and Tax Breakdown":{"$ref":"#/components/examples/cart"}}}}},"201":{"description":"The new Cart.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Cart"},"examples":{"Cart with Totals and Tax Breakdown":{"$ref":"#/components/examples/cart"}}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"},"examples":{"Modifying a cart marked as complete":{"value":{"message":"The cart is marked as complete and can no longer be modified."}},"Modifying a cart with an invalid price":{"value":{"message":"The cart update failed due to an invalid price provided."}},"Modifying a cart with an invalid product":{"value":{"message":"The cart update failed due to an invalid provided provided."}}}}}}}}},"/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":{"oneOf":[{"type":"object","properties":{"cart":{"oneOf":[{"description":"the cart id","type":"string"},{"$ref":"#/components/schemas/Cart"}]},"mode":{"$ref":"#/components/schemas/CheckoutMode"}}}]},"examples":{"Checkout with a CartID":{"value":{"mode":"create_order","cart":"pZ324jnndf"}},"Fast Checkout with a transient Cart":{"value":{"mode":"create_order","cart":{"customer_email":"johndoe@epilot.cloud","metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"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"}]}}}}}}},"responses":{"200":{"description":"The checkout result","content":{"application/json":{"schema":{"type":"object","description":"The checkout result","properties":{"order":{"$ref":"#/components/schemas/Order"}}},"examples":{"Checkout with created order":{"value":{"order":{"_id":"d1ZoC1FwZ6","type":"open","order_number":"20201023-1234ndf","_org_id":123,"customer":"fe2ce36e-7577-4dff-b33e-1c7da6f91c89","customer_email":"johndoe@epilot.cloud","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","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","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","metadata":[{"cart_id":"p0ZoB1FwH6"}],"description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}],"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"}}}}}}},"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"],"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"},"examples":{"Cart with Totals and Tax Breakdown":{"$ref":"#/components/examples/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"],"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"},"examples":{"Content of the deleted Cart":{"$ref":"#/components/examples/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"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"},"examples":{"Sample order creation":{"$ref":"#/components/examples/orderCreationPayload"}}}}},"responses":{"200":{"description":"The updated Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"},"examples":{"Order with Totals and Tax Breakdown":{"$ref":"#/components/examples/order"}}}}},"201":{"description":"The new Order.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Order"},"examples":{"Order with Totals and Tax Breakdown":{"$ref":"#/components/examples/order"}}}}},"400":{"description":"Invalid payload","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/public/pricing:calculate":{"post":{"description":"Calculates the pricing amounts for a set of price items, including aggregated totals such as subtotal, total and aggregates per tax rate.\\n","operationId":"calculatePricing","summary":"calculatePricing","tags":["Pricing"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/PriceItems"}]}},"examples":{"Price items sample":{"$ref":"#/components/examples/priceItemsPayload"}}}}},"responses":{"200":{"description":"The","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PriceItemsCalculateResult"},"examples":{"Pricing Items Calculation example":{"$ref":"#/components/examples/priceItemsResult"}}}}},"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"}}}]}},"CheckoutMode":{"type":"string","description":"The checkout mode for the cart checkout.","enum":["create_order","create_invoice","create_quote"]},"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":{"readOnly":true,"type":"string","description":"ID of an existing Customer, if one exists. Or the customer data object."},"customer_email":{"type":"string","description":"A valid email identifying the customer."},"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"}}},"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"},"customer_email":{"type":"string","description":"A valid email identifying the customer. \\nWhen the `customer` field is filled with an ID, this field is populated/overwritten with that customer\'s email.\\n"},"customer":{"readOnly":true,"type":"string","description":"ID of an existing Customer, if one exists. Or the customer data object."},"type":{"type":"string","enum":["Draft","Open","Paid","Shipped","Delivered","Complete"],"description":"The order status"},"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":"string"},"billing_contact":{"type":"string"},"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"},"_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}}},"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"},"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":{"type":"string","description":"Three-letter ISO currency code, in lowercase. \\nDefaults to the customer currency when the customer or customer_email field is provided, or to EUR as a fallback.\\n"},"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":{"oneOf":[{"type":"string","description":"The id of the product."},{"$ref":"#/components/schemas/Product"}]},"price":{"oneOf":[{"type":"string","description":"The id of the price."},{"$ref":"#/components/schemas/Price"}]},"taxes":{"type":"array","description":"The taxes applied to the price item.","readOnly":true,"items":{"oneOf":[{"$ref":"#/components/schemas/TaxAmount"}]}}}},"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."}}},"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"}]}}}}}},"PriceItemsCalculateResult":{"type":"object","description":"The result from the calculation of a set of price items.","properties":{"items":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/PriceItems"}]}},"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"}}},"Product":{"type":"object","description":"The product configuration","readOnly":true,"properties":{"code":{"type":"string"},"type":{"type":"string","enum":["Product","Service"]},"categories":{"type":"array","items":{"type":"string"}},"name":{"type":"string"},"feature":{"type":"array","items":{"type":"object","properties":{"_tags":{"type":"array","items":{"type":"string"}},"feature":{"type":"string"}}}},"active":{"type":"boolean"},"_id":{"type":"string"},"_files":{"$ref":"#/components/schemas/FileField"},"_images":{"$ref":"#/components/schemas/FileField"},"_created_at":{"type":"string"},"_updated_at":{"type":"string"},"_title":{"type":"string"},"_tags":{"type":"array","items":{"type":"string"}}},"example":{"$ref":"#/components/examples/product"}},"Price":{"type":"object","description":"The price configuration","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"]},"unit_amount":{"type":"string"},"_created_at":{"type":"string"},"_id":{"type":"string"},"_title":{"type":"string"},"_updated_at":{"type":"string"}},"example":{"$ref":"#/components/examples/price"}},"FileField":{"description":"The file field","properties":{"type":{"type":"string","enum":["file","image"]},"attachments":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"key":{"type":"string"},"mime":{"type":"string"},"name":{"type":"string"},"size":{"type":"number"},"image_url":{"type":"string"},"download_url":{"type":"string"}}}]}}},"example":{"$ref":"#/components/examples/price"}}},"examples":{"cart":{"description":"Example of a Shopping Cart","value":{"id":"p0ZoB1FwH6","status":"open","org_id":123,"customer":"fe2ce36e-7577-4dff-b33e-1c7da6f91c89","customer_email":"johndoe@epilot.cloud","metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"line_items":[{"id":"mSjGCTfn8w","description":"Wallbox Premium - Premium Price","currency":"EUR","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}],"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"}},"cartComplete":{"description":"Example of a Shopping Cart marked as complete","value":{"id":"p0ZoB1FwH6","status":"complete","org_id":123,"customer":"fe2ce36e-7577-4dff-b33e-1c7da6f91c89","customer_email":"johndoe@epilot.cloud","metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"line_items":[{"id":"mSjGCTfn8w","description":"Wallbox Premium - Premium Price","currency":"EUR","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}],"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"}},"cartCreationPayload":{"description":"Example of a Cart creation payload","value":{"customer_email":"johndoe@epilot.cloud","metadata":[{"key":"journey-id","value":"8d0a2235-97ce-42d0-88a3-e374634ca44e"}],"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"}]}},"orderCreationPayload":{"description":"Example of an Order creation payload","value":{"order_number":"a34234jd","customer_email":"johndoe@epilot.cloud","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","billing_phone":1234234545,"billing_address":"wallstreet, 1","billing_contact":"villy or zilly","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"}]}},"order":{"description":"Example of an Order","value":{"_id":"d1ZoC1FwZ6","type":"open","cart_id":"p0ZoB1FwH6","order_number":"20201021-234324","_org_id":123,"customer":"fe2ce36e-7577-4dff-b33e-1c7da6f91c89","customer_email":"johndoe@epilot.cloud","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","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","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","metadata":[{"cart_id":"p0ZoB1FwH6"}],"description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}],"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"}},"priceItemsPayload":{"description":"A price items payload example","value":[{"id":"mSjGCTfn8w","cart_id":"p0ZoB1FwH6","description":"Wallbox Premium - Premium Price","currency":"EUR","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","cart_id":"p0ZoB1FwH6","description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}]},"priceItemsResult":{"description":"A price items calculation result example","value":{"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%"}]},"items":[{"id":"mSjGCTfn8w","cart_id":"p0ZoB1FwH6","description":"Wallbox Premium - Premium Price","currency":"EUR","amount_subtotal":50000,"amount_total":61500,"quantity":1,"product":{"_id":"b7185fb7-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":11500,"rate":"MwSt. 23%"}]},{"id":"mZkGCTfn6p","cart_id":"p0ZoB1FwH6","description":"Wallbox Basic with Full Add-ons - Basic Price","currency":"EUR","amount_subtotal":50000,"amount_total":53500,"quantity":1,"product":{"_id":"zzzzzz-b10f-4875-bda7-288631446555","name":"Alfen Eve Single S-line Wallbox","code":904460583,"categories":["House Connection"]},"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"},"taxes":[{"amount":3500,"rate":"MwSt. 7%"}]}]}},"product":{"description":"A product example","value":{"name":"Alfen Eve Single S-line Wallbox","code":"904460583","categories":["House Connection"],"type":"Product","active":true,"_id":"b7185fb7-b10f-4875-bda7-288631446555","_created_at":"2021-11-10T18:01:39.681Z","_updated_at":"2021-11-11T10:40:23.430Z","_title":"Alfen Eve Single S-line Wallbox","_tags":["product review demo"],"feature":[{"_tags":[],"feature":"Bis zu 11 kW Ladeleistung (5x schneller laden)"},{"_tags":[],"feature":"Konfigurierbare Ladeleistung"},{"_tags":[],"feature":"Zugangskontrolle über RFID-Karten"}],"_images":{"type":"image","attachments":[{"key":"files/ckvtu0lq5000108me1pdc7y4k/original","mime":"image/jpeg","name":"juice-charger-me_closeup_bottom.jpeg","size":38210,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu0lq5000108me1pdc7y4k/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu0lq5000108me1pdc7y4k/original","alt_text":""},{"key":"files/ckvtu06ny000008me01xl79ot/original","mime":"image/jpeg","name":"eve-single-s-line-socket-front-_1__web_1.jpeg","size":11587,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu06ny000008me01xl79ot/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu06ny000008me01xl79ot/original","alt_text":""}]},"_files":{"type":"file","attachments":[{"key":"files/ckvutl6wp00000al5cx8063nz/original","mime":"application/pdf","name":"Wallbox_Pulsar-Plus_technisches-Datenblatt.pdf","size":171501,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvutl6wp00000al5cx8063nz/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvutl6wp00000al5cx8063nz/original","alt_text":""}]}}},"price":{"description":"A price example","value":{"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","_schema":"price","_id":"8ca293d6-89f5-4b20-98f5-fa68341ef611","_org":"739224","_created_at":"2021-11-10T18:02:58.318Z","_updated_at":"2021-11-10T18:02:58.318Z","_title":"Winter Sale"}},"fileField":{"description":"A File Field example","value":{"type":"image","attachments":[{"key":"files/ckvtu0lq5000108me1pdc7y4k/original","mime":"image/jpeg","name":"juice-charger-me_closeup_bottom.jpeg","size":38210,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu0lq5000108me1pdc7y4k/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu0lq5000108me1pdc7y4k/original","alt_text":""},{"key":"files/ckvtu06ny000008me01xl79ot/original","mime":"image/jpeg","name":"eve-single-s-line-socket-front-_1__web_1.jpeg","size":11587,"image_url":"https://avkhavsdjq.cloudimg.io/v7/e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu06ny000008me01xl79ot/original?w=100","download_url":"https://e-mage-sam-bucket-dev.s3.eu-central-1.amazonaws.com/files/ckvtu06ny000008me01xl79ot/original","alt_text":""}]}}}}}')}},t={};return function a(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,a),n.exports}(914)})());
package/dist/openapi.d.ts CHANGED
@@ -10,7 +10,7 @@ import {
10
10
  declare namespace Components {
11
11
  namespace Schemas {
12
12
  /**
13
- * Supports shopping for products and services until ready for converting to an order.
13
+ * Supports shopping for products and services until ready for checkout.
14
14
  */
15
15
  export interface Cart {
16
16
  /**
@@ -51,6 +51,10 @@ declare namespace Components {
51
51
  readonly created_at?: string; // date-time
52
52
  readonly updated_at?: string; // date-time
53
53
  }
54
+ /**
55
+ * The checkout mode for the cart checkout.
56
+ */
57
+ export type CheckoutMode = "create_order" | "create_invoice" | "create_quote";
54
58
  export interface Error {
55
59
  /**
56
60
  * Error message
@@ -96,6 +100,10 @@ declare namespace Components {
96
100
  * The Order Id Number for the customer
97
101
  */
98
102
  order_number?: string;
103
+ /**
104
+ * The Cart Id that originated or is associated with the order
105
+ */
106
+ cart_id?: string;
99
107
  /**
100
108
  * A valid email identifying the customer.
101
109
  * When the `customer` field is filled with an ID, this field is populated/overwritten with that customer's email.
@@ -200,6 +208,21 @@ declare namespace Components {
200
208
  * Tracks a set of product prices, quantities, (discounts) and taxes.
201
209
  */
202
210
  export type PriceItems = (PriceItem)[];
211
+ /**
212
+ * The result from the calculation of a set of price items.
213
+ */
214
+ export interface PriceItemsCalculateResult {
215
+ items?: (PriceItems)[];
216
+ /**
217
+ * Total of all items before (discounts or) taxes are applied.
218
+ */
219
+ amount_subtotal?: number;
220
+ /**
221
+ * Total of all items after (discounts and) taxes are applied.
222
+ */
223
+ amount_total?: number;
224
+ total_details?: TotalDetails;
225
+ }
203
226
  /**
204
227
  * The product configuration
205
228
  * example:
@@ -210,12 +233,12 @@ declare namespace Components {
210
233
  export interface Product {
211
234
  code?: string;
212
235
  type?: "Product" | "Service";
213
- categories?: [string?, ...any[]];
236
+ categories?: string[];
214
237
  name?: string;
215
- feature?: [{
216
- _tags?: [string?, ...any[]];
238
+ feature?: {
239
+ _tags?: string[];
217
240
  feature?: string;
218
- }?, ...any[]];
241
+ }[];
219
242
  active?: boolean;
220
243
  _id?: string;
221
244
  _files?: FileField;
@@ -223,7 +246,7 @@ declare namespace Components {
223
246
  _created_at?: string;
224
247
  _updated_at?: string;
225
248
  _title?: string;
226
- _tags?: [string?, ...any[]];
249
+ _tags?: string[];
227
250
  }
228
251
  /**
229
252
  * A tax amount associated with a specific tax rate.
@@ -264,25 +287,39 @@ declare namespace Components {
264
287
  }
265
288
  declare namespace Paths {
266
289
  namespace CalculatePricing {
267
- export type RequestBody = Components.Schemas.PriceItems;
290
+ export type RequestBody = (Components.Schemas.PriceItems)[];
268
291
  namespace Responses {
269
- export type $200 = Components.Schemas.Order;
270
- export type $201 = Components.Schemas.Order;
292
+ export type $200 = Components.Schemas.PriceItemsCalculateResult;
271
293
  export type $400 = Components.Schemas.Error;
272
294
  }
273
295
  }
274
- namespace DeleteCart {
296
+ namespace CheckoutCart {
297
+ export interface HeaderParameters {
298
+ "X-Ivy-Org-ID": Parameters.XIvyOrgID;
299
+ }
300
+ namespace Parameters {
301
+ export type XIvyOrgID = string;
302
+ }
303
+ export type RequestBody = {
304
+ cart?: string | Components.Schemas.Cart;
305
+ mode?: Components.Schemas.CheckoutMode;
306
+ };
275
307
  namespace Responses {
276
- export type $200 = Components.Schemas.Cart;
308
+ /**
309
+ * The checkout result
310
+ */
311
+ export interface $200 {
312
+ order?: Components.Schemas.Order;
313
+ }
277
314
  export type $400 = Components.Schemas.Error;
278
315
  }
279
316
  }
280
- namespace FinalizeCart {
281
- export interface RequestBody {
282
- /**
283
- * The card_id to be finalized.
284
- */
285
- cart_id?: string;
317
+ namespace DeleteCart {
318
+ namespace Parameters {
319
+ export type CartId = string;
320
+ }
321
+ export interface PathParameters {
322
+ "cart-id": Parameters.CartId;
286
323
  }
287
324
  namespace Responses {
288
325
  export type $200 = Components.Schemas.Cart;
@@ -290,6 +327,12 @@ declare namespace Paths {
290
327
  }
291
328
  }
292
329
  namespace GetCart {
330
+ namespace Parameters {
331
+ export type CartId = string;
332
+ }
333
+ export interface PathParameters {
334
+ "cart-id": Parameters.CartId;
335
+ }
293
336
  namespace Responses {
294
337
  export type $200 = Components.Schemas.Cart;
295
338
  export type $400 = Components.Schemas.Error;
@@ -310,12 +353,6 @@ declare namespace Paths {
310
353
  }
311
354
  }
312
355
  namespace UpsertOrder {
313
- namespace Parameters {
314
- export type CartId = string;
315
- }
316
- export interface QueryParameters {
317
- cart_id?: Parameters.CartId;
318
- }
319
356
  export type RequestBody = Components.Schemas.Order;
320
357
  namespace Responses {
321
358
  export type $200 = Components.Schemas.Order;
@@ -337,24 +374,33 @@ export interface OperationMethods {
337
374
  config?: AxiosRequestConfig
338
375
  ): OperationResponse<Paths.UpsertCart.Responses.$200 | Paths.UpsertCart.Responses.$201 | Paths.UpsertCart.Responses.$400>
339
376
  /**
340
- * finalizeCart - finalizeCart
377
+ * checkoutCart - checkoutCart
378
+ *
379
+ * Checkouts a cart and executes the specified checkout `mode` process.
380
+ *
381
+ * A Checkout implicitly finalizes the provided cart (if not transient from a fast-checkout) and behaves in one of the following modes:
382
+ * - `create_order` (**default**): the payment happens at a later date or managed by 3rd-party CRM (SAP)
383
+ * - `create_invoice`: the payment happens on the online checkout (paypal, stripe, adyen)
384
+ * - `create_quote`: the checkout represents a price quote request
341
385
  *
342
- * Finalizes the cart by changing its status to 'complete'.
343
- * The cart can no longer be modified after this operation.
386
+ * Fast checkout is also supported, by passing the Cart contents directly.
387
+ * When a fast checkout is performed the cart is considered transient and there is no cart persistance.
388
+ *
389
+ * If the checkout `mode` is omitted, the `mode` will default to `create_order`.
344
390
  *
345
391
  */
346
- 'finalizeCart'(
347
- parameters?: Parameters<UnknownParamsObject> | null,
348
- data?: Paths.FinalizeCart.RequestBody,
392
+ 'checkoutCart'(
393
+ parameters?: Parameters<Paths.CheckoutCart.HeaderParameters> | null,
394
+ data?: Paths.CheckoutCart.RequestBody,
349
395
  config?: AxiosRequestConfig
350
- ): OperationResponse<Paths.FinalizeCart.Responses.$200 | Paths.FinalizeCart.Responses.$400>
396
+ ): OperationResponse<Paths.CheckoutCart.Responses.$200 | Paths.CheckoutCart.Responses.$400>
351
397
  /**
352
398
  * getCart - getCart
353
399
  *
354
400
  * Retrieves a cart by id.
355
401
  */
356
402
  'getCart'(
357
- parameters?: Parameters<UnknownParamsObject> | null,
403
+ parameters?: Parameters<Paths.GetCart.PathParameters> | null,
358
404
  data?: any,
359
405
  config?: AxiosRequestConfig
360
406
  ): OperationResponse<Paths.GetCart.Responses.$200 | Paths.GetCart.Responses.$400>
@@ -364,24 +410,25 @@ export interface OperationMethods {
364
410
  * Deletes the Cart specified and returns its content.
365
411
  */
366
412
  'deleteCart'(
367
- parameters?: Parameters<UnknownParamsObject> | null,
413
+ parameters?: Parameters<Paths.DeleteCart.PathParameters> | null,
368
414
  data?: any,
369
415
  config?: AxiosRequestConfig
370
416
  ): OperationResponse<Paths.DeleteCart.Responses.$200 | Paths.DeleteCart.Responses.$400>
371
417
  /**
372
418
  * upsertOrder - upsertOrder
373
419
  *
374
- * Creates a new order or updates an existing one.
375
- * The upsert operation is idempotent, meaning that multiple calls will have effect just once.
376
- * Calling the upsert multiple times will not duplicate the items on an order.
420
+ * Creates a new order or updates an existing one. During the creation of an order, an unique customer-readable `order_number` will be generated.
421
+ * The `order_number` can be used to universally identify an order within epilot platform.
377
422
  *
378
- * When the the `cart_id` is specified, the cart items are appended to the existing order items, or replaced in-place if they belong to the same `cart_id`.
423
+ * 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.
424
+ *
425
+ * 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`.
379
426
  *
380
427
  * 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.
381
428
  *
382
429
  */
383
430
  'upsertOrder'(
384
- parameters?: Parameters<Paths.UpsertOrder.QueryParameters> | null,
431
+ parameters?: Parameters<UnknownParamsObject> | null,
385
432
  data?: Paths.UpsertOrder.RequestBody,
386
433
  config?: AxiosRequestConfig
387
434
  ): OperationResponse<Paths.UpsertOrder.Responses.$200 | Paths.UpsertOrder.Responses.$201 | Paths.UpsertOrder.Responses.$400>
@@ -395,7 +442,7 @@ export interface OperationMethods {
395
442
  parameters?: Parameters<UnknownParamsObject> | null,
396
443
  data?: Paths.CalculatePricing.RequestBody,
397
444
  config?: AxiosRequestConfig
398
- ): OperationResponse<Paths.CalculatePricing.Responses.$200 | Paths.CalculatePricing.Responses.$201 | Paths.CalculatePricing.Responses.$400>
445
+ ): OperationResponse<Paths.CalculatePricing.Responses.$200 | Paths.CalculatePricing.Responses.$400>
399
446
  }
400
447
 
401
448
  export interface PathsDictionary {
@@ -411,19 +458,28 @@ export interface PathsDictionary {
411
458
  config?: AxiosRequestConfig
412
459
  ): OperationResponse<Paths.UpsertCart.Responses.$200 | Paths.UpsertCart.Responses.$201 | Paths.UpsertCart.Responses.$400>
413
460
  }
414
- ['/v1/public/cart:finalize']: {
461
+ ['/v1/public/cart:checkout']: {
415
462
  /**
416
- * finalizeCart - finalizeCart
463
+ * checkoutCart - checkoutCart
464
+ *
465
+ * Checkouts a cart and executes the specified checkout `mode` process.
417
466
  *
418
- * Finalizes the cart by changing its status to 'complete'.
419
- * The cart can no longer be modified after this operation.
467
+ * A Checkout implicitly finalizes the provided cart (if not transient from a fast-checkout) and behaves in one of the following modes:
468
+ * - `create_order` (**default**): the payment happens at a later date or managed by 3rd-party CRM (SAP)
469
+ * - `create_invoice`: the payment happens on the online checkout (paypal, stripe, adyen)
470
+ * - `create_quote`: the checkout represents a price quote request
471
+ *
472
+ * Fast checkout is also supported, by passing the Cart contents directly.
473
+ * When a fast checkout is performed the cart is considered transient and there is no cart persistance.
474
+ *
475
+ * If the checkout `mode` is omitted, the `mode` will default to `create_order`.
420
476
  *
421
477
  */
422
478
  'post'(
423
- parameters?: Parameters<UnknownParamsObject> | null,
424
- data?: Paths.FinalizeCart.RequestBody,
479
+ parameters?: Parameters<Paths.CheckoutCart.HeaderParameters> | null,
480
+ data?: Paths.CheckoutCart.RequestBody,
425
481
  config?: AxiosRequestConfig
426
- ): OperationResponse<Paths.FinalizeCart.Responses.$200 | Paths.FinalizeCart.Responses.$400>
482
+ ): OperationResponse<Paths.CheckoutCart.Responses.$200 | Paths.CheckoutCart.Responses.$400>
427
483
  }
428
484
  ['/v1/cart/{cart-id}']: {
429
485
  /**
@@ -432,7 +488,7 @@ export interface PathsDictionary {
432
488
  * Retrieves a cart by id.
433
489
  */
434
490
  'get'(
435
- parameters?: Parameters<UnknownParamsObject> | null,
491
+ parameters?: Parameters<Paths.GetCart.PathParameters> | null,
436
492
  data?: any,
437
493
  config?: AxiosRequestConfig
438
494
  ): OperationResponse<Paths.GetCart.Responses.$200 | Paths.GetCart.Responses.$400>
@@ -442,7 +498,7 @@ export interface PathsDictionary {
442
498
  * Deletes the Cart specified and returns its content.
443
499
  */
444
500
  'delete'(
445
- parameters?: Parameters<UnknownParamsObject> | null,
501
+ parameters?: Parameters<Paths.DeleteCart.PathParameters> | null,
446
502
  data?: any,
447
503
  config?: AxiosRequestConfig
448
504
  ): OperationResponse<Paths.DeleteCart.Responses.$200 | Paths.DeleteCart.Responses.$400>
@@ -451,17 +507,18 @@ export interface PathsDictionary {
451
507
  /**
452
508
  * upsertOrder - upsertOrder
453
509
  *
454
- * Creates a new order or updates an existing one.
455
- * The upsert operation is idempotent, meaning that multiple calls will have effect just once.
456
- * Calling the upsert multiple times will not duplicate the items on an order.
510
+ * Creates a new order or updates an existing one. During the creation of an order, an unique customer-readable `order_number` will be generated.
511
+ * The `order_number` can be used to universally identify an order within epilot platform.
512
+ *
513
+ * 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.
457
514
  *
458
- * When the the `cart_id` is specified, the cart items are appended to the existing order items, or replaced in-place if they belong to the same `cart_id`.
515
+ * 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`.
459
516
  *
460
517
  * 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.
461
518
  *
462
519
  */
463
520
  'put'(
464
- parameters?: Parameters<Paths.UpsertOrder.QueryParameters> | null,
521
+ parameters?: Parameters<UnknownParamsObject> | null,
465
522
  data?: Paths.UpsertOrder.RequestBody,
466
523
  config?: AxiosRequestConfig
467
524
  ): OperationResponse<Paths.UpsertOrder.Responses.$200 | Paths.UpsertOrder.Responses.$201 | Paths.UpsertOrder.Responses.$400>
@@ -477,7 +534,7 @@ export interface PathsDictionary {
477
534
  parameters?: Parameters<UnknownParamsObject> | null,
478
535
  data?: Paths.CalculatePricing.RequestBody,
479
536
  config?: AxiosRequestConfig
480
- ): OperationResponse<Paths.CalculatePricing.Responses.$200 | Paths.CalculatePricing.Responses.$201 | Paths.CalculatePricing.Responses.$400>
537
+ ): OperationResponse<Paths.CalculatePricing.Responses.$200 | Paths.CalculatePricing.Responses.$400>
481
538
  }
482
539
  }
483
540
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/pricing-client",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
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 CHANGED
@@ -10,7 +10,7 @@ import {
10
10
  declare namespace Components {
11
11
  namespace Schemas {
12
12
  /**
13
- * Supports shopping for products and services until ready for converting to an order.
13
+ * Supports shopping for products and services until ready for checkout.
14
14
  */
15
15
  export interface Cart {
16
16
  /**
@@ -51,6 +51,10 @@ declare namespace Components {
51
51
  readonly created_at?: string; // date-time
52
52
  readonly updated_at?: string; // date-time
53
53
  }
54
+ /**
55
+ * The checkout mode for the cart checkout.
56
+ */
57
+ export type CheckoutMode = "create_order" | "create_invoice" | "create_quote";
54
58
  export interface Error {
55
59
  /**
56
60
  * Error message
@@ -96,6 +100,10 @@ declare namespace Components {
96
100
  * The Order Id Number for the customer
97
101
  */
98
102
  order_number?: string;
103
+ /**
104
+ * The Cart Id that originated or is associated with the order
105
+ */
106
+ cart_id?: string;
99
107
  /**
100
108
  * A valid email identifying the customer.
101
109
  * When the `customer` field is filled with an ID, this field is populated/overwritten with that customer's email.
@@ -200,6 +208,21 @@ declare namespace Components {
200
208
  * Tracks a set of product prices, quantities, (discounts) and taxes.
201
209
  */
202
210
  export type PriceItems = (PriceItem)[];
211
+ /**
212
+ * The result from the calculation of a set of price items.
213
+ */
214
+ export interface PriceItemsCalculateResult {
215
+ items?: (PriceItems)[];
216
+ /**
217
+ * Total of all items before (discounts or) taxes are applied.
218
+ */
219
+ amount_subtotal?: number;
220
+ /**
221
+ * Total of all items after (discounts and) taxes are applied.
222
+ */
223
+ amount_total?: number;
224
+ total_details?: TotalDetails;
225
+ }
203
226
  /**
204
227
  * The product configuration
205
228
  * example:
@@ -210,12 +233,12 @@ declare namespace Components {
210
233
  export interface Product {
211
234
  code?: string;
212
235
  type?: "Product" | "Service";
213
- categories?: [string?, ...any[]];
236
+ categories?: string[];
214
237
  name?: string;
215
- feature?: [{
216
- _tags?: [string?, ...any[]];
238
+ feature?: {
239
+ _tags?: string[];
217
240
  feature?: string;
218
- }?, ...any[]];
241
+ }[];
219
242
  active?: boolean;
220
243
  _id?: string;
221
244
  _files?: FileField;
@@ -223,7 +246,7 @@ declare namespace Components {
223
246
  _created_at?: string;
224
247
  _updated_at?: string;
225
248
  _title?: string;
226
- _tags?: [string?, ...any[]];
249
+ _tags?: string[];
227
250
  }
228
251
  /**
229
252
  * A tax amount associated with a specific tax rate.
@@ -264,25 +287,39 @@ declare namespace Components {
264
287
  }
265
288
  declare namespace Paths {
266
289
  namespace CalculatePricing {
267
- export type RequestBody = Components.Schemas.PriceItems;
290
+ export type RequestBody = (Components.Schemas.PriceItems)[];
268
291
  namespace Responses {
269
- export type $200 = Components.Schemas.Order;
270
- export type $201 = Components.Schemas.Order;
292
+ export type $200 = Components.Schemas.PriceItemsCalculateResult;
271
293
  export type $400 = Components.Schemas.Error;
272
294
  }
273
295
  }
274
- namespace DeleteCart {
296
+ namespace CheckoutCart {
297
+ export interface HeaderParameters {
298
+ "X-Ivy-Org-ID": Parameters.XIvyOrgID;
299
+ }
300
+ namespace Parameters {
301
+ export type XIvyOrgID = string;
302
+ }
303
+ export type RequestBody = {
304
+ cart?: string | Components.Schemas.Cart;
305
+ mode?: Components.Schemas.CheckoutMode;
306
+ };
275
307
  namespace Responses {
276
- export type $200 = Components.Schemas.Cart;
308
+ /**
309
+ * The checkout result
310
+ */
311
+ export interface $200 {
312
+ order?: Components.Schemas.Order;
313
+ }
277
314
  export type $400 = Components.Schemas.Error;
278
315
  }
279
316
  }
280
- namespace FinalizeCart {
281
- export interface RequestBody {
282
- /**
283
- * The card_id to be finalized.
284
- */
285
- cart_id?: string;
317
+ namespace DeleteCart {
318
+ namespace Parameters {
319
+ export type CartId = string;
320
+ }
321
+ export interface PathParameters {
322
+ "cart-id": Parameters.CartId;
286
323
  }
287
324
  namespace Responses {
288
325
  export type $200 = Components.Schemas.Cart;
@@ -290,6 +327,12 @@ declare namespace Paths {
290
327
  }
291
328
  }
292
329
  namespace GetCart {
330
+ namespace Parameters {
331
+ export type CartId = string;
332
+ }
333
+ export interface PathParameters {
334
+ "cart-id": Parameters.CartId;
335
+ }
293
336
  namespace Responses {
294
337
  export type $200 = Components.Schemas.Cart;
295
338
  export type $400 = Components.Schemas.Error;
@@ -310,12 +353,6 @@ declare namespace Paths {
310
353
  }
311
354
  }
312
355
  namespace UpsertOrder {
313
- namespace Parameters {
314
- export type CartId = string;
315
- }
316
- export interface QueryParameters {
317
- cart_id?: Parameters.CartId;
318
- }
319
356
  export type RequestBody = Components.Schemas.Order;
320
357
  namespace Responses {
321
358
  export type $200 = Components.Schemas.Order;
@@ -337,24 +374,33 @@ export interface OperationMethods {
337
374
  config?: AxiosRequestConfig
338
375
  ): OperationResponse<Paths.UpsertCart.Responses.$200 | Paths.UpsertCart.Responses.$201 | Paths.UpsertCart.Responses.$400>
339
376
  /**
340
- * finalizeCart - finalizeCart
377
+ * checkoutCart - checkoutCart
378
+ *
379
+ * Checkouts a cart and executes the specified checkout `mode` process.
380
+ *
381
+ * A Checkout implicitly finalizes the provided cart (if not transient from a fast-checkout) and behaves in one of the following modes:
382
+ * - `create_order` (**default**): the payment happens at a later date or managed by 3rd-party CRM (SAP)
383
+ * - `create_invoice`: the payment happens on the online checkout (paypal, stripe, adyen)
384
+ * - `create_quote`: the checkout represents a price quote request
341
385
  *
342
- * Finalizes the cart by changing its status to 'complete'.
343
- * The cart can no longer be modified after this operation.
386
+ * Fast checkout is also supported, by passing the Cart contents directly.
387
+ * When a fast checkout is performed the cart is considered transient and there is no cart persistance.
388
+ *
389
+ * If the checkout `mode` is omitted, the `mode` will default to `create_order`.
344
390
  *
345
391
  */
346
- 'finalizeCart'(
347
- parameters?: Parameters<UnknownParamsObject> | null,
348
- data?: Paths.FinalizeCart.RequestBody,
392
+ 'checkoutCart'(
393
+ parameters?: Parameters<Paths.CheckoutCart.HeaderParameters> | null,
394
+ data?: Paths.CheckoutCart.RequestBody,
349
395
  config?: AxiosRequestConfig
350
- ): OperationResponse<Paths.FinalizeCart.Responses.$200 | Paths.FinalizeCart.Responses.$400>
396
+ ): OperationResponse<Paths.CheckoutCart.Responses.$200 | Paths.CheckoutCart.Responses.$400>
351
397
  /**
352
398
  * getCart - getCart
353
399
  *
354
400
  * Retrieves a cart by id.
355
401
  */
356
402
  'getCart'(
357
- parameters?: Parameters<UnknownParamsObject> | null,
403
+ parameters?: Parameters<Paths.GetCart.PathParameters> | null,
358
404
  data?: any,
359
405
  config?: AxiosRequestConfig
360
406
  ): OperationResponse<Paths.GetCart.Responses.$200 | Paths.GetCart.Responses.$400>
@@ -364,24 +410,25 @@ export interface OperationMethods {
364
410
  * Deletes the Cart specified and returns its content.
365
411
  */
366
412
  'deleteCart'(
367
- parameters?: Parameters<UnknownParamsObject> | null,
413
+ parameters?: Parameters<Paths.DeleteCart.PathParameters> | null,
368
414
  data?: any,
369
415
  config?: AxiosRequestConfig
370
416
  ): OperationResponse<Paths.DeleteCart.Responses.$200 | Paths.DeleteCart.Responses.$400>
371
417
  /**
372
418
  * upsertOrder - upsertOrder
373
419
  *
374
- * Creates a new order or updates an existing one.
375
- * The upsert operation is idempotent, meaning that multiple calls will have effect just once.
376
- * Calling the upsert multiple times will not duplicate the items on an order.
420
+ * Creates a new order or updates an existing one. During the creation of an order, an unique customer-readable `order_number` will be generated.
421
+ * The `order_number` can be used to universally identify an order within epilot platform.
377
422
  *
378
- * When the the `cart_id` is specified, the cart items are appended to the existing order items, or replaced in-place if they belong to the same `cart_id`.
423
+ * 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.
424
+ *
425
+ * 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`.
379
426
  *
380
427
  * 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.
381
428
  *
382
429
  */
383
430
  'upsertOrder'(
384
- parameters?: Parameters<Paths.UpsertOrder.QueryParameters> | null,
431
+ parameters?: Parameters<UnknownParamsObject> | null,
385
432
  data?: Paths.UpsertOrder.RequestBody,
386
433
  config?: AxiosRequestConfig
387
434
  ): OperationResponse<Paths.UpsertOrder.Responses.$200 | Paths.UpsertOrder.Responses.$201 | Paths.UpsertOrder.Responses.$400>
@@ -395,7 +442,7 @@ export interface OperationMethods {
395
442
  parameters?: Parameters<UnknownParamsObject> | null,
396
443
  data?: Paths.CalculatePricing.RequestBody,
397
444
  config?: AxiosRequestConfig
398
- ): OperationResponse<Paths.CalculatePricing.Responses.$200 | Paths.CalculatePricing.Responses.$201 | Paths.CalculatePricing.Responses.$400>
445
+ ): OperationResponse<Paths.CalculatePricing.Responses.$200 | Paths.CalculatePricing.Responses.$400>
399
446
  }
400
447
 
401
448
  export interface PathsDictionary {
@@ -411,19 +458,28 @@ export interface PathsDictionary {
411
458
  config?: AxiosRequestConfig
412
459
  ): OperationResponse<Paths.UpsertCart.Responses.$200 | Paths.UpsertCart.Responses.$201 | Paths.UpsertCart.Responses.$400>
413
460
  }
414
- ['/v1/public/cart:finalize']: {
461
+ ['/v1/public/cart:checkout']: {
415
462
  /**
416
- * finalizeCart - finalizeCart
463
+ * checkoutCart - checkoutCart
464
+ *
465
+ * Checkouts a cart and executes the specified checkout `mode` process.
417
466
  *
418
- * Finalizes the cart by changing its status to 'complete'.
419
- * The cart can no longer be modified after this operation.
467
+ * A Checkout implicitly finalizes the provided cart (if not transient from a fast-checkout) and behaves in one of the following modes:
468
+ * - `create_order` (**default**): the payment happens at a later date or managed by 3rd-party CRM (SAP)
469
+ * - `create_invoice`: the payment happens on the online checkout (paypal, stripe, adyen)
470
+ * - `create_quote`: the checkout represents a price quote request
471
+ *
472
+ * Fast checkout is also supported, by passing the Cart contents directly.
473
+ * When a fast checkout is performed the cart is considered transient and there is no cart persistance.
474
+ *
475
+ * If the checkout `mode` is omitted, the `mode` will default to `create_order`.
420
476
  *
421
477
  */
422
478
  'post'(
423
- parameters?: Parameters<UnknownParamsObject> | null,
424
- data?: Paths.FinalizeCart.RequestBody,
479
+ parameters?: Parameters<Paths.CheckoutCart.HeaderParameters> | null,
480
+ data?: Paths.CheckoutCart.RequestBody,
425
481
  config?: AxiosRequestConfig
426
- ): OperationResponse<Paths.FinalizeCart.Responses.$200 | Paths.FinalizeCart.Responses.$400>
482
+ ): OperationResponse<Paths.CheckoutCart.Responses.$200 | Paths.CheckoutCart.Responses.$400>
427
483
  }
428
484
  ['/v1/cart/{cart-id}']: {
429
485
  /**
@@ -432,7 +488,7 @@ export interface PathsDictionary {
432
488
  * Retrieves a cart by id.
433
489
  */
434
490
  'get'(
435
- parameters?: Parameters<UnknownParamsObject> | null,
491
+ parameters?: Parameters<Paths.GetCart.PathParameters> | null,
436
492
  data?: any,
437
493
  config?: AxiosRequestConfig
438
494
  ): OperationResponse<Paths.GetCart.Responses.$200 | Paths.GetCart.Responses.$400>
@@ -442,7 +498,7 @@ export interface PathsDictionary {
442
498
  * Deletes the Cart specified and returns its content.
443
499
  */
444
500
  'delete'(
445
- parameters?: Parameters<UnknownParamsObject> | null,
501
+ parameters?: Parameters<Paths.DeleteCart.PathParameters> | null,
446
502
  data?: any,
447
503
  config?: AxiosRequestConfig
448
504
  ): OperationResponse<Paths.DeleteCart.Responses.$200 | Paths.DeleteCart.Responses.$400>
@@ -451,17 +507,18 @@ export interface PathsDictionary {
451
507
  /**
452
508
  * upsertOrder - upsertOrder
453
509
  *
454
- * Creates a new order or updates an existing one.
455
- * The upsert operation is idempotent, meaning that multiple calls will have effect just once.
456
- * Calling the upsert multiple times will not duplicate the items on an order.
510
+ * Creates a new order or updates an existing one. During the creation of an order, an unique customer-readable `order_number` will be generated.
511
+ * The `order_number` can be used to universally identify an order within epilot platform.
512
+ *
513
+ * 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.
457
514
  *
458
- * When the the `cart_id` is specified, the cart items are appended to the existing order items, or replaced in-place if they belong to the same `cart_id`.
515
+ * 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`.
459
516
  *
460
517
  * 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.
461
518
  *
462
519
  */
463
520
  'put'(
464
- parameters?: Parameters<Paths.UpsertOrder.QueryParameters> | null,
521
+ parameters?: Parameters<UnknownParamsObject> | null,
465
522
  data?: Paths.UpsertOrder.RequestBody,
466
523
  config?: AxiosRequestConfig
467
524
  ): OperationResponse<Paths.UpsertOrder.Responses.$200 | Paths.UpsertOrder.Responses.$201 | Paths.UpsertOrder.Responses.$400>
@@ -477,7 +534,7 @@ export interface PathsDictionary {
477
534
  parameters?: Parameters<UnknownParamsObject> | null,
478
535
  data?: Paths.CalculatePricing.RequestBody,
479
536
  config?: AxiosRequestConfig
480
- ): OperationResponse<Paths.CalculatePricing.Responses.$200 | Paths.CalculatePricing.Responses.$201 | Paths.CalculatePricing.Responses.$400>
537
+ ): OperationResponse<Paths.CalculatePricing.Responses.$200 | Paths.CalculatePricing.Responses.$400>
481
538
  }
482
539
  }
483
540