@epilot/pricing-client 2.1.2 → 2.1.5

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.
package/dist/openapi.d.ts CHANGED
@@ -157,6 +157,223 @@ declare namespace Components {
157
157
  };
158
158
  }[];
159
159
  }
160
+ /**
161
+ * Represents a price item
162
+ * example:
163
+ * {
164
+ * "$ref": "#/components/examples/price-item"
165
+ * }
166
+ */
167
+ export interface BasePriceItem {
168
+ /**
169
+ * price item id
170
+ */
171
+ id?: string;
172
+ metadata?: /* A set of key-value pairs used to store meta data information about an entity. */ MetaData;
173
+ /**
174
+ * The unit amount value
175
+ */
176
+ unit_amount?: number;
177
+ /**
178
+ * Total before any (discounts or) taxes are applied.
179
+ */
180
+ amount_subtotal?: number;
181
+ /**
182
+ * Net unit amount without taxes or discounts.
183
+ */
184
+ unit_amount_net?: number;
185
+ /**
186
+ * The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places.
187
+ */
188
+ unit_amount_decimal?: string;
189
+ /**
190
+ * Total after (discounts and) taxes.
191
+ */
192
+ amount_total?: number;
193
+ currency?: /**
194
+ * Three-letter ISO currency code, in lowercase. Must be a supported currency.
195
+ * ISO 4217 CURRENCY CODES as specified in the documentation: https://www.iso.org/iso-4217-currency-codes.html
196
+ *
197
+ * example:
198
+ * EUR
199
+ */
200
+ Currency;
201
+ /**
202
+ * An arbitrary string attached to the price item. Often useful for displaying to users. Defaults to product name.
203
+ */
204
+ description?: string;
205
+ /**
206
+ * The quantity of products being purchased.
207
+ */
208
+ quantity?: number;
209
+ /**
210
+ * The id of the product.
211
+ */
212
+ product_id?: string;
213
+ /**
214
+ * The id of the price.
215
+ */
216
+ price_id?: string;
217
+ /**
218
+ * The flag for prices that contain price components.
219
+ */
220
+ is_composite_price?: boolean;
221
+ /**
222
+ * The price snapshot data.
223
+ */
224
+ _price?: /* The price snapshot data. */ /**
225
+ * The price entity schema for simple pricing
226
+ * example:
227
+ * {
228
+ * "$ref": "#/components/examples/price"
229
+ * }
230
+ */
231
+ Price | /**
232
+ * The price entity schema for dynamic pricing
233
+ * example:
234
+ * {
235
+ * "$ref": "#/components/examples/composite-price"
236
+ * }
237
+ */
238
+ CompositePrice;
239
+ _product?: /**
240
+ * The product entity
241
+ * example:
242
+ * {
243
+ * "$ref": "#/components/examples/product"
244
+ * }
245
+ */
246
+ Product;
247
+ /**
248
+ * The taxes applied to the price item.
249
+ */
250
+ taxes?: (/* A tax amount associated with a specific tax rate. */ TaxAmount)[];
251
+ /**
252
+ * The sum of amounts of the price items by recurrence.
253
+ */
254
+ recurrences?: (/* An amount associated with a specific recurrence. */ RecurrenceAmount)[];
255
+ }
256
+ /**
257
+ * Represents a valid base price item from a client.
258
+ */
259
+ export interface BasePriceItemDto {
260
+ metadata?: /* A set of key-value pairs used to store meta data information about an entity. */ MetaData;
261
+ /**
262
+ * The quantity of products being purchased.
263
+ */
264
+ quantity?: number;
265
+ /**
266
+ * An arbitrary string attached to the price item. Often useful for displaying to users. Defaults to product name.
267
+ */
268
+ description?: string;
269
+ /**
270
+ * The id of the product.
271
+ */
272
+ product_id?: string;
273
+ /**
274
+ * The id of the price.
275
+ */
276
+ price_id?: string;
277
+ /**
278
+ * The taxes applied to the price item.
279
+ */
280
+ taxes?: (/* A valid tax rate from a client. */ TaxAmountDto)[];
281
+ /**
282
+ * The taxes applied to the price item.
283
+ */
284
+ recurrences?: (/* An amount associated with a specific recurrence. */ RecurrenceAmountDto)[];
285
+ /**
286
+ * The flag for prices that contain price components.
287
+ */
288
+ is_composite_price?: boolean;
289
+ /**
290
+ * The snapshot of the product.
291
+ * example:
292
+ * {
293
+ * "$ref": "#/components/examples/product"
294
+ * }
295
+ */
296
+ _product?: {
297
+ [name: string]: any;
298
+ /**
299
+ * The product code
300
+ */
301
+ code?: string;
302
+ /**
303
+ * The type of Product:
304
+ *
305
+ * | type | description |
306
+ * |----| ----|
307
+ * | `product` | Represents a physical good |
308
+ * | `service` | Represents a service or virtual product |
309
+ *
310
+ */
311
+ type?: "product" | "service";
312
+ /**
313
+ * The product main name
314
+ */
315
+ name?: string;
316
+ feature?: {
317
+ /**
318
+ * An arbitrary set of tags attached to a feature
319
+ */
320
+ _tags?: string[];
321
+ feature?: string;
322
+ }[];
323
+ /**
324
+ * Stores references to products that can be cross sold with the current product.
325
+ */
326
+ cross_sellable_products?: {
327
+ $relation?: EntityRelation[];
328
+ };
329
+ /**
330
+ * Stores references to a set of file images of the product
331
+ */
332
+ product_images?: {
333
+ $relation?: EntityRelation[];
334
+ };
335
+ /**
336
+ * Stores references to a set of files downloadable from the product.
337
+ * e.g: tech specifications, quality control sheets, privacy policy agreements
338
+ *
339
+ */
340
+ product_downloads?: {
341
+ $relation?: EntityRelation[];
342
+ };
343
+ /**
344
+ * A set of [prices](/api/pricing#tag/simple_price_schema) or [composite prices](/api/pricing#tag/dynamic_price_schema) for the current product.
345
+ */
346
+ price_options?: {
347
+ $relation?: EntityRelation[];
348
+ };
349
+ /**
350
+ * Stores references to the availability files that define where this product is available.
351
+ * These files are used when interacting with products via epilot Journeys, thought the AvailabilityCheck block.
352
+ *
353
+ */
354
+ _availability_files?: File[];
355
+ /**
356
+ * The product id
357
+ */
358
+ _id?: string;
359
+ /**
360
+ * The autogenerated product title
361
+ */
362
+ _title?: string;
363
+ /**
364
+ * The organization id the product belongs to
365
+ */
366
+ _org_id?: string;
367
+ /**
368
+ * The product creation date
369
+ */
370
+ _created_at?: string;
371
+ /**
372
+ * The product last update date
373
+ */
374
+ _updated_at?: string;
375
+ };
376
+ }
160
377
  export type BillingPeriod = "weekly" | "monthly" | "every_quarter" | "every_6_months" | "yearly" | "one_time";
161
378
  /**
162
379
  * Supports shopping for products and services until ready for checkout.
@@ -373,7 +590,14 @@ declare namespace Components {
373
590
  /**
374
591
  * A set of [price](/api/pricing#tag/simple_price_schema) components that define the composite price.
375
592
  */
376
- price_components?: {
593
+ price_components?: /* A set of [price](/api/pricing#tag/simple_price_schema) components that define the composite price. */ /**
594
+ * The price entity schema for simple pricing
595
+ * example:
596
+ * {
597
+ * "$ref": "#/components/examples/price"
598
+ * }
599
+ */
600
+ Price[] | {
377
601
  $relation?: PriceComponentRelation[];
378
602
  };
379
603
  /**
@@ -387,6 +611,10 @@ declare namespace Components {
387
611
  * EUR
388
612
  */
389
613
  Currency;
614
+ /**
615
+ * The flag for prices that contain price components.
616
+ */
617
+ is_composite_price?: boolean;
390
618
  /**
391
619
  * The price creation date
392
620
  */
@@ -491,10 +719,7 @@ declare namespace Components {
491
719
  * }
492
720
  */
493
721
  CompositePrice;
494
- /**
495
- * The product snapshot data.
496
- */
497
- _product?: /* The product snapshot data. */ /**
722
+ _product?: /**
498
723
  * The product entity
499
724
  * example:
500
725
  * {
@@ -543,14 +768,6 @@ declare namespace Components {
543
768
  * The id of the price.
544
769
  */
545
770
  price_id?: string;
546
- /**
547
- * The unit amount value
548
- */
549
- unit_amount?: number;
550
- /**
551
- * The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places.
552
- */
553
- unit_amount_decimal?: string;
554
771
  /**
555
772
  * The taxes applied to the price item.
556
773
  */
@@ -559,14 +776,102 @@ declare namespace Components {
559
776
  * The taxes applied to the price item.
560
777
  */
561
778
  recurrences?: (/* An amount associated with a specific recurrence. */ RecurrenceAmountDto)[];
562
- _price?: /**
563
- * The price entity schema for simple pricing
779
+ /**
780
+ * The flag for prices that contain price components.
781
+ */
782
+ is_composite_price?: boolean;
783
+ /**
784
+ * The snapshot of the product.
564
785
  * example:
565
786
  * {
566
- * "$ref": "#/components/examples/price"
787
+ * "$ref": "#/components/examples/product"
567
788
  * }
568
789
  */
569
- Price | /**
790
+ _product?: {
791
+ [name: string]: any;
792
+ /**
793
+ * The product code
794
+ */
795
+ code?: string;
796
+ /**
797
+ * The type of Product:
798
+ *
799
+ * | type | description |
800
+ * |----| ----|
801
+ * | `product` | Represents a physical good |
802
+ * | `service` | Represents a service or virtual product |
803
+ *
804
+ */
805
+ type?: "product" | "service";
806
+ /**
807
+ * The product main name
808
+ */
809
+ name?: string;
810
+ feature?: {
811
+ /**
812
+ * An arbitrary set of tags attached to a feature
813
+ */
814
+ _tags?: string[];
815
+ feature?: string;
816
+ }[];
817
+ /**
818
+ * Stores references to products that can be cross sold with the current product.
819
+ */
820
+ cross_sellable_products?: {
821
+ $relation?: EntityRelation[];
822
+ };
823
+ /**
824
+ * Stores references to a set of file images of the product
825
+ */
826
+ product_images?: {
827
+ $relation?: EntityRelation[];
828
+ };
829
+ /**
830
+ * Stores references to a set of files downloadable from the product.
831
+ * e.g: tech specifications, quality control sheets, privacy policy agreements
832
+ *
833
+ */
834
+ product_downloads?: {
835
+ $relation?: EntityRelation[];
836
+ };
837
+ /**
838
+ * A set of [prices](/api/pricing#tag/simple_price_schema) or [composite prices](/api/pricing#tag/dynamic_price_schema) for the current product.
839
+ */
840
+ price_options?: {
841
+ $relation?: EntityRelation[];
842
+ };
843
+ /**
844
+ * Stores references to the availability files that define where this product is available.
845
+ * These files are used when interacting with products via epilot Journeys, thought the AvailabilityCheck block.
846
+ *
847
+ */
848
+ _availability_files?: File[];
849
+ /**
850
+ * The product id
851
+ */
852
+ _id?: string;
853
+ /**
854
+ * The autogenerated product title
855
+ */
856
+ _title?: string;
857
+ /**
858
+ * The organization id the product belongs to
859
+ */
860
+ _org_id?: string;
861
+ /**
862
+ * The product creation date
863
+ */
864
+ _created_at?: string;
865
+ /**
866
+ * The product last update date
867
+ */
868
+ _updated_at?: string;
869
+ };
870
+ /**
871
+ * Contains price item configurations, per price component, when the main price item is a [composite price](/api/pricing#tag/dynamic_price_schema).
872
+ */
873
+ item_components?: /* Represents a price input to the pricing library. */ PriceItemDto[];
874
+ _price?: /**
570
875
  * The price entity schema for dynamic pricing
571
876
  * example:
572
877
  * {
@@ -574,18 +879,6 @@ declare namespace Components {
574
879
  * }
575
880
  */
576
881
  CompositePrice;
577
- _product?: /**
578
- * The product entity
579
- * example:
580
- * {
581
- * "$ref": "#/components/examples/product"
582
- * }
583
- */
584
- Product;
585
- /**
586
- * Contains price item configurations, per price component, when the main price item is a [composite price](/api/pricing#tag/dynamic_price_schema).
587
- */
588
- item_components?: /* Represents a valid price item from a client. */ PriceItemDto[];
589
882
  }
590
883
  /**
591
884
  * Three-letter ISO currency code, in lowercase. Must be a supported currency.
@@ -606,6 +899,36 @@ declare namespace Components {
606
899
  email?: string;
607
900
  phone?: string;
608
901
  }
902
+ export type EntityId = string; // uuid
903
+ /**
904
+ * example:
905
+ * {
906
+ * "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
907
+ * "_org": "123",
908
+ * "_schema": "contact",
909
+ * "_tags": [
910
+ * "example",
911
+ * "mock"
912
+ * ],
913
+ * "_created_at": "2021-02-09T12:41:43.662Z",
914
+ * "_updated_at": "2021-02-09T12:41:43.662Z"
915
+ * }
916
+ */
917
+ export interface EntityItem {
918
+ _id: EntityId /* uuid */;
919
+ /**
920
+ * Title of entity
921
+ */
922
+ _title: string;
923
+ /**
924
+ * Organization Id the entity belongs to
925
+ */
926
+ _org: string;
927
+ _schema: string;
928
+ _tags?: string[];
929
+ _created_at: string; // date-time
930
+ _updated_at: string; // date-time
931
+ }
609
932
  export interface EntityRelation {
610
933
  [name: string]: any;
611
934
  entity_id?: string;
@@ -616,6 +939,14 @@ declare namespace Components {
616
939
  * Error message
617
940
  */
618
941
  message: string;
942
+ /**
943
+ * The HTTP status code
944
+ */
945
+ status?: number;
946
+ /**
947
+ * The cause of the error (visible for bad requests - http 400)
948
+ */
949
+ cause?: string;
619
950
  }
620
951
  export interface File {
621
952
  [name: string]: any;
@@ -1077,6 +1408,10 @@ declare namespace Components {
1077
1408
  * Whether the price can be used for new purchases.
1078
1409
  */
1079
1410
  active?: boolean;
1411
+ /**
1412
+ * The flag for prices that contain price components.
1413
+ */
1414
+ is_composite_price?: boolean;
1080
1415
  /**
1081
1416
  * Describes how to compute the price per period. Either `per_unit` or `tiered`.
1082
1417
  * - `per_unit` indicates that the fixed amount (specified in unit_amount or unit_amount_decimal) will be charged per unit in quantity
@@ -1104,9 +1439,30 @@ declare namespace Components {
1104
1439
  /**
1105
1440
  * The default tax rate applied to the price
1106
1441
  */
1107
- tax?: {
1442
+ tax?: /* The default tax rate applied to the price */ {
1108
1443
  $relation?: EntityRelation[];
1109
- };
1444
+ } | /**
1445
+ * the tax configuration
1446
+ * example:
1447
+ * {
1448
+ * "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1449
+ * "type": "VAT",
1450
+ * "description": "Tax description",
1451
+ * "behavior": "Exclusive",
1452
+ * "active": "true",
1453
+ * "region": "DE",
1454
+ * "region_label": "Germany",
1455
+ * "_org": "123",
1456
+ * "_schema": "tax",
1457
+ * "_tags": [
1458
+ * "example",
1459
+ * "mock"
1460
+ * ],
1461
+ * "_created_at": "2021-02-09T12:41:43.662Z",
1462
+ * "_updated_at": "2021-02-09T12:41:43.662Z"
1463
+ * }
1464
+ */
1465
+ Tax[];
1110
1466
  /**
1111
1467
  * Specifies whether the price is considered `inclusive` of taxes or `exclusive` of taxes.
1112
1468
  * One of `inclusive`, `exclusive`, or `unspecified`.
@@ -1216,14 +1572,6 @@ declare namespace Components {
1216
1572
  *
1217
1573
  */
1218
1574
  quantity?: number;
1219
- item?: /**
1220
- * The price entity schema for simple pricing
1221
- * example:
1222
- * {
1223
- * "$ref": "#/components/examples/price"
1224
- * }
1225
- */
1226
- Price;
1227
1575
  /**
1228
1576
  * An arbitrary set of tags attached to the composite price - component relation
1229
1577
  */
@@ -1308,10 +1656,7 @@ declare namespace Components {
1308
1656
  * }
1309
1657
  */
1310
1658
  CompositePrice;
1311
- /**
1312
- * The product snapshot data.
1313
- */
1314
- _product?: /* The product snapshot data. */ /**
1659
+ _product?: /**
1315
1660
  * The product entity
1316
1661
  * example:
1317
1662
  * {
@@ -1327,9 +1672,13 @@ declare namespace Components {
1327
1672
  * The sum of amounts of the price items by recurrence.
1328
1673
  */
1329
1674
  recurrences?: (/* An amount associated with a specific recurrence. */ RecurrenceAmount)[];
1675
+ /**
1676
+ * One of `one_time` or `recurring` depending on whether the price is for a one-time purchase or a recurring (subscription) purchase.
1677
+ */
1678
+ type?: "one_time" | "recurring";
1330
1679
  }
1331
1680
  /**
1332
- * Represents a valid price item from a client.
1681
+ * Represents a price input to the pricing library.
1333
1682
  */
1334
1683
  export interface PriceItemDto {
1335
1684
  metadata?: /* A set of key-value pairs used to store meta data information about an entity. */ MetaData;
@@ -1349,14 +1698,6 @@ declare namespace Components {
1349
1698
  * The id of the price.
1350
1699
  */
1351
1700
  price_id?: string;
1352
- /**
1353
- * The unit amount value
1354
- */
1355
- unit_amount?: number;
1356
- /**
1357
- * The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places.
1358
- */
1359
- unit_amount_decimal?: string;
1360
1701
  /**
1361
1702
  * The taxes applied to the price item.
1362
1703
  */
@@ -1365,25 +1706,275 @@ declare namespace Components {
1365
1706
  * The taxes applied to the price item.
1366
1707
  */
1367
1708
  recurrences?: (/* An amount associated with a specific recurrence. */ RecurrenceAmountDto)[];
1368
- _price?: /**
1369
- * The price entity schema for simple pricing
1709
+ /**
1710
+ * The flag for prices that contain price components.
1711
+ */
1712
+ is_composite_price?: boolean;
1713
+ /**
1714
+ * The snapshot of the product.
1370
1715
  * example:
1371
1716
  * {
1372
- * "$ref": "#/components/examples/price"
1717
+ * "$ref": "#/components/examples/product"
1373
1718
  * }
1374
1719
  */
1375
- Price;
1720
+ _product?: {
1721
+ [name: string]: any;
1722
+ /**
1723
+ * The product code
1724
+ */
1725
+ code?: string;
1726
+ /**
1727
+ * The type of Product:
1728
+ *
1729
+ * | type | description |
1730
+ * |----| ----|
1731
+ * | `product` | Represents a physical good |
1732
+ * | `service` | Represents a service or virtual product |
1733
+ *
1734
+ */
1735
+ type?: "product" | "service";
1736
+ /**
1737
+ * The product main name
1738
+ */
1739
+ name?: string;
1740
+ feature?: {
1741
+ /**
1742
+ * An arbitrary set of tags attached to a feature
1743
+ */
1744
+ _tags?: string[];
1745
+ feature?: string;
1746
+ }[];
1747
+ /**
1748
+ * Stores references to products that can be cross sold with the current product.
1749
+ */
1750
+ cross_sellable_products?: {
1751
+ $relation?: EntityRelation[];
1752
+ };
1753
+ /**
1754
+ * Stores references to a set of file images of the product
1755
+ */
1756
+ product_images?: {
1757
+ $relation?: EntityRelation[];
1758
+ };
1759
+ /**
1760
+ * Stores references to a set of files downloadable from the product.
1761
+ * e.g: tech specifications, quality control sheets, privacy policy agreements
1762
+ *
1763
+ */
1764
+ product_downloads?: {
1765
+ $relation?: EntityRelation[];
1766
+ };
1767
+ /**
1768
+ * A set of [prices](/api/pricing#tag/simple_price_schema) or [composite prices](/api/pricing#tag/dynamic_price_schema) for the current product.
1769
+ */
1770
+ price_options?: {
1771
+ $relation?: EntityRelation[];
1772
+ };
1773
+ /**
1774
+ * Stores references to the availability files that define where this product is available.
1775
+ * These files are used when interacting with products via epilot Journeys, thought the AvailabilityCheck block.
1776
+ *
1777
+ */
1778
+ _availability_files?: File[];
1779
+ /**
1780
+ * The product id
1781
+ */
1782
+ _id?: string;
1783
+ /**
1784
+ * The autogenerated product title
1785
+ */
1786
+ _title?: string;
1787
+ /**
1788
+ * The organization id the product belongs to
1789
+ */
1790
+ _org_id?: string;
1791
+ /**
1792
+ * The product creation date
1793
+ */
1794
+ _created_at?: string;
1795
+ /**
1796
+ * The product last update date
1797
+ */
1798
+ _updated_at?: string;
1799
+ };
1376
1800
  /**
1377
- * The product linked to the price item.
1801
+ * One of `one_time` or `recurring` depending on whether the price is for a one-time purchase or a recurring (subscription) purchase.
1378
1802
  */
1379
- _product?: /**
1380
- * The product entity
1803
+ type?: "one_time" | "recurring";
1804
+ /**
1805
+ * The unit amount value
1806
+ */
1807
+ unit_amount?: number;
1808
+ /**
1809
+ * The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places.
1810
+ */
1811
+ unit_amount_decimal?: string;
1812
+ /**
1813
+ * The snapshot of the price linked to the price item.
1381
1814
  * example:
1382
1815
  * {
1383
- * "$ref": "#/components/examples/product"
1816
+ * "$ref": "#/components/examples/price"
1384
1817
  * }
1385
1818
  */
1386
- Product;
1819
+ _price?: {
1820
+ [name: string]: any;
1821
+ /**
1822
+ * Whether the price can be used for new purchases.
1823
+ */
1824
+ active?: boolean;
1825
+ /**
1826
+ * The flag for prices that contain price components.
1827
+ */
1828
+ is_composite_price?: boolean;
1829
+ /**
1830
+ * Describes how to compute the price per period. Either `per_unit` or `tiered`.
1831
+ * - `per_unit` indicates that the fixed amount (specified in unit_amount or unit_amount_decimal) will be charged per unit in quantity
1832
+ * - `tiered` indicates that the unit pricing will be computed using a tiering strategy as defined using the tiers and tiers_mode attributes.
1833
+ *
1834
+ * ⚠️ Tiered pricing is **not supported** yet.
1835
+ *
1836
+ */
1837
+ billing_scheme?: "per_unit";
1838
+ /**
1839
+ * A brief description of the price.
1840
+ */
1841
+ description?: string;
1842
+ /**
1843
+ * The default tax rate applicable to the product.
1844
+ * This field is deprecated, use the new `tax` attribute.
1845
+ *
1846
+ */
1847
+ sales_tax?: /**
1848
+ * The default tax rate applicable to the product.
1849
+ * This field is deprecated, use the new `tax` attribute.
1850
+ *
1851
+ */
1852
+ SalesTax;
1853
+ /**
1854
+ * The default tax rate applied to the price
1855
+ */
1856
+ tax?: /* The default tax rate applied to the price */ {
1857
+ $relation?: EntityRelation[];
1858
+ } | /**
1859
+ * the tax configuration
1860
+ * example:
1861
+ * {
1862
+ * "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
1863
+ * "type": "VAT",
1864
+ * "description": "Tax description",
1865
+ * "behavior": "Exclusive",
1866
+ * "active": "true",
1867
+ * "region": "DE",
1868
+ * "region_label": "Germany",
1869
+ * "_org": "123",
1870
+ * "_schema": "tax",
1871
+ * "_tags": [
1872
+ * "example",
1873
+ * "mock"
1874
+ * ],
1875
+ * "_created_at": "2021-02-09T12:41:43.662Z",
1876
+ * "_updated_at": "2021-02-09T12:41:43.662Z"
1877
+ * }
1878
+ */
1879
+ Tax[];
1880
+ /**
1881
+ * Specifies whether the price is considered `inclusive` of taxes or `exclusive` of taxes.
1882
+ * One of `inclusive`, `exclusive`, or `unspecified`.
1883
+ *
1884
+ */
1885
+ tax_behavior?: "inclusive" | "exclusive";
1886
+ /**
1887
+ * Defines the tiered pricing type of the price.
1888
+ */
1889
+ tiers_mode?: "standard";
1890
+ /**
1891
+ * One of `one_time` or `recurring` depending on whether the price is for a one-time purchase or a recurring (subscription) purchase.
1892
+ */
1893
+ type?: "one_time" | "recurring";
1894
+ /**
1895
+ * For recurring prices `billing_period` defines the default extent of the recurrence.
1896
+ */
1897
+ billing_period?: /* For recurring prices `billing_period` defines the default extent of the recurrence. */ BillingPeriod;
1898
+ /**
1899
+ * The unit amount in cents to be charged, represented as a whole integer if possible.
1900
+ */
1901
+ unit_amount?: number;
1902
+ /**
1903
+ * The unit amount in cents to be charged, represented as a decimal string with at most 12 decimal places.
1904
+ */
1905
+ unit_amount_decimal?: string;
1906
+ /**
1907
+ * Three-letter ISO currency code, in lowercase.
1908
+ */
1909
+ unit_amount_currency?: /* Three-letter ISO currency code, in lowercase. */ /**
1910
+ * Three-letter ISO currency code, in lowercase. Must be a supported currency.
1911
+ * ISO 4217 CURRENCY CODES as specified in the documentation: https://www.iso.org/iso-4217-currency-codes.html
1912
+ *
1913
+ * example:
1914
+ * EUR
1915
+ */
1916
+ Currency;
1917
+ /**
1918
+ * Defines the way the price amount is display in epilot journeys.
1919
+ */
1920
+ price_display_in_journeys?: "show_price" | "show_as_starting_price" | "show_as_on_request";
1921
+ /**
1922
+ * The billing period duration
1923
+ */
1924
+ billing_duration_amount?: number;
1925
+ /**
1926
+ * The billing period duration unit
1927
+ */
1928
+ billing_duration_unit?: "weeks" | "months" | "years";
1929
+ /**
1930
+ * The notice period duration
1931
+ */
1932
+ notice_time_amount?: number;
1933
+ /**
1934
+ * The notice period duration unit
1935
+ */
1936
+ notice_time_unit?: "weeks" | "months" | "years";
1937
+ /**
1938
+ * The termination period duration
1939
+ */
1940
+ termination_time_amount?: number;
1941
+ /**
1942
+ * The termination period duration unit
1943
+ */
1944
+ termination_time_unit?: "weeks" | "months" | "years";
1945
+ /**
1946
+ * The renewal period duration
1947
+ */
1948
+ renewal_duration_amount?: number;
1949
+ /**
1950
+ * The renewal period duration unit
1951
+ */
1952
+ renewal_duration_unit?: "weeks" | "months" | "years";
1953
+ /**
1954
+ * The price creation date
1955
+ */
1956
+ _created_at?: string;
1957
+ /**
1958
+ * The price id
1959
+ */
1960
+ _id?: string;
1961
+ /**
1962
+ * The price autogenerated title
1963
+ */
1964
+ _title?: string;
1965
+ /**
1966
+ * The price last update date
1967
+ */
1968
+ _updated_at?: string;
1969
+ /**
1970
+ * The organization id the price belongs to
1971
+ */
1972
+ _org_id?: string;
1973
+ /**
1974
+ * An arbitrary set of tags attached to the price
1975
+ */
1976
+ _tags?: string[];
1977
+ };
1387
1978
  }
1388
1979
  /**
1389
1980
  * Tracks a set of product prices, quantities, (discounts) and taxes.
@@ -1406,7 +1997,7 @@ declare namespace Components {
1406
1997
  /**
1407
1998
  * A valid set of product prices, quantities, (discounts) and taxes from a client.
1408
1999
  */
1409
- export type PriceItemsDto = (/* Represents a valid price item from a client. */ PriceItemDto)[];
2000
+ export type PriceItemsDto = (/* Represents a price input to the pricing library. */ PriceItemDto)[];
1410
2001
  /**
1411
2002
  * The result from the calculation of a set of price items.
1412
2003
  */
@@ -1523,7 +2114,7 @@ declare namespace Components {
1523
2114
  /**
1524
2115
  * The price type.
1525
2116
  */
1526
- type: string;
2117
+ type?: string;
1527
2118
  /**
1528
2119
  * The price billing period.
1529
2120
  */
@@ -1548,7 +2139,7 @@ declare namespace Components {
1548
2139
  /**
1549
2140
  * The price type.
1550
2141
  */
1551
- type: string;
2142
+ type?: string;
1552
2143
  /**
1553
2144
  * The price billing period.
1554
2145
  */
@@ -1569,13 +2160,44 @@ declare namespace Components {
1569
2160
  export type SalesTax = "nontaxable" | "reduced" | "standard";
1570
2161
  /**
1571
2162
  * the tax configuration
2163
+ * example:
2164
+ * {
2165
+ * "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
2166
+ * "type": "VAT",
2167
+ * "description": "Tax description",
2168
+ * "behavior": "Exclusive",
2169
+ * "active": "true",
2170
+ * "region": "DE",
2171
+ * "region_label": "Germany",
2172
+ * "_org": "123",
2173
+ * "_schema": "tax",
2174
+ * "_tags": [
2175
+ * "example",
2176
+ * "mock"
2177
+ * ],
2178
+ * "_created_at": "2021-02-09T12:41:43.662Z",
2179
+ * "_updated_at": "2021-02-09T12:41:43.662Z"
2180
+ * }
1572
2181
  */
1573
2182
  export interface Tax {
1574
2183
  [name: string]: any;
2184
+ _id: EntityId /* uuid */;
2185
+ /**
2186
+ * Title of entity
2187
+ */
2188
+ _title: string;
2189
+ /**
2190
+ * Organization Id the entity belongs to
2191
+ */
2192
+ _org: string;
2193
+ _schema: string;
2194
+ _tags?: string[];
2195
+ _created_at: string; // date-time
2196
+ _updated_at: string; // date-time
1575
2197
  type: "VAT" | "GST" | "Custom";
1576
2198
  description?: string;
1577
2199
  rate: number;
1578
- behavior: "Exclusive" | "Inclusive";
2200
+ behavior: "Exclusive" | "Inclusive" | "exclusive" | "inclusive";
1579
2201
  active?: boolean;
1580
2202
  region?: string;
1581
2203
  region_label?: string;
@@ -1589,26 +2211,98 @@ declare namespace Components {
1589
2211
  */
1590
2212
  amount?: number;
1591
2213
  /**
1592
- * The tax rate applied.
2214
+ * The tax rate applied. With the release of the tax management feature this field is being deprecated in favor of the tax field.
1593
2215
  */
1594
2216
  rate?: string;
2217
+ /**
2218
+ * The tax rate value applied (represented as an integer percentage, e.g, 19 or 7).
2219
+ * With the release of the tax management feature this field is being deprecated in favor of the tax field.
2220
+ *
2221
+ * example:
2222
+ * 19
2223
+ */
2224
+ rateValue?: number;
1595
2225
  /**
1596
2226
  * The tax applied.
1597
2227
  */
1598
- tax?: /* The tax applied. */ /* the tax configuration */ Tax;
2228
+ tax?: /* The tax applied. */ /**
2229
+ * the tax configuration
2230
+ * example:
2231
+ * {
2232
+ * "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
2233
+ * "type": "VAT",
2234
+ * "description": "Tax description",
2235
+ * "behavior": "Exclusive",
2236
+ * "active": "true",
2237
+ * "region": "DE",
2238
+ * "region_label": "Germany",
2239
+ * "_org": "123",
2240
+ * "_schema": "tax",
2241
+ * "_tags": [
2242
+ * "example",
2243
+ * "mock"
2244
+ * ],
2245
+ * "_created_at": "2021-02-09T12:41:43.662Z",
2246
+ * "_updated_at": "2021-02-09T12:41:43.662Z"
2247
+ * }
2248
+ */
2249
+ Tax;
2250
+ }
2251
+ /**
2252
+ * A tax amount associated with a specific tax rate.
2253
+ */
2254
+ export interface TaxAmountBreakdown {
2255
+ /**
2256
+ * The tax amount.
2257
+ */
2258
+ amount?: number;
2259
+ /**
2260
+ * The tax rate applied. With the release of the tax manager feature this field is being deprecated in favor of the tax field.
2261
+ */
2262
+ rate?: string;
2263
+ /**
2264
+ * The tax rate value applied. With the release of the tax manager feature this field is being deprecated in favor of the tax field.
2265
+ */
2266
+ rateValue?: number;
2267
+ tax?: TaxBreakdownInfo;
1599
2268
  }
1600
2269
  /**
1601
2270
  * A valid tax rate from a client.
1602
2271
  */
1603
2272
  export interface TaxAmountDto {
1604
2273
  /**
1605
- * The tax rate applied.
2274
+ * The deprecated tax rate applied.
2275
+ * This field has been deprecated in favor of the new Tax Management. You should use the new tax fields pointing to a proper tax entity.
2276
+ *
1606
2277
  */
1607
2278
  rate?: string;
1608
- /**
1609
- * The tax applied.
2279
+ tax?: /**
2280
+ * the tax configuration
2281
+ * example:
2282
+ * {
2283
+ * "_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
2284
+ * "type": "VAT",
2285
+ * "description": "Tax description",
2286
+ * "behavior": "Exclusive",
2287
+ * "active": "true",
2288
+ * "region": "DE",
2289
+ * "region_label": "Germany",
2290
+ * "_org": "123",
2291
+ * "_schema": "tax",
2292
+ * "_tags": [
2293
+ * "example",
2294
+ * "mock"
2295
+ * ],
2296
+ * "_created_at": "2021-02-09T12:41:43.662Z",
2297
+ * "_updated_at": "2021-02-09T12:41:43.662Z"
2298
+ * }
1610
2299
  */
1611
- tax?: /* The tax applied. */ /* the tax configuration */ Tax;
2300
+ Tax;
2301
+ }
2302
+ export interface TaxBreakdownInfo {
2303
+ rate?: number;
2304
+ type?: "VAT" | "GST" | "Custom";
2305
+ _id?: string;
1612
2306
  }
1613
2307
  /**
1614
2308
  * The total details with tax (and discount) aggregated totals.
@@ -1629,7 +2323,7 @@ declare namespace Components {
1629
2323
  /**
1630
2324
  * The aggregated price items tax amount per rate.
1631
2325
  */
1632
- taxes?: (/* A tax amount associated with a specific tax rate. */ TaxAmount)[];
2326
+ taxes?: (/* A tax amount associated with a specific tax rate. */ TaxAmountBreakdown)[];
1633
2327
  /**
1634
2328
  * The aggregated price items tax amount per rate.
1635
2329
  */