chargebee 3.25.0 → 3.27.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.
Files changed (173) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/README.md +39 -0
  3. package/cjs/RequestWrapper.js +27 -0
  4. package/cjs/chargebee.cjs.js +3 -0
  5. package/cjs/chargebee.cjs.worker.js +2 -0
  6. package/cjs/chargebeeZodValidationError.js +18 -0
  7. package/cjs/createChargebee.js +5 -0
  8. package/cjs/environment.js +1 -1
  9. package/cjs/resources/api_endpoints.js +120 -1
  10. package/cjs/schema/addon.schema.js +269 -0
  11. package/cjs/schema/address.schema.js +35 -0
  12. package/cjs/schema/alert.schema.js +74 -0
  13. package/cjs/schema/alert_status.schema.js +31 -0
  14. package/cjs/schema/attached_item.schema.js +144 -0
  15. package/cjs/schema/business_entity.schema.js +46 -0
  16. package/cjs/schema/card.schema.js +165 -0
  17. package/cjs/schema/comment.schema.js +69 -0
  18. package/cjs/schema/coupon.schema.js +323 -0
  19. package/cjs/schema/coupon_code.schema.js +49 -0
  20. package/cjs/schema/coupon_set.schema.js +88 -0
  21. package/cjs/schema/credit_note.schema.js +502 -0
  22. package/cjs/schema/currency.schema.js +32 -0
  23. package/cjs/schema/customer.schema.js +1201 -0
  24. package/cjs/schema/customer_entitlement.schema.js +14 -0
  25. package/cjs/schema/differential_price.schema.js +106 -0
  26. package/cjs/schema/entitlement.schema.js +54 -0
  27. package/cjs/schema/entitlement_override.schema.js +35 -0
  28. package/cjs/schema/estimate.schema.js +1535 -0
  29. package/cjs/schema/event.schema.js +1060 -0
  30. package/cjs/schema/export.schema.js +3385 -0
  31. package/cjs/schema/feature.schema.js +78 -0
  32. package/cjs/schema/gift.schema.js +293 -0
  33. package/cjs/schema/grant_block.schema.js +47 -0
  34. package/cjs/schema/hosted_page.schema.js +1777 -0
  35. package/cjs/schema/in_app_subscription.schema.js +68 -0
  36. package/cjs/schema/index.js +88 -0
  37. package/cjs/schema/invoice.schema.js +1685 -0
  38. package/cjs/schema/item.schema.js +195 -0
  39. package/cjs/schema/item_entitlement.schema.js +45 -0
  40. package/cjs/schema/item_family.schema.js +57 -0
  41. package/cjs/schema/item_price.schema.js +335 -0
  42. package/cjs/schema/ledger_account_balance.schema.js +21 -0
  43. package/cjs/schema/ledger_operation.schema.js +104 -0
  44. package/cjs/schema/meter.schema.js +13 -0
  45. package/cjs/schema/metered_feature.schema.js +20 -0
  46. package/cjs/schema/non_subscription.schema.js +28 -0
  47. package/cjs/schema/offer_event.schema.js +13 -0
  48. package/cjs/schema/offer_fulfillment.schema.js +20 -0
  49. package/cjs/schema/omnichannel_one_time_order.schema.js +26 -0
  50. package/cjs/schema/omnichannel_subscription.schema.js +122 -0
  51. package/cjs/schema/omnichannel_subscription_item.schema.js +13 -0
  52. package/cjs/schema/order.schema.js +441 -0
  53. package/cjs/schema/payment_intent.schema.js +127 -0
  54. package/cjs/schema/payment_schedule_scheme.schema.js +20 -0
  55. package/cjs/schema/payment_source.schema.js +630 -0
  56. package/cjs/schema/payment_voucher.schema.js +57 -0
  57. package/cjs/schema/personalized_offer.schema.js +28 -0
  58. package/cjs/schema/plan.schema.js +363 -0
  59. package/cjs/schema/portal_session.schema.js +22 -0
  60. package/cjs/schema/price_variant.schema.js +93 -0
  61. package/cjs/schema/pricing_page_session.schema.js +135 -0
  62. package/cjs/schema/promotional_credit.schema.js +78 -0
  63. package/cjs/schema/promotional_grant.schema.js +17 -0
  64. package/cjs/schema/purchase.schema.js +277 -0
  65. package/cjs/schema/quote.schema.js +1667 -0
  66. package/cjs/schema/ramp.schema.js +245 -0
  67. package/cjs/schema/recorded_purchase.schema.js +32 -0
  68. package/cjs/schema/resource_migration.schema.js +14 -0
  69. package/cjs/schema/site_migration_detail.schema.js +81 -0
  70. package/cjs/schema/subscription.schema.js +3344 -0
  71. package/cjs/schema/subscription_entitlement.schema.js +25 -0
  72. package/cjs/schema/time_machine.schema.js +17 -0
  73. package/cjs/schema/transaction.schema.js +744 -0
  74. package/cjs/schema/unbilled_charge.schema.js +139 -0
  75. package/cjs/schema/usage.schema.js +93 -0
  76. package/cjs/schema/usage_charge.schema.js +17 -0
  77. package/cjs/schema/usage_event.schema.js +28 -0
  78. package/cjs/schema/usage_file.schema.js +13 -0
  79. package/cjs/schema/usage_summary.schema.js +17 -0
  80. package/cjs/schema/virtual_bank_account.schema.js +71 -0
  81. package/cjs/schema/webhook_endpoint.schema.js +508 -0
  82. package/cjs/validationLoader.js +59 -0
  83. package/esm/RequestWrapper.js +27 -0
  84. package/esm/chargebee.esm.js +2 -0
  85. package/esm/chargebee.esm.worker.js +1 -0
  86. package/esm/chargebeeZodValidationError.js +14 -0
  87. package/esm/createChargebee.js +5 -0
  88. package/esm/environment.js +1 -1
  89. package/esm/resources/api_endpoints.js +120 -1
  90. package/esm/schema/addon.schema.js +266 -0
  91. package/esm/schema/address.schema.js +32 -0
  92. package/esm/schema/alert.schema.js +71 -0
  93. package/esm/schema/alert_status.schema.js +28 -0
  94. package/esm/schema/attached_item.schema.js +141 -0
  95. package/esm/schema/business_entity.schema.js +43 -0
  96. package/esm/schema/card.schema.js +162 -0
  97. package/esm/schema/comment.schema.js +66 -0
  98. package/esm/schema/coupon.schema.js +320 -0
  99. package/esm/schema/coupon_code.schema.js +46 -0
  100. package/esm/schema/coupon_set.schema.js +85 -0
  101. package/esm/schema/credit_note.schema.js +499 -0
  102. package/esm/schema/currency.schema.js +29 -0
  103. package/esm/schema/customer.schema.js +1198 -0
  104. package/esm/schema/customer_entitlement.schema.js +11 -0
  105. package/esm/schema/differential_price.schema.js +103 -0
  106. package/esm/schema/entitlement.schema.js +51 -0
  107. package/esm/schema/entitlement_override.schema.js +32 -0
  108. package/esm/schema/estimate.schema.js +1532 -0
  109. package/esm/schema/event.schema.js +1057 -0
  110. package/esm/schema/export.schema.js +3382 -0
  111. package/esm/schema/feature.schema.js +75 -0
  112. package/esm/schema/gift.schema.js +290 -0
  113. package/esm/schema/grant_block.schema.js +44 -0
  114. package/esm/schema/hosted_page.schema.js +1774 -0
  115. package/esm/schema/in_app_subscription.schema.js +65 -0
  116. package/esm/schema/index.js +72 -0
  117. package/esm/schema/invoice.schema.js +1682 -0
  118. package/esm/schema/item.schema.js +192 -0
  119. package/esm/schema/item_entitlement.schema.js +42 -0
  120. package/esm/schema/item_family.schema.js +54 -0
  121. package/esm/schema/item_price.schema.js +332 -0
  122. package/esm/schema/ledger_account_balance.schema.js +18 -0
  123. package/esm/schema/ledger_operation.schema.js +101 -0
  124. package/esm/schema/meter.schema.js +10 -0
  125. package/esm/schema/metered_feature.schema.js +17 -0
  126. package/esm/schema/non_subscription.schema.js +25 -0
  127. package/esm/schema/offer_event.schema.js +10 -0
  128. package/esm/schema/offer_fulfillment.schema.js +17 -0
  129. package/esm/schema/omnichannel_one_time_order.schema.js +23 -0
  130. package/esm/schema/omnichannel_subscription.schema.js +119 -0
  131. package/esm/schema/omnichannel_subscription_item.schema.js +10 -0
  132. package/esm/schema/order.schema.js +438 -0
  133. package/esm/schema/payment_intent.schema.js +124 -0
  134. package/esm/schema/payment_schedule_scheme.schema.js +17 -0
  135. package/esm/schema/payment_source.schema.js +627 -0
  136. package/esm/schema/payment_voucher.schema.js +54 -0
  137. package/esm/schema/personalized_offer.schema.js +25 -0
  138. package/esm/schema/plan.schema.js +360 -0
  139. package/esm/schema/portal_session.schema.js +19 -0
  140. package/esm/schema/price_variant.schema.js +90 -0
  141. package/esm/schema/pricing_page_session.schema.js +132 -0
  142. package/esm/schema/promotional_credit.schema.js +75 -0
  143. package/esm/schema/promotional_grant.schema.js +14 -0
  144. package/esm/schema/purchase.schema.js +274 -0
  145. package/esm/schema/quote.schema.js +1664 -0
  146. package/esm/schema/ramp.schema.js +242 -0
  147. package/esm/schema/recorded_purchase.schema.js +29 -0
  148. package/esm/schema/resource_migration.schema.js +11 -0
  149. package/esm/schema/site_migration_detail.schema.js +78 -0
  150. package/esm/schema/subscription.schema.js +3341 -0
  151. package/esm/schema/subscription_entitlement.schema.js +22 -0
  152. package/esm/schema/time_machine.schema.js +14 -0
  153. package/esm/schema/transaction.schema.js +741 -0
  154. package/esm/schema/unbilled_charge.schema.js +136 -0
  155. package/esm/schema/usage.schema.js +90 -0
  156. package/esm/schema/usage_charge.schema.js +14 -0
  157. package/esm/schema/usage_event.schema.js +25 -0
  158. package/esm/schema/usage_file.schema.js +10 -0
  159. package/esm/schema/usage_summary.schema.js +14 -0
  160. package/esm/schema/virtual_bank_account.schema.js +68 -0
  161. package/esm/schema/webhook_endpoint.schema.js +505 -0
  162. package/esm/validationLoader.js +56 -0
  163. package/package.json +4 -1
  164. package/types/core.d.ts +3 -0
  165. package/types/index.d.ts +24 -0
  166. package/types/resources/Content.d.ts +4 -0
  167. package/types/resources/CreditNote.d.ts +1 -0
  168. package/types/resources/GrantBlock.d.ts +59 -0
  169. package/types/resources/HostedPage.d.ts +5 -1
  170. package/types/resources/LedgerAccountBalance.d.ts +50 -0
  171. package/types/resources/LedgerOperation.d.ts +141 -0
  172. package/types/resources/OmnichannelSubscription.d.ts +2 -0
  173. package/types/resources/PromotionalGrant.d.ts +37 -0
@@ -0,0 +1,43 @@
1
+ // Generated Zod schemas: BusinessEntity
2
+ // Actions: createTransfers, getTransfers
3
+ // Do not edit manually – regenerate via sdk-generator
4
+ import { z } from 'zod';
5
+ //BusinessEntity.createTransfers
6
+ const CreateTransfersBusinessEntityBodySchema = z.looseObject({
7
+ active_resource_ids: z.array(z.string().max(50).optional()),
8
+ destination_business_entity_ids: z.array(z.string().max(50).optional()),
9
+ source_business_entity_ids: z.array(z.string().max(50).optional()).optional(),
10
+ resource_types: z.array(z.string().max(50).optional()),
11
+ reason_codes: z.array(z.string().max(50).optional()),
12
+ });
13
+ export { CreateTransfersBusinessEntityBodySchema };
14
+ //BusinessEntity.getTransfers
15
+ const GetTransfersBusinessEntityResourceTypeSchema = z.object({
16
+ is: z.string().min(1).optional(),
17
+ });
18
+ const GetTransfersBusinessEntityResourceIdSchema = z.object({
19
+ is: z.string().min(1).optional(),
20
+ });
21
+ const GetTransfersBusinessEntityActiveResourceIdSchema = z.object({
22
+ is: z.string().min(1).optional(),
23
+ });
24
+ const GetTransfersBusinessEntityCreatedAtSchema = z.object({
25
+ after: z.string().regex(RegExp('^\\d{10}$')).optional(),
26
+ before: z.string().regex(RegExp('^\\d{10}$')).optional(),
27
+ on: z.string().regex(RegExp('^\\d{10}$')).optional(),
28
+ between: z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(),
29
+ });
30
+ const GetTransfersBusinessEntitySortBySchema = z.looseObject({
31
+ asc: z.enum(['created_at']).optional(),
32
+ desc: z.enum(['created_at']).optional(),
33
+ });
34
+ const GetTransfersBusinessEntityBodySchema = z.looseObject({
35
+ limit: z.number().int().min(1).max(100).optional(),
36
+ offset: z.string().max(1000).optional(),
37
+ resource_type: GetTransfersBusinessEntityResourceTypeSchema.optional(),
38
+ resource_id: GetTransfersBusinessEntityResourceIdSchema.optional(),
39
+ active_resource_id: GetTransfersBusinessEntityActiveResourceIdSchema.optional(),
40
+ created_at: GetTransfersBusinessEntityCreatedAtSchema.optional(),
41
+ sort_by: GetTransfersBusinessEntitySortBySchema.optional(),
42
+ });
43
+ export { GetTransfersBusinessEntityBodySchema };
@@ -0,0 +1,162 @@
1
+ // Generated Zod schemas: Card
2
+ // Actions: updateCardForCustomer, switchGatewayForCustomer, copyCardForCustomer
3
+ // Do not edit manually – regenerate via sdk-generator
4
+ import { z } from 'zod';
5
+ //Card.updateCardForCustomer
6
+ const UpdateCardForCustomerCardCustomerSchema = z.object({
7
+ vat_number: z.string().max(20).optional(),
8
+ });
9
+ const UpdateCardForCustomerCardBodySchema = z.looseObject({
10
+ gateway: z
11
+ .enum([
12
+ 'chargebee',
13
+ 'chargebee_payments',
14
+ 'adyen',
15
+ 'stripe',
16
+ 'wepay',
17
+ 'braintree',
18
+ 'authorize_net',
19
+ 'paypal_pro',
20
+ 'pin',
21
+ 'eway',
22
+ 'eway_rapid',
23
+ 'worldpay',
24
+ 'balanced_payments',
25
+ 'beanstream',
26
+ 'bluepay',
27
+ 'elavon',
28
+ 'first_data_global',
29
+ 'hdfc',
30
+ 'migs',
31
+ 'nmi',
32
+ 'ogone',
33
+ 'paymill',
34
+ 'paypal_payflow_pro',
35
+ 'sage_pay',
36
+ 'tco',
37
+ 'wirecard',
38
+ 'amazon_payments',
39
+ 'paypal_express_checkout',
40
+ 'orbital',
41
+ 'moneris_us',
42
+ 'moneris',
43
+ 'bluesnap',
44
+ 'cybersource',
45
+ 'vantiv',
46
+ 'checkout_com',
47
+ 'paypal',
48
+ 'ingenico_direct',
49
+ 'exact',
50
+ 'mollie',
51
+ 'quickbooks',
52
+ 'razorpay',
53
+ 'global_payments',
54
+ 'bank_of_america',
55
+ 'ecentric',
56
+ 'metrics_global',
57
+ 'windcave',
58
+ 'pay_com',
59
+ 'ebanx',
60
+ 'dlocal',
61
+ 'nuvei',
62
+ 'solidgate',
63
+ 'paystack',
64
+ 'jp_morgan',
65
+ 'deutsche_bank',
66
+ 'ezidebit',
67
+ 'twikey',
68
+ 'tempus',
69
+ 'moyasar',
70
+ 'payway',
71
+ ])
72
+ .optional(),
73
+ gateway_account_id: z.string().max(50).optional(),
74
+ tmp_token: z.string().max(300).optional(),
75
+ first_name: z.string().max(50).optional(),
76
+ last_name: z.string().max(50).optional(),
77
+ number: z.string().max(1500),
78
+ expiry_month: z.number().int().min(1).max(12),
79
+ expiry_year: z.number().int(),
80
+ cvv: z.string().max(520).optional(),
81
+ preferred_scheme: z
82
+ .enum(['cartes_bancaires', 'mastercard', 'visa'])
83
+ .optional(),
84
+ billing_addr1: z.string().max(150).optional(),
85
+ billing_addr2: z.string().max(150).optional(),
86
+ billing_city: z.string().max(50).optional(),
87
+ billing_state_code: z.string().max(50).optional(),
88
+ billing_state: z.string().max(50).optional(),
89
+ billing_zip: z.string().max(20).optional(),
90
+ billing_country: z.string().max(50).optional(),
91
+ ip_address: z.string().max(50).optional(),
92
+ customer: UpdateCardForCustomerCardCustomerSchema.optional(),
93
+ });
94
+ export { UpdateCardForCustomerCardBodySchema };
95
+ //Card.switchGatewayForCustomer
96
+ const SwitchGatewayForCustomerCardBodySchema = z.looseObject({
97
+ gateway: z
98
+ .enum([
99
+ 'chargebee_payments',
100
+ 'adyen',
101
+ 'stripe',
102
+ 'wepay',
103
+ 'braintree',
104
+ 'authorize_net',
105
+ 'paypal_pro',
106
+ 'pin',
107
+ 'eway',
108
+ 'eway_rapid',
109
+ 'worldpay',
110
+ 'balanced_payments',
111
+ 'beanstream',
112
+ 'bluepay',
113
+ 'elavon',
114
+ 'first_data_global',
115
+ 'hdfc',
116
+ 'migs',
117
+ 'nmi',
118
+ 'ogone',
119
+ 'paymill',
120
+ 'paypal_payflow_pro',
121
+ 'sage_pay',
122
+ 'wirecard',
123
+ 'orbital',
124
+ 'moneris_us',
125
+ 'moneris',
126
+ 'bluesnap',
127
+ 'cybersource',
128
+ 'vantiv',
129
+ 'checkout_com',
130
+ 'ingenico_direct',
131
+ 'exact',
132
+ 'mollie',
133
+ 'quickbooks',
134
+ 'razorpay',
135
+ 'global_payments',
136
+ 'bank_of_america',
137
+ 'ecentric',
138
+ 'metrics_global',
139
+ 'windcave',
140
+ 'pay_com',
141
+ 'ebanx',
142
+ 'dlocal',
143
+ 'nuvei',
144
+ 'solidgate',
145
+ 'paystack',
146
+ 'jp_morgan',
147
+ 'deutsche_bank',
148
+ 'ezidebit',
149
+ 'twikey',
150
+ 'tempus',
151
+ 'moyasar',
152
+ 'payway',
153
+ ])
154
+ .optional(),
155
+ gateway_account_id: z.string().max(50),
156
+ });
157
+ export { SwitchGatewayForCustomerCardBodySchema };
158
+ //Card.copyCardForCustomer
159
+ const CopyCardForCustomerCardBodySchema = z.looseObject({
160
+ gateway_account_id: z.string().max(50),
161
+ });
162
+ export { CopyCardForCustomerCardBodySchema };
@@ -0,0 +1,66 @@
1
+ // Generated Zod schemas: Comment
2
+ // Actions: create, list
3
+ // Do not edit manually – regenerate via sdk-generator
4
+ import { z } from 'zod';
5
+ //Comment.create
6
+ const CreateCommentBodySchema = z.looseObject({
7
+ entity_type: z.enum([
8
+ 'customer',
9
+ 'subscription',
10
+ 'invoice',
11
+ 'quote',
12
+ 'credit_note',
13
+ 'transaction',
14
+ 'plan',
15
+ 'addon',
16
+ 'coupon',
17
+ 'order',
18
+ 'business_entity',
19
+ 'item_family',
20
+ 'item',
21
+ 'item_price',
22
+ 'price_variant',
23
+ ]),
24
+ entity_id: z.string().max(100),
25
+ notes: z.string().max(1000),
26
+ added_by: z.string().max(100).optional(),
27
+ });
28
+ export { CreateCommentBodySchema };
29
+ //Comment.list
30
+ const ListCommentCreatedAtSchema = z.object({
31
+ after: z.string().regex(RegExp('^\\d{10}$')).optional(),
32
+ before: z.string().regex(RegExp('^\\d{10}$')).optional(),
33
+ on: z.string().regex(RegExp('^\\d{10}$')).optional(),
34
+ between: z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(),
35
+ });
36
+ const ListCommentSortBySchema = z.looseObject({
37
+ asc: z.enum(['created_at']).optional(),
38
+ desc: z.enum(['created_at']).optional(),
39
+ });
40
+ const ListCommentBodySchema = z.looseObject({
41
+ limit: z.number().int().min(1).max(100).optional(),
42
+ offset: z.string().max(1000).optional(),
43
+ entity_type: z
44
+ .enum([
45
+ 'customer',
46
+ 'subscription',
47
+ 'invoice',
48
+ 'quote',
49
+ 'credit_note',
50
+ 'transaction',
51
+ 'plan',
52
+ 'addon',
53
+ 'coupon',
54
+ 'order',
55
+ 'business_entity',
56
+ 'item_family',
57
+ 'item',
58
+ 'item_price',
59
+ 'price_variant',
60
+ ])
61
+ .optional(),
62
+ entity_id: z.string().max(100).optional(),
63
+ created_at: ListCommentCreatedAtSchema.optional(),
64
+ sort_by: ListCommentSortBySchema.optional(),
65
+ });
66
+ export { ListCommentBodySchema };
@@ -0,0 +1,320 @@
1
+ // Generated Zod schemas: Coupon
2
+ // Actions: create, createForItems, updateForItems, list, update, copy
3
+ // Do not edit manually – regenerate via sdk-generator
4
+ import { z } from 'zod';
5
+ //Coupon.create
6
+ const CreateCouponMetaDataSchema = z.looseObject({});
7
+ const CreateCouponBodySchema = z.looseObject({
8
+ id: z.string().max(100),
9
+ name: z.string().max(50),
10
+ invoice_name: z.string().max(100).optional(),
11
+ discount_type: z
12
+ .enum(['fixed_amount', 'percentage', 'offer_quantity'])
13
+ .optional(),
14
+ discount_amount: z.number().int().min(0).optional(),
15
+ currency_code: z.string().max(3).optional(),
16
+ discount_percentage: z.number().min(0.01).max(100).optional(),
17
+ discount_quantity: z.number().int().min(1).optional(),
18
+ apply_on: z.enum([
19
+ 'invoice_amount',
20
+ 'specified_items_total',
21
+ 'each_specified_item',
22
+ 'each_unit_of_specified_items',
23
+ ]),
24
+ duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(),
25
+ duration_month: z.number().int().min(1).max(240).optional(),
26
+ valid_till: z.number().int().optional(),
27
+ max_redemptions: z.number().int().min(1).optional(),
28
+ invoice_notes: z.string().max(2000).optional(),
29
+ meta_data: CreateCouponMetaDataSchema.optional(),
30
+ included_in_mrr: z.boolean().optional(),
31
+ period: z.number().int().min(1).optional(),
32
+ period_unit: z.enum(['day', 'week', 'month', 'year']).optional(),
33
+ plan_constraint: z.enum(['none', 'all', 'specific']).optional(),
34
+ addon_constraint: z.enum(['none', 'all', 'specific']).optional(),
35
+ plan_ids: z.array(z.string().max(100).optional()).optional(),
36
+ addon_ids: z.array(z.string().max(100).optional()).optional(),
37
+ status: z.enum(['active', 'archived']).optional(),
38
+ });
39
+ export { CreateCouponBodySchema };
40
+ //Coupon.createForItems
41
+ const CreateForItemsCouponMetaDataSchema = z.looseObject({});
42
+ const CreateForItemsCouponItemConstraintsSchema = z.object({
43
+ constraint: z.array(z.enum(['none', 'all', 'specific', 'criteria']).optional()),
44
+ item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()),
45
+ item_price_ids: z.array(z.array(z.string().optional()).optional()).optional(),
46
+ });
47
+ const CreateForItemsCouponItemConstraintCriteriaSchema = z.object({
48
+ item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(),
49
+ item_family_ids: z
50
+ .array(z.array(z.string().optional()).optional())
51
+ .optional(),
52
+ currencies: z.array(z.array(z.string().optional()).optional()).optional(),
53
+ item_price_periods: z
54
+ .array(z.array(z.string().optional()).optional())
55
+ .optional(),
56
+ });
57
+ const CreateForItemsCouponCouponConstraintsSchema = z.object({
58
+ entity_type: z.array(z.enum(['customer']).optional()),
59
+ type: z.array(z
60
+ .enum([
61
+ 'max_redemptions',
62
+ 'unique_by',
63
+ 'existing_customer',
64
+ 'new_customer',
65
+ ])
66
+ .optional()),
67
+ value: z.array(z.string().max(65000).optional()).optional(),
68
+ });
69
+ const CreateForItemsCouponBodySchema = z.looseObject({
70
+ id: z.string().max(100),
71
+ name: z.string().max(50),
72
+ invoice_name: z.string().max(100).optional(),
73
+ discount_type: z
74
+ .enum(['fixed_amount', 'percentage', 'offer_quantity'])
75
+ .optional(),
76
+ discount_amount: z.number().int().min(0).optional(),
77
+ currency_code: z.string().max(3).optional(),
78
+ discount_percentage: z.number().min(0.01).max(100).optional(),
79
+ discount_quantity: z.number().int().min(1).optional(),
80
+ apply_on: z.enum([
81
+ 'invoice_amount',
82
+ 'specified_items_total',
83
+ 'each_specified_item',
84
+ 'each_unit_of_specified_items',
85
+ ]),
86
+ duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(),
87
+ duration_month: z.number().int().min(1).max(240).optional(),
88
+ valid_from: z.number().int().optional(),
89
+ valid_till: z.number().int().optional(),
90
+ max_redemptions: z.number().int().min(1).optional(),
91
+ invoice_notes: z.string().max(2000).optional(),
92
+ meta_data: CreateForItemsCouponMetaDataSchema.optional(),
93
+ included_in_mrr: z.boolean().optional(),
94
+ period: z.number().int().min(1).optional(),
95
+ period_unit: z.enum(['day', 'week', 'month', 'year']).optional(),
96
+ status: z.enum(['active', 'archived']).optional(),
97
+ item_constraints: CreateForItemsCouponItemConstraintsSchema.optional(),
98
+ item_constraint_criteria: CreateForItemsCouponItemConstraintCriteriaSchema.optional(),
99
+ coupon_constraints: CreateForItemsCouponCouponConstraintsSchema.optional(),
100
+ });
101
+ export { CreateForItemsCouponBodySchema };
102
+ //Coupon.updateForItems
103
+ const UpdateForItemsCouponMetaDataSchema = z.looseObject({});
104
+ const UpdateForItemsCouponItemConstraintsSchema = z.object({
105
+ constraint: z.array(z.enum(['none', 'all', 'specific', 'criteria']).optional()),
106
+ item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()),
107
+ item_price_ids: z.array(z.array(z.string().optional()).optional()).optional(),
108
+ });
109
+ const UpdateForItemsCouponItemConstraintCriteriaSchema = z.object({
110
+ item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(),
111
+ item_family_ids: z
112
+ .array(z.array(z.string().optional()).optional())
113
+ .optional(),
114
+ currencies: z.array(z.array(z.string().optional()).optional()).optional(),
115
+ item_price_periods: z
116
+ .array(z.array(z.string().optional()).optional())
117
+ .optional(),
118
+ });
119
+ const UpdateForItemsCouponCouponConstraintsSchema = z.object({
120
+ entity_type: z.array(z.enum(['customer']).optional()),
121
+ type: z.array(z
122
+ .enum([
123
+ 'max_redemptions',
124
+ 'unique_by',
125
+ 'existing_customer',
126
+ 'new_customer',
127
+ ])
128
+ .optional()),
129
+ value: z.array(z.string().max(65000).optional()).optional(),
130
+ });
131
+ const UpdateForItemsCouponBodySchema = z.looseObject({
132
+ name: z.string().max(50).optional(),
133
+ invoice_name: z.string().max(100).optional(),
134
+ discount_type: z
135
+ .enum(['fixed_amount', 'percentage', 'offer_quantity'])
136
+ .optional(),
137
+ discount_amount: z.number().int().min(0).optional(),
138
+ currency_code: z.string().max(3).optional(),
139
+ discount_percentage: z.number().min(0.01).max(100).optional(),
140
+ discount_quantity: z.number().int().min(1).optional(),
141
+ apply_on: z
142
+ .enum([
143
+ 'invoice_amount',
144
+ 'specified_items_total',
145
+ 'each_specified_item',
146
+ 'each_unit_of_specified_items',
147
+ ])
148
+ .optional(),
149
+ duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(),
150
+ duration_month: z.number().int().min(1).max(240).optional(),
151
+ valid_from: z.number().int().optional(),
152
+ valid_till: z.number().int().optional(),
153
+ max_redemptions: z.number().int().min(1).optional(),
154
+ invoice_notes: z.string().max(2000).optional(),
155
+ meta_data: UpdateForItemsCouponMetaDataSchema.optional(),
156
+ included_in_mrr: z.boolean().optional(),
157
+ period: z.number().int().min(1).optional(),
158
+ period_unit: z.enum(['day', 'week', 'month', 'year']).optional(),
159
+ item_constraints: UpdateForItemsCouponItemConstraintsSchema.optional(),
160
+ item_constraint_criteria: UpdateForItemsCouponItemConstraintCriteriaSchema.optional(),
161
+ coupon_constraints: UpdateForItemsCouponCouponConstraintsSchema.optional(),
162
+ });
163
+ export { UpdateForItemsCouponBodySchema };
164
+ //Coupon.list
165
+ const ListCouponIdSchema = z.object({
166
+ is: z.string().min(1).optional(),
167
+ is_not: z.string().min(1).optional(),
168
+ starts_with: z.string().min(1).optional(),
169
+ in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
170
+ not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
171
+ });
172
+ const ListCouponNameSchema = z.object({
173
+ is: z.string().min(1).optional(),
174
+ is_not: z.string().min(1).optional(),
175
+ starts_with: z.string().min(1).optional(),
176
+ in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
177
+ not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
178
+ });
179
+ const ListCouponDiscountTypeSchema = z.object({
180
+ is: z.enum(['fixed_amount', 'percentage', 'offer_quantity']).optional(),
181
+ is_not: z.enum(['fixed_amount', 'percentage', 'offer_quantity']).optional(),
182
+ in: z.enum(['fixed_amount', 'percentage', 'offer_quantity']).optional(),
183
+ not_in: z.enum(['fixed_amount', 'percentage', 'offer_quantity']).optional(),
184
+ });
185
+ const ListCouponDurationTypeSchema = z.object({
186
+ is: z.enum(['one_time', 'forever', 'limited_period']).optional(),
187
+ is_not: z.enum(['one_time', 'forever', 'limited_period']).optional(),
188
+ in: z.enum(['one_time', 'forever', 'limited_period']).optional(),
189
+ not_in: z.enum(['one_time', 'forever', 'limited_period']).optional(),
190
+ });
191
+ const ListCouponStatusSchema = z.object({
192
+ is: z.enum(['active', 'expired', 'archived', 'deleted', 'future']).optional(),
193
+ is_not: z
194
+ .enum(['active', 'expired', 'archived', 'deleted', 'future'])
195
+ .optional(),
196
+ in: z.enum(['active', 'expired', 'archived', 'deleted', 'future']).optional(),
197
+ not_in: z
198
+ .enum(['active', 'expired', 'archived', 'deleted', 'future'])
199
+ .optional(),
200
+ });
201
+ const ListCouponApplyOnSchema = z.object({
202
+ is: z
203
+ .enum([
204
+ 'invoice_amount',
205
+ 'specified_items_total',
206
+ 'each_specified_item',
207
+ 'each_unit_of_specified_items',
208
+ ])
209
+ .optional(),
210
+ is_not: z
211
+ .enum([
212
+ 'invoice_amount',
213
+ 'specified_items_total',
214
+ 'each_specified_item',
215
+ 'each_unit_of_specified_items',
216
+ ])
217
+ .optional(),
218
+ in: z
219
+ .enum([
220
+ 'invoice_amount',
221
+ 'specified_items_total',
222
+ 'each_specified_item',
223
+ 'each_unit_of_specified_items',
224
+ ])
225
+ .optional(),
226
+ not_in: z
227
+ .enum([
228
+ 'invoice_amount',
229
+ 'specified_items_total',
230
+ 'each_specified_item',
231
+ 'each_unit_of_specified_items',
232
+ ])
233
+ .optional(),
234
+ });
235
+ const ListCouponCreatedAtSchema = z.object({
236
+ after: z.string().regex(RegExp('^\\d{10}$')).optional(),
237
+ before: z.string().regex(RegExp('^\\d{10}$')).optional(),
238
+ on: z.string().regex(RegExp('^\\d{10}$')).optional(),
239
+ between: z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(),
240
+ });
241
+ const ListCouponUpdatedAtSchema = z.object({
242
+ after: z.string().regex(RegExp('^\\d{10}$')).optional(),
243
+ before: z.string().regex(RegExp('^\\d{10}$')).optional(),
244
+ on: z.string().regex(RegExp('^\\d{10}$')).optional(),
245
+ between: z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(),
246
+ });
247
+ const ListCouponSortBySchema = z.looseObject({
248
+ asc: z.enum(['created_at']).optional(),
249
+ desc: z.enum(['created_at']).optional(),
250
+ });
251
+ const ListCouponCurrencyCodeSchema = z.object({
252
+ is: z.string().min(1).optional(),
253
+ is_not: z.string().min(1).optional(),
254
+ starts_with: z.string().min(1).optional(),
255
+ in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
256
+ not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
257
+ });
258
+ const ListCouponApplicableItemPriceIdsSchema = z.object({
259
+ is: z.string().min(1).optional(),
260
+ in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
261
+ });
262
+ const ListCouponBodySchema = z.looseObject({
263
+ limit: z.number().int().min(1).max(100).optional(),
264
+ offset: z.string().max(1000).optional(),
265
+ id: ListCouponIdSchema.optional(),
266
+ name: ListCouponNameSchema.optional(),
267
+ discount_type: ListCouponDiscountTypeSchema.optional(),
268
+ duration_type: ListCouponDurationTypeSchema.optional(),
269
+ status: ListCouponStatusSchema.optional(),
270
+ apply_on: ListCouponApplyOnSchema.optional(),
271
+ created_at: ListCouponCreatedAtSchema.optional(),
272
+ updated_at: ListCouponUpdatedAtSchema.optional(),
273
+ sort_by: ListCouponSortBySchema.optional(),
274
+ currency_code: ListCouponCurrencyCodeSchema.optional(),
275
+ applicable_item_price_ids: ListCouponApplicableItemPriceIdsSchema.optional(),
276
+ });
277
+ export { ListCouponBodySchema };
278
+ //Coupon.update
279
+ const UpdateCouponMetaDataSchema = z.looseObject({});
280
+ const UpdateCouponBodySchema = z.looseObject({
281
+ name: z.string().max(50).optional(),
282
+ invoice_name: z.string().max(100).optional(),
283
+ discount_type: z
284
+ .enum(['fixed_amount', 'percentage', 'offer_quantity'])
285
+ .optional(),
286
+ discount_amount: z.number().int().min(0).optional(),
287
+ currency_code: z.string().max(3).optional(),
288
+ discount_percentage: z.number().min(0.01).max(100).optional(),
289
+ discount_quantity: z.number().int().min(1).optional(),
290
+ apply_on: z
291
+ .enum([
292
+ 'invoice_amount',
293
+ 'specified_items_total',
294
+ 'each_specified_item',
295
+ 'each_unit_of_specified_items',
296
+ ])
297
+ .optional(),
298
+ duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(),
299
+ duration_month: z.number().int().min(1).max(240).optional(),
300
+ valid_till: z.number().int().optional(),
301
+ max_redemptions: z.number().int().min(1).optional(),
302
+ invoice_notes: z.string().max(2000).optional(),
303
+ meta_data: UpdateCouponMetaDataSchema.optional(),
304
+ included_in_mrr: z.boolean().optional(),
305
+ period: z.number().int().min(1).optional(),
306
+ period_unit: z.enum(['day', 'week', 'month', 'year']).optional(),
307
+ plan_constraint: z.enum(['none', 'all', 'specific']).optional(),
308
+ addon_constraint: z.enum(['none', 'all', 'specific']).optional(),
309
+ plan_ids: z.array(z.string().max(100).optional()).optional(),
310
+ addon_ids: z.array(z.string().max(100).optional()).optional(),
311
+ });
312
+ export { UpdateCouponBodySchema };
313
+ //Coupon.copy
314
+ const CopyCouponBodySchema = z.looseObject({
315
+ from_site: z.string().max(50),
316
+ id_at_from_site: z.string().max(100),
317
+ id: z.string().max(100).optional(),
318
+ for_site_merging: z.boolean().default(false).optional(),
319
+ });
320
+ export { CopyCouponBodySchema };
@@ -0,0 +1,46 @@
1
+ // Generated Zod schemas: CouponCode
2
+ // Actions: create, list
3
+ // Do not edit manually – regenerate via sdk-generator
4
+ import { z } from 'zod';
5
+ //CouponCode.create
6
+ const CreateCouponCodeBodySchema = z.looseObject({
7
+ coupon_id: z.string().max(100),
8
+ coupon_set_name: z.string().max(50),
9
+ code: z.string().max(50),
10
+ });
11
+ export { CreateCouponCodeBodySchema };
12
+ //CouponCode.list
13
+ const ListCouponCodeCodeSchema = z.object({
14
+ is: z.string().min(1).optional(),
15
+ is_not: z.string().min(1).optional(),
16
+ starts_with: z.string().min(1).optional(),
17
+ in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
18
+ not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
19
+ });
20
+ const ListCouponCodeCouponIdSchema = z.object({
21
+ is: z.string().min(1).optional(),
22
+ is_not: z.string().min(1).optional(),
23
+ starts_with: z.string().min(1).optional(),
24
+ in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
25
+ not_in: z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(),
26
+ });
27
+ const ListCouponCodeCouponSetNameSchema = z.object({
28
+ is: z.string().min(1).optional(),
29
+ is_not: z.string().min(1).optional(),
30
+ starts_with: z.string().min(1).optional(),
31
+ });
32
+ const ListCouponCodeStatusSchema = z.object({
33
+ is: z.enum(['not_redeemed', 'redeemed', 'archived']).optional(),
34
+ is_not: z.enum(['not_redeemed', 'redeemed', 'archived']).optional(),
35
+ in: z.enum(['not_redeemed', 'redeemed', 'archived']).optional(),
36
+ not_in: z.enum(['not_redeemed', 'redeemed', 'archived']).optional(),
37
+ });
38
+ const ListCouponCodeBodySchema = z.looseObject({
39
+ limit: z.number().int().min(1).max(100).optional(),
40
+ offset: z.string().max(1000).optional(),
41
+ code: ListCouponCodeCodeSchema.optional(),
42
+ coupon_id: ListCouponCodeCouponIdSchema.optional(),
43
+ coupon_set_name: ListCouponCodeCouponSetNameSchema.optional(),
44
+ status: ListCouponCodeStatusSchema.optional(),
45
+ });
46
+ export { ListCouponCodeBodySchema };