From dfa8328c4e45703a8d4e387a1241dc2460c3cfec Mon Sep 17 00:00:00 2001 From: cb-alish Date: Wed, 6 May 2026 12:58:35 +0530 Subject: [PATCH 1/7] Added the zod schemas for all the API methods --- src/validation/addon/copy.validation.ts | 11 + src/validation/addon/create.validation.ts | 73 ++ src/validation/addon/update.validation.ts | 71 ++ src/validation/address/retrieve.validation.ts | 9 + src/validation/address/update.validation.ts | 25 + src/validation/alert/create.validation.ts | 24 + src/validation/alert/update.validation.ts | 13 + .../attached_item/create.validation.ts | 24 + .../attached_item/delete.validation.ts | 8 + .../attached_item/retrieve.validation.ts | 8 + .../attached_item/update.validation.ts | 23 + .../create_transfers.validation.ts | 12 + .../get_transfers.validation.ts | 34 + .../card/copy_card_for_customer.validation.ts | 8 + .../switch_gateway_for_customer.validation.ts | 66 ++ .../update_card_for_customer.validation.ts | 93 +++ src/validation/comment/create.validation.ts | 27 + src/validation/comment/list.validation.ts | 41 ++ src/validation/coupon/copy.validation.ts | 11 + src/validation/coupon/create.validation.ts | 38 + .../coupon/create_for_items.validation.ts | 70 ++ src/validation/coupon/update.validation.ts | 38 + .../coupon/update_for_items.validation.ts | 70 ++ .../coupon_code/create.validation.ts | 10 + .../coupon_set/add_coupon_codes.validation.ts | 8 + .../coupon_set/create.validation.ts | 12 + .../coupon_set/update.validation.ts | 10 + .../credit_note/create.validation.ts | 53 ++ .../credit_notes_for_customer.validation.ts | 9 + .../credit_note/delete.validation.ts | 8 + .../import_credit_note.validation.ts | 167 +++++ src/validation/credit_note/pdf.validation.ts | 8 + .../credit_note/record_refund.validation.ts | 27 + .../credit_note/refund.validation.ts | 10 + .../remove_tax_withheld_refund.validation.ts | 11 + .../credit_note/retrieve.validation.ts | 20 + .../void_credit_note.validation.ts | 8 + .../currency/add_schedule.validation.ts | 9 + src/validation/currency/create.validation.ts | 10 + src/validation/currency/list.validation.ts | 9 + src/validation/currency/update.validation.ts | 9 + .../customer/add_contact.validation.ts | 19 + .../add_promotional_credits.validation.ts | 14 + .../assign_payment_role.validation.ts | 9 + .../change_billing_date.validation.ts | 24 + .../customer/collect_payment.validation.ts | 150 ++++ .../contacts_for_customer.validation.ts | 9 + src/validation/customer/create.validation.ts | 378 ++++++++++ .../deduct_promotional_credits.validation.ts | 14 + src/validation/customer/delete.validation.ts | 8 + .../customer/delete_contact.validation.ts | 11 + .../customer/hierarchy.validation.ts | 14 + .../list_hierarchy_detail.validation.ts | 16 + src/validation/customer/merge.validation.ts | 9 + src/validation/customer/move.validation.ts | 9 + .../record_excess_payment.validation.ts | 26 + .../customer/relationships.validation.ts | 31 + .../set_promotional_credits.validation.ts | 14 + src/validation/customer/update.validation.ts | 79 +++ .../update_billing_info.validation.ts | 52 ++ .../customer/update_contact.validation.ts | 19 + .../update_hierarchy_settings.validation.ts | 28 + .../update_payment_method.validation.ts | 125 ++++ .../entitlements_for_customer.validation.ts | 10 + .../differential_price/create.validation.ts | 29 + .../differential_price/delete.validation.ts | 8 + .../differential_price/retrieve.validation.ts | 8 + .../differential_price/update.validation.ts | 28 + .../entitlement/create.validation.ts | 25 + ...nt_override_for_subscription.validation.ts | 23 + ...nt_override_for_subscription.validation.ts | 13 + .../advance_invoice_estimate.validation.ts | 28 + .../cancel_subscription.validation.ts | 47 ++ ...ancel_subscription_for_items.validation.ts | 49 ++ .../estimate/change_term_end.validation.ts | 10 + .../estimate/create_invoice.validation.ts | 87 +++ .../create_invoice_for_items.validation.ts | 132 ++++ ...te_sub_for_customer_estimate.validation.ts | 120 ++++ .../create_sub_item_estimate.validation.ts | 195 ++++++ ...b_item_for_customer_estimate.validation.ts | 165 +++++ .../create_subscription.validation.ts | 173 +++++ .../estimate/gift_subscription.validation.ts | 115 +++ .../gift_subscription_for_items.validation.ts | 125 ++++ .../estimate/pause_subscription.validation.ts | 17 + .../estimate/payment_schedules.validation.ts | 11 + .../regenerate_invoice_estimate.validation.ts | 11 + .../estimate/renewal_estimate.validation.ts | 12 + .../resume_subscription.validation.ts | 15 + .../upcoming_invoices_estimate.validation.ts | 8 + .../update_subscription.validation.ts | 143 ++++ ...pdate_subscription_for_items.validation.ts | 174 +++++ .../export/attached_items.validation.ts | 100 +++ .../export/credit_notes.validation.ts | 210 ++++++ src/validation/export/customers.validation.ts | 191 +++++ .../export/item_families.validation.ts | 43 ++ src/validation/export/items.validation.ts | 100 +++ src/validation/export/orders.validation.ts | 209 ++++++ .../export/price_variants.validation.ts | 59 ++ .../export/transactions.validation.ts | 654 ++++++++++++++++++ src/validation/feature/create.validation.ts | 19 + src/validation/feature/update.validation.ts | 17 + src/validation/gift/create.validation.ts | 111 +++ .../gift/create_for_items.validation.ts | 120 ++++ src/validation/gift/list.validation.ts | 43 ++ src/validation/gift/update_gift.validation.ts | 9 + .../hosted_page/accept_quote.validation.ts | 13 + .../checkout_existing.validation.ts | 177 +++++ .../checkout_existing_for_items.validation.ts | 219 ++++++ .../hosted_page/checkout_gift.validation.ts | 26 + .../checkout_gift_for_items.validation.ts | 33 + .../hosted_page/checkout_new.validation.ts | 218 ++++++ .../checkout_new_for_items.validation.ts | 255 +++++++ .../checkout_one_time.validation.ts | 167 +++++ .../checkout_one_time_for_items.validation.ts | 208 ++++++ .../hosted_page/claim_gift.validation.ts | 16 + .../hosted_page/collect_now.validation.ts | 81 +++ .../hosted_page/events.validation.ts | 11 + .../extend_subscription.validation.ts | 13 + .../manage_payment_sources.validation.ts | 80 +++ .../hosted_page/pre_cancel.validation.ts | 14 + .../retrieve_agreement_pdf.validation.ts | 8 + .../hosted_page/update_card.validation.ts | 85 +++ .../update_payment_method.validation.ts | 85 +++ .../hosted_page/view_voucher.validation.ts | 15 + .../import_receipt.validation.ts | 17 + .../import_subscription.validation.ts | 24 + .../process_receipt.validation.ts | 25 + .../retrieve_store_subs.validation.ts | 8 + src/validation/index.ts | 309 +++++++++ .../invoice/add_addon_charge.validation.ts | 19 + .../invoice/add_charge.validation.ts | 24 + .../invoice/add_charge_item.validation.ts | 32 + .../invoice/apply_credits.validation.ts | 12 + ...pply_payment_schedule_scheme.validation.ts | 9 + .../invoice/apply_payments.validation.ts | 13 + src/validation/invoice/charge.validation.ts | 32 + .../invoice/charge_addon.validation.ts | 22 + src/validation/invoice/close.validation.ts | 31 + .../invoice/collect_payment.validation.ts | 12 + src/validation/invoice/create.validation.ts | 371 ++++++++++ .../create_for_charge_item.validation.ts | 37 + ...for_charge_items_and_charges.validation.ts | 419 +++++++++++ src/validation/invoice/delete.validation.ts | 8 + .../invoice/delete_line_items.validation.ts | 11 + .../invoice/import_invoice.validation.ts | 265 +++++++ .../invoices_for_customer.validation.ts | 9 + .../invoices_for_subscription.validation.ts | 9 + .../invoice/pause_dunning.validation.ts | 9 + src/validation/invoice/pdf.validation.ts | 8 + .../invoice/record_payment.validation.ts | 28 + .../invoice/record_refund.validation.ts | 41 ++ .../invoice/record_tax_withheld.validation.ts | 14 + src/validation/invoice/refund.validation.ts | 24 + .../invoice/remove_credit_note.validation.ts | 11 + .../invoice/remove_payment.validation.ts | 11 + .../invoice/remove_tax_withheld.validation.ts | 11 + .../invoice/resume_dunning.validation.ts | 8 + src/validation/invoice/retrieve.validation.ts | 20 + .../invoice/stop_dunning.validation.ts | 8 + .../invoice/update_details.validation.ts | 54 ++ .../invoice/void_invoice.validation.ts | 9 + .../invoice/write_off.validation.ts | 8 + src/validation/item/create.validation.ts | 42 ++ src/validation/item/update.validation.ts | 48 ++ .../add_item_entitlements.validation.ts | 19 + ...tem_entitlements_for_feature.validation.ts | 10 + .../item_entitlements_for_item.validation.ts | 11 + ...e_item_entitlements_for_item.validation.ts | 16 + .../item_family/create.validation.ts | 11 + .../item_family/update.validation.ts | 9 + .../item_price/create.validation.ts | 84 +++ .../find_applicable_item_prices.validation.ts | 15 + .../find_applicable_items.validation.ts | 14 + .../item_price/update.validation.ts | 82 +++ .../process_receipt.validation.ts | 24 + .../offer_event/offer_events.validation.ts | 9 + .../offer_fulfillments.validation.ts | 9 + .../offer_fulfillments_update.validation.ts | 10 + .../list.validation.ts | 22 + .../list.validation.ts | 75 ++ .../move.validation.ts | 8 + ...nsforomnichannelsubscription.validation.ts | 10 + ...ni_sub_item_schedule_changes.validation.ts | 10 + src/validation/order/cancel.validation.ts | 30 + src/validation/order/create.validation.ts | 18 + ...reate_refundable_credit_note.validation.ts | 27 + .../order/import_order.validation.ts | 93 +++ .../order/orders_for_invoice.validation.ts | 9 + src/validation/order/reopen.validation.ts | 8 + src/validation/order/resend.validation.ts | 14 + src/validation/order/update.validation.ts | 93 +++ .../payment_intent/create.validation.ts | 60 ++ .../payment_intent/update.validation.ts | 56 ++ .../create.validation.ts | 17 + .../create_bank_account.validation.ts | 33 + .../payment_source/create_card.validation.ts | 32 + .../create_using_payment_intent.validation.ts | 71 ++ ...create_using_permanent_token.validation.ts | 114 +++ .../create_using_temp_token.validation.ts | 60 ++ .../create_using_token.validation.ts | 10 + ...reate_voucher_payment_source.validation.ts | 20 + .../export_payment_source.validation.ts | 8 + .../switch_gateway_account.validation.ts | 8 + .../update_bank_account.validation.ts | 13 + .../payment_source/update_card.validation.ts | 27 + .../verify_bank_account.validation.ts | 9 + .../payment_voucher/create.validation.ts | 18 + .../payment_vouchersforcustomer.validation.ts | 21 + .../payment_vouchersforinvoice.validation.ts | 21 + .../personalized_offers.validation.ts | 25 + src/validation/plan/copy.validation.ts | 11 + src/validation/plan/create.validation.ts | 112 +++ src/validation/plan/update.validation.ts | 108 +++ .../portal_session/activate.validation.ts | 8 + .../portal_session/create.validation.ts | 13 + .../price_variant/create.validation.ts | 18 + .../price_variant/update.validation.ts | 17 + ...te_for_existing_subscription.validation.ts | 57 ++ .../create_for_new_subscription.validation.ts | 106 +++ .../promotional_credit/add.validation.ts | 16 + .../promotional_credit/deduct.validation.ts | 16 + .../promotional_credit/list.validation.ts | 35 + .../promotional_credit/set.validation.ts | 16 + src/validation/purchase/create.validation.ts | 149 ++++ .../purchase/estimate.validation.ts | 126 ++++ src/validation/quote/convert.validation.ts | 18 + ...for_charge_items_and_charges.validation.ts | 110 +++ .../create_for_onetime_charges.validation.ts | 63 ++ ...reate_sub_for_customer_quote.validation.ts | 115 +++ ...sub_items_for_customer_quote.validation.ts | 173 +++++ src/validation/quote/delete.validation.ts | 8 + ...sub_customer_quote_for_items.validation.ts | 178 +++++ ...reate_sub_for_customer_quote.validation.ts | 115 +++ ...for_charge_items_and_charges.validation.ts | 108 +++ .../quote/edit_one_time_quote.validation.ts | 60 ++ ...it_update_subscription_quote.validation.ts | 149 ++++ ...subscription_quote_for_items.validation.ts | 191 +++++ .../quote/extend_expiry_date.validation.ts | 8 + src/validation/quote/pdf.validation.ts | 9 + .../quote_line_groups_for_quote.validation.ts | 9 + .../update_signature_status.validation.ts | 14 + .../quote/update_status.validation.ts | 16 + .../update_subscription_quote.validation.ts | 150 ++++ ...subscription_quote_for_items.validation.ts | 188 +++++ .../create_for_subscription.validation.ts | 112 +++ src/validation/ramp/update.validation.ts | 112 +++ .../recorded_purchase/create.validation.ts | 29 + .../retrieve_latest.validation.ts | 10 + .../site_migration_detail/list.validation.ts | 78 +++ .../add_charge_at_term_end.validation.ts | 17 + .../subscription/cancel.validation.ts | 46 ++ .../cancel_for_items.validation.ts | 50 ++ .../change_term_end.validation.ts | 10 + .../charge_addon_at_term_end.validation.ts | 14 + .../charge_future_renewals.validation.ts | 28 + ...tract_terms_for_subscription.validation.ts | 14 + .../subscription/create.validation.ts | 506 ++++++++++++++ .../create_for_customer.validation.ts | 197 ++++++ .../create_with_items.validation.ts | 230 ++++++ ...dit_advance_invoice_schedule.validation.ts | 28 + .../import_contract_term.validation.ts | 30 + .../import_for_customer.validation.ts | 144 ++++ .../import_for_items.validation.ts | 168 +++++ .../import_subscription.validation.ts | 417 +++++++++++ .../import_unbilled_charges.validation.ts | 69 ++ .../subscription/list_discounts.validation.ts | 9 + .../subscription/move.validation.ts | 9 + .../override_billing_profile.validation.ts | 9 + .../subscription/pause.validation.ts | 15 + .../subscription/reactivate.validation.ts | 87 +++ .../regenerate_invoice.validation.ts | 11 + ...ove_advance_invoice_schedule.validation.ts | 13 + .../subscription/remove_coupons.validation.ts | 8 + ...emove_scheduled_cancellation.validation.ts | 20 + .../subscription/resume.validation.ts | 71 ++ .../subscriptions_for_customer.validation.ts | 9 + .../subscription/update.validation.ts | 440 ++++++++++++ .../update_for_items.validation.ts | 478 +++++++++++++ ...ion_entitlement_availability.validation.ts | 15 + ...ntitlements_for_subscription.validation.ts | 13 + .../time_machine/start_afresh.validation.ts | 8 + .../time_machine/travel_forward.validation.ts | 8 + .../create_authorization.validation.ts | 11 + .../delete_offline_transaction.validation.ts | 8 + .../payments_for_invoice.validation.ts | 9 + .../transaction/reconcile.validation.ts | 10 + .../transaction/record_refund.validation.ts | 22 + .../transaction/refund.validation.ts | 9 + .../transactions_for_customer.validation.ts | 9 + ...ransactions_for_subscription.validation.ts | 9 + .../unbilled_charge/create.validation.ts | 57 ++ .../create_unbilled_charge.validation.ts | 44 ++ .../invoice_now_estimate.validation.ts | 9 + .../invoice_unbilled_charges.validation.ts | 9 + src/validation/usage/create.validation.ts | 13 + src/validation/usage/delete.validation.ts | 8 + src/validation/usage/list.validation.ts | 60 ++ src/validation/usage/pdf.validation.ts | 12 + src/validation/usage/retrieve.validation.ts | 8 + ...age_charges_for_subscription.validation.ts | 14 + .../usage_event/batch_ingest.validation.ts | 15 + .../usage_event/create.validation.ts | 12 + .../usage_file/upload_url.validation.ts | 9 + ...age_summary_for_subscription.validation.ts | 15 + .../virtual_bank_account/create.validation.ts | 21 + ...create_using_permanent_token.validation.ts | 21 + .../webhook_endpoint/create.validation.ts | 252 +++++++ .../webhook_endpoint/list.validation.ts | 9 + .../webhook_endpoint/update.validation.ts | 249 +++++++ 309 files changed, 18024 insertions(+) create mode 100644 src/validation/addon/copy.validation.ts create mode 100644 src/validation/addon/create.validation.ts create mode 100644 src/validation/addon/update.validation.ts create mode 100644 src/validation/address/retrieve.validation.ts create mode 100644 src/validation/address/update.validation.ts create mode 100644 src/validation/alert/create.validation.ts create mode 100644 src/validation/alert/update.validation.ts create mode 100644 src/validation/attached_item/create.validation.ts create mode 100644 src/validation/attached_item/delete.validation.ts create mode 100644 src/validation/attached_item/retrieve.validation.ts create mode 100644 src/validation/attached_item/update.validation.ts create mode 100644 src/validation/business_entity/create_transfers.validation.ts create mode 100644 src/validation/business_entity/get_transfers.validation.ts create mode 100644 src/validation/card/copy_card_for_customer.validation.ts create mode 100644 src/validation/card/switch_gateway_for_customer.validation.ts create mode 100644 src/validation/card/update_card_for_customer.validation.ts create mode 100644 src/validation/comment/create.validation.ts create mode 100644 src/validation/comment/list.validation.ts create mode 100644 src/validation/coupon/copy.validation.ts create mode 100644 src/validation/coupon/create.validation.ts create mode 100644 src/validation/coupon/create_for_items.validation.ts create mode 100644 src/validation/coupon/update.validation.ts create mode 100644 src/validation/coupon/update_for_items.validation.ts create mode 100644 src/validation/coupon_code/create.validation.ts create mode 100644 src/validation/coupon_set/add_coupon_codes.validation.ts create mode 100644 src/validation/coupon_set/create.validation.ts create mode 100644 src/validation/coupon_set/update.validation.ts create mode 100644 src/validation/credit_note/create.validation.ts create mode 100644 src/validation/credit_note/credit_notes_for_customer.validation.ts create mode 100644 src/validation/credit_note/delete.validation.ts create mode 100644 src/validation/credit_note/import_credit_note.validation.ts create mode 100644 src/validation/credit_note/pdf.validation.ts create mode 100644 src/validation/credit_note/record_refund.validation.ts create mode 100644 src/validation/credit_note/refund.validation.ts create mode 100644 src/validation/credit_note/remove_tax_withheld_refund.validation.ts create mode 100644 src/validation/credit_note/retrieve.validation.ts create mode 100644 src/validation/credit_note/void_credit_note.validation.ts create mode 100644 src/validation/currency/add_schedule.validation.ts create mode 100644 src/validation/currency/create.validation.ts create mode 100644 src/validation/currency/list.validation.ts create mode 100644 src/validation/currency/update.validation.ts create mode 100644 src/validation/customer/add_contact.validation.ts create mode 100644 src/validation/customer/add_promotional_credits.validation.ts create mode 100644 src/validation/customer/assign_payment_role.validation.ts create mode 100644 src/validation/customer/change_billing_date.validation.ts create mode 100644 src/validation/customer/collect_payment.validation.ts create mode 100644 src/validation/customer/contacts_for_customer.validation.ts create mode 100644 src/validation/customer/create.validation.ts create mode 100644 src/validation/customer/deduct_promotional_credits.validation.ts create mode 100644 src/validation/customer/delete.validation.ts create mode 100644 src/validation/customer/delete_contact.validation.ts create mode 100644 src/validation/customer/hierarchy.validation.ts create mode 100644 src/validation/customer/list_hierarchy_detail.validation.ts create mode 100644 src/validation/customer/merge.validation.ts create mode 100644 src/validation/customer/move.validation.ts create mode 100644 src/validation/customer/record_excess_payment.validation.ts create mode 100644 src/validation/customer/relationships.validation.ts create mode 100644 src/validation/customer/set_promotional_credits.validation.ts create mode 100644 src/validation/customer/update.validation.ts create mode 100644 src/validation/customer/update_billing_info.validation.ts create mode 100644 src/validation/customer/update_contact.validation.ts create mode 100644 src/validation/customer/update_hierarchy_settings.validation.ts create mode 100644 src/validation/customer/update_payment_method.validation.ts create mode 100644 src/validation/customer_entitlement/entitlements_for_customer.validation.ts create mode 100644 src/validation/differential_price/create.validation.ts create mode 100644 src/validation/differential_price/delete.validation.ts create mode 100644 src/validation/differential_price/retrieve.validation.ts create mode 100644 src/validation/differential_price/update.validation.ts create mode 100644 src/validation/entitlement/create.validation.ts create mode 100644 src/validation/entitlement_override/add_entitlement_override_for_subscription.validation.ts create mode 100644 src/validation/entitlement_override/list_entitlement_override_for_subscription.validation.ts create mode 100644 src/validation/estimate/advance_invoice_estimate.validation.ts create mode 100644 src/validation/estimate/cancel_subscription.validation.ts create mode 100644 src/validation/estimate/cancel_subscription_for_items.validation.ts create mode 100644 src/validation/estimate/change_term_end.validation.ts create mode 100644 src/validation/estimate/create_invoice.validation.ts create mode 100644 src/validation/estimate/create_invoice_for_items.validation.ts create mode 100644 src/validation/estimate/create_sub_for_customer_estimate.validation.ts create mode 100644 src/validation/estimate/create_sub_item_estimate.validation.ts create mode 100644 src/validation/estimate/create_sub_item_for_customer_estimate.validation.ts create mode 100644 src/validation/estimate/create_subscription.validation.ts create mode 100644 src/validation/estimate/gift_subscription.validation.ts create mode 100644 src/validation/estimate/gift_subscription_for_items.validation.ts create mode 100644 src/validation/estimate/pause_subscription.validation.ts create mode 100644 src/validation/estimate/payment_schedules.validation.ts create mode 100644 src/validation/estimate/regenerate_invoice_estimate.validation.ts create mode 100644 src/validation/estimate/renewal_estimate.validation.ts create mode 100644 src/validation/estimate/resume_subscription.validation.ts create mode 100644 src/validation/estimate/upcoming_invoices_estimate.validation.ts create mode 100644 src/validation/estimate/update_subscription.validation.ts create mode 100644 src/validation/estimate/update_subscription_for_items.validation.ts create mode 100644 src/validation/export/attached_items.validation.ts create mode 100644 src/validation/export/credit_notes.validation.ts create mode 100644 src/validation/export/customers.validation.ts create mode 100644 src/validation/export/item_families.validation.ts create mode 100644 src/validation/export/items.validation.ts create mode 100644 src/validation/export/orders.validation.ts create mode 100644 src/validation/export/price_variants.validation.ts create mode 100644 src/validation/export/transactions.validation.ts create mode 100644 src/validation/feature/create.validation.ts create mode 100644 src/validation/feature/update.validation.ts create mode 100644 src/validation/gift/create.validation.ts create mode 100644 src/validation/gift/create_for_items.validation.ts create mode 100644 src/validation/gift/list.validation.ts create mode 100644 src/validation/gift/update_gift.validation.ts create mode 100644 src/validation/hosted_page/accept_quote.validation.ts create mode 100644 src/validation/hosted_page/checkout_existing.validation.ts create mode 100644 src/validation/hosted_page/checkout_existing_for_items.validation.ts create mode 100644 src/validation/hosted_page/checkout_gift.validation.ts create mode 100644 src/validation/hosted_page/checkout_gift_for_items.validation.ts create mode 100644 src/validation/hosted_page/checkout_new.validation.ts create mode 100644 src/validation/hosted_page/checkout_new_for_items.validation.ts create mode 100644 src/validation/hosted_page/checkout_one_time.validation.ts create mode 100644 src/validation/hosted_page/checkout_one_time_for_items.validation.ts create mode 100644 src/validation/hosted_page/claim_gift.validation.ts create mode 100644 src/validation/hosted_page/collect_now.validation.ts create mode 100644 src/validation/hosted_page/events.validation.ts create mode 100644 src/validation/hosted_page/extend_subscription.validation.ts create mode 100644 src/validation/hosted_page/manage_payment_sources.validation.ts create mode 100644 src/validation/hosted_page/pre_cancel.validation.ts create mode 100644 src/validation/hosted_page/retrieve_agreement_pdf.validation.ts create mode 100644 src/validation/hosted_page/update_card.validation.ts create mode 100644 src/validation/hosted_page/update_payment_method.validation.ts create mode 100644 src/validation/hosted_page/view_voucher.validation.ts create mode 100644 src/validation/in_app_subscription/import_receipt.validation.ts create mode 100644 src/validation/in_app_subscription/import_subscription.validation.ts create mode 100644 src/validation/in_app_subscription/process_receipt.validation.ts create mode 100644 src/validation/in_app_subscription/retrieve_store_subs.validation.ts create mode 100644 src/validation/index.ts create mode 100644 src/validation/invoice/add_addon_charge.validation.ts create mode 100644 src/validation/invoice/add_charge.validation.ts create mode 100644 src/validation/invoice/add_charge_item.validation.ts create mode 100644 src/validation/invoice/apply_credits.validation.ts create mode 100644 src/validation/invoice/apply_payment_schedule_scheme.validation.ts create mode 100644 src/validation/invoice/apply_payments.validation.ts create mode 100644 src/validation/invoice/charge.validation.ts create mode 100644 src/validation/invoice/charge_addon.validation.ts create mode 100644 src/validation/invoice/close.validation.ts create mode 100644 src/validation/invoice/collect_payment.validation.ts create mode 100644 src/validation/invoice/create.validation.ts create mode 100644 src/validation/invoice/create_for_charge_item.validation.ts create mode 100644 src/validation/invoice/create_for_charge_items_and_charges.validation.ts create mode 100644 src/validation/invoice/delete.validation.ts create mode 100644 src/validation/invoice/delete_line_items.validation.ts create mode 100644 src/validation/invoice/import_invoice.validation.ts create mode 100644 src/validation/invoice/invoices_for_customer.validation.ts create mode 100644 src/validation/invoice/invoices_for_subscription.validation.ts create mode 100644 src/validation/invoice/pause_dunning.validation.ts create mode 100644 src/validation/invoice/pdf.validation.ts create mode 100644 src/validation/invoice/record_payment.validation.ts create mode 100644 src/validation/invoice/record_refund.validation.ts create mode 100644 src/validation/invoice/record_tax_withheld.validation.ts create mode 100644 src/validation/invoice/refund.validation.ts create mode 100644 src/validation/invoice/remove_credit_note.validation.ts create mode 100644 src/validation/invoice/remove_payment.validation.ts create mode 100644 src/validation/invoice/remove_tax_withheld.validation.ts create mode 100644 src/validation/invoice/resume_dunning.validation.ts create mode 100644 src/validation/invoice/retrieve.validation.ts create mode 100644 src/validation/invoice/stop_dunning.validation.ts create mode 100644 src/validation/invoice/update_details.validation.ts create mode 100644 src/validation/invoice/void_invoice.validation.ts create mode 100644 src/validation/invoice/write_off.validation.ts create mode 100644 src/validation/item/create.validation.ts create mode 100644 src/validation/item/update.validation.ts create mode 100644 src/validation/item_entitlement/add_item_entitlements.validation.ts create mode 100644 src/validation/item_entitlement/item_entitlements_for_feature.validation.ts create mode 100644 src/validation/item_entitlement/item_entitlements_for_item.validation.ts create mode 100644 src/validation/item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.ts create mode 100644 src/validation/item_family/create.validation.ts create mode 100644 src/validation/item_family/update.validation.ts create mode 100644 src/validation/item_price/create.validation.ts create mode 100644 src/validation/item_price/find_applicable_item_prices.validation.ts create mode 100644 src/validation/item_price/find_applicable_items.validation.ts create mode 100644 src/validation/item_price/update.validation.ts create mode 100644 src/validation/non_subscription/process_receipt.validation.ts create mode 100644 src/validation/offer_event/offer_events.validation.ts create mode 100644 src/validation/offer_fulfillment/offer_fulfillments.validation.ts create mode 100644 src/validation/offer_fulfillment/offer_fulfillments_update.validation.ts create mode 100644 src/validation/omnichannel_one_time_order/list.validation.ts create mode 100644 src/validation/omnichannel_subscription/list.validation.ts create mode 100644 src/validation/omnichannel_subscription/move.validation.ts create mode 100644 src/validation/omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.ts create mode 100644 src/validation/omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.ts create mode 100644 src/validation/order/cancel.validation.ts create mode 100644 src/validation/order/create.validation.ts create mode 100644 src/validation/order/create_refundable_credit_note.validation.ts create mode 100644 src/validation/order/import_order.validation.ts create mode 100644 src/validation/order/orders_for_invoice.validation.ts create mode 100644 src/validation/order/reopen.validation.ts create mode 100644 src/validation/order/resend.validation.ts create mode 100644 src/validation/order/update.validation.ts create mode 100644 src/validation/payment_intent/create.validation.ts create mode 100644 src/validation/payment_intent/update.validation.ts create mode 100644 src/validation/payment_schedule_scheme/create.validation.ts create mode 100644 src/validation/payment_source/create_bank_account.validation.ts create mode 100644 src/validation/payment_source/create_card.validation.ts create mode 100644 src/validation/payment_source/create_using_payment_intent.validation.ts create mode 100644 src/validation/payment_source/create_using_permanent_token.validation.ts create mode 100644 src/validation/payment_source/create_using_temp_token.validation.ts create mode 100644 src/validation/payment_source/create_using_token.validation.ts create mode 100644 src/validation/payment_source/create_voucher_payment_source.validation.ts create mode 100644 src/validation/payment_source/export_payment_source.validation.ts create mode 100644 src/validation/payment_source/switch_gateway_account.validation.ts create mode 100644 src/validation/payment_source/update_bank_account.validation.ts create mode 100644 src/validation/payment_source/update_card.validation.ts create mode 100644 src/validation/payment_source/verify_bank_account.validation.ts create mode 100644 src/validation/payment_voucher/create.validation.ts create mode 100644 src/validation/payment_voucher/payment_vouchersforcustomer.validation.ts create mode 100644 src/validation/payment_voucher/payment_vouchersforinvoice.validation.ts create mode 100644 src/validation/personalized_offer/personalized_offers.validation.ts create mode 100644 src/validation/plan/copy.validation.ts create mode 100644 src/validation/plan/create.validation.ts create mode 100644 src/validation/plan/update.validation.ts create mode 100644 src/validation/portal_session/activate.validation.ts create mode 100644 src/validation/portal_session/create.validation.ts create mode 100644 src/validation/price_variant/create.validation.ts create mode 100644 src/validation/price_variant/update.validation.ts create mode 100644 src/validation/pricing_page_session/create_for_existing_subscription.validation.ts create mode 100644 src/validation/pricing_page_session/create_for_new_subscription.validation.ts create mode 100644 src/validation/promotional_credit/add.validation.ts create mode 100644 src/validation/promotional_credit/deduct.validation.ts create mode 100644 src/validation/promotional_credit/list.validation.ts create mode 100644 src/validation/promotional_credit/set.validation.ts create mode 100644 src/validation/purchase/create.validation.ts create mode 100644 src/validation/purchase/estimate.validation.ts create mode 100644 src/validation/quote/convert.validation.ts create mode 100644 src/validation/quote/create_for_charge_items_and_charges.validation.ts create mode 100644 src/validation/quote/create_for_onetime_charges.validation.ts create mode 100644 src/validation/quote/create_sub_for_customer_quote.validation.ts create mode 100644 src/validation/quote/create_sub_items_for_customer_quote.validation.ts create mode 100644 src/validation/quote/delete.validation.ts create mode 100644 src/validation/quote/edit_create_sub_customer_quote_for_items.validation.ts create mode 100644 src/validation/quote/edit_create_sub_for_customer_quote.validation.ts create mode 100644 src/validation/quote/edit_for_charge_items_and_charges.validation.ts create mode 100644 src/validation/quote/edit_one_time_quote.validation.ts create mode 100644 src/validation/quote/edit_update_subscription_quote.validation.ts create mode 100644 src/validation/quote/edit_update_subscription_quote_for_items.validation.ts create mode 100644 src/validation/quote/extend_expiry_date.validation.ts create mode 100644 src/validation/quote/pdf.validation.ts create mode 100644 src/validation/quote/quote_line_groups_for_quote.validation.ts create mode 100644 src/validation/quote/update_signature_status.validation.ts create mode 100644 src/validation/quote/update_status.validation.ts create mode 100644 src/validation/quote/update_subscription_quote.validation.ts create mode 100644 src/validation/quote/update_subscription_quote_for_items.validation.ts create mode 100644 src/validation/ramp/create_for_subscription.validation.ts create mode 100644 src/validation/ramp/update.validation.ts create mode 100644 src/validation/recorded_purchase/create.validation.ts create mode 100644 src/validation/resource_migration/retrieve_latest.validation.ts create mode 100644 src/validation/site_migration_detail/list.validation.ts create mode 100644 src/validation/subscription/add_charge_at_term_end.validation.ts create mode 100644 src/validation/subscription/cancel.validation.ts create mode 100644 src/validation/subscription/cancel_for_items.validation.ts create mode 100644 src/validation/subscription/change_term_end.validation.ts create mode 100644 src/validation/subscription/charge_addon_at_term_end.validation.ts create mode 100644 src/validation/subscription/charge_future_renewals.validation.ts create mode 100644 src/validation/subscription/contract_terms_for_subscription.validation.ts create mode 100644 src/validation/subscription/create.validation.ts create mode 100644 src/validation/subscription/create_for_customer.validation.ts create mode 100644 src/validation/subscription/create_with_items.validation.ts create mode 100644 src/validation/subscription/edit_advance_invoice_schedule.validation.ts create mode 100644 src/validation/subscription/import_contract_term.validation.ts create mode 100644 src/validation/subscription/import_for_customer.validation.ts create mode 100644 src/validation/subscription/import_for_items.validation.ts create mode 100644 src/validation/subscription/import_subscription.validation.ts create mode 100644 src/validation/subscription/import_unbilled_charges.validation.ts create mode 100644 src/validation/subscription/list_discounts.validation.ts create mode 100644 src/validation/subscription/move.validation.ts create mode 100644 src/validation/subscription/override_billing_profile.validation.ts create mode 100644 src/validation/subscription/pause.validation.ts create mode 100644 src/validation/subscription/reactivate.validation.ts create mode 100644 src/validation/subscription/regenerate_invoice.validation.ts create mode 100644 src/validation/subscription/remove_advance_invoice_schedule.validation.ts create mode 100644 src/validation/subscription/remove_coupons.validation.ts create mode 100644 src/validation/subscription/remove_scheduled_cancellation.validation.ts create mode 100644 src/validation/subscription/resume.validation.ts create mode 100644 src/validation/subscription/subscriptions_for_customer.validation.ts create mode 100644 src/validation/subscription/update.validation.ts create mode 100644 src/validation/subscription/update_for_items.validation.ts create mode 100644 src/validation/subscription_entitlement/set_subscription_entitlement_availability.validation.ts create mode 100644 src/validation/subscription_entitlement/subscription_entitlements_for_subscription.validation.ts create mode 100644 src/validation/time_machine/start_afresh.validation.ts create mode 100644 src/validation/time_machine/travel_forward.validation.ts create mode 100644 src/validation/transaction/create_authorization.validation.ts create mode 100644 src/validation/transaction/delete_offline_transaction.validation.ts create mode 100644 src/validation/transaction/payments_for_invoice.validation.ts create mode 100644 src/validation/transaction/reconcile.validation.ts create mode 100644 src/validation/transaction/record_refund.validation.ts create mode 100644 src/validation/transaction/refund.validation.ts create mode 100644 src/validation/transaction/transactions_for_customer.validation.ts create mode 100644 src/validation/transaction/transactions_for_subscription.validation.ts create mode 100644 src/validation/unbilled_charge/create.validation.ts create mode 100644 src/validation/unbilled_charge/create_unbilled_charge.validation.ts create mode 100644 src/validation/unbilled_charge/invoice_now_estimate.validation.ts create mode 100644 src/validation/unbilled_charge/invoice_unbilled_charges.validation.ts create mode 100644 src/validation/usage/create.validation.ts create mode 100644 src/validation/usage/delete.validation.ts create mode 100644 src/validation/usage/list.validation.ts create mode 100644 src/validation/usage/pdf.validation.ts create mode 100644 src/validation/usage/retrieve.validation.ts create mode 100644 src/validation/usage_charge/retrieve_usage_charges_for_subscription.validation.ts create mode 100644 src/validation/usage_event/batch_ingest.validation.ts create mode 100644 src/validation/usage_event/create.validation.ts create mode 100644 src/validation/usage_file/upload_url.validation.ts create mode 100644 src/validation/usage_summary/retrieve_usage_summary_for_subscription.validation.ts create mode 100644 src/validation/virtual_bank_account/create.validation.ts create mode 100644 src/validation/virtual_bank_account/create_using_permanent_token.validation.ts create mode 100644 src/validation/webhook_endpoint/create.validation.ts create mode 100644 src/validation/webhook_endpoint/list.validation.ts create mode 100644 src/validation/webhook_endpoint/update.validation.ts diff --git a/src/validation/addon/copy.validation.ts b/src/validation/addon/copy.validation.ts new file mode 100644 index 0000000..a0343ff --- /dev/null +++ b/src/validation/addon/copy.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Addon.copy +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const copyAddonBodySchema = z.looseObject({ + from_site: z.string().max(50), + id_at_from_site: z.string().max(100), + id: z.string().max(100).optional(), + for_site_merging: z.boolean().default(false).optional(), +}); +export { copyAddonBodySchema }; diff --git a/src/validation/addon/create.validation.ts b/src/validation/addon/create.validation.ts new file mode 100644 index 0000000..08cd7f8 --- /dev/null +++ b/src/validation/addon/create.validation.ts @@ -0,0 +1,73 @@ +// Generated Zod validator: Addon.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createAddonMetaDataSchema = z.looseObject({}); +const createAddonTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const createAddonTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const createAddonBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + invoice_name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + charge_type: z.enum(['recurring', 'non_recurring']), + price: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + period: z.number().int().min(1).optional(), + period_unit: z + .enum(['day', 'week', 'month', 'year', 'not_applicable']) + .optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + type: z + .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) + .optional(), + unit: z.string().max(30).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + taxable: z.boolean().default(true).optional(), + tax_profile_id: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: createAddonMetaDataSchema.optional(), + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), + is_shippable: z.boolean().default(false).optional(), + shipping_frequency_period: z.number().int().min(1).optional(), + shipping_frequency_period_unit: z + .enum(['year', 'month', 'week', 'day']) + .optional(), + included_in_mrr: z.boolean().optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + price_in_decimal: z.string().max(39).optional(), + proration_type: z + .enum(['site_default', 'partial_term', 'full_term']) + .optional(), + status: z.enum(['active', 'archived']).optional(), + tiers: createAddonTiersSchema.optional(), + tax_providers_fields: createAddonTaxProvidersFieldsSchema.optional(), +}); +export { createAddonBodySchema }; diff --git a/src/validation/addon/update.validation.ts b/src/validation/addon/update.validation.ts new file mode 100644 index 0000000..6a30e3e --- /dev/null +++ b/src/validation/addon/update.validation.ts @@ -0,0 +1,71 @@ +// Generated Zod validator: Addon.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateAddonMetaDataSchema = z.looseObject({}); +const updateAddonTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const updateAddonTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const updateAddonBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + invoice_name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + charge_type: z.enum(['recurring', 'non_recurring']).optional(), + price: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + period: z.number().int().min(1).optional(), + period_unit: z + .enum(['day', 'week', 'month', 'year', 'not_applicable']) + .optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + type: z + .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) + .optional(), + unit: z.string().max(30).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + taxable: z.boolean().default(true).optional(), + tax_profile_id: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: updateAddonMetaDataSchema.optional(), + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), + is_shippable: z.boolean().default(false).optional(), + shipping_frequency_period: z.number().int().min(1).optional(), + shipping_frequency_period_unit: z + .enum(['year', 'month', 'week', 'day']) + .optional(), + included_in_mrr: z.boolean().optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + price_in_decimal: z.string().max(39).optional(), + proration_type: z + .enum(['site_default', 'partial_term', 'full_term']) + .optional(), + tiers: updateAddonTiersSchema.optional(), + tax_providers_fields: updateAddonTaxProvidersFieldsSchema.optional(), +}); +export { updateAddonBodySchema }; diff --git a/src/validation/address/retrieve.validation.ts b/src/validation/address/retrieve.validation.ts new file mode 100644 index 0000000..f85e7c0 --- /dev/null +++ b/src/validation/address/retrieve.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Address.retrieve +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveAddressBodySchema = z.looseObject({ + subscription_id: z.string().max(50), + label: z.string().max(50), +}); +export { retrieveAddressBodySchema }; diff --git a/src/validation/address/update.validation.ts b/src/validation/address/update.validation.ts new file mode 100644 index 0000000..20046fa --- /dev/null +++ b/src/validation/address/update.validation.ts @@ -0,0 +1,25 @@ +// Generated Zod validator: Address.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateAddressBodySchema = z.looseObject({ + subscription_id: z.string().max(50), + label: z.string().max(50), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + addr: z.string().max(150).optional(), + extended_addr: z.string().max(150).optional(), + extended_addr2: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +export { updateAddressBodySchema }; diff --git a/src/validation/alert/create.validation.ts b/src/validation/alert/create.validation.ts new file mode 100644 index 0000000..d457c89 --- /dev/null +++ b/src/validation/alert/create.validation.ts @@ -0,0 +1,24 @@ +// Generated Zod validator: Alert.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createAlertThresholdSchema = z.object({ + mode: z.enum(['absolute', 'percentage']), + value: z.number(), +}); +const createAlertFilterConditionsSchema = z.object({ + field: z.array(z.enum(['plan_price_id']).optional()).optional(), + operator: z.array(z.enum(['equals', 'not_equals']).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), +}); +const createAlertBodySchema = z.looseObject({ + type: z.enum(['usage_exceeded']), + name: z.string().max(50), + description: z.string().max(65000).optional(), + metered_feature_id: z.string().max(50), + subscription_id: z.string().max(50).optional(), + meta: z.string().max(65000).optional(), + threshold: createAlertThresholdSchema.optional(), + filter_conditions: createAlertFilterConditionsSchema.optional(), +}); +export { createAlertBodySchema }; diff --git a/src/validation/alert/update.validation.ts b/src/validation/alert/update.validation.ts new file mode 100644 index 0000000..8ea0fd6 --- /dev/null +++ b/src/validation/alert/update.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: Alert.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateAlertThresholdSchema = z.object({ + mode: z.enum(['absolute', 'percentage']).optional(), + value: z.number().optional(), +}); +const updateAlertBodySchema = z.looseObject({ + status: z.enum(['enabled', 'disabled']).optional(), + threshold: updateAlertThresholdSchema.optional(), +}); +export { updateAlertBodySchema }; diff --git a/src/validation/attached_item/create.validation.ts b/src/validation/attached_item/create.validation.ts new file mode 100644 index 0000000..e608b5f --- /dev/null +++ b/src/validation/attached_item/create.validation.ts @@ -0,0 +1,24 @@ +// Generated Zod validator: AttachedItem.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createAttachedItemBodySchema = z.looseObject({ + item_id: z.string().max(100), + type: z.enum(['recommended', 'mandatory', 'optional']).optional(), + billing_cycles: z.number().int().min(1).optional(), + quantity: z.number().int().min(1).optional(), + quantity_in_decimal: z.string().max(33).optional(), + charge_on_event: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + charge_once: z.boolean().optional(), + business_entity_id: z.string().max(50).optional(), +}); +export { createAttachedItemBodySchema }; diff --git a/src/validation/attached_item/delete.validation.ts b/src/validation/attached_item/delete.validation.ts new file mode 100644 index 0000000..b33b493 --- /dev/null +++ b/src/validation/attached_item/delete.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: AttachedItem.delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteAttachedItemBodySchema = z.looseObject({ + parent_item_id: z.string().max(100), +}); +export { deleteAttachedItemBodySchema }; diff --git a/src/validation/attached_item/retrieve.validation.ts b/src/validation/attached_item/retrieve.validation.ts new file mode 100644 index 0000000..b8518d3 --- /dev/null +++ b/src/validation/attached_item/retrieve.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: AttachedItem.retrieve +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveAttachedItemBodySchema = z.looseObject({ + parent_item_id: z.string().max(100), +}); +export { retrieveAttachedItemBodySchema }; diff --git a/src/validation/attached_item/update.validation.ts b/src/validation/attached_item/update.validation.ts new file mode 100644 index 0000000..89e761b --- /dev/null +++ b/src/validation/attached_item/update.validation.ts @@ -0,0 +1,23 @@ +// Generated Zod validator: AttachedItem.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateAttachedItemBodySchema = z.looseObject({ + parent_item_id: z.string().max(100), + type: z.enum(['recommended', 'mandatory', 'optional']).optional(), + billing_cycles: z.number().int().min(1).optional(), + quantity: z.number().int().min(1).optional(), + quantity_in_decimal: z.string().max(33).optional(), + charge_on_event: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + charge_once: z.boolean().optional(), +}); +export { updateAttachedItemBodySchema }; diff --git a/src/validation/business_entity/create_transfers.validation.ts b/src/validation/business_entity/create_transfers.validation.ts new file mode 100644 index 0000000..2c943f2 --- /dev/null +++ b/src/validation/business_entity/create_transfers.validation.ts @@ -0,0 +1,12 @@ +// Generated Zod validator: BusinessEntity.createTransfers +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createTransfersBusinessEntityBodySchema = z.looseObject({ + active_resource_ids: z.array(z.string().max(50).optional()), + destination_business_entity_ids: z.array(z.string().max(50).optional()), + source_business_entity_ids: z.array(z.string().max(50).optional()).optional(), + resource_types: z.array(z.string().max(50).optional()), + reason_codes: z.array(z.string().max(50).optional()), +}); +export { createTransfersBusinessEntityBodySchema }; diff --git a/src/validation/business_entity/get_transfers.validation.ts b/src/validation/business_entity/get_transfers.validation.ts new file mode 100644 index 0000000..76f7353 --- /dev/null +++ b/src/validation/business_entity/get_transfers.validation.ts @@ -0,0 +1,34 @@ +// Generated Zod validator: BusinessEntity.getTransfers +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const getTransfersBusinessEntityResourceTypeSchema = z.object({ + is: z.string().min(1).optional(), +}); +const getTransfersBusinessEntityResourceIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const getTransfersBusinessEntityActiveResourceIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const getTransfersBusinessEntityCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const getTransfersBusinessEntitySortBySchema = z.looseObject({ + asc: z.enum(['created_at']).optional(), + desc: z.enum(['created_at']).optional(), +}); +const getTransfersBusinessEntityBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + resource_type: getTransfersBusinessEntityResourceTypeSchema.optional(), + resource_id: getTransfersBusinessEntityResourceIdSchema.optional(), + active_resource_id: + getTransfersBusinessEntityActiveResourceIdSchema.optional(), + created_at: getTransfersBusinessEntityCreatedAtSchema.optional(), + sort_by: getTransfersBusinessEntitySortBySchema.optional(), +}); +export { getTransfersBusinessEntityBodySchema }; diff --git a/src/validation/card/copy_card_for_customer.validation.ts b/src/validation/card/copy_card_for_customer.validation.ts new file mode 100644 index 0000000..8921ec7 --- /dev/null +++ b/src/validation/card/copy_card_for_customer.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Card.copyCardForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const copyCardForCustomerCardBodySchema = z.looseObject({ + gateway_account_id: z.string().max(50), +}); +export { copyCardForCustomerCardBodySchema }; diff --git a/src/validation/card/switch_gateway_for_customer.validation.ts b/src/validation/card/switch_gateway_for_customer.validation.ts new file mode 100644 index 0000000..03334d0 --- /dev/null +++ b/src/validation/card/switch_gateway_for_customer.validation.ts @@ -0,0 +1,66 @@ +// Generated Zod validator: Card.switchGatewayForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const switchGatewayForCustomerCardBodySchema = z.looseObject({ + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'wirecard', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50), +}); +export { switchGatewayForCustomerCardBodySchema }; diff --git a/src/validation/card/update_card_for_customer.validation.ts b/src/validation/card/update_card_for_customer.validation.ts new file mode 100644 index 0000000..20c07e7 --- /dev/null +++ b/src/validation/card/update_card_for_customer.validation.ts @@ -0,0 +1,93 @@ +// Generated Zod validator: Card.updateCardForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateCardForCustomerCardCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), +}); +const updateCardForCustomerCardBodySchema = z.looseObject({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500), + expiry_month: z.number().int().min(1).max(12), + expiry_year: z.number().int(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + customer: updateCardForCustomerCardCustomerSchema.optional(), +}); +export { updateCardForCustomerCardBodySchema }; diff --git a/src/validation/comment/create.validation.ts b/src/validation/comment/create.validation.ts new file mode 100644 index 0000000..709ea88 --- /dev/null +++ b/src/validation/comment/create.validation.ts @@ -0,0 +1,27 @@ +// Generated Zod validator: Comment.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createCommentBodySchema = z.looseObject({ + entity_type: z.enum([ + 'customer', + 'subscription', + 'invoice', + 'quote', + 'credit_note', + 'transaction', + 'plan', + 'addon', + 'coupon', + 'order', + 'business_entity', + 'item_family', + 'item', + 'item_price', + 'price_variant', + ]), + entity_id: z.string().max(100), + notes: z.string().max(1000), + added_by: z.string().max(100).optional(), +}); +export { createCommentBodySchema }; diff --git a/src/validation/comment/list.validation.ts b/src/validation/comment/list.validation.ts new file mode 100644 index 0000000..ba9312d --- /dev/null +++ b/src/validation/comment/list.validation.ts @@ -0,0 +1,41 @@ +// Generated Zod validator: Comment.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listCommentCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const listCommentSortBySchema = z.looseObject({ + asc: z.enum(['created_at']).optional(), + desc: z.enum(['created_at']).optional(), +}); +const listCommentBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + entity_type: z + .enum([ + 'customer', + 'subscription', + 'invoice', + 'quote', + 'credit_note', + 'transaction', + 'plan', + 'addon', + 'coupon', + 'order', + 'business_entity', + 'item_family', + 'item', + 'item_price', + 'price_variant', + ]) + .optional(), + entity_id: z.string().max(100).optional(), + created_at: listCommentCreatedAtSchema.optional(), + sort_by: listCommentSortBySchema.optional(), +}); +export { listCommentBodySchema }; diff --git a/src/validation/coupon/copy.validation.ts b/src/validation/coupon/copy.validation.ts new file mode 100644 index 0000000..f472590 --- /dev/null +++ b/src/validation/coupon/copy.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Coupon.copy +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const copyCouponBodySchema = z.looseObject({ + from_site: z.string().max(50), + id_at_from_site: z.string().max(100), + id: z.string().max(100).optional(), + for_site_merging: z.boolean().default(false).optional(), +}); +export { copyCouponBodySchema }; diff --git a/src/validation/coupon/create.validation.ts b/src/validation/coupon/create.validation.ts new file mode 100644 index 0000000..d7d20cf --- /dev/null +++ b/src/validation/coupon/create.validation.ts @@ -0,0 +1,38 @@ +// Generated Zod validator: Coupon.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createCouponMetaDataSchema = z.looseObject({}); +const createCouponBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(50), + invoice_name: z.string().max(100).optional(), + discount_type: z + .enum(['fixed_amount', 'percentage', 'offer_quantity']) + .optional(), + discount_amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + discount_percentage: z.number().min(0.01).max(100).optional(), + discount_quantity: z.number().int().min(1).optional(), + apply_on: z.enum([ + 'invoice_amount', + 'specified_items_total', + 'each_specified_item', + 'each_unit_of_specified_items', + ]), + duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), + duration_month: z.number().int().min(1).max(240).optional(), + valid_till: z.number().int().optional(), + max_redemptions: z.number().int().min(1).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: createCouponMetaDataSchema.optional(), + included_in_mrr: z.boolean().optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + plan_constraint: z.enum(['none', 'all', 'specific']).optional(), + addon_constraint: z.enum(['none', 'all', 'specific']).optional(), + plan_ids: z.array(z.string().max(100).optional()).optional(), + addon_ids: z.array(z.string().max(100).optional()).optional(), + status: z.enum(['active', 'archived']).optional(), +}); +export { createCouponBodySchema }; diff --git a/src/validation/coupon/create_for_items.validation.ts b/src/validation/coupon/create_for_items.validation.ts new file mode 100644 index 0000000..2ed2821 --- /dev/null +++ b/src/validation/coupon/create_for_items.validation.ts @@ -0,0 +1,70 @@ +// Generated Zod validator: Coupon.createForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForItemsCouponMetaDataSchema = z.looseObject({}); +const createForItemsCouponItemConstraintsSchema = z.object({ + constraint: z.array( + z.enum(['none', 'all', 'specific', 'criteria']).optional(), + ), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()), + item_price_ids: z.array(z.array(z.string().optional()).optional()).optional(), +}); +const createForItemsCouponItemConstraintCriteriaSchema = z.object({ + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + item_family_ids: z + .array(z.array(z.string().optional()).optional()) + .optional(), + currencies: z.array(z.array(z.string().optional()).optional()).optional(), + item_price_periods: z + .array(z.array(z.string().optional()).optional()) + .optional(), +}); +const createForItemsCouponCouponConstraintsSchema = z.object({ + entity_type: z.array(z.enum(['customer']).optional()), + type: z.array( + z + .enum([ + 'max_redemptions', + 'unique_by', + 'existing_customer', + 'new_customer', + ]) + .optional(), + ), + value: z.array(z.string().max(65000).optional()).optional(), +}); +const createForItemsCouponBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(50), + invoice_name: z.string().max(100).optional(), + discount_type: z + .enum(['fixed_amount', 'percentage', 'offer_quantity']) + .optional(), + discount_amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + discount_percentage: z.number().min(0.01).max(100).optional(), + discount_quantity: z.number().int().min(1).optional(), + apply_on: z.enum([ + 'invoice_amount', + 'specified_items_total', + 'each_specified_item', + 'each_unit_of_specified_items', + ]), + duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), + duration_month: z.number().int().min(1).max(240).optional(), + valid_from: z.number().int().optional(), + valid_till: z.number().int().optional(), + max_redemptions: z.number().int().min(1).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: createForItemsCouponMetaDataSchema.optional(), + included_in_mrr: z.boolean().optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + status: z.enum(['active', 'archived']).optional(), + item_constraints: createForItemsCouponItemConstraintsSchema.optional(), + item_constraint_criteria: + createForItemsCouponItemConstraintCriteriaSchema.optional(), + coupon_constraints: createForItemsCouponCouponConstraintsSchema.optional(), +}); +export { createForItemsCouponBodySchema }; diff --git a/src/validation/coupon/update.validation.ts b/src/validation/coupon/update.validation.ts new file mode 100644 index 0000000..1928b2f --- /dev/null +++ b/src/validation/coupon/update.validation.ts @@ -0,0 +1,38 @@ +// Generated Zod validator: Coupon.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateCouponMetaDataSchema = z.looseObject({}); +const updateCouponBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + invoice_name: z.string().max(100).optional(), + discount_type: z + .enum(['fixed_amount', 'percentage', 'offer_quantity']) + .optional(), + discount_amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + discount_percentage: z.number().min(0.01).max(100).optional(), + discount_quantity: z.number().int().min(1).optional(), + apply_on: z + .enum([ + 'invoice_amount', + 'specified_items_total', + 'each_specified_item', + 'each_unit_of_specified_items', + ]) + .optional(), + duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), + duration_month: z.number().int().min(1).max(240).optional(), + valid_till: z.number().int().optional(), + max_redemptions: z.number().int().min(1).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: updateCouponMetaDataSchema.optional(), + included_in_mrr: z.boolean().optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + plan_constraint: z.enum(['none', 'all', 'specific']).optional(), + addon_constraint: z.enum(['none', 'all', 'specific']).optional(), + plan_ids: z.array(z.string().max(100).optional()).optional(), + addon_ids: z.array(z.string().max(100).optional()).optional(), +}); +export { updateCouponBodySchema }; diff --git a/src/validation/coupon/update_for_items.validation.ts b/src/validation/coupon/update_for_items.validation.ts new file mode 100644 index 0000000..478844a --- /dev/null +++ b/src/validation/coupon/update_for_items.validation.ts @@ -0,0 +1,70 @@ +// Generated Zod validator: Coupon.updateForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateForItemsCouponMetaDataSchema = z.looseObject({}); +const updateForItemsCouponItemConstraintsSchema = z.object({ + constraint: z.array( + z.enum(['none', 'all', 'specific', 'criteria']).optional(), + ), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()), + item_price_ids: z.array(z.array(z.string().optional()).optional()).optional(), +}); +const updateForItemsCouponItemConstraintCriteriaSchema = z.object({ + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + item_family_ids: z + .array(z.array(z.string().optional()).optional()) + .optional(), + currencies: z.array(z.array(z.string().optional()).optional()).optional(), + item_price_periods: z + .array(z.array(z.string().optional()).optional()) + .optional(), +}); +const updateForItemsCouponCouponConstraintsSchema = z.object({ + entity_type: z.array(z.enum(['customer']).optional()), + type: z.array( + z + .enum([ + 'max_redemptions', + 'unique_by', + 'existing_customer', + 'new_customer', + ]) + .optional(), + ), + value: z.array(z.string().max(65000).optional()).optional(), +}); +const updateForItemsCouponBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + invoice_name: z.string().max(100).optional(), + discount_type: z + .enum(['fixed_amount', 'percentage', 'offer_quantity']) + .optional(), + discount_amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + discount_percentage: z.number().min(0.01).max(100).optional(), + discount_quantity: z.number().int().min(1).optional(), + apply_on: z + .enum([ + 'invoice_amount', + 'specified_items_total', + 'each_specified_item', + 'each_unit_of_specified_items', + ]) + .optional(), + duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), + duration_month: z.number().int().min(1).max(240).optional(), + valid_from: z.number().int().optional(), + valid_till: z.number().int().optional(), + max_redemptions: z.number().int().min(1).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: updateForItemsCouponMetaDataSchema.optional(), + included_in_mrr: z.boolean().optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + item_constraints: updateForItemsCouponItemConstraintsSchema.optional(), + item_constraint_criteria: + updateForItemsCouponItemConstraintCriteriaSchema.optional(), + coupon_constraints: updateForItemsCouponCouponConstraintsSchema.optional(), +}); +export { updateForItemsCouponBodySchema }; diff --git a/src/validation/coupon_code/create.validation.ts b/src/validation/coupon_code/create.validation.ts new file mode 100644 index 0000000..da9b922 --- /dev/null +++ b/src/validation/coupon_code/create.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: CouponCode.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createCouponCodeBodySchema = z.looseObject({ + coupon_id: z.string().max(100), + coupon_set_name: z.string().max(50), + code: z.string().max(50), +}); +export { createCouponCodeBodySchema }; diff --git a/src/validation/coupon_set/add_coupon_codes.validation.ts b/src/validation/coupon_set/add_coupon_codes.validation.ts new file mode 100644 index 0000000..4638025 --- /dev/null +++ b/src/validation/coupon_set/add_coupon_codes.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: CouponSet.addCouponCodes +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addCouponCodesCouponSetBodySchema = z.looseObject({ + code: z.array(z.string().max(50).optional()).optional(), +}); +export { addCouponCodesCouponSetBodySchema }; diff --git a/src/validation/coupon_set/create.validation.ts b/src/validation/coupon_set/create.validation.ts new file mode 100644 index 0000000..7bfd35e --- /dev/null +++ b/src/validation/coupon_set/create.validation.ts @@ -0,0 +1,12 @@ +// Generated Zod validator: CouponSet.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createCouponSetMetaDataSchema = z.looseObject({}); +const createCouponSetBodySchema = z.looseObject({ + coupon_id: z.string().max(100), + name: z.string().max(50), + id: z.string().max(50), + meta_data: createCouponSetMetaDataSchema.optional(), +}); +export { createCouponSetBodySchema }; diff --git a/src/validation/coupon_set/update.validation.ts b/src/validation/coupon_set/update.validation.ts new file mode 100644 index 0000000..57695af --- /dev/null +++ b/src/validation/coupon_set/update.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: CouponSet.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateCouponSetMetaDataSchema = z.looseObject({}); +const updateCouponSetBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + meta_data: updateCouponSetMetaDataSchema.optional(), +}); +export { updateCouponSetBodySchema }; diff --git a/src/validation/credit_note/create.validation.ts b/src/validation/credit_note/create.validation.ts new file mode 100644 index 0000000..83f9fc5 --- /dev/null +++ b/src/validation/credit_note/create.validation.ts @@ -0,0 +1,53 @@ +// Generated Zod validator: CreditNote.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createCreditNoteLineItemsSchema = z.object({ + reference_line_item_id: z.array(z.string().max(40).optional()).optional(), + unit_amount: z.array(z.number().int().optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity: z.array(z.number().int().optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + amount: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + entity_type: z + .array( + z + .enum([ + 'adhoc', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const createCreditNoteBodySchema = z.looseObject({ + reference_invoice_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), + total: z.number().int().min(0).optional(), + type: z.enum(['adjustment', 'refundable', 'store']), + reason_code: z + .enum([ + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + ]) + .optional(), + create_reason_code: z.string().max(100).optional(), + date: z.number().int().optional(), + customer_notes: z.string().max(2000).optional(), + currency_code: z.string().max(3).optional(), + comment: z.string().max(300).optional(), + line_items: createCreditNoteLineItemsSchema.optional(), +}); +export { createCreditNoteBodySchema }; diff --git a/src/validation/credit_note/credit_notes_for_customer.validation.ts b/src/validation/credit_note/credit_notes_for_customer.validation.ts new file mode 100644 index 0000000..bdd99e0 --- /dev/null +++ b/src/validation/credit_note/credit_notes_for_customer.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: CreditNote.creditNotesForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const creditNotesForCustomerCreditNoteBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { creditNotesForCustomerCreditNoteBodySchema }; diff --git a/src/validation/credit_note/delete.validation.ts b/src/validation/credit_note/delete.validation.ts new file mode 100644 index 0000000..8c74fb2 --- /dev/null +++ b/src/validation/credit_note/delete.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: CreditNote.delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteCreditNoteBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { deleteCreditNoteBodySchema }; diff --git a/src/validation/credit_note/import_credit_note.validation.ts b/src/validation/credit_note/import_credit_note.validation.ts new file mode 100644 index 0000000..e438da4 --- /dev/null +++ b/src/validation/credit_note/import_credit_note.validation.ts @@ -0,0 +1,167 @@ +// Generated Zod validator: CreditNote.importCreditNote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importCreditNoteCreditNoteLineItemsSchema = z.object({ + reference_line_item_id: z.array(z.string().max(40).optional()).optional(), + id: z.array(z.string().max(40).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), + subscription_id: z.array(z.string().max(50).optional()).optional(), + description: z.array(z.string().max(250).optional()), + unit_amount: z.array(z.number().int().optional()).optional(), + quantity: z.array(z.number().int().optional()).optional(), + amount: z.array(z.number().int().optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + entity_type: z + .array( + z + .enum([ + 'adhoc', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan_setup', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), + item_level_discount1_entity_id: z + .array(z.string().max(100).optional()) + .optional(), + item_level_discount1_amount: z + .array(z.number().int().min(0).optional()) + .optional(), + item_level_discount2_entity_id: z + .array(z.string().max(100).optional()) + .optional(), + item_level_discount2_amount: z + .array(z.number().int().min(0).optional()) + .optional(), + tax1_name: z.array(z.string().max(50).optional()).optional(), + tax1_amount: z.array(z.number().int().min(0).optional()).optional(), + tax2_name: z.array(z.string().max(50).optional()).optional(), + tax2_amount: z.array(z.number().int().min(0).optional()).optional(), + tax3_name: z.array(z.string().max(50).optional()).optional(), + tax3_amount: z.array(z.number().int().min(0).optional()).optional(), + tax4_name: z.array(z.string().max(50).optional()).optional(), + tax4_amount: z.array(z.number().int().min(0).optional()).optional(), + tax5_name: z.array(z.string().max(50).optional()).optional(), + tax5_amount: z.array(z.number().int().min(0).optional()).optional(), + tax6_name: z.array(z.string().max(50).optional()).optional(), + tax6_amount: z.array(z.number().int().min(0).optional()).optional(), + tax7_name: z.array(z.string().max(50).optional()).optional(), + tax7_amount: z.array(z.number().int().min(0).optional()).optional(), + tax8_name: z.array(z.string().max(50).optional()).optional(), + tax8_amount: z.array(z.number().int().min(0).optional()).optional(), + tax9_name: z.array(z.string().max(50).optional()).optional(), + tax9_amount: z.array(z.number().int().min(0).optional()).optional(), + tax10_name: z.array(z.string().max(50).optional()).optional(), + tax10_amount: z.array(z.number().int().min(0).optional()).optional(), +}); +const importCreditNoteCreditNoteLineItemTiersSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()), + starting_unit: z.array(z.number().int().min(0).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + quantity_used: z.array(z.number().int().min(0).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), +}); +const importCreditNoteCreditNoteDiscountsSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()).optional(), + entity_type: z.array( + z + .enum([ + 'item_level_coupon', + 'document_level_coupon', + 'promotional_credits', + 'item_level_discount', + 'document_level_discount', + ]) + .optional(), + ), + entity_id: z.array(z.string().max(100).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()), +}); +const importCreditNoteCreditNoteTaxesSchema = z.object({ + name: z.array(z.string().max(100).optional()), + rate: z.array(z.number().min(0).max(100).optional()), + amount: z.array(z.number().int().min(0).optional()).optional(), + description: z.array(z.string().max(50).optional()).optional(), + juris_type: z + .array( + z + .enum([ + 'country', + 'federal', + 'state', + 'county', + 'city', + 'special', + 'unincorporated', + 'other', + ]) + .optional(), + ) + .optional(), + juris_name: z.array(z.string().max(250).optional()).optional(), + juris_code: z.array(z.string().max(250).optional()).optional(), +}); +const importCreditNoteCreditNoteAllocationsSchema = z.object({ + invoice_id: z.array(z.string().max(50).optional()), + allocated_amount: z.array(z.number().int().min(1).optional()), + allocated_at: z.array(z.number().int().optional()), +}); +const importCreditNoteCreditNoteLinkedRefundsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + amount: z.array(z.number().int().min(1).optional()), + payment_method: z.array( + z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + ), + date: z.array(z.number().int().optional()), + reference_number: z.array(z.string().max(100).min(1).optional()).optional(), +}); +const importCreditNoteCreditNoteBodySchema = z.looseObject({ + id: z.string().max(50), + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + reference_invoice_id: z.string().max(50), + type: z.enum(['adjustment', 'refundable', 'store']), + currency_code: z.string().max(3).optional(), + create_reason_code: z.string().max(100), + date: z.number().int(), + status: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), + total: z.number().int().min(0).optional(), + refunded_at: z.number().int().optional(), + voided_at: z.number().int().optional(), + sub_total: z.number().int().min(0).optional(), + round_off_amount: z.number().int().min(-99).max(99).optional(), + fractional_correction: z.number().int().min(-50000).max(50000).optional(), + vat_number_prefix: z.string().max(10).optional(), + line_items: importCreditNoteCreditNoteLineItemsSchema.optional(), + line_item_tiers: importCreditNoteCreditNoteLineItemTiersSchema.optional(), + discounts: importCreditNoteCreditNoteDiscountsSchema.optional(), + taxes: importCreditNoteCreditNoteTaxesSchema.optional(), + allocations: importCreditNoteCreditNoteAllocationsSchema.optional(), + linked_refunds: importCreditNoteCreditNoteLinkedRefundsSchema.optional(), +}); +export { importCreditNoteCreditNoteBodySchema }; diff --git a/src/validation/credit_note/pdf.validation.ts b/src/validation/credit_note/pdf.validation.ts new file mode 100644 index 0000000..810403f --- /dev/null +++ b/src/validation/credit_note/pdf.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: CreditNote.pdf +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const pdfCreditNoteBodySchema = z.looseObject({ + disposition_type: z.enum(['attachment', 'inline']).optional(), +}); +export { pdfCreditNoteBodySchema }; diff --git a/src/validation/credit_note/record_refund.validation.ts b/src/validation/credit_note/record_refund.validation.ts new file mode 100644 index 0000000..738a2bf --- /dev/null +++ b/src/validation/credit_note/record_refund.validation.ts @@ -0,0 +1,27 @@ +// Generated Zod validator: CreditNote.recordRefund +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const recordRefundCreditNoteTransactionSchema = z.object({ + id: z.string().max(40).optional(), + amount: z.number().int().min(0).optional(), + payment_method: z.enum([ + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), + date: z.number().int(), +}); +const recordRefundCreditNoteBodySchema = z.looseObject({ + refund_reason_code: z.string().max(100).optional(), + comment: z.string().max(300).optional(), + transaction: recordRefundCreditNoteTransactionSchema.optional(), +}); +export { recordRefundCreditNoteBodySchema }; diff --git a/src/validation/credit_note/refund.validation.ts b/src/validation/credit_note/refund.validation.ts new file mode 100644 index 0000000..bab4188 --- /dev/null +++ b/src/validation/credit_note/refund.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: CreditNote.refund +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const refundCreditNoteBodySchema = z.looseObject({ + refund_amount: z.number().int().min(1).optional(), + customer_notes: z.string().max(2000).optional(), + refund_reason_code: z.string().max(100).optional(), +}); +export { refundCreditNoteBodySchema }; diff --git a/src/validation/credit_note/remove_tax_withheld_refund.validation.ts b/src/validation/credit_note/remove_tax_withheld_refund.validation.ts new file mode 100644 index 0000000..ad1dc2a --- /dev/null +++ b/src/validation/credit_note/remove_tax_withheld_refund.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: CreditNote.removeTaxWithheldRefund +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const removeTaxWithheldRefundCreditNoteTaxWithheldSchema = z.object({ + id: z.string().max(40), +}); +const removeTaxWithheldRefundCreditNoteBodySchema = z.looseObject({ + tax_withheld: removeTaxWithheldRefundCreditNoteTaxWithheldSchema.optional(), +}); +export { removeTaxWithheldRefundCreditNoteBodySchema }; diff --git a/src/validation/credit_note/retrieve.validation.ts b/src/validation/credit_note/retrieve.validation.ts new file mode 100644 index 0000000..67322a1 --- /dev/null +++ b/src/validation/credit_note/retrieve.validation.ts @@ -0,0 +1,20 @@ +// Generated Zod validator: CreditNote.retrieve +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveCreditNoteSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const retrieveCreditNoteCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const retrieveCreditNoteLineItemSchema = z.object({ + subscription_id: retrieveCreditNoteSubscriptionIdSchema.optional(), + customer_id: retrieveCreditNoteCustomerIdSchema.optional(), +}); +const retrieveCreditNoteBodySchema = z.looseObject({ + line_items_limit: z.number().int().min(1).max(300).optional(), + line_items_offset: z.string().max(1000).optional(), + line_item: retrieveCreditNoteLineItemSchema.optional(), +}); +export { retrieveCreditNoteBodySchema }; diff --git a/src/validation/credit_note/void_credit_note.validation.ts b/src/validation/credit_note/void_credit_note.validation.ts new file mode 100644 index 0000000..8a854a9 --- /dev/null +++ b/src/validation/credit_note/void_credit_note.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: CreditNote.voidCreditNote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const voidCreditNoteCreditNoteBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { voidCreditNoteCreditNoteBodySchema }; diff --git a/src/validation/currency/add_schedule.validation.ts b/src/validation/currency/add_schedule.validation.ts new file mode 100644 index 0000000..9b082ec --- /dev/null +++ b/src/validation/currency/add_schedule.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Currency.addSchedule +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addScheduleCurrencyBodySchema = z.looseObject({ + manual_exchange_rate: z.string().max(20), + schedule_at: z.number().int(), +}); +export { addScheduleCurrencyBodySchema }; diff --git a/src/validation/currency/create.validation.ts b/src/validation/currency/create.validation.ts new file mode 100644 index 0000000..9ed7109 --- /dev/null +++ b/src/validation/currency/create.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: Currency.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createCurrencyBodySchema = z.looseObject({ + currency_code: z.string().max(3), + forex_type: z.enum(['manual', 'auto']), + manual_exchange_rate: z.string().max(20).optional(), +}); +export { createCurrencyBodySchema }; diff --git a/src/validation/currency/list.validation.ts b/src/validation/currency/list.validation.ts new file mode 100644 index 0000000..35658f7 --- /dev/null +++ b/src/validation/currency/list.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Currency.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listCurrencyBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { listCurrencyBodySchema }; diff --git a/src/validation/currency/update.validation.ts b/src/validation/currency/update.validation.ts new file mode 100644 index 0000000..c5decb0 --- /dev/null +++ b/src/validation/currency/update.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Currency.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateCurrencyBodySchema = z.looseObject({ + forex_type: z.enum(['manual', 'auto']), + manual_exchange_rate: z.string().max(20).optional(), +}); +export { updateCurrencyBodySchema }; diff --git a/src/validation/customer/add_contact.validation.ts b/src/validation/customer/add_contact.validation.ts new file mode 100644 index 0000000..0ac9e43 --- /dev/null +++ b/src/validation/customer/add_contact.validation.ts @@ -0,0 +1,19 @@ +// Generated Zod validator: Customer.addContact +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addContactCustomerContactSchema = z.object({ + id: z.string().max(150).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70), + phone: z.string().max(50).optional(), + label: z.string().max(50).optional(), + enabled: z.boolean().default(false).optional(), + send_billing_email: z.boolean().default(false).optional(), + send_account_email: z.boolean().default(false).optional(), +}); +const addContactCustomerBodySchema = z.looseObject({ + contact: addContactCustomerContactSchema.optional(), +}); +export { addContactCustomerBodySchema }; diff --git a/src/validation/customer/add_promotional_credits.validation.ts b/src/validation/customer/add_promotional_credits.validation.ts new file mode 100644 index 0000000..6a1f539 --- /dev/null +++ b/src/validation/customer/add_promotional_credits.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Customer.addPromotionalCredits +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addPromotionalCreditsCustomerBodySchema = z.looseObject({ + amount: z.number().int().min(1), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { addPromotionalCreditsCustomerBodySchema }; diff --git a/src/validation/customer/assign_payment_role.validation.ts b/src/validation/customer/assign_payment_role.validation.ts new file mode 100644 index 0000000..62d36d4 --- /dev/null +++ b/src/validation/customer/assign_payment_role.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Customer.assignPaymentRole +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const assignPaymentRoleCustomerBodySchema = z.looseObject({ + payment_source_id: z.string().max(40), + role: z.enum(['primary', 'backup', 'none']), +}); +export { assignPaymentRoleCustomerBodySchema }; diff --git a/src/validation/customer/change_billing_date.validation.ts b/src/validation/customer/change_billing_date.validation.ts new file mode 100644 index 0000000..6a7c9d6 --- /dev/null +++ b/src/validation/customer/change_billing_date.validation.ts @@ -0,0 +1,24 @@ +// Generated Zod validator: Customer.changeBillingDate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const changeBillingDateCustomerBodySchema = z.looseObject({ + billing_date: z.number().int().min(1).max(31).optional(), + billing_month: z.number().int().min(1).max(12).optional(), + billing_date_mode: z.enum(['using_defaults', 'manually_set']).optional(), + billing_day_of_week: z + .enum([ + 'sunday', + 'monday', + 'tuesday', + 'wednesday', + 'thursday', + 'friday', + 'saturday', + ]) + .optional(), + billing_day_of_week_mode: z + .enum(['using_defaults', 'manually_set']) + .optional(), +}); +export { changeBillingDateCustomerBodySchema }; diff --git a/src/validation/customer/collect_payment.validation.ts b/src/validation/customer/collect_payment.validation.ts new file mode 100644 index 0000000..0265adc --- /dev/null +++ b/src/validation/customer/collect_payment.validation.ts @@ -0,0 +1,150 @@ +// Generated Zod validator: Customer.collectPayment +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const collectPaymentCustomerAdditionalInformationSchema = z.looseObject({}); +const collectPaymentCustomerPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + additional_information: + collectPaymentCustomerAdditionalInformationSchema.optional(), +}); +const collectPaymentCustomerCardSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + additional_information: + collectPaymentCustomerAdditionalInformationSchema.optional(), +}); +const collectPaymentCustomerPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gw_payment_method_id: z.string().max(65000).optional(), + reference_id: z.string().max(65000).optional(), + additional_information: + collectPaymentCustomerAdditionalInformationSchema.optional(), +}); +const collectPaymentCustomerInvoiceAllocationsSchema = z.object({ + invoice_id: z.array(z.string().max(50).optional()), + allocation_amount: z.array(z.number().int().min(0).optional()).optional(), +}); +const collectPaymentCustomerBodySchema = z.looseObject({ + amount: z.number().int().min(0).optional(), + payment_source_id: z.string().max(40).optional(), + token_id: z.string().max(40).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + retain_payment_source: z.boolean().default(false).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + payment_method: collectPaymentCustomerPaymentMethodSchema.optional(), + card: collectPaymentCustomerCardSchema.optional(), + payment_intent: collectPaymentCustomerPaymentIntentSchema.optional(), + invoice_allocations: + collectPaymentCustomerInvoiceAllocationsSchema.optional(), +}); +export { collectPaymentCustomerBodySchema }; diff --git a/src/validation/customer/contacts_for_customer.validation.ts b/src/validation/customer/contacts_for_customer.validation.ts new file mode 100644 index 0000000..7cb01e2 --- /dev/null +++ b/src/validation/customer/contacts_for_customer.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Customer.contactsForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const contactsForCustomerCustomerBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { contactsForCustomerCustomerBodySchema }; diff --git a/src/validation/customer/create.validation.ts b/src/validation/customer/create.validation.ts new file mode 100644 index 0000000..2e81259 --- /dev/null +++ b/src/validation/customer/create.validation.ts @@ -0,0 +1,378 @@ +// Generated Zod validator: Customer.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createCustomerMetaDataSchema = z.looseObject({}); +const createCustomerAdditionalInformationSchema = z.looseObject({}); +const createCustomerCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: createCustomerAdditionalInformationSchema.optional(), +}); +const createCustomerBillingAddressSchema = z.looseObject({}); +const createCustomerBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + issuing_country: z.string().max(50).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: createCustomerBillingAddressSchema.optional(), +}); +const createCustomerPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: createCustomerAdditionalInformationSchema.optional(), +}); +const createCustomerPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: createCustomerAdditionalInformationSchema.optional(), +}); +const createCustomerEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const createCustomerTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createCustomerBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + preferred_currency_code: z.string().max(3).optional(), + phone: z.string().max(50).optional(), + company: z.string().max(250).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + net_term_days: z.number().int().optional(), + allow_direct_debit: z.boolean().default(false).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + registered_for_gst: z.boolean().optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), + client_profile_id: z.string().max(50).optional(), + taxjar_exemption_category: z + .enum(['wholesale', 'government', 'other']) + .optional(), + business_customer_without_vat_number: z.boolean().optional(), + locale: z.string().max(50).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + meta_data: createCustomerMetaDataSchema.optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + auto_close_invoices: z.boolean().optional(), + consolidated_invoicing: z.boolean().optional(), + token_id: z.string().max(40).optional(), + business_entity_id: z.string().max(50).optional(), + created_from_ip: z.string().max(50).optional(), + invoice_notes: z.string().max(2000).optional(), + card: createCustomerCardSchema.optional(), + bank_account: createCustomerBankAccountSchema.optional(), + payment_method: createCustomerPaymentMethodSchema.optional(), + payment_intent: createCustomerPaymentIntentSchema.optional(), + billing_address: createCustomerBillingAddressSchema.optional(), + entity_identifiers: createCustomerEntityIdentifiersSchema.optional(), + tax_providers_fields: createCustomerTaxProvidersFieldsSchema.optional(), +}); +export { createCustomerBodySchema }; diff --git a/src/validation/customer/deduct_promotional_credits.validation.ts b/src/validation/customer/deduct_promotional_credits.validation.ts new file mode 100644 index 0000000..e0bc051 --- /dev/null +++ b/src/validation/customer/deduct_promotional_credits.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Customer.deductPromotionalCredits +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deductPromotionalCreditsCustomerBodySchema = z.looseObject({ + amount: z.number().int().min(1), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { deductPromotionalCreditsCustomerBodySchema }; diff --git a/src/validation/customer/delete.validation.ts b/src/validation/customer/delete.validation.ts new file mode 100644 index 0000000..740d03c --- /dev/null +++ b/src/validation/customer/delete.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Customer.delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteCustomerBodySchema = z.looseObject({ + delete_payment_method: z.boolean().default(true).optional(), +}); +export { deleteCustomerBodySchema }; diff --git a/src/validation/customer/delete_contact.validation.ts b/src/validation/customer/delete_contact.validation.ts new file mode 100644 index 0000000..43eae03 --- /dev/null +++ b/src/validation/customer/delete_contact.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Customer.deleteContact +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteContactCustomerContactSchema = z.object({ + id: z.string().max(150), +}); +const deleteContactCustomerBodySchema = z.looseObject({ + contact: deleteContactCustomerContactSchema.optional(), +}); +export { deleteContactCustomerBodySchema }; diff --git a/src/validation/customer/hierarchy.validation.ts b/src/validation/customer/hierarchy.validation.ts new file mode 100644 index 0000000..6fa3def --- /dev/null +++ b/src/validation/customer/hierarchy.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Customer.hierarchy +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const hierarchyCustomerBodySchema = z.looseObject({ + hierarchy_operation_type: z.enum([ + 'complete_hierarchy', + 'subordinates', + 'path_to_root', + 'subordinates_with_unbilled_charges_payable_by_parent', + 'immediate_children', + ]), +}); +export { hierarchyCustomerBodySchema }; diff --git a/src/validation/customer/list_hierarchy_detail.validation.ts b/src/validation/customer/list_hierarchy_detail.validation.ts new file mode 100644 index 0000000..eae862c --- /dev/null +++ b/src/validation/customer/list_hierarchy_detail.validation.ts @@ -0,0 +1,16 @@ +// Generated Zod validator: Customer.listHierarchyDetail +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listHierarchyDetailCustomerBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + hierarchy_operation_type: z.enum([ + 'complete_hierarchy', + 'subordinates', + 'path_to_root', + 'subordinates_with_unbilled_charges_payable_by_parent', + 'immediate_children', + ]), +}); +export { listHierarchyDetailCustomerBodySchema }; diff --git a/src/validation/customer/merge.validation.ts b/src/validation/customer/merge.validation.ts new file mode 100644 index 0000000..9d4ad79 --- /dev/null +++ b/src/validation/customer/merge.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Customer.merge +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const mergeCustomerBodySchema = z.looseObject({ + from_customer_id: z.string().max(50), + to_customer_id: z.string().max(50), +}); +export { mergeCustomerBodySchema }; diff --git a/src/validation/customer/move.validation.ts b/src/validation/customer/move.validation.ts new file mode 100644 index 0000000..897a304 --- /dev/null +++ b/src/validation/customer/move.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Customer.move +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const moveCustomerBodySchema = z.looseObject({ + id_at_from_site: z.string().max(100), + from_site: z.string().max(50), +}); +export { moveCustomerBodySchema }; diff --git a/src/validation/customer/record_excess_payment.validation.ts b/src/validation/customer/record_excess_payment.validation.ts new file mode 100644 index 0000000..82cd620 --- /dev/null +++ b/src/validation/customer/record_excess_payment.validation.ts @@ -0,0 +1,26 @@ +// Generated Zod validator: Customer.recordExcessPayment +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const recordExcessPaymentCustomerTransactionSchema = z.object({ + id: z.string().max(40).optional(), + amount: z.number().int().min(0), + currency_code: z.string().max(3).optional(), + date: z.number().int(), + payment_method: z.enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), +}); +const recordExcessPaymentCustomerBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + transaction: recordExcessPaymentCustomerTransactionSchema.optional(), +}); +export { recordExcessPaymentCustomerBodySchema }; diff --git a/src/validation/customer/relationships.validation.ts b/src/validation/customer/relationships.validation.ts new file mode 100644 index 0000000..68ead2d --- /dev/null +++ b/src/validation/customer/relationships.validation.ts @@ -0,0 +1,31 @@ +// Generated Zod validator: Customer.relationships +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const relationshipsCustomerParentAccountAccessSchema = z.object({ + portal_edit_child_subscriptions: z + .enum(['yes', 'view_only', 'no']) + .optional(), + portal_download_child_invoices: z.enum(['yes', 'view_only', 'no']).optional(), + send_subscription_emails: z.boolean().optional(), + send_payment_emails: z.boolean().optional(), + send_invoice_emails: z.boolean().optional(), +}); +const relationshipsCustomerChildAccountAccessSchema = z.object({ + portal_edit_subscriptions: z.enum(['yes', 'view_only']).optional(), + portal_download_invoices: z.enum(['yes', 'view_only', 'no']).optional(), + send_subscription_emails: z.boolean().optional(), + send_payment_emails: z.boolean().optional(), + send_invoice_emails: z.boolean().optional(), +}); +const relationshipsCustomerBodySchema = z.looseObject({ + parent_id: z.string().max(50).optional(), + payment_owner_id: z.string().max(50).optional(), + invoice_owner_id: z.string().max(50).optional(), + use_default_hierarchy_settings: z.boolean().default(true).optional(), + parent_account_access: + relationshipsCustomerParentAccountAccessSchema.optional(), + child_account_access: + relationshipsCustomerChildAccountAccessSchema.optional(), +}); +export { relationshipsCustomerBodySchema }; diff --git a/src/validation/customer/set_promotional_credits.validation.ts b/src/validation/customer/set_promotional_credits.validation.ts new file mode 100644 index 0000000..697b60f --- /dev/null +++ b/src/validation/customer/set_promotional_credits.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Customer.setPromotionalCredits +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const setPromotionalCreditsCustomerBodySchema = z.looseObject({ + amount: z.number().int().min(0), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { setPromotionalCreditsCustomerBodySchema }; diff --git a/src/validation/customer/update.validation.ts b/src/validation/customer/update.validation.ts new file mode 100644 index 0000000..4098813 --- /dev/null +++ b/src/validation/customer/update.validation.ts @@ -0,0 +1,79 @@ +// Generated Zod validator: Customer.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateCustomerMetaDataSchema = z.looseObject({}); +const updateCustomerTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const updateCustomerBodySchema = z.looseObject({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + preferred_currency_code: z.string().max(3).optional(), + phone: z.string().max(50).optional(), + company: z.string().max(250).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + allow_direct_debit: z.boolean().default(false).optional(), + net_term_days: z.number().int().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), + client_profile_id: z.string().max(50).optional(), + taxjar_exemption_category: z + .enum(['wholesale', 'government', 'other']) + .optional(), + locale: z.string().max(50).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + auto_close_invoices: z.boolean().optional(), + meta_data: updateCustomerMetaDataSchema.optional(), + fraud_flag: z.enum(['safe', 'fraudulent']).optional(), + consolidated_invoicing: z.boolean().optional(), + tax_providers_fields: updateCustomerTaxProvidersFieldsSchema.optional(), +}); +export { updateCustomerBodySchema }; diff --git a/src/validation/customer/update_billing_info.validation.ts b/src/validation/customer/update_billing_info.validation.ts new file mode 100644 index 0000000..747ff77 --- /dev/null +++ b/src/validation/customer/update_billing_info.validation.ts @@ -0,0 +1,52 @@ +// Generated Zod validator: Customer.updateBillingInfo +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateBillingInfoCustomerBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateBillingInfoCustomerEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + operation: z + .array(z.enum(['create', 'update', 'delete']).optional()) + .optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const updateBillingInfoCustomerTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const updateBillingInfoCustomerBodySchema = z.looseObject({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + registered_for_gst: z.boolean().optional(), + business_customer_without_vat_number: z.boolean().optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + billing_address: updateBillingInfoCustomerBillingAddressSchema.optional(), + entity_identifiers: + updateBillingInfoCustomerEntityIdentifiersSchema.optional(), + tax_providers_fields: + updateBillingInfoCustomerTaxProvidersFieldsSchema.optional(), +}); +export { updateBillingInfoCustomerBodySchema }; diff --git a/src/validation/customer/update_contact.validation.ts b/src/validation/customer/update_contact.validation.ts new file mode 100644 index 0000000..e166b88 --- /dev/null +++ b/src/validation/customer/update_contact.validation.ts @@ -0,0 +1,19 @@ +// Generated Zod validator: Customer.updateContact +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateContactCustomerContactSchema = z.object({ + id: z.string().max(150), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + label: z.string().max(50).optional(), + enabled: z.boolean().default(false).optional(), + send_billing_email: z.boolean().default(false).optional(), + send_account_email: z.boolean().default(false).optional(), +}); +const updateContactCustomerBodySchema = z.looseObject({ + contact: updateContactCustomerContactSchema.optional(), +}); +export { updateContactCustomerBodySchema }; diff --git a/src/validation/customer/update_hierarchy_settings.validation.ts b/src/validation/customer/update_hierarchy_settings.validation.ts new file mode 100644 index 0000000..8278645 --- /dev/null +++ b/src/validation/customer/update_hierarchy_settings.validation.ts @@ -0,0 +1,28 @@ +// Generated Zod validator: Customer.updateHierarchySettings +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateHierarchySettingsCustomerParentAccountAccessSchema = z.object({ + portal_edit_child_subscriptions: z + .enum(['yes', 'view_only', 'no']) + .optional(), + portal_download_child_invoices: z.enum(['yes', 'view_only', 'no']).optional(), + send_subscription_emails: z.boolean().optional(), + send_payment_emails: z.boolean().optional(), + send_invoice_emails: z.boolean().optional(), +}); +const updateHierarchySettingsCustomerChildAccountAccessSchema = z.object({ + portal_edit_subscriptions: z.enum(['yes', 'view_only']).optional(), + portal_download_invoices: z.enum(['yes', 'view_only', 'no']).optional(), + send_subscription_emails: z.boolean().optional(), + send_payment_emails: z.boolean().optional(), + send_invoice_emails: z.boolean().optional(), +}); +const updateHierarchySettingsCustomerBodySchema = z.looseObject({ + use_default_hierarchy_settings: z.boolean().default(true).optional(), + parent_account_access: + updateHierarchySettingsCustomerParentAccountAccessSchema.optional(), + child_account_access: + updateHierarchySettingsCustomerChildAccountAccessSchema.optional(), +}); +export { updateHierarchySettingsCustomerBodySchema }; diff --git a/src/validation/customer/update_payment_method.validation.ts b/src/validation/customer/update_payment_method.validation.ts new file mode 100644 index 0000000..27f912c --- /dev/null +++ b/src/validation/customer/update_payment_method.validation.ts @@ -0,0 +1,125 @@ +// Generated Zod validator: Customer.updatePaymentMethod +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updatePaymentMethodCustomerAdditionalInformationSchema = z.looseObject( + {}, +); +const updatePaymentMethodCustomerPaymentMethodSchema = z.object({ + type: z.enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + updatePaymentMethodCustomerAdditionalInformationSchema.optional(), +}); +const updatePaymentMethodCustomerBodySchema = z.looseObject({ + payment_method: updatePaymentMethodCustomerPaymentMethodSchema.optional(), +}); +export { updatePaymentMethodCustomerBodySchema }; diff --git a/src/validation/customer_entitlement/entitlements_for_customer.validation.ts b/src/validation/customer_entitlement/entitlements_for_customer.validation.ts new file mode 100644 index 0000000..2e4015c --- /dev/null +++ b/src/validation/customer_entitlement/entitlements_for_customer.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: CustomerEntitlement.entitlementsForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const entitlementsForCustomerCustomerEntitlementBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + consolidate_entitlements: z.boolean().default(false).optional(), +}); +export { entitlementsForCustomerCustomerEntitlementBodySchema }; diff --git a/src/validation/differential_price/create.validation.ts b/src/validation/differential_price/create.validation.ts new file mode 100644 index 0000000..02e0f2d --- /dev/null +++ b/src/validation/differential_price/create.validation.ts @@ -0,0 +1,29 @@ +// Generated Zod validator: DifferentialPrice.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createDifferentialPriceParentPeriodsSchema = z.object({ + period_unit: z.array(z.enum(['day', 'week', 'month', 'year']).optional()), + period: z.array(z.array(z.string().optional()).optional()).optional(), +}); +const createDifferentialPriceTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createDifferentialPriceBodySchema = z.looseObject({ + parent_item_id: z.string().max(100), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + business_entity_id: z.string().max(50).optional(), + parent_periods: createDifferentialPriceParentPeriodsSchema.optional(), + tiers: createDifferentialPriceTiersSchema.optional(), +}); +export { createDifferentialPriceBodySchema }; diff --git a/src/validation/differential_price/delete.validation.ts b/src/validation/differential_price/delete.validation.ts new file mode 100644 index 0000000..3e4ba4c --- /dev/null +++ b/src/validation/differential_price/delete.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: DifferentialPrice.delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteDifferentialPriceBodySchema = z.looseObject({ + item_price_id: z.string().max(100), +}); +export { deleteDifferentialPriceBodySchema }; diff --git a/src/validation/differential_price/retrieve.validation.ts b/src/validation/differential_price/retrieve.validation.ts new file mode 100644 index 0000000..1c6d1ee --- /dev/null +++ b/src/validation/differential_price/retrieve.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: DifferentialPrice.retrieve +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveDifferentialPriceBodySchema = z.looseObject({ + item_price_id: z.string().max(100), +}); +export { retrieveDifferentialPriceBodySchema }; diff --git a/src/validation/differential_price/update.validation.ts b/src/validation/differential_price/update.validation.ts new file mode 100644 index 0000000..5f27b08 --- /dev/null +++ b/src/validation/differential_price/update.validation.ts @@ -0,0 +1,28 @@ +// Generated Zod validator: DifferentialPrice.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateDifferentialPriceParentPeriodsSchema = z.object({ + period_unit: z.array(z.enum(['day', 'week', 'month', 'year']).optional()), + period: z.array(z.array(z.string().optional()).optional()).optional(), +}); +const updateDifferentialPriceTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const updateDifferentialPriceBodySchema = z.looseObject({ + item_price_id: z.string().max(100), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + parent_periods: updateDifferentialPriceParentPeriodsSchema.optional(), + tiers: updateDifferentialPriceTiersSchema.optional(), +}); +export { updateDifferentialPriceBodySchema }; diff --git a/src/validation/entitlement/create.validation.ts b/src/validation/entitlement/create.validation.ts new file mode 100644 index 0000000..9beed4b --- /dev/null +++ b/src/validation/entitlement/create.validation.ts @@ -0,0 +1,25 @@ +// Generated Zod validator: Entitlement.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createEntitlementEntitlementsSchema = z.object({ + entity_id: z.array(z.string().max(100).optional()), + feature_id: z.array(z.string().max(50).optional()), + entity_type: z + .array( + z + .enum(['plan', 'addon', 'charge', 'plan_price', 'addon_price']) + .optional(), + ) + .optional(), + value: z.array(z.string().max(50).optional()).optional(), + apply_grandfathering: z + .array(z.boolean().default(false).optional()) + .optional(), +}); +const createEntitlementBodySchema = z.looseObject({ + action: z.enum(['upsert', 'remove']), + change_reason: z.string().max(100).optional(), + entitlements: createEntitlementEntitlementsSchema.optional(), +}); +export { createEntitlementBodySchema }; diff --git a/src/validation/entitlement_override/add_entitlement_override_for_subscription.validation.ts b/src/validation/entitlement_override/add_entitlement_override_for_subscription.validation.ts new file mode 100644 index 0000000..fd7e9d1 --- /dev/null +++ b/src/validation/entitlement_override/add_entitlement_override_for_subscription.validation.ts @@ -0,0 +1,23 @@ +// Generated Zod validator: EntitlementOverride.addEntitlementOverrideForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addEntitlementOverrideForSubscriptionEntitlementOverrideEntitlementOverridesSchema = + z.object({ + feature_id: z.array(z.string().max(50).optional()), + entity_id: z.array(z.string().max(50).optional()).optional(), + entity_type: z + .array(z.enum(['plan_price', 'addon_price', 'charge']).optional()) + .optional(), + value: z.array(z.string().max(50).optional()).optional(), + expires_at: z.array(z.number().int().optional()).optional(), + effective_from: z.array(z.number().int().optional()).optional(), + is_enabled: z.array(z.boolean().optional()).optional(), + }); +const addEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema = + z.looseObject({ + action: z.enum(['upsert', 'remove']).optional(), + entitlement_overrides: + addEntitlementOverrideForSubscriptionEntitlementOverrideEntitlementOverridesSchema.optional(), + }); +export { addEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema }; diff --git a/src/validation/entitlement_override/list_entitlement_override_for_subscription.validation.ts b/src/validation/entitlement_override/list_entitlement_override_for_subscription.validation.ts new file mode 100644 index 0000000..4ecc196 --- /dev/null +++ b/src/validation/entitlement_override/list_entitlement_override_for_subscription.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: EntitlementOverride.listEntitlementOverrideForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema = + z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + embed: z.string().max(1000).optional(), + include_drafts: z.boolean().default(false).optional(), + include_scheduled_overrides: z.boolean().default(false).optional(), + }); +export { listEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema }; diff --git a/src/validation/estimate/advance_invoice_estimate.validation.ts b/src/validation/estimate/advance_invoice_estimate.validation.ts new file mode 100644 index 0000000..58e0d52 --- /dev/null +++ b/src/validation/estimate/advance_invoice_estimate.validation.ts @@ -0,0 +1,28 @@ +// Generated Zod validator: Estimate.advanceInvoiceEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const advanceInvoiceEstimateEstimateFixedIntervalScheduleSchema = z.object({ + number_of_occurrences: z.number().int().min(1).optional(), + days_before_renewal: z.number().int().min(1).optional(), + end_schedule_on: z + .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) + .optional(), + end_date: z.number().int().optional(), +}); +const advanceInvoiceEstimateEstimateSpecificDatesScheduleSchema = z.object({ + terms_to_charge: z.array(z.number().int().optional()).optional(), + date: z.array(z.number().int().optional()).optional(), +}); +const advanceInvoiceEstimateEstimateBodySchema = z.looseObject({ + terms_to_charge: z.number().int().min(1).optional(), + invoice_immediately: z.boolean().optional(), + schedule_type: z + .enum(['immediate', 'specific_dates', 'fixed_intervals']) + .optional(), + fixed_interval_schedule: + advanceInvoiceEstimateEstimateFixedIntervalScheduleSchema.optional(), + specific_dates_schedule: + advanceInvoiceEstimateEstimateSpecificDatesScheduleSchema.optional(), +}); +export { advanceInvoiceEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/cancel_subscription.validation.ts b/src/validation/estimate/cancel_subscription.validation.ts new file mode 100644 index 0000000..c5ec176 --- /dev/null +++ b/src/validation/estimate/cancel_subscription.validation.ts @@ -0,0 +1,47 @@ +// Generated Zod validator: Estimate.cancelSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const cancelSubscriptionEstimateEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), +}); +const cancelSubscriptionEstimateBodySchema = z.looseObject({ + cancel_option: z + .enum([ + 'immediately', + 'end_of_term', + 'specific_date', + 'end_of_billing_term', + ]) + .optional(), + end_of_term: z.boolean().default(false).optional(), + cancel_at: z.number().int().optional(), + credit_option_for_current_term_charges: z + .enum(['none', 'prorate', 'full']) + .optional(), + unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), + account_receivables_handling: z + .enum(['no_action', 'schedule_payment_collection', 'write_off']) + .optional(), + refundable_credits_handling: z + .enum(['no_action', 'schedule_refund']) + .optional(), + contract_term_cancel_option: z + .enum([ + 'terminate_immediately', + 'end_of_contract_term', + 'specific_date', + 'end_of_subscription_billing_term', + ]) + .optional(), + invoice_date: z.number().int().optional(), + cancel_reason_code: z.string().max(100).optional(), + event_based_addons: + cancelSubscriptionEstimateEventBasedAddonsSchema.optional(), +}); +export { cancelSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/cancel_subscription_for_items.validation.ts b/src/validation/estimate/cancel_subscription_for_items.validation.ts new file mode 100644 index 0000000..46b0cc8 --- /dev/null +++ b/src/validation/estimate/cancel_subscription_for_items.validation.ts @@ -0,0 +1,49 @@ +// Generated Zod validator: Estimate.cancelSubscriptionForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const cancelSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), +}); +const cancelSubscriptionForItemsEstimateBodySchema = z.looseObject({ + cancel_option: z + .enum([ + 'immediately', + 'end_of_term', + 'specific_date', + 'end_of_billing_term', + ]) + .optional(), + end_of_term: z.boolean().default(false).optional(), + cancel_at: z.number().int().optional(), + credit_option_for_current_term_charges: z + .enum(['none', 'prorate', 'full']) + .optional(), + unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), + account_receivables_handling: z + .enum(['no_action', 'schedule_payment_collection', 'write_off']) + .optional(), + refundable_credits_handling: z + .enum(['no_action', 'schedule_refund']) + .optional(), + contract_term_cancel_option: z + .enum([ + 'terminate_immediately', + 'end_of_contract_term', + 'specific_date', + 'end_of_subscription_billing_term', + ]) + .optional(), + invoice_date: z.number().int().optional(), + cancel_reason_code: z.string().max(100).optional(), + subscription_items: + cancelSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), +}); +export { cancelSubscriptionForItemsEstimateBodySchema }; diff --git a/src/validation/estimate/change_term_end.validation.ts b/src/validation/estimate/change_term_end.validation.ts new file mode 100644 index 0000000..c424c86 --- /dev/null +++ b/src/validation/estimate/change_term_end.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: Estimate.changeTermEnd +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const changeTermEndEstimateBodySchema = z.looseObject({ + term_ends_at: z.number().int(), + prorate: z.boolean().optional(), + invoice_immediately: z.boolean().optional(), +}); +export { changeTermEndEstimateBodySchema }; diff --git a/src/validation/estimate/create_invoice.validation.ts b/src/validation/estimate/create_invoice.validation.ts new file mode 100644 index 0000000..8e7380d --- /dev/null +++ b/src/validation/estimate/create_invoice.validation.ts @@ -0,0 +1,87 @@ +// Generated Zod validator: Estimate.createInvoice +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createInvoiceEstimateInvoiceSchema = z.object({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), +}); +const createInvoiceEstimateShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createInvoiceEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createInvoiceEstimateChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createInvoiceEstimateNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum(['plan', 'addon', 'customer', 'subscription', 'coupon']) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const createInvoiceEstimateTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createInvoiceEstimateBodySchema = z.looseObject({ + currency_code: z.string().max(3).optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + invoice_date: z.number().int().optional(), + invoice: createInvoiceEstimateInvoiceSchema.optional(), + shipping_address: createInvoiceEstimateShippingAddressSchema.optional(), + addons: createInvoiceEstimateAddonsSchema.optional(), + charges: createInvoiceEstimateChargesSchema.optional(), + notes_to_remove: createInvoiceEstimateNotesToRemoveSchema.optional(), + tax_providers_fields: + createInvoiceEstimateTaxProvidersFieldsSchema.optional(), +}); +export { createInvoiceEstimateBodySchema }; diff --git a/src/validation/estimate/create_invoice_for_items.validation.ts b/src/validation/estimate/create_invoice_for_items.validation.ts new file mode 100644 index 0000000..bbc0e7d --- /dev/null +++ b/src/validation/estimate/create_invoice_for_items.validation.ts @@ -0,0 +1,132 @@ +// Generated Zod validator: Estimate.createInvoiceForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createInvoiceForItemsEstimateInvoiceSchema = z.object({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), +}); +const createInvoiceForItemsEstimateShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createInvoiceForItemsEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createInvoiceForItemsEstimateItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createInvoiceForItemsEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createInvoiceForItemsEstimateChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createInvoiceForItemsEstimateNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum([ + 'customer', + 'subscription', + 'coupon', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const createInvoiceForItemsEstimateDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const createInvoiceForItemsEstimateTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createInvoiceForItemsEstimateBodySchema = z.looseObject({ + currency_code: z.string().max(3).optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + invoice_date: z.number().int().optional(), + invoice: createInvoiceForItemsEstimateInvoiceSchema.optional(), + shipping_address: + createInvoiceForItemsEstimateShippingAddressSchema.optional(), + billing_address: createInvoiceForItemsEstimateBillingAddressSchema.optional(), + item_prices: createInvoiceForItemsEstimateItemPricesSchema.optional(), + item_tiers: createInvoiceForItemsEstimateItemTiersSchema.optional(), + charges: createInvoiceForItemsEstimateChargesSchema.optional(), + notes_to_remove: createInvoiceForItemsEstimateNotesToRemoveSchema.optional(), + discounts: createInvoiceForItemsEstimateDiscountsSchema.optional(), + tax_providers_fields: + createInvoiceForItemsEstimateTaxProvidersFieldsSchema.optional(), +}); +export { createInvoiceForItemsEstimateBodySchema }; diff --git a/src/validation/estimate/create_sub_for_customer_estimate.validation.ts b/src/validation/estimate/create_sub_for_customer_estimate.validation.ts new file mode 100644 index 0000000..ec1fab5 --- /dev/null +++ b/src/validation/estimate/create_sub_for_customer_estimate.validation.ts @@ -0,0 +1,120 @@ +// Generated Zod validator: Estimate.createSubForCustomerEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createSubForCustomerEstimateEstimateSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const createSubForCustomerEstimateEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubForCustomerEstimateEstimateContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createSubForCustomerEstimateEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const createSubForCustomerEstimateEstimateEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const createSubForCustomerEstimateEstimateBodySchema = z.looseObject({ + use_existing_balances: z.boolean().default(true).optional(), + invoice_immediately: z.boolean().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + invoice_date: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + subscription: + createSubForCustomerEstimateEstimateSubscriptionSchema.optional(), + shipping_address: + createSubForCustomerEstimateEstimateShippingAddressSchema.optional(), + contract_term: + createSubForCustomerEstimateEstimateContractTermSchema.optional(), + addons: createSubForCustomerEstimateEstimateAddonsSchema.optional(), + event_based_addons: + createSubForCustomerEstimateEstimateEventBasedAddonsSchema.optional(), +}); +export { createSubForCustomerEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/create_sub_item_estimate.validation.ts b/src/validation/estimate/create_sub_item_estimate.validation.ts new file mode 100644 index 0000000..44b549f --- /dev/null +++ b/src/validation/estimate/create_sub_item_estimate.validation.ts @@ -0,0 +1,195 @@ +// Generated Zod validator: Estimate.createSubItemEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createSubItemEstimateEstimateSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const createSubItemEstimateEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubItemEstimateEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubItemEstimateEstimateCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), +}); +const createSubItemEstimateEstimateContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + contract_start: z.number().int().optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createSubItemEstimateEstimateSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const createSubItemEstimateEstimateDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const createSubItemEstimateEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createSubItemEstimateEstimateTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createSubItemEstimateEstimateBodySchema = z.looseObject({ + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + invoice_immediately: z.boolean().optional(), + invoice_date: z.number().int().optional(), + client_profile_id: z.string().max(50).optional(), + subscription: createSubItemEstimateEstimateSubscriptionSchema.optional(), + billing_address: createSubItemEstimateEstimateBillingAddressSchema.optional(), + shipping_address: + createSubItemEstimateEstimateShippingAddressSchema.optional(), + customer: createSubItemEstimateEstimateCustomerSchema.optional(), + contract_term: createSubItemEstimateEstimateContractTermSchema.optional(), + subscription_items: + createSubItemEstimateEstimateSubscriptionItemsSchema.optional(), + discounts: createSubItemEstimateEstimateDiscountsSchema.optional(), + item_tiers: createSubItemEstimateEstimateItemTiersSchema.optional(), + tax_providers_fields: + createSubItemEstimateEstimateTaxProvidersFieldsSchema.optional(), +}); +export { createSubItemEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/create_sub_item_for_customer_estimate.validation.ts b/src/validation/estimate/create_sub_item_for_customer_estimate.validation.ts new file mode 100644 index 0000000..2a1c6d4 --- /dev/null +++ b/src/validation/estimate/create_sub_item_for_customer_estimate.validation.ts @@ -0,0 +1,165 @@ +// Generated Zod validator: Estimate.createSubItemForCustomerEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createSubItemForCustomerEstimateEstimateSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const createSubItemForCustomerEstimateEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubItemForCustomerEstimateEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubItemForCustomerEstimateEstimateContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + contract_start: z.number().int().optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createSubItemForCustomerEstimateEstimateBillingOverrideSchema = z.object({ + max_excess_payment_usage: z.number().int().min(-1).optional(), + max_refundable_credits_usage: z.number().int().min(-1).optional(), +}); +const createSubItemForCustomerEstimateEstimateSubscriptionItemsSchema = + z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z + .array(z.enum(['plan', 'addon', 'charge']).optional()) + .optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + }); +const createSubItemForCustomerEstimateEstimateDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const createSubItemForCustomerEstimateEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createSubItemForCustomerEstimateEstimateBodySchema = z.looseObject({ + use_existing_balances: z.boolean().default(true).optional(), + invoice_immediately: z.boolean().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + invoice_date: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + subscription: + createSubItemForCustomerEstimateEstimateSubscriptionSchema.optional(), + shipping_address: + createSubItemForCustomerEstimateEstimateShippingAddressSchema.optional(), + billing_address: + createSubItemForCustomerEstimateEstimateBillingAddressSchema.optional(), + contract_term: + createSubItemForCustomerEstimateEstimateContractTermSchema.optional(), + billing_override: + createSubItemForCustomerEstimateEstimateBillingOverrideSchema.optional(), + subscription_items: + createSubItemForCustomerEstimateEstimateSubscriptionItemsSchema.optional(), + discounts: createSubItemForCustomerEstimateEstimateDiscountsSchema.optional(), + item_tiers: + createSubItemForCustomerEstimateEstimateItemTiersSchema.optional(), +}); +export { createSubItemForCustomerEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/create_subscription.validation.ts b/src/validation/estimate/create_subscription.validation.ts new file mode 100644 index 0000000..4fc6088 --- /dev/null +++ b/src/validation/estimate/create_subscription.validation.ts @@ -0,0 +1,173 @@ +// Generated Zod validator: Estimate.createSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createSubscriptionEstimateSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const createSubscriptionEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubscriptionEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubscriptionEstimateCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), +}); +const createSubscriptionEstimateContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createSubscriptionEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const createSubscriptionEstimateEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const createSubscriptionEstimateTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createSubscriptionEstimateBodySchema = z.looseObject({ + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + invoice_immediately: z.boolean().optional(), + invoice_date: z.number().int().optional(), + client_profile_id: z.string().max(50).optional(), + subscription: createSubscriptionEstimateSubscriptionSchema.optional(), + billing_address: createSubscriptionEstimateBillingAddressSchema.optional(), + shipping_address: createSubscriptionEstimateShippingAddressSchema.optional(), + customer: createSubscriptionEstimateCustomerSchema.optional(), + contract_term: createSubscriptionEstimateContractTermSchema.optional(), + addons: createSubscriptionEstimateAddonsSchema.optional(), + event_based_addons: + createSubscriptionEstimateEventBasedAddonsSchema.optional(), + tax_providers_fields: + createSubscriptionEstimateTaxProvidersFieldsSchema.optional(), +}); +export { createSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/gift_subscription.validation.ts b/src/validation/estimate/gift_subscription.validation.ts new file mode 100644 index 0000000..d7b2f2e --- /dev/null +++ b/src/validation/estimate/gift_subscription.validation.ts @@ -0,0 +1,115 @@ +// Generated Zod validator: Estimate.giftSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const giftSubscriptionEstimateGiftSchema = z.object({ + scheduled_at: z.number().int().optional(), + auto_claim: z.boolean().default(false).optional(), + no_expiry: z.boolean().optional(), + claim_expiry_date: z.number().int().optional(), +}); +const giftSubscriptionEstimateGifterSchema = z.object({ + customer_id: z.string().max(50), + signature: z.string().max(50), + note: z.string().max(500).optional(), + payment_src_id: z.string().max(40).optional(), +}); +const giftSubscriptionEstimateGiftReceiverSchema = z.object({ + customer_id: z.string().max(50), + first_name: z.string().max(150), + last_name: z.string().max(150), + email: z.string().email().max(70), +}); +const giftSubscriptionEstimateAdditionalInformationSchema = z.looseObject({}); +const giftSubscriptionEstimatePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + giftSubscriptionEstimateAdditionalInformationSchema.optional(), +}); +const giftSubscriptionEstimateShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const giftSubscriptionEstimateSubscriptionSchema = z.object({ + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), +}); +const giftSubscriptionEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const giftSubscriptionEstimateBodySchema = z.looseObject({ + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gift: giftSubscriptionEstimateGiftSchema.optional(), + gifter: giftSubscriptionEstimateGifterSchema.optional(), + gift_receiver: giftSubscriptionEstimateGiftReceiverSchema.optional(), + payment_intent: giftSubscriptionEstimatePaymentIntentSchema.optional(), + shipping_address: giftSubscriptionEstimateShippingAddressSchema.optional(), + subscription: giftSubscriptionEstimateSubscriptionSchema.optional(), + addons: giftSubscriptionEstimateAddonsSchema.optional(), +}); +export { giftSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/gift_subscription_for_items.validation.ts b/src/validation/estimate/gift_subscription_for_items.validation.ts new file mode 100644 index 0000000..92d61c0 --- /dev/null +++ b/src/validation/estimate/gift_subscription_for_items.validation.ts @@ -0,0 +1,125 @@ +// Generated Zod validator: Estimate.giftSubscriptionForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const giftSubscriptionForItemsEstimateGiftSchema = z.object({ + scheduled_at: z.number().int().optional(), + auto_claim: z.boolean().default(false).optional(), + no_expiry: z.boolean().optional(), + claim_expiry_date: z.number().int().optional(), +}); +const giftSubscriptionForItemsEstimateGifterSchema = z.object({ + customer_id: z.string().max(50), + signature: z.string().max(50), + note: z.string().max(500).optional(), + payment_src_id: z.string().max(40).optional(), +}); +const giftSubscriptionForItemsEstimateGiftReceiverSchema = z.object({ + customer_id: z.string().max(50), + first_name: z.string().max(150), + last_name: z.string().max(150), + email: z.string().email().max(70), +}); +const giftSubscriptionForItemsEstimateAdditionalInformationSchema = + z.looseObject({}); +const giftSubscriptionForItemsEstimatePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + giftSubscriptionForItemsEstimateAdditionalInformationSchema.optional(), +}); +const giftSubscriptionForItemsEstimateShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const giftSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const giftSubscriptionForItemsEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const giftSubscriptionForItemsEstimateBodySchema = z.looseObject({ + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gift: giftSubscriptionForItemsEstimateGiftSchema.optional(), + gifter: giftSubscriptionForItemsEstimateGifterSchema.optional(), + gift_receiver: giftSubscriptionForItemsEstimateGiftReceiverSchema.optional(), + payment_intent: + giftSubscriptionForItemsEstimatePaymentIntentSchema.optional(), + shipping_address: + giftSubscriptionForItemsEstimateShippingAddressSchema.optional(), + subscription_items: + giftSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), + item_tiers: giftSubscriptionForItemsEstimateItemTiersSchema.optional(), +}); +export { giftSubscriptionForItemsEstimateBodySchema }; diff --git a/src/validation/estimate/pause_subscription.validation.ts b/src/validation/estimate/pause_subscription.validation.ts new file mode 100644 index 0000000..15cced5 --- /dev/null +++ b/src/validation/estimate/pause_subscription.validation.ts @@ -0,0 +1,17 @@ +// Generated Zod validator: Estimate.pauseSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const pauseSubscriptionEstimateSubscriptionSchema = z.object({ + pause_date: z.number().int().optional(), + resume_date: z.number().int().optional(), + skip_billing_cycles: z.number().int().min(1).optional(), +}); +const pauseSubscriptionEstimateBodySchema = z.looseObject({ + pause_option: z + .enum(['immediately', 'end_of_term', 'specific_date', 'billing_cycles']) + .optional(), + unbilled_charges_handling: z.enum(['no_action', 'invoice']).optional(), + subscription: pauseSubscriptionEstimateSubscriptionSchema.optional(), +}); +export { pauseSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/payment_schedules.validation.ts b/src/validation/estimate/payment_schedules.validation.ts new file mode 100644 index 0000000..4dc688f --- /dev/null +++ b/src/validation/estimate/payment_schedules.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Estimate.paymentSchedules +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const paymentSchedulesEstimateBodySchema = z.looseObject({ + scheme_id: z.string(), + amount: z.number().int().min(0).optional(), + invoice_id: z.string().optional(), + payment_schedule_start_date: z.number().int().optional(), +}); +export { paymentSchedulesEstimateBodySchema }; diff --git a/src/validation/estimate/regenerate_invoice_estimate.validation.ts b/src/validation/estimate/regenerate_invoice_estimate.validation.ts new file mode 100644 index 0000000..77fb449 --- /dev/null +++ b/src/validation/estimate/regenerate_invoice_estimate.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Estimate.regenerateInvoiceEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const regenerateInvoiceEstimateEstimateBodySchema = z.looseObject({ + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), + prorate: z.boolean().optional(), + invoice_immediately: z.boolean().optional(), +}); +export { regenerateInvoiceEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/renewal_estimate.validation.ts b/src/validation/estimate/renewal_estimate.validation.ts new file mode 100644 index 0000000..44e63a2 --- /dev/null +++ b/src/validation/estimate/renewal_estimate.validation.ts @@ -0,0 +1,12 @@ +// Generated Zod validator: Estimate.renewalEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const renewalEstimateEstimateBodySchema = z.looseObject({ + include_delayed_charges: z.boolean().default(true).optional(), + use_existing_balances: z.boolean().default(true).optional(), + ignore_scheduled_cancellation: z.boolean().default(false).optional(), + ignore_scheduled_changes: z.boolean().default(false).optional(), + exclude_tax_type: z.enum(['exclusive', 'none']).optional(), +}); +export { renewalEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/resume_subscription.validation.ts b/src/validation/estimate/resume_subscription.validation.ts new file mode 100644 index 0000000..a540f26 --- /dev/null +++ b/src/validation/estimate/resume_subscription.validation.ts @@ -0,0 +1,15 @@ +// Generated Zod validator: Estimate.resumeSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const resumeSubscriptionEstimateSubscriptionSchema = z.object({ + resume_date: z.number().int().optional(), +}); +const resumeSubscriptionEstimateBodySchema = z.looseObject({ + resume_option: z.enum(['immediately', 'specific_date']).optional(), + charges_handling: z + .enum(['invoice_immediately', 'add_to_unbilled_charges']) + .optional(), + subscription: resumeSubscriptionEstimateSubscriptionSchema.optional(), +}); +export { resumeSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/upcoming_invoices_estimate.validation.ts b/src/validation/estimate/upcoming_invoices_estimate.validation.ts new file mode 100644 index 0000000..ab4199c --- /dev/null +++ b/src/validation/estimate/upcoming_invoices_estimate.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Estimate.upcomingInvoicesEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const upcomingInvoicesEstimateEstimateBodySchema = z.looseObject({ + include_usage_charges: z.boolean().default(false).optional(), +}); +export { upcomingInvoicesEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/update_subscription.validation.ts b/src/validation/estimate/update_subscription.validation.ts new file mode 100644 index 0000000..e8b6885 --- /dev/null +++ b/src/validation/estimate/update_subscription.validation.ts @@ -0,0 +1,143 @@ +// Generated Zod validator: Estimate.updateSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateSubscriptionEstimateSubscriptionSchema = z.object({ + id: z.string().max(50), + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const updateSubscriptionEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionEstimateCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), +}); +const updateSubscriptionEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + proration_type: z + .array(z.enum(['full_term', 'partial_term', 'none']).optional()) + .optional(), +}); +const updateSubscriptionEstimateEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const updateSubscriptionEstimateBodySchema = z.looseObject({ + changes_scheduled_at: z.number().int().optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + invoice_date: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + prorate: z.boolean().optional(), + end_of_term: z.boolean().default(false).optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + include_delayed_charges: z.boolean().default(false).optional(), + use_existing_balances: z.boolean().default(true).optional(), + invoice_immediately: z.boolean().optional(), + subscription: updateSubscriptionEstimateSubscriptionSchema.optional(), + billing_address: updateSubscriptionEstimateBillingAddressSchema.optional(), + shipping_address: updateSubscriptionEstimateShippingAddressSchema.optional(), + customer: updateSubscriptionEstimateCustomerSchema.optional(), + addons: updateSubscriptionEstimateAddonsSchema.optional(), + event_based_addons: + updateSubscriptionEstimateEventBasedAddonsSchema.optional(), +}); +export { updateSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/update_subscription_for_items.validation.ts b/src/validation/estimate/update_subscription_for_items.validation.ts new file mode 100644 index 0000000..da0070e --- /dev/null +++ b/src/validation/estimate/update_subscription_for_items.validation.ts @@ -0,0 +1,174 @@ +// Generated Zod validator: Estimate.updateSubscriptionForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateSubscriptionForItemsEstimateSubscriptionSchema = z.object({ + id: z.string().max(50), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const updateSubscriptionForItemsEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionForItemsEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionForItemsEstimateCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), +}); +const updateSubscriptionForItemsEstimateBillingOverrideSchema = z.object({ + max_excess_payment_usage: z.number().int().min(-1).optional(), + max_refundable_credits_usage: z.number().int().min(-1).optional(), +}); +const updateSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + proration_type: z + .array(z.enum(['full_term', 'partial_term', 'none']).optional()) + .optional(), +}); +const updateSubscriptionForItemsEstimateDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), +}); +const updateSubscriptionForItemsEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const updateSubscriptionForItemsEstimateBodySchema = z.looseObject({ + changes_scheduled_at: z.number().int().optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + invoice_date: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + prorate: z.boolean().optional(), + end_of_term: z.boolean().default(false).optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + include_delayed_charges: z.boolean().default(false).optional(), + use_existing_balances: z.boolean().default(true).optional(), + invoice_immediately: z.boolean().optional(), + invoice_usages: z.boolean().default(false).optional(), + subscription: updateSubscriptionForItemsEstimateSubscriptionSchema.optional(), + billing_address: + updateSubscriptionForItemsEstimateBillingAddressSchema.optional(), + shipping_address: + updateSubscriptionForItemsEstimateShippingAddressSchema.optional(), + customer: updateSubscriptionForItemsEstimateCustomerSchema.optional(), + billing_override: + updateSubscriptionForItemsEstimateBillingOverrideSchema.optional(), + subscription_items: + updateSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), + discounts: updateSubscriptionForItemsEstimateDiscountsSchema.optional(), + item_tiers: updateSubscriptionForItemsEstimateItemTiersSchema.optional(), +}); +export { updateSubscriptionForItemsEstimateBodySchema }; diff --git a/src/validation/export/attached_items.validation.ts b/src/validation/export/attached_items.validation.ts new file mode 100644 index 0000000..bebd31d --- /dev/null +++ b/src/validation/export/attached_items.validation.ts @@ -0,0 +1,100 @@ +// Generated Zod validator: Export.attachedItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const attachedItemsExportItemTypeSchema = z.object({ + is: z.enum(['plan', 'addon', 'charge']).optional(), + is_not: z.enum(['plan', 'addon', 'charge']).optional(), + in: z.enum(['plan', 'addon', 'charge']).optional(), + not_in: z.enum(['plan', 'addon', 'charge']).optional(), +}); +const attachedItemsExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const attachedItemsExportItemIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const attachedItemsExportTypeSchema = z.object({ + is: z.enum(['recommended', 'mandatory', 'optional']).optional(), + is_not: z.enum(['recommended', 'mandatory', 'optional']).optional(), + in: z.enum(['recommended', 'mandatory', 'optional']).optional(), + not_in: z.enum(['recommended', 'mandatory', 'optional']).optional(), +}); +const attachedItemsExportChargeOnEventSchema = z.object({ + is: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + is_not: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + in: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + not_in: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), +}); +const attachedItemsExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const attachedItemsExportParentItemIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const attachedItemsExportAttachedItemItemSchema = z.object({ + id: attachedItemsExportIdSchema.optional(), + item_id: attachedItemsExportItemIdSchema.optional(), + type: attachedItemsExportTypeSchema.optional(), + charge_on_event: attachedItemsExportChargeOnEventSchema.optional(), + updated_at: attachedItemsExportUpdatedAtSchema.optional(), + parent_item_id: attachedItemsExportParentItemIdSchema.optional(), +}); +const attachedItemsExportBodySchema = z.looseObject({ + item_type: attachedItemsExportItemTypeSchema.optional(), + attached_item: z + .array(attachedItemsExportAttachedItemItemSchema.optional()) + .optional(), +}); +export { attachedItemsExportBodySchema }; diff --git a/src/validation/export/credit_notes.validation.ts b/src/validation/export/credit_notes.validation.ts new file mode 100644 index 0000000..ee3896e --- /dev/null +++ b/src/validation/export/credit_notes.validation.ts @@ -0,0 +1,210 @@ +// Generated Zod validator: Export.creditNotes +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const creditNotesExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const creditNotesExportCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const creditNotesExportSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const creditNotesExportReferenceInvoiceIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const creditNotesExportTypeSchema = z.object({ + is: z.enum(['adjustment', 'refundable', 'store']).optional(), + is_not: z.enum(['adjustment', 'refundable', 'store']).optional(), + in: z.enum(['adjustment', 'refundable', 'store']).optional(), + not_in: z.enum(['adjustment', 'refundable', 'store']).optional(), +}); +const creditNotesExportReasonCodeSchema = z.object({ + is: z + .enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]) + .optional(), + is_not: z + .enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]) + .optional(), + in: z + .enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]) + .optional(), + not_in: z + .enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]) + .optional(), +}); +const creditNotesExportCreateReasonCodeSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const creditNotesExportStatusSchema = z.object({ + is: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), + is_not: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), + in: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), + not_in: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), +}); +const creditNotesExportDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const creditNotesExportTotalSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const creditNotesExportPriceTypeSchema = z.object({ + is: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + is_not: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + not_in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), +}); +const creditNotesExportAmountAllocatedSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const creditNotesExportAmountRefundedSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const creditNotesExportAmountAvailableSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const creditNotesExportVoidedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const creditNotesExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const creditNotesExportChannelSchema = z.object({ + is: z.enum(['web', 'app_store', 'play_store']).optional(), + is_not: z.enum(['web', 'app_store', 'play_store']).optional(), + in: z.enum(['web', 'app_store', 'play_store']).optional(), + not_in: z.enum(['web', 'app_store', 'play_store']).optional(), +}); +const creditNotesExportCreditNoteItemSchema = z.object({ + id: creditNotesExportIdSchema.optional(), + customer_id: creditNotesExportCustomerIdSchema.optional(), + subscription_id: creditNotesExportSubscriptionIdSchema.optional(), + reference_invoice_id: creditNotesExportReferenceInvoiceIdSchema.optional(), + type: creditNotesExportTypeSchema.optional(), + reason_code: creditNotesExportReasonCodeSchema.optional(), + create_reason_code: creditNotesExportCreateReasonCodeSchema.optional(), + status: creditNotesExportStatusSchema.optional(), + date: creditNotesExportDateSchema.optional(), + total: creditNotesExportTotalSchema.optional(), + price_type: creditNotesExportPriceTypeSchema.optional(), + amount_allocated: creditNotesExportAmountAllocatedSchema.optional(), + amount_refunded: creditNotesExportAmountRefundedSchema.optional(), + amount_available: creditNotesExportAmountAvailableSchema.optional(), + voided_at: creditNotesExportVoidedAtSchema.optional(), + updated_at: creditNotesExportUpdatedAtSchema.optional(), + channel: creditNotesExportChannelSchema.optional(), +}); +const creditNotesExportBodySchema = z.looseObject({ + credit_note: z + .array(creditNotesExportCreditNoteItemSchema.optional()) + .optional(), +}); +export { creditNotesExportBodySchema }; diff --git a/src/validation/export/customers.validation.ts b/src/validation/export/customers.validation.ts new file mode 100644 index 0000000..05882c1 --- /dev/null +++ b/src/validation/export/customers.validation.ts @@ -0,0 +1,191 @@ +// Generated Zod validator: Export.customers +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const customersExportBusinessEntityIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const customersExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const customersExportFirstNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const customersExportLastNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const customersExportEmailSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const customersExportCompanySchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const customersExportPhoneSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const customersExportAutoCollectionSchema = z.object({ + is: z.enum(['on', 'off']).optional(), + is_not: z.enum(['on', 'off']).optional(), + in: z.enum(['on', 'off']).optional(), + not_in: z.enum(['on', 'off']).optional(), +}); +const customersExportTaxabilitySchema = z.object({ + is: z.enum(['taxable', 'exempt']).optional(), + is_not: z.enum(['taxable', 'exempt']).optional(), + in: z.enum(['taxable', 'exempt']).optional(), + not_in: z.enum(['taxable', 'exempt']).optional(), +}); +const customersExportCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const customersExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const customersExportOfflinePaymentMethodSchema = z.object({ + is: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + is_not: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + in: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + not_in: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), +}); +const customersExportAutoCloseInvoicesSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const customersExportChannelSchema = z.object({ + is: z.enum(['web', 'app_store', 'play_store']).optional(), + is_not: z.enum(['web', 'app_store', 'play_store']).optional(), + in: z.enum(['web', 'app_store', 'play_store']).optional(), + not_in: z.enum(['web', 'app_store', 'play_store']).optional(), +}); +const customersExportCustomerItemSchema = z.object({ + id: customersExportIdSchema.optional(), + first_name: customersExportFirstNameSchema.optional(), + last_name: customersExportLastNameSchema.optional(), + email: customersExportEmailSchema.optional(), + company: customersExportCompanySchema.optional(), + phone: customersExportPhoneSchema.optional(), + auto_collection: customersExportAutoCollectionSchema.optional(), + taxability: customersExportTaxabilitySchema.optional(), + created_at: customersExportCreatedAtSchema.optional(), + updated_at: customersExportUpdatedAtSchema.optional(), + offline_payment_method: customersExportOfflinePaymentMethodSchema.optional(), + auto_close_invoices: customersExportAutoCloseInvoicesSchema.optional(), + channel: customersExportChannelSchema.optional(), +}); +const customersExportParentIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const customersExportPaymentOwnerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const customersExportInvoiceOwnerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const customersExportRelationshipSchema = z.object({ + parent_id: customersExportParentIdSchema.optional(), + payment_owner_id: customersExportPaymentOwnerIdSchema.optional(), + invoice_owner_id: customersExportInvoiceOwnerIdSchema.optional(), +}); +const customersExportBodySchema = z.looseObject({ + export_type: z.enum(['data', 'import_friendly_data']).optional(), + business_entity_id: customersExportBusinessEntityIdSchema.optional(), + customer: z.array(customersExportCustomerItemSchema.optional()).optional(), + relationship: customersExportRelationshipSchema.optional(), +}); +export { customersExportBodySchema }; diff --git a/src/validation/export/item_families.validation.ts b/src/validation/export/item_families.validation.ts new file mode 100644 index 0000000..f4f09d2 --- /dev/null +++ b/src/validation/export/item_families.validation.ts @@ -0,0 +1,43 @@ +// Generated Zod validator: Export.itemFamilies +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const itemFamiliesExportBusinessEntityIdSchema = z.object({ + is_present: z.enum(['true', 'false']).optional(), + is: z.string().min(1).optional(), +}); +const itemFamiliesExportIncludeSiteLevelResourcesSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const itemFamiliesExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const itemFamiliesExportNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const itemFamiliesExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const itemFamiliesExportItemFamilyItemSchema = z.object({ + id: itemFamiliesExportIdSchema.optional(), + name: itemFamiliesExportNameSchema.optional(), + updated_at: itemFamiliesExportUpdatedAtSchema.optional(), +}); +const itemFamiliesExportBodySchema = z.looseObject({ + business_entity_id: itemFamiliesExportBusinessEntityIdSchema.optional(), + include_site_level_resources: + itemFamiliesExportIncludeSiteLevelResourcesSchema.optional(), + item_family: z + .array(itemFamiliesExportItemFamilyItemSchema.optional()) + .optional(), +}); +export { itemFamiliesExportBodySchema }; diff --git a/src/validation/export/items.validation.ts b/src/validation/export/items.validation.ts new file mode 100644 index 0000000..f4775a9 --- /dev/null +++ b/src/validation/export/items.validation.ts @@ -0,0 +1,100 @@ +// Generated Zod validator: Export.items +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const itemsExportBusinessEntityIdSchema = z.object({ + is_present: z.enum(['true', 'false']).optional(), + is: z.string().min(1).optional(), +}); +const itemsExportIncludeSiteLevelResourcesSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const itemsExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const itemsExportItemFamilyIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const itemsExportTypeSchema = z.object({ + is: z.enum(['plan', 'addon', 'charge']).optional(), + is_not: z.enum(['plan', 'addon', 'charge']).optional(), + in: z.enum(['plan', 'addon', 'charge']).optional(), + not_in: z.enum(['plan', 'addon', 'charge']).optional(), +}); +const itemsExportNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const itemsExportItemApplicabilitySchema = z.object({ + is: z.enum(['all', 'restricted']).optional(), + is_not: z.enum(['all', 'restricted']).optional(), + in: z.enum(['all', 'restricted']).optional(), + not_in: z.enum(['all', 'restricted']).optional(), +}); +const itemsExportStatusSchema = z.object({ + is: z.enum(['active', 'archived', 'deleted']).optional(), + is_not: z.enum(['active', 'archived', 'deleted']).optional(), + in: z.enum(['active', 'archived', 'deleted']).optional(), + not_in: z.enum(['active', 'archived', 'deleted']).optional(), +}); +const itemsExportIsGiftableSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const itemsExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const itemsExportEnabledForCheckoutSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const itemsExportEnabledInPortalSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const itemsExportMeteredSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const itemsExportUsageCalculationSchema = z.object({ + is: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), + is_not: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), + in: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), + not_in: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), +}); +const itemsExportChannelSchema = z.object({ + is: z.enum(['web', 'app_store', 'play_store']).optional(), + is_not: z.enum(['web', 'app_store', 'play_store']).optional(), + in: z.enum(['web', 'app_store', 'play_store']).optional(), + not_in: z.enum(['web', 'app_store', 'play_store']).optional(), +}); +const itemsExportItemItemSchema = z.object({ + id: itemsExportIdSchema.optional(), + item_family_id: itemsExportItemFamilyIdSchema.optional(), + type: itemsExportTypeSchema.optional(), + name: itemsExportNameSchema.optional(), + item_applicability: itemsExportItemApplicabilitySchema.optional(), + status: itemsExportStatusSchema.optional(), + is_giftable: itemsExportIsGiftableSchema.optional(), + updated_at: itemsExportUpdatedAtSchema.optional(), + enabled_for_checkout: itemsExportEnabledForCheckoutSchema.optional(), + enabled_in_portal: itemsExportEnabledInPortalSchema.optional(), + metered: itemsExportMeteredSchema.optional(), + usage_calculation: itemsExportUsageCalculationSchema.optional(), + channel: itemsExportChannelSchema.optional(), +}); +const itemsExportBodySchema = z.looseObject({ + business_entity_id: itemsExportBusinessEntityIdSchema.optional(), + include_site_level_resources: + itemsExportIncludeSiteLevelResourcesSchema.optional(), + item: z.array(itemsExportItemItemSchema.optional()).optional(), +}); +export { itemsExportBodySchema }; diff --git a/src/validation/export/orders.validation.ts b/src/validation/export/orders.validation.ts new file mode 100644 index 0000000..74a3dea --- /dev/null +++ b/src/validation/export/orders.validation.ts @@ -0,0 +1,209 @@ +// Generated Zod validator: Export.orders +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const ordersExportTotalSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const ordersExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const ordersExportSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const ordersExportCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const ordersExportStatusSchema = z.object({ + is: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), + is_not: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), + in: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), + not_in: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), +}); +const ordersExportPriceTypeSchema = z.object({ + is: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + is_not: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + not_in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), +}); +const ordersExportOrderDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ordersExportShippingDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ordersExportShippedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ordersExportDeliveredAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ordersExportCancelledAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ordersExportAmountPaidSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const ordersExportRefundableCreditsSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const ordersExportRefundableCreditsIssuedSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const ordersExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ordersExportResentStatusSchema = z.object({ + is: z.enum(['fully_resent', 'partially_resent']).optional(), + is_not: z.enum(['fully_resent', 'partially_resent']).optional(), + in: z.enum(['fully_resent', 'partially_resent']).optional(), + not_in: z.enum(['fully_resent', 'partially_resent']).optional(), +}); +const ordersExportIsResentSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const ordersExportOriginalOrderIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ordersExportOrderItemSchema = z.object({ + id: ordersExportIdSchema.optional(), + subscription_id: ordersExportSubscriptionIdSchema.optional(), + customer_id: ordersExportCustomerIdSchema.optional(), + status: ordersExportStatusSchema.optional(), + price_type: ordersExportPriceTypeSchema.optional(), + order_date: ordersExportOrderDateSchema.optional(), + shipping_date: ordersExportShippingDateSchema.optional(), + shipped_at: ordersExportShippedAtSchema.optional(), + delivered_at: ordersExportDeliveredAtSchema.optional(), + cancelled_at: ordersExportCancelledAtSchema.optional(), + amount_paid: ordersExportAmountPaidSchema.optional(), + refundable_credits: ordersExportRefundableCreditsSchema.optional(), + refundable_credits_issued: + ordersExportRefundableCreditsIssuedSchema.optional(), + updated_at: ordersExportUpdatedAtSchema.optional(), + resent_status: ordersExportResentStatusSchema.optional(), + is_resent: ordersExportIsResentSchema.optional(), + original_order_id: ordersExportOriginalOrderIdSchema.optional(), +}); +const ordersExportBodySchema = z.looseObject({ + total: ordersExportTotalSchema.optional(), + order: z.array(ordersExportOrderItemSchema.optional()).optional(), +}); +export { ordersExportBodySchema }; diff --git a/src/validation/export/price_variants.validation.ts b/src/validation/export/price_variants.validation.ts new file mode 100644 index 0000000..68deb4c --- /dev/null +++ b/src/validation/export/price_variants.validation.ts @@ -0,0 +1,59 @@ +// Generated Zod validator: Export.priceVariants +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const priceVariantsExportBusinessEntityIdSchema = z.object({ + is_present: z.enum(['true', 'false']).optional(), + is: z.string().min(1).optional(), +}); +const priceVariantsExportIncludeSiteLevelResourcesSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const priceVariantsExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const priceVariantsExportNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const priceVariantsExportStatusSchema = z.object({ + is: z.enum(['active', 'archived']).optional(), + is_not: z.enum(['active', 'archived']).optional(), + in: z.enum(['active', 'archived']).optional(), + not_in: z.enum(['active', 'archived']).optional(), +}); +const priceVariantsExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const priceVariantsExportCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const priceVariantsExportPriceVariantItemSchema = z.object({ + id: priceVariantsExportIdSchema.optional(), + name: priceVariantsExportNameSchema.optional(), + status: priceVariantsExportStatusSchema.optional(), + updated_at: priceVariantsExportUpdatedAtSchema.optional(), + created_at: priceVariantsExportCreatedAtSchema.optional(), +}); +const priceVariantsExportBodySchema = z.looseObject({ + business_entity_id: priceVariantsExportBusinessEntityIdSchema.optional(), + include_site_level_resources: + priceVariantsExportIncludeSiteLevelResourcesSchema.optional(), + price_variant: z + .array(priceVariantsExportPriceVariantItemSchema.optional()) + .optional(), +}); +export { priceVariantsExportBodySchema }; diff --git a/src/validation/export/transactions.validation.ts b/src/validation/export/transactions.validation.ts new file mode 100644 index 0000000..28d8426 --- /dev/null +++ b/src/validation/export/transactions.validation.ts @@ -0,0 +1,654 @@ +// Generated Zod validator: Export.transactions +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const transactionsExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const transactionsExportCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const transactionsExportSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const transactionsExportPaymentSourceIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const transactionsExportPaymentMethodSchema = z.object({ + is: z + .enum([ + 'card', + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'amazon_payments', + 'paypal_express_checkout', + 'direct_debit', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ach_credit', + 'sepa_credit', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'other', + 'app_store', + 'upi', + 'netbanking_emandates', + 'play_store', + 'custom', + 'boleto', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + is_not: z + .enum([ + 'card', + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'amazon_payments', + 'paypal_express_checkout', + 'direct_debit', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ach_credit', + 'sepa_credit', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'other', + 'app_store', + 'upi', + 'netbanking_emandates', + 'play_store', + 'custom', + 'boleto', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + in: z + .enum([ + 'card', + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'amazon_payments', + 'paypal_express_checkout', + 'direct_debit', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ach_credit', + 'sepa_credit', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'other', + 'app_store', + 'upi', + 'netbanking_emandates', + 'play_store', + 'custom', + 'boleto', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + not_in: z + .enum([ + 'card', + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'amazon_payments', + 'paypal_express_checkout', + 'direct_debit', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ach_credit', + 'sepa_credit', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'other', + 'app_store', + 'upi', + 'netbanking_emandates', + 'play_store', + 'custom', + 'boleto', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), +}); +const transactionsExportGatewaySchema = z.object({ + is: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + 'not_applicable', + ]) + .optional(), + is_not: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + 'not_applicable', + ]) + .optional(), + in: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + 'not_applicable', + ]) + .optional(), + not_in: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + 'not_applicable', + ]) + .optional(), +}); +const transactionsExportGatewayAccountIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const transactionsExportIdAtGatewaySchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const transactionsExportReferenceNumberSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const transactionsExportTypeSchema = z.object({ + is: z + .enum(['authorization', 'payment', 'refund', 'payment_reversal']) + .optional(), + is_not: z + .enum(['authorization', 'payment', 'refund', 'payment_reversal']) + .optional(), + in: z + .enum(['authorization', 'payment', 'refund', 'payment_reversal']) + .optional(), + not_in: z + .enum(['authorization', 'payment', 'refund', 'payment_reversal']) + .optional(), +}); +const transactionsExportDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const transactionsExportAmountSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const transactionsExportAmountCapturableSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const transactionsExportStatusSchema = z.object({ + is: z + .enum([ + 'in_progress', + 'success', + 'voided', + 'failure', + 'timeout', + 'needs_attention', + 'late_failure', + ]) + .optional(), + is_not: z + .enum([ + 'in_progress', + 'success', + 'voided', + 'failure', + 'timeout', + 'needs_attention', + 'late_failure', + ]) + .optional(), + in: z + .enum([ + 'in_progress', + 'success', + 'voided', + 'failure', + 'timeout', + 'needs_attention', + 'late_failure', + ]) + .optional(), + not_in: z + .enum([ + 'in_progress', + 'success', + 'voided', + 'failure', + 'timeout', + 'needs_attention', + 'late_failure', + ]) + .optional(), +}); +const transactionsExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const transactionsExportTransactionItemSchema = z.object({ + id: transactionsExportIdSchema.optional(), + customer_id: transactionsExportCustomerIdSchema.optional(), + subscription_id: transactionsExportSubscriptionIdSchema.optional(), + payment_source_id: transactionsExportPaymentSourceIdSchema.optional(), + payment_method: transactionsExportPaymentMethodSchema.optional(), + gateway: transactionsExportGatewaySchema.optional(), + gateway_account_id: transactionsExportGatewayAccountIdSchema.optional(), + id_at_gateway: transactionsExportIdAtGatewaySchema.optional(), + reference_number: transactionsExportReferenceNumberSchema.optional(), + type: transactionsExportTypeSchema.optional(), + date: transactionsExportDateSchema.optional(), + amount: transactionsExportAmountSchema.optional(), + amount_capturable: transactionsExportAmountCapturableSchema.optional(), + status: transactionsExportStatusSchema.optional(), + updated_at: transactionsExportUpdatedAtSchema.optional(), +}); +const transactionsExportBodySchema = z.looseObject({ + transaction: z + .array(transactionsExportTransactionItemSchema.optional()) + .optional(), +}); +export { transactionsExportBodySchema }; diff --git a/src/validation/feature/create.validation.ts b/src/validation/feature/create.validation.ts new file mode 100644 index 0000000..2888015 --- /dev/null +++ b/src/validation/feature/create.validation.ts @@ -0,0 +1,19 @@ +// Generated Zod validator: Feature.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createFeatureLevelsSchema = z.object({ + name: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + is_unlimited: z.array(z.boolean().optional()).optional(), + level: z.array(z.number().int().optional()).optional(), +}); +const createFeatureBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + name: z.string().max(50), + description: z.string().max(500).optional(), + type: z.enum(['switch', 'custom', 'quantity', 'range']).optional(), + unit: z.string().max(50).optional(), + levels: createFeatureLevelsSchema.optional(), +}); +export { createFeatureBodySchema }; diff --git a/src/validation/feature/update.validation.ts b/src/validation/feature/update.validation.ts new file mode 100644 index 0000000..c3022ec --- /dev/null +++ b/src/validation/feature/update.validation.ts @@ -0,0 +1,17 @@ +// Generated Zod validator: Feature.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateFeatureLevelsSchema = z.object({ + name: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + is_unlimited: z.array(z.boolean().optional()).optional(), + level: z.array(z.number().int().optional()).optional(), +}); +const updateFeatureBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + description: z.string().max(500).optional(), + unit: z.string().max(50).optional(), + levels: updateFeatureLevelsSchema.optional(), +}); +export { updateFeatureBodySchema }; diff --git a/src/validation/gift/create.validation.ts b/src/validation/gift/create.validation.ts new file mode 100644 index 0000000..393f458 --- /dev/null +++ b/src/validation/gift/create.validation.ts @@ -0,0 +1,111 @@ +// Generated Zod validator: Gift.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createGiftGifterSchema = z.object({ + customer_id: z.string().max(50), + signature: z.string().max(50), + note: z.string().max(500).optional(), + payment_src_id: z.string().max(40).optional(), +}); +const createGiftGiftReceiverSchema = z.object({ + customer_id: z.string().max(50), + first_name: z.string().max(150), + last_name: z.string().max(150), + email: z.string().email().max(70), +}); +const createGiftAdditionalInformationSchema = z.looseObject({}); +const createGiftPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: createGiftAdditionalInformationSchema.optional(), +}); +const createGiftShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createGiftSubscriptionSchema = z.looseObject({ + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), +}); +const createGiftAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const createGiftBodySchema = z.looseObject({ + scheduled_at: z.number().int().optional(), + auto_claim: z.boolean().default(false).optional(), + no_expiry: z.boolean().optional(), + claim_expiry_date: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gifter: createGiftGifterSchema.optional(), + gift_receiver: createGiftGiftReceiverSchema.optional(), + payment_intent: createGiftPaymentIntentSchema.optional(), + shipping_address: createGiftShippingAddressSchema.optional(), + subscription: createGiftSubscriptionSchema.optional(), + addons: createGiftAddonsSchema.optional(), +}); +export { createGiftBodySchema }; diff --git a/src/validation/gift/create_for_items.validation.ts b/src/validation/gift/create_for_items.validation.ts new file mode 100644 index 0000000..57f8f9a --- /dev/null +++ b/src/validation/gift/create_for_items.validation.ts @@ -0,0 +1,120 @@ +// Generated Zod validator: Gift.createForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForItemsGiftMetaDataSchema = z.looseObject({}); +const createForItemsGiftGifterSchema = z.object({ + customer_id: z.string().max(50), + signature: z.string().max(50), + note: z.string().max(500).optional(), + payment_src_id: z.string().max(40).optional(), +}); +const createForItemsGiftGiftReceiverSchema = z.object({ + customer_id: z.string().max(50), + first_name: z.string().max(150), + last_name: z.string().max(150), + email: z.string().email().max(70), +}); +const createForItemsGiftAdditionalInformationSchema = z.looseObject({}); +const createForItemsGiftPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + createForItemsGiftAdditionalInformationSchema.optional(), +}); +const createForItemsGiftShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createForItemsGiftSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const createForItemsGiftItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const createForItemsGiftBodySchema = z.looseObject({ + scheduled_at: z.number().int().optional(), + auto_claim: z.boolean().default(false).optional(), + no_expiry: z.boolean().optional(), + claim_expiry_date: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + meta_data: createForItemsGiftMetaDataSchema.optional(), + gifter: createForItemsGiftGifterSchema.optional(), + gift_receiver: createForItemsGiftGiftReceiverSchema.optional(), + payment_intent: createForItemsGiftPaymentIntentSchema.optional(), + shipping_address: createForItemsGiftShippingAddressSchema.optional(), + subscription_items: createForItemsGiftSubscriptionItemsSchema.optional(), + item_tiers: createForItemsGiftItemTiersSchema.optional(), +}); +export { createForItemsGiftBodySchema }; diff --git a/src/validation/gift/list.validation.ts b/src/validation/gift/list.validation.ts new file mode 100644 index 0000000..570afb1 --- /dev/null +++ b/src/validation/gift/list.validation.ts @@ -0,0 +1,43 @@ +// Generated Zod validator: Gift.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listGiftStatusSchema = z.object({ + is: z + .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) + .optional(), + is_not: z + .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) + .optional(), + in: z + .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) + .optional(), + not_in: z + .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) + .optional(), +}); +const listGiftEmailSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listGiftCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listGiftGiftReceiverSchema = z.object({ + email: listGiftEmailSchema.optional(), + customer_id: listGiftCustomerIdSchema.optional(), +}); +const listGiftGifterSchema = z.object({ + customer_id: listGiftCustomerIdSchema.optional(), +}); +const listGiftBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + status: listGiftStatusSchema.optional(), + gift_receiver: listGiftGiftReceiverSchema.optional(), + gifter: listGiftGifterSchema.optional(), +}); +export { listGiftBodySchema }; diff --git a/src/validation/gift/update_gift.validation.ts b/src/validation/gift/update_gift.validation.ts new file mode 100644 index 0000000..635f01d --- /dev/null +++ b/src/validation/gift/update_gift.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Gift.updateGift +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateGiftGiftBodySchema = z.looseObject({ + scheduled_at: z.number().int(), + comment: z.string().max(250).optional(), +}); +export { updateGiftGiftBodySchema }; diff --git a/src/validation/hosted_page/accept_quote.validation.ts b/src/validation/hosted_page/accept_quote.validation.ts new file mode 100644 index 0000000..df0ae16 --- /dev/null +++ b/src/validation/hosted_page/accept_quote.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: HostedPage.acceptQuote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const acceptQuoteHostedPageQuoteSchema = z.object({ + id: z.string().max(50), +}); +const acceptQuoteHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + layout: z.enum(['in_app', 'full_page']).optional(), + quote: acceptQuoteHostedPageQuoteSchema.optional(), +}); +export { acceptQuoteHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_existing.validation.ts b/src/validation/hosted_page/checkout_existing.validation.ts new file mode 100644 index 0000000..c2333aa --- /dev/null +++ b/src/validation/hosted_page/checkout_existing.validation.ts @@ -0,0 +1,177 @@ +// Generated Zod validator: HostedPage.checkoutExisting +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const checkoutExistingHostedPageSubscriptionSchema = z.looseObject({ + id: z.string().max(50), + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const checkoutExistingHostedPageCustomerSchema = z.looseObject({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), +}); +const checkoutExistingHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const checkoutExistingHostedPageContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const checkoutExistingHostedPageAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const checkoutExistingHostedPageEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const checkoutExistingHostedPageBodySchema = z.looseObject({ + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + invoice_date: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + force_term_reset: z.boolean().default(false).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + embed: z.boolean().default(true).optional(), + iframe_messaging: z.boolean().default(false).optional(), + allow_offline_payment_methods: z.boolean().optional(), + subscription: checkoutExistingHostedPageSubscriptionSchema.optional(), + customer: checkoutExistingHostedPageCustomerSchema.optional(), + card: checkoutExistingHostedPageCardSchema.optional(), + contract_term: checkoutExistingHostedPageContractTermSchema.optional(), + addons: checkoutExistingHostedPageAddonsSchema.optional(), + event_based_addons: + checkoutExistingHostedPageEventBasedAddonsSchema.optional(), +}); +export { checkoutExistingHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_existing_for_items.validation.ts b/src/validation/hosted_page/checkout_existing_for_items.validation.ts new file mode 100644 index 0000000..8111381 --- /dev/null +++ b/src/validation/hosted_page/checkout_existing_for_items.validation.ts @@ -0,0 +1,219 @@ +// Generated Zod validator: HostedPage.checkoutExistingForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const checkoutExistingForItemsHostedPageSubscriptionSchema = z.looseObject({ + id: z.string().max(50), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const checkoutExistingForItemsHostedPageCustomerSchema = z.looseObject({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + is_einvoice_enabled: z.boolean().optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), +}); +const checkoutExistingForItemsHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const checkoutExistingForItemsHostedPageContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const checkoutExistingForItemsHostedPageSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), +}); +const checkoutExistingForItemsHostedPageDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), +}); +const checkoutExistingForItemsHostedPageItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const checkoutExistingForItemsHostedPageEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + operation: z + .array(z.enum(['create', 'update', 'delete']).optional()) + .optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const checkoutExistingForItemsHostedPageBodySchema = z.looseObject({ + layout: z.enum(['in_app', 'full_page']).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + invoice_date: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + force_term_reset: z.boolean().default(false).optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + changes_scheduled_at: z.number().int().optional(), + invoice_usages: z.boolean().default(false).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + allow_offline_payment_methods: z.boolean().optional(), + subscription: checkoutExistingForItemsHostedPageSubscriptionSchema.optional(), + customer: checkoutExistingForItemsHostedPageCustomerSchema.optional(), + card: checkoutExistingForItemsHostedPageCardSchema.optional(), + contract_term: + checkoutExistingForItemsHostedPageContractTermSchema.optional(), + subscription_items: + checkoutExistingForItemsHostedPageSubscriptionItemsSchema.optional(), + discounts: checkoutExistingForItemsHostedPageDiscountsSchema.optional(), + item_tiers: checkoutExistingForItemsHostedPageItemTiersSchema.optional(), + entity_identifiers: + checkoutExistingForItemsHostedPageEntityIdentifiersSchema.optional(), +}); +export { checkoutExistingForItemsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_gift.validation.ts b/src/validation/hosted_page/checkout_gift.validation.ts new file mode 100644 index 0000000..16a8ffe --- /dev/null +++ b/src/validation/hosted_page/checkout_gift.validation.ts @@ -0,0 +1,26 @@ +// Generated Zod validator: HostedPage.checkoutGift +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const checkoutGiftHostedPageGifterSchema = z.object({ + customer_id: z.string().max(50).optional(), +}); +const checkoutGiftHostedPageSubscriptionSchema = z.looseObject({ + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + coupon: z.string().max(100).optional(), +}); +const checkoutGiftHostedPageAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const checkoutGiftHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gifter: checkoutGiftHostedPageGifterSchema.optional(), + subscription: checkoutGiftHostedPageSubscriptionSchema.optional(), + addons: checkoutGiftHostedPageAddonsSchema.optional(), +}); +export { checkoutGiftHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_gift_for_items.validation.ts b/src/validation/hosted_page/checkout_gift_for_items.validation.ts new file mode 100644 index 0000000..2bacf81 --- /dev/null +++ b/src/validation/hosted_page/checkout_gift_for_items.validation.ts @@ -0,0 +1,33 @@ +// Generated Zod validator: HostedPage.checkoutGiftForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const checkoutGiftForItemsHostedPageGifterSchema = z.object({ + customer_id: z.string().max(50).optional(), +}); +const checkoutGiftForItemsHostedPageSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const checkoutGiftForItemsHostedPageItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const checkoutGiftForItemsHostedPageBodySchema = z.looseObject({ + business_entity_id: z.string().max(50).optional(), + redirect_url: z.string().max(250).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gifter: checkoutGiftForItemsHostedPageGifterSchema.optional(), + subscription_items: + checkoutGiftForItemsHostedPageSubscriptionItemsSchema.optional(), + item_tiers: checkoutGiftForItemsHostedPageItemTiersSchema.optional(), +}); +export { checkoutGiftForItemsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_new.validation.ts b/src/validation/hosted_page/checkout_new.validation.ts new file mode 100644 index 0000000..2a7ef86 --- /dev/null +++ b/src/validation/hosted_page/checkout_new.validation.ts @@ -0,0 +1,218 @@ +// Generated Zod validator: HostedPage.checkoutNew +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const checkoutNewHostedPageSubscriptionSchema = z.looseObject({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + affiliate_token: z.string().max(250).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const checkoutNewHostedPageCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + consolidated_invoicing: z.boolean().optional(), +}); +const checkoutNewHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const checkoutNewHostedPageBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const checkoutNewHostedPageShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const checkoutNewHostedPageContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const checkoutNewHostedPageAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), +}); +const checkoutNewHostedPageEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const checkoutNewHostedPageBodySchema = z.looseObject({ + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + embed: z.boolean().default(true).optional(), + iframe_messaging: z.boolean().default(false).optional(), + allow_offline_payment_methods: z.boolean().optional(), + subscription: checkoutNewHostedPageSubscriptionSchema.optional(), + customer: checkoutNewHostedPageCustomerSchema.optional(), + card: checkoutNewHostedPageCardSchema.optional(), + billing_address: checkoutNewHostedPageBillingAddressSchema.optional(), + shipping_address: checkoutNewHostedPageShippingAddressSchema.optional(), + contract_term: checkoutNewHostedPageContractTermSchema.optional(), + addons: checkoutNewHostedPageAddonsSchema.optional(), + event_based_addons: checkoutNewHostedPageEventBasedAddonsSchema.optional(), +}); +export { checkoutNewHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_new_for_items.validation.ts b/src/validation/hosted_page/checkout_new_for_items.validation.ts new file mode 100644 index 0000000..936f096 --- /dev/null +++ b/src/validation/hosted_page/checkout_new_for_items.validation.ts @@ -0,0 +1,255 @@ +// Generated Zod validator: HostedPage.checkoutNewForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const checkoutNewForItemsHostedPageSubscriptionSchema = z.looseObject({ + id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + po_number: z.string().max(100).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const checkoutNewForItemsHostedPageCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + is_einvoice_enabled: z.boolean().optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), +}); +const checkoutNewForItemsHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const checkoutNewForItemsHostedPageBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const checkoutNewForItemsHostedPageShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const checkoutNewForItemsHostedPageContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const checkoutNewForItemsHostedPageSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const checkoutNewForItemsHostedPageDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const checkoutNewForItemsHostedPageItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const checkoutNewForItemsHostedPageEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + operation: z + .array(z.enum(['create', 'update', 'delete']).optional()) + .optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const checkoutNewForItemsHostedPageBodySchema = z.looseObject({ + layout: z.enum(['in_app', 'full_page']).optional(), + business_entity_id: z.string().max(50).optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + allow_offline_payment_methods: z.boolean().optional(), + subscription: checkoutNewForItemsHostedPageSubscriptionSchema.optional(), + customer: checkoutNewForItemsHostedPageCustomerSchema.optional(), + card: checkoutNewForItemsHostedPageCardSchema.optional(), + billing_address: checkoutNewForItemsHostedPageBillingAddressSchema.optional(), + shipping_address: + checkoutNewForItemsHostedPageShippingAddressSchema.optional(), + contract_term: checkoutNewForItemsHostedPageContractTermSchema.optional(), + subscription_items: + checkoutNewForItemsHostedPageSubscriptionItemsSchema.optional(), + discounts: checkoutNewForItemsHostedPageDiscountsSchema.optional(), + item_tiers: checkoutNewForItemsHostedPageItemTiersSchema.optional(), + entity_identifiers: + checkoutNewForItemsHostedPageEntityIdentifiersSchema.optional(), +}); +export { checkoutNewForItemsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_one_time.validation.ts b/src/validation/hosted_page/checkout_one_time.validation.ts new file mode 100644 index 0000000..7409ed1 --- /dev/null +++ b/src/validation/hosted_page/checkout_one_time.validation.ts @@ -0,0 +1,167 @@ +// Generated Zod validator: HostedPage.checkoutOneTime +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const checkoutOneTimeHostedPageCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + consolidated_invoicing: z.boolean().optional(), +}); +const checkoutOneTimeHostedPageInvoiceSchema = z.object({ + po_number: z.string().max(100).optional(), +}); +const checkoutOneTimeHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const checkoutOneTimeHostedPageBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const checkoutOneTimeHostedPageShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const checkoutOneTimeHostedPageAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const checkoutOneTimeHostedPageChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const checkoutOneTimeHostedPageBodySchema = z.looseObject({ + currency_code: z.string().max(3).optional(), + invoice_note: z.string().max(2000).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + embed: z.boolean().default(true).optional(), + iframe_messaging: z.boolean().default(false).optional(), + customer: checkoutOneTimeHostedPageCustomerSchema.optional(), + invoice: checkoutOneTimeHostedPageInvoiceSchema.optional(), + card: checkoutOneTimeHostedPageCardSchema.optional(), + billing_address: checkoutOneTimeHostedPageBillingAddressSchema.optional(), + shipping_address: checkoutOneTimeHostedPageShippingAddressSchema.optional(), + addons: checkoutOneTimeHostedPageAddonsSchema.optional(), + charges: checkoutOneTimeHostedPageChargesSchema.optional(), +}); +export { checkoutOneTimeHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_one_time_for_items.validation.ts b/src/validation/hosted_page/checkout_one_time_for_items.validation.ts new file mode 100644 index 0000000..794ba57 --- /dev/null +++ b/src/validation/hosted_page/checkout_one_time_for_items.validation.ts @@ -0,0 +1,208 @@ +// Generated Zod validator: HostedPage.checkoutOneTimeForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const checkoutOneTimeForItemsHostedPageCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + is_einvoice_enabled: z.boolean().optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + consolidated_invoicing: z.boolean().optional(), +}); +const checkoutOneTimeForItemsHostedPageInvoiceSchema = z.object({ + po_number: z.string().max(100).optional(), +}); +const checkoutOneTimeForItemsHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const checkoutOneTimeForItemsHostedPageBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const checkoutOneTimeForItemsHostedPageShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const checkoutOneTimeForItemsHostedPageItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const checkoutOneTimeForItemsHostedPageItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const checkoutOneTimeForItemsHostedPageChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const checkoutOneTimeForItemsHostedPageDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const checkoutOneTimeForItemsHostedPageEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + operation: z + .array(z.enum(['create', 'update', 'delete']).optional()) + .optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const checkoutOneTimeForItemsHostedPageBodySchema = z.looseObject({ + business_entity_id: z.string().max(50).optional(), + layout: z.enum(['in_app', 'full_page']).optional(), + invoice_note: z.string().max(2000).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + currency_code: z.string().max(3).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + customer: checkoutOneTimeForItemsHostedPageCustomerSchema.optional(), + invoice: checkoutOneTimeForItemsHostedPageInvoiceSchema.optional(), + card: checkoutOneTimeForItemsHostedPageCardSchema.optional(), + billing_address: + checkoutOneTimeForItemsHostedPageBillingAddressSchema.optional(), + shipping_address: + checkoutOneTimeForItemsHostedPageShippingAddressSchema.optional(), + item_prices: checkoutOneTimeForItemsHostedPageItemPricesSchema.optional(), + item_tiers: checkoutOneTimeForItemsHostedPageItemTiersSchema.optional(), + charges: checkoutOneTimeForItemsHostedPageChargesSchema.optional(), + discounts: checkoutOneTimeForItemsHostedPageDiscountsSchema.optional(), + entity_identifiers: + checkoutOneTimeForItemsHostedPageEntityIdentifiersSchema.optional(), +}); +export { checkoutOneTimeForItemsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/claim_gift.validation.ts b/src/validation/hosted_page/claim_gift.validation.ts new file mode 100644 index 0000000..2f9d237 --- /dev/null +++ b/src/validation/hosted_page/claim_gift.validation.ts @@ -0,0 +1,16 @@ +// Generated Zod validator: HostedPage.claimGift +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const claimGiftHostedPageGiftSchema = z.object({ + id: z.string().max(150), +}); +const claimGiftHostedPageCustomerSchema = z.object({ + locale: z.string().max(50).optional(), +}); +const claimGiftHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + gift: claimGiftHostedPageGiftSchema.optional(), + customer: claimGiftHostedPageCustomerSchema.optional(), +}); +export { claimGiftHostedPageBodySchema }; diff --git a/src/validation/hosted_page/collect_now.validation.ts b/src/validation/hosted_page/collect_now.validation.ts new file mode 100644 index 0000000..f1af0e3 --- /dev/null +++ b/src/validation/hosted_page/collect_now.validation.ts @@ -0,0 +1,81 @@ +// Generated Zod validator: HostedPage.collectNow +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const collectNowHostedPageCustomerSchema = z.object({ + id: z.string().max(50), +}); +const collectNowHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const collectNowHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + currency_code: z.string().max(3).optional(), + payment_method_save_policy: z.enum(['always', 'ask', 'never']).optional(), + customer: collectNowHostedPageCustomerSchema.optional(), + card: collectNowHostedPageCardSchema.optional(), +}); +export { collectNowHostedPageBodySchema }; diff --git a/src/validation/hosted_page/events.validation.ts b/src/validation/hosted_page/events.validation.ts new file mode 100644 index 0000000..3c240c7 --- /dev/null +++ b/src/validation/hosted_page/events.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: HostedPage.events +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const eventsHostedPageEventDataSchema = z.looseObject({}); +const eventsHostedPageBodySchema = z.looseObject({ + event_name: z.enum(['cancellation_page_loaded']), + occurred_at: z.number().int().optional(), + event_data: eventsHostedPageEventDataSchema, +}); +export { eventsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/extend_subscription.validation.ts b/src/validation/hosted_page/extend_subscription.validation.ts new file mode 100644 index 0000000..9a84903 --- /dev/null +++ b/src/validation/hosted_page/extend_subscription.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: HostedPage.extendSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const extendSubscriptionHostedPageSubscriptionSchema = z.object({ + id: z.string().max(50), +}); +const extendSubscriptionHostedPageBodySchema = z.looseObject({ + expiry: z.number().int().min(1).max(500).optional(), + billing_cycle: z.number().int().min(1).optional(), + subscription: extendSubscriptionHostedPageSubscriptionSchema.optional(), +}); +export { extendSubscriptionHostedPageBodySchema }; diff --git a/src/validation/hosted_page/manage_payment_sources.validation.ts b/src/validation/hosted_page/manage_payment_sources.validation.ts new file mode 100644 index 0000000..5970235 --- /dev/null +++ b/src/validation/hosted_page/manage_payment_sources.validation.ts @@ -0,0 +1,80 @@ +// Generated Zod validator: HostedPage.managePaymentSources +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const managePaymentSourcesHostedPageCustomerSchema = z.object({ + id: z.string().max(50), +}); +const managePaymentSourcesHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const managePaymentSourcesHostedPageBodySchema = z.looseObject({ + business_entity_id: z.string().max(50).optional(), + redirect_url: z.string().max(250).optional(), + customer: managePaymentSourcesHostedPageCustomerSchema.optional(), + card: managePaymentSourcesHostedPageCardSchema.optional(), +}); +export { managePaymentSourcesHostedPageBodySchema }; diff --git a/src/validation/hosted_page/pre_cancel.validation.ts b/src/validation/hosted_page/pre_cancel.validation.ts new file mode 100644 index 0000000..5fe48a6 --- /dev/null +++ b/src/validation/hosted_page/pre_cancel.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: HostedPage.preCancel +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const preCancelHostedPageSubscriptionSchema = z.object({ + id: z.string().max(50), +}); +const preCancelHostedPageBodySchema = z.looseObject({ + pass_thru_content: z.string().max(2048).optional(), + cancel_url: z.string().max(250).optional(), + redirect_url: z.string().max(250).optional(), + subscription: preCancelHostedPageSubscriptionSchema.optional(), +}); +export { preCancelHostedPageBodySchema }; diff --git a/src/validation/hosted_page/retrieve_agreement_pdf.validation.ts b/src/validation/hosted_page/retrieve_agreement_pdf.validation.ts new file mode 100644 index 0000000..dd9535c --- /dev/null +++ b/src/validation/hosted_page/retrieve_agreement_pdf.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: HostedPage.retrieveAgreementPdf +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveAgreementPdfHostedPageBodySchema = z.looseObject({ + payment_source_id: z.string().max(40), +}); +export { retrieveAgreementPdfHostedPageBodySchema }; diff --git a/src/validation/hosted_page/update_card.validation.ts b/src/validation/hosted_page/update_card.validation.ts new file mode 100644 index 0000000..616f8d4 --- /dev/null +++ b/src/validation/hosted_page/update_card.validation.ts @@ -0,0 +1,85 @@ +// Generated Zod validator: HostedPage.updateCard +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateCardHostedPageCustomerSchema = z.object({ + id: z.string().max(50), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), +}); +const updateCardHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const updateCardHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + iframe_messaging: z.boolean().default(false).optional(), + customer: updateCardHostedPageCustomerSchema.optional(), + card: updateCardHostedPageCardSchema.optional(), + embed: z.boolean().default(true).optional(), +}); +export { updateCardHostedPageBodySchema }; diff --git a/src/validation/hosted_page/update_payment_method.validation.ts b/src/validation/hosted_page/update_payment_method.validation.ts new file mode 100644 index 0000000..d2a9098 --- /dev/null +++ b/src/validation/hosted_page/update_payment_method.validation.ts @@ -0,0 +1,85 @@ +// Generated Zod validator: HostedPage.updatePaymentMethod +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updatePaymentMethodHostedPageCustomerSchema = z.object({ + id: z.string().max(50), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), +}); +const updatePaymentMethodHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const updatePaymentMethodHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + iframe_messaging: z.boolean().default(false).optional(), + customer: updatePaymentMethodHostedPageCustomerSchema.optional(), + card: updatePaymentMethodHostedPageCardSchema.optional(), + embed: z.boolean().default(true).optional(), +}); +export { updatePaymentMethodHostedPageBodySchema }; diff --git a/src/validation/hosted_page/view_voucher.validation.ts b/src/validation/hosted_page/view_voucher.validation.ts new file mode 100644 index 0000000..cc40842 --- /dev/null +++ b/src/validation/hosted_page/view_voucher.validation.ts @@ -0,0 +1,15 @@ +// Generated Zod validator: HostedPage.viewVoucher +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const viewVoucherHostedPagePaymentVoucherSchema = z.object({ + id: z.string().max(40), +}); +const viewVoucherHostedPageCustomerSchema = z.object({ + locale: z.string().max(50).optional(), +}); +const viewVoucherHostedPageBodySchema = z.looseObject({ + payment_voucher: viewVoucherHostedPagePaymentVoucherSchema.optional(), + customer: viewVoucherHostedPageCustomerSchema.optional(), +}); +export { viewVoucherHostedPageBodySchema }; diff --git a/src/validation/in_app_subscription/import_receipt.validation.ts b/src/validation/in_app_subscription/import_receipt.validation.ts new file mode 100644 index 0000000..53f3485 --- /dev/null +++ b/src/validation/in_app_subscription/import_receipt.validation.ts @@ -0,0 +1,17 @@ +// Generated Zod validator: InAppSubscription.importReceipt +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importReceiptInAppSubscriptionProductSchema = z.object({ + currency_code: z.string().max(3), +}); +const importReceiptInAppSubscriptionCustomerSchema = z.object({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), +}); +const importReceiptInAppSubscriptionBodySchema = z.looseObject({ + receipt: z.string().max(65000), + product: importReceiptInAppSubscriptionProductSchema.optional(), + customer: importReceiptInAppSubscriptionCustomerSchema.optional(), +}); +export { importReceiptInAppSubscriptionBodySchema }; diff --git a/src/validation/in_app_subscription/import_subscription.validation.ts b/src/validation/in_app_subscription/import_subscription.validation.ts new file mode 100644 index 0000000..a54860b --- /dev/null +++ b/src/validation/in_app_subscription/import_subscription.validation.ts @@ -0,0 +1,24 @@ +// Generated Zod validator: InAppSubscription.importSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importSubscriptionInAppSubscriptionSubscriptionSchema = z.object({ + id: z.string().max(50), + started_at: z.number().int(), + term_start: z.number().int(), + term_end: z.number().int(), + product_id: z.string().max(96), + currency_code: z.string().max(3), + transaction_id: z.string().max(43), + is_trial: z.boolean().default(false).optional(), +}); +const importSubscriptionInAppSubscriptionCustomerSchema = z.object({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), +}); +const importSubscriptionInAppSubscriptionBodySchema = z.looseObject({ + subscription: + importSubscriptionInAppSubscriptionSubscriptionSchema.optional(), + customer: importSubscriptionInAppSubscriptionCustomerSchema.optional(), +}); +export { importSubscriptionInAppSubscriptionBodySchema }; diff --git a/src/validation/in_app_subscription/process_receipt.validation.ts b/src/validation/in_app_subscription/process_receipt.validation.ts new file mode 100644 index 0000000..fee35a3 --- /dev/null +++ b/src/validation/in_app_subscription/process_receipt.validation.ts @@ -0,0 +1,25 @@ +// Generated Zod validator: InAppSubscription.processReceipt +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const processReceiptInAppSubscriptionProductSchema = z.object({ + id: z.string().max(96), + currency_code: z.string().max(3), + price: z.number().int().min(0), + name: z.string().max(46).optional(), + price_in_decimal: z.string().max(39).optional(), + period: z.string().max(3).optional(), + period_unit: z.string().max(3).optional(), +}); +const processReceiptInAppSubscriptionCustomerSchema = z.object({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), +}); +const processReceiptInAppSubscriptionBodySchema = z.looseObject({ + receipt: z.string().max(65000), + product: processReceiptInAppSubscriptionProductSchema.optional(), + customer: processReceiptInAppSubscriptionCustomerSchema.optional(), +}); +export { processReceiptInAppSubscriptionBodySchema }; diff --git a/src/validation/in_app_subscription/retrieve_store_subs.validation.ts b/src/validation/in_app_subscription/retrieve_store_subs.validation.ts new file mode 100644 index 0000000..ff10781 --- /dev/null +++ b/src/validation/in_app_subscription/retrieve_store_subs.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: InAppSubscription.retrieveStoreSubs +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveStoreSubsInAppSubscriptionBodySchema = z.looseObject({ + receipt: z.string().max(65000), +}); +export { retrieveStoreSubsInAppSubscriptionBodySchema }; diff --git a/src/validation/index.ts b/src/validation/index.ts new file mode 100644 index 0000000..608368e --- /dev/null +++ b/src/validation/index.ts @@ -0,0 +1,309 @@ +// Auto-generated barrel export for Zod validators +export * from './addon/create.validation.js'; +export * from './addon/update.validation.js'; +export * from './addon/copy.validation.js'; +export * from './address/retrieve.validation.js'; +export * from './address/update.validation.js'; +export * from './alert/create.validation.js'; +export * from './alert/update.validation.js'; +export * from './attached_item/create.validation.js'; +export * from './attached_item/update.validation.js'; +export * from './attached_item/retrieve.validation.js'; +export * from './attached_item/delete.validation.js'; +export * from './business_entity/create_transfers.validation.js'; +export * from './business_entity/get_transfers.validation.js'; +export * from './card/update_card_for_customer.validation.js'; +export * from './card/switch_gateway_for_customer.validation.js'; +export * from './card/copy_card_for_customer.validation.js'; +export * from './comment/create.validation.js'; +export * from './comment/list.validation.js'; +export * from './coupon/create.validation.js'; +export * from './coupon/create_for_items.validation.js'; +export * from './coupon/update_for_items.validation.js'; +export * from './coupon/update.validation.js'; +export * from './coupon/copy.validation.js'; +export * from './coupon_code/create.validation.js'; +export * from './coupon_set/create.validation.js'; +export * from './coupon_set/add_coupon_codes.validation.js'; +export * from './coupon_set/update.validation.js'; +export * from './credit_note/create.validation.js'; +export * from './credit_note/retrieve.validation.js'; +export * from './credit_note/pdf.validation.js'; +export * from './credit_note/refund.validation.js'; +export * from './credit_note/record_refund.validation.js'; +export * from './credit_note/void_credit_note.validation.js'; +export * from './credit_note/credit_notes_for_customer.validation.js'; +export * from './credit_note/delete.validation.js'; +export * from './credit_note/remove_tax_withheld_refund.validation.js'; +export * from './credit_note/import_credit_note.validation.js'; +export * from './currency/list.validation.js'; +export * from './currency/create.validation.js'; +export * from './currency/update.validation.js'; +export * from './currency/add_schedule.validation.js'; +export * from './customer/create.validation.js'; +export * from './customer/update.validation.js'; +export * from './customer/update_payment_method.validation.js'; +export * from './customer/update_billing_info.validation.js'; +export * from './customer/contacts_for_customer.validation.js'; +export * from './customer/assign_payment_role.validation.js'; +export * from './customer/add_contact.validation.js'; +export * from './customer/update_contact.validation.js'; +export * from './customer/delete_contact.validation.js'; +export * from './customer/add_promotional_credits.validation.js'; +export * from './customer/deduct_promotional_credits.validation.js'; +export * from './customer/set_promotional_credits.validation.js'; +export * from './customer/record_excess_payment.validation.js'; +export * from './customer/collect_payment.validation.js'; +export * from './customer/delete.validation.js'; +export * from './customer/move.validation.js'; +export * from './customer/change_billing_date.validation.js'; +export * from './customer/merge.validation.js'; +export * from './customer/relationships.validation.js'; +export * from './customer/hierarchy.validation.js'; +export * from './customer/list_hierarchy_detail.validation.js'; +export * from './customer/update_hierarchy_settings.validation.js'; +export * from './customer_entitlement/entitlements_for_customer.validation.js'; +export * from './differential_price/create.validation.js'; +export * from './differential_price/retrieve.validation.js'; +export * from './differential_price/update.validation.js'; +export * from './differential_price/delete.validation.js'; +export * from './entitlement/create.validation.js'; +export * from './entitlement_override/add_entitlement_override_for_subscription.validation.js'; +export * from './entitlement_override/list_entitlement_override_for_subscription.validation.js'; +export * from './estimate/create_subscription.validation.js'; +export * from './estimate/create_sub_item_estimate.validation.js'; +export * from './estimate/create_sub_for_customer_estimate.validation.js'; +export * from './estimate/create_sub_item_for_customer_estimate.validation.js'; +export * from './estimate/update_subscription.validation.js'; +export * from './estimate/update_subscription_for_items.validation.js'; +export * from './estimate/renewal_estimate.validation.js'; +export * from './estimate/advance_invoice_estimate.validation.js'; +export * from './estimate/regenerate_invoice_estimate.validation.js'; +export * from './estimate/upcoming_invoices_estimate.validation.js'; +export * from './estimate/change_term_end.validation.js'; +export * from './estimate/cancel_subscription.validation.js'; +export * from './estimate/cancel_subscription_for_items.validation.js'; +export * from './estimate/pause_subscription.validation.js'; +export * from './estimate/resume_subscription.validation.js'; +export * from './estimate/gift_subscription.validation.js'; +export * from './estimate/gift_subscription_for_items.validation.js'; +export * from './estimate/create_invoice.validation.js'; +export * from './estimate/create_invoice_for_items.validation.js'; +export * from './estimate/payment_schedules.validation.js'; +export * from './export/customers.validation.js'; +export * from './export/credit_notes.validation.js'; +export * from './export/transactions.validation.js'; +export * from './export/orders.validation.js'; +export * from './export/item_families.validation.js'; +export * from './export/items.validation.js'; +export * from './export/attached_items.validation.js'; +export * from './export/price_variants.validation.js'; +export * from './feature/create.validation.js'; +export * from './feature/update.validation.js'; +export * from './gift/create.validation.js'; +export * from './gift/create_for_items.validation.js'; +export * from './gift/list.validation.js'; +export * from './gift/update_gift.validation.js'; +export * from './hosted_page/checkout_new.validation.js'; +export * from './hosted_page/checkout_one_time.validation.js'; +export * from './hosted_page/checkout_one_time_for_items.validation.js'; +export * from './hosted_page/checkout_new_for_items.validation.js'; +export * from './hosted_page/checkout_existing.validation.js'; +export * from './hosted_page/checkout_existing_for_items.validation.js'; +export * from './hosted_page/update_card.validation.js'; +export * from './hosted_page/update_payment_method.validation.js'; +export * from './hosted_page/manage_payment_sources.validation.js'; +export * from './hosted_page/collect_now.validation.js'; +export * from './hosted_page/accept_quote.validation.js'; +export * from './hosted_page/extend_subscription.validation.js'; +export * from './hosted_page/checkout_gift.validation.js'; +export * from './hosted_page/checkout_gift_for_items.validation.js'; +export * from './hosted_page/claim_gift.validation.js'; +export * from './hosted_page/retrieve_agreement_pdf.validation.js'; +export * from './hosted_page/pre_cancel.validation.js'; +export * from './hosted_page/events.validation.js'; +export * from './hosted_page/view_voucher.validation.js'; +export * from './in_app_subscription/process_receipt.validation.js'; +export * from './in_app_subscription/import_receipt.validation.js'; +export * from './in_app_subscription/import_subscription.validation.js'; +export * from './in_app_subscription/retrieve_store_subs.validation.js'; +export * from './invoice/create.validation.js'; +export * from './invoice/create_for_charge_items_and_charges.validation.js'; +export * from './invoice/charge.validation.js'; +export * from './invoice/charge_addon.validation.js'; +export * from './invoice/create_for_charge_item.validation.js'; +export * from './invoice/stop_dunning.validation.js'; +export * from './invoice/pause_dunning.validation.js'; +export * from './invoice/resume_dunning.validation.js'; +export * from './invoice/import_invoice.validation.js'; +export * from './invoice/apply_payments.validation.js'; +export * from './invoice/delete_line_items.validation.js'; +export * from './invoice/apply_credits.validation.js'; +export * from './invoice/invoices_for_customer.validation.js'; +export * from './invoice/invoices_for_subscription.validation.js'; +export * from './invoice/retrieve.validation.js'; +export * from './invoice/pdf.validation.js'; +export * from './invoice/add_charge.validation.js'; +export * from './invoice/add_addon_charge.validation.js'; +export * from './invoice/add_charge_item.validation.js'; +export * from './invoice/close.validation.js'; +export * from './invoice/collect_payment.validation.js'; +export * from './invoice/record_payment.validation.js'; +export * from './invoice/record_tax_withheld.validation.js'; +export * from './invoice/remove_tax_withheld.validation.js'; +export * from './invoice/refund.validation.js'; +export * from './invoice/record_refund.validation.js'; +export * from './invoice/remove_payment.validation.js'; +export * from './invoice/remove_credit_note.validation.js'; +export * from './invoice/void_invoice.validation.js'; +export * from './invoice/write_off.validation.js'; +export * from './invoice/delete.validation.js'; +export * from './invoice/update_details.validation.js'; +export * from './invoice/apply_payment_schedule_scheme.validation.js'; +export * from './item/create.validation.js'; +export * from './item/update.validation.js'; +export * from './item_entitlement/item_entitlements_for_item.validation.js'; +export * from './item_entitlement/item_entitlements_for_feature.validation.js'; +export * from './item_entitlement/add_item_entitlements.validation.js'; +export * from './item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.js'; +export * from './item_family/create.validation.js'; +export * from './item_family/update.validation.js'; +export * from './item_price/create.validation.js'; +export * from './item_price/update.validation.js'; +export * from './item_price/find_applicable_items.validation.js'; +export * from './item_price/find_applicable_item_prices.validation.js'; +export * from './non_subscription/process_receipt.validation.js'; +export * from './offer_event/offer_events.validation.js'; +export * from './offer_fulfillment/offer_fulfillments.validation.js'; +export * from './offer_fulfillment/offer_fulfillments_update.validation.js'; +export * from './omnichannel_one_time_order/list.validation.js'; +export * from './omnichannel_subscription/list.validation.js'; +export * from './omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.js'; +export * from './omnichannel_subscription/move.validation.js'; +export * from './omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.js'; +export * from './order/create.validation.js'; +export * from './order/update.validation.js'; +export * from './order/import_order.validation.js'; +export * from './order/cancel.validation.js'; +export * from './order/create_refundable_credit_note.validation.js'; +export * from './order/reopen.validation.js'; +export * from './order/orders_for_invoice.validation.js'; +export * from './order/resend.validation.js'; +export * from './payment_intent/create.validation.js'; +export * from './payment_intent/update.validation.js'; +export * from './payment_schedule_scheme/create.validation.js'; +export * from './payment_source/create_using_temp_token.validation.js'; +export * from './payment_source/create_using_permanent_token.validation.js'; +export * from './payment_source/create_using_token.validation.js'; +export * from './payment_source/create_using_payment_intent.validation.js'; +export * from './payment_source/create_voucher_payment_source.validation.js'; +export * from './payment_source/create_card.validation.js'; +export * from './payment_source/create_bank_account.validation.js'; +export * from './payment_source/update_card.validation.js'; +export * from './payment_source/update_bank_account.validation.js'; +export * from './payment_source/verify_bank_account.validation.js'; +export * from './payment_source/switch_gateway_account.validation.js'; +export * from './payment_source/export_payment_source.validation.js'; +export * from './payment_voucher/create.validation.js'; +export * from './payment_voucher/payment_vouchersforinvoice.validation.js'; +export * from './payment_voucher/payment_vouchersforcustomer.validation.js'; +export * from './personalized_offer/personalized_offers.validation.js'; +export * from './plan/create.validation.js'; +export * from './plan/update.validation.js'; +export * from './plan/copy.validation.js'; +export * from './portal_session/create.validation.js'; +export * from './portal_session/activate.validation.js'; +export * from './price_variant/create.validation.js'; +export * from './price_variant/update.validation.js'; +export * from './pricing_page_session/create_for_new_subscription.validation.js'; +export * from './pricing_page_session/create_for_existing_subscription.validation.js'; +export * from './promotional_credit/add.validation.js'; +export * from './promotional_credit/deduct.validation.js'; +export * from './promotional_credit/set.validation.js'; +export * from './promotional_credit/list.validation.js'; +export * from './purchase/create.validation.js'; +export * from './purchase/estimate.validation.js'; +export * from './quote/create_sub_for_customer_quote.validation.js'; +export * from './quote/edit_create_sub_for_customer_quote.validation.js'; +export * from './quote/update_subscription_quote.validation.js'; +export * from './quote/edit_update_subscription_quote.validation.js'; +export * from './quote/create_for_onetime_charges.validation.js'; +export * from './quote/edit_one_time_quote.validation.js'; +export * from './quote/create_sub_items_for_customer_quote.validation.js'; +export * from './quote/edit_create_sub_customer_quote_for_items.validation.js'; +export * from './quote/update_subscription_quote_for_items.validation.js'; +export * from './quote/edit_update_subscription_quote_for_items.validation.js'; +export * from './quote/create_for_charge_items_and_charges.validation.js'; +export * from './quote/edit_for_charge_items_and_charges.validation.js'; +export * from './quote/quote_line_groups_for_quote.validation.js'; +export * from './quote/convert.validation.js'; +export * from './quote/update_status.validation.js'; +export * from './quote/extend_expiry_date.validation.js'; +export * from './quote/delete.validation.js'; +export * from './quote/pdf.validation.js'; +export * from './quote/update_signature_status.validation.js'; +export * from './ramp/create_for_subscription.validation.js'; +export * from './ramp/update.validation.js'; +export * from './recorded_purchase/create.validation.js'; +export * from './resource_migration/retrieve_latest.validation.js'; +export * from './site_migration_detail/list.validation.js'; +export * from './subscription/create.validation.js'; +export * from './subscription/create_for_customer.validation.js'; +export * from './subscription/create_with_items.validation.js'; +export * from './subscription/subscriptions_for_customer.validation.js'; +export * from './subscription/contract_terms_for_subscription.validation.js'; +export * from './subscription/list_discounts.validation.js'; +export * from './subscription/remove_scheduled_cancellation.validation.js'; +export * from './subscription/remove_coupons.validation.js'; +export * from './subscription/update.validation.js'; +export * from './subscription/update_for_items.validation.js'; +export * from './subscription/change_term_end.validation.js'; +export * from './subscription/reactivate.validation.js'; +export * from './subscription/add_charge_at_term_end.validation.js'; +export * from './subscription/charge_addon_at_term_end.validation.js'; +export * from './subscription/charge_future_renewals.validation.js'; +export * from './subscription/edit_advance_invoice_schedule.validation.js'; +export * from './subscription/remove_advance_invoice_schedule.validation.js'; +export * from './subscription/regenerate_invoice.validation.js'; +export * from './subscription/import_subscription.validation.js'; +export * from './subscription/import_for_customer.validation.js'; +export * from './subscription/import_contract_term.validation.js'; +export * from './subscription/import_unbilled_charges.validation.js'; +export * from './subscription/import_for_items.validation.js'; +export * from './subscription/override_billing_profile.validation.js'; +export * from './subscription/pause.validation.js'; +export * from './subscription/cancel.validation.js'; +export * from './subscription/cancel_for_items.validation.js'; +export * from './subscription/resume.validation.js'; +export * from './subscription/move.validation.js'; +export * from './subscription_entitlement/subscription_entitlements_for_subscription.validation.js'; +export * from './subscription_entitlement/set_subscription_entitlement_availability.validation.js'; +export * from './time_machine/start_afresh.validation.js'; +export * from './time_machine/travel_forward.validation.js'; +export * from './transaction/create_authorization.validation.js'; +export * from './transaction/record_refund.validation.js'; +export * from './transaction/reconcile.validation.js'; +export * from './transaction/refund.validation.js'; +export * from './transaction/transactions_for_customer.validation.js'; +export * from './transaction/transactions_for_subscription.validation.js'; +export * from './transaction/payments_for_invoice.validation.js'; +export * from './transaction/delete_offline_transaction.validation.js'; +export * from './unbilled_charge/create_unbilled_charge.validation.js'; +export * from './unbilled_charge/create.validation.js'; +export * from './unbilled_charge/invoice_unbilled_charges.validation.js'; +export * from './unbilled_charge/invoice_now_estimate.validation.js'; +export * from './usage/create.validation.js'; +export * from './usage/retrieve.validation.js'; +export * from './usage/delete.validation.js'; +export * from './usage/list.validation.js'; +export * from './usage/pdf.validation.js'; +export * from './usage_charge/retrieve_usage_charges_for_subscription.validation.js'; +export * from './usage_event/create.validation.js'; +export * from './usage_event/batch_ingest.validation.js'; +export * from './usage_file/upload_url.validation.js'; +export * from './usage_summary/retrieve_usage_summary_for_subscription.validation.js'; +export * from './virtual_bank_account/create_using_permanent_token.validation.js'; +export * from './virtual_bank_account/create.validation.js'; +export * from './webhook_endpoint/create.validation.js'; +export * from './webhook_endpoint/update.validation.js'; +export * from './webhook_endpoint/list.validation.js'; diff --git a/src/validation/invoice/add_addon_charge.validation.ts b/src/validation/invoice/add_addon_charge.validation.ts new file mode 100644 index 0000000..0058a6b --- /dev/null +++ b/src/validation/invoice/add_addon_charge.validation.ts @@ -0,0 +1,19 @@ +// Generated Zod validator: Invoice.addAddonCharge +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addAddonChargeInvoiceLineItemSchema = z.object({ + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +const addAddonChargeInvoiceBodySchema = z.looseObject({ + addon_id: z.string().max(100), + addon_quantity: z.number().int().min(1).optional(), + addon_unit_price: z.number().int().min(0).optional(), + addon_quantity_in_decimal: z.string().max(33).optional(), + addon_unit_price_in_decimal: z.string().max(39).optional(), + comment: z.string().max(300).optional(), + subscription_id: z.string().max(50).optional(), + line_item: addAddonChargeInvoiceLineItemSchema.optional(), +}); +export { addAddonChargeInvoiceBodySchema }; diff --git a/src/validation/invoice/add_charge.validation.ts b/src/validation/invoice/add_charge.validation.ts new file mode 100644 index 0000000..347cfa0 --- /dev/null +++ b/src/validation/invoice/add_charge.validation.ts @@ -0,0 +1,24 @@ +// Generated Zod validator: Invoice.addCharge +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addChargeInvoiceLineItemSchema = z.object({ + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +const addChargeInvoiceBodySchema = z.looseObject({ + amount: z.number().int().min(1), + description: z.string().max(250), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + avalara_tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + comment: z.string().max(300).optional(), + subscription_id: z.string().max(50).optional(), + line_item: addChargeInvoiceLineItemSchema.optional(), +}); +export { addChargeInvoiceBodySchema }; diff --git a/src/validation/invoice/add_charge_item.validation.ts b/src/validation/invoice/add_charge_item.validation.ts new file mode 100644 index 0000000..142b88c --- /dev/null +++ b/src/validation/invoice/add_charge_item.validation.ts @@ -0,0 +1,32 @@ +// Generated Zod validator: Invoice.addChargeItem +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addChargeItemInvoiceItemPriceSchema = z.object({ + item_price_id: z.string().max(100), + quantity: z.number().int().min(1).optional(), + quantity_in_decimal: z.string().max(33).optional(), + unit_price: z.number().int().min(0).optional(), + unit_price_in_decimal: z.string().max(39).optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +const addChargeItemInvoiceItemTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const addChargeItemInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + subscription_id: z.string().max(50).optional(), + item_price: addChargeItemInvoiceItemPriceSchema.optional(), + item_tiers: addChargeItemInvoiceItemTiersSchema.optional(), +}); +export { addChargeItemInvoiceBodySchema }; diff --git a/src/validation/invoice/apply_credits.validation.ts b/src/validation/invoice/apply_credits.validation.ts new file mode 100644 index 0000000..2e55884 --- /dev/null +++ b/src/validation/invoice/apply_credits.validation.ts @@ -0,0 +1,12 @@ +// Generated Zod validator: Invoice.applyCredits +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const applyCreditsInvoiceCreditNotesSchema = z.object({ + id: z.array(z.string().max(50).optional()).optional(), +}); +const applyCreditsInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + credit_notes: applyCreditsInvoiceCreditNotesSchema.optional(), +}); +export { applyCreditsInvoiceBodySchema }; diff --git a/src/validation/invoice/apply_payment_schedule_scheme.validation.ts b/src/validation/invoice/apply_payment_schedule_scheme.validation.ts new file mode 100644 index 0000000..cec77cf --- /dev/null +++ b/src/validation/invoice/apply_payment_schedule_scheme.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Invoice.applyPaymentScheduleScheme +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const applyPaymentScheduleSchemeInvoiceBodySchema = z.looseObject({ + scheme_id: z.string(), + amount: z.number().int().min(0).optional(), +}); +export { applyPaymentScheduleSchemeInvoiceBodySchema }; diff --git a/src/validation/invoice/apply_payments.validation.ts b/src/validation/invoice/apply_payments.validation.ts new file mode 100644 index 0000000..0c94964 --- /dev/null +++ b/src/validation/invoice/apply_payments.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: Invoice.applyPayments +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const applyPaymentsInvoiceTransactionsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), +}); +const applyPaymentsInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + transactions: applyPaymentsInvoiceTransactionsSchema.optional(), +}); +export { applyPaymentsInvoiceBodySchema }; diff --git a/src/validation/invoice/charge.validation.ts b/src/validation/invoice/charge.validation.ts new file mode 100644 index 0000000..b19d488 --- /dev/null +++ b/src/validation/invoice/charge.validation.ts @@ -0,0 +1,32 @@ +// Generated Zod validator: Invoice.charge +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const chargeInvoiceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const chargeInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + currency_code: z.string().max(3).optional(), + amount: z.number().int().min(1).optional(), + amount_in_decimal: z.string().max(39).optional(), + description: z.string().max(250), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + coupon: z.string().max(100).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + po_number: z.string().max(100).optional(), + invoice_date: z.number().int().optional(), + payment_source_id: z.string().max(40).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + tax_providers_fields: chargeInvoiceTaxProvidersFieldsSchema.optional(), +}); +export { chargeInvoiceBodySchema }; diff --git a/src/validation/invoice/charge_addon.validation.ts b/src/validation/invoice/charge_addon.validation.ts new file mode 100644 index 0000000..34400fc --- /dev/null +++ b/src/validation/invoice/charge_addon.validation.ts @@ -0,0 +1,22 @@ +// Generated Zod validator: Invoice.chargeAddon +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const chargeAddonInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + addon_id: z.string().max(100), + addon_quantity: z.number().int().min(1).optional(), + addon_unit_price: z.number().int().min(0).optional(), + addon_quantity_in_decimal: z.string().max(33).optional(), + addon_unit_price_in_decimal: z.string().max(39).optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + coupon: z.string().max(100).optional(), + po_number: z.string().max(100).optional(), + invoice_date: z.number().int().optional(), + payment_source_id: z.string().max(40).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), +}); +export { chargeAddonInvoiceBodySchema }; diff --git a/src/validation/invoice/close.validation.ts b/src/validation/invoice/close.validation.ts new file mode 100644 index 0000000..a813cda --- /dev/null +++ b/src/validation/invoice/close.validation.ts @@ -0,0 +1,31 @@ +// Generated Zod validator: Invoice.close +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const closeInvoiceNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum([ + 'customer', + 'subscription', + 'coupon', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const closeInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + invoice_date: z.number().int().optional(), + notes_to_remove: closeInvoiceNotesToRemoveSchema.optional(), +}); +export { closeInvoiceBodySchema }; diff --git a/src/validation/invoice/collect_payment.validation.ts b/src/validation/invoice/collect_payment.validation.ts new file mode 100644 index 0000000..15eb8e9 --- /dev/null +++ b/src/validation/invoice/collect_payment.validation.ts @@ -0,0 +1,12 @@ +// Generated Zod validator: Invoice.collectPayment +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const collectPaymentInvoiceBodySchema = z.looseObject({ + amount: z.number().int().min(1).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + comment: z.string().max(300).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), +}); +export { collectPaymentInvoiceBodySchema }; diff --git a/src/validation/invoice/create.validation.ts b/src/validation/invoice/create.validation.ts new file mode 100644 index 0000000..0d5737f --- /dev/null +++ b/src/validation/invoice/create.validation.ts @@ -0,0 +1,371 @@ +// Generated Zod validator: Invoice.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createInvoiceShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createInvoiceStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const createInvoiceAdditionalInformationSchema = z.looseObject({}); +const createInvoiceCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: createInvoiceAdditionalInformationSchema.optional(), +}); +const createInvoiceBillingAddressSchema = z.looseObject({}); +const createInvoiceBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + issuing_country: z.string().max(50).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: createInvoiceBillingAddressSchema.optional(), +}); +const createInvoicePaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: createInvoiceAdditionalInformationSchema.optional(), +}); +const createInvoicePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: createInvoiceAdditionalInformationSchema.optional(), +}); +const createInvoiceAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createInvoiceChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createInvoiceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createInvoiceNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum(['plan', 'addon', 'customer', 'subscription', 'coupon']) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const createInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + currency_code: z.string().max(3).optional(), + invoice_date: z.number().int().optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + po_number: z.string().max(100).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + token_id: z.string().max(40).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + retain_payment_source: z.boolean().default(true).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + shipping_address: createInvoiceShippingAddressSchema.optional(), + statement_descriptor: createInvoiceStatementDescriptorSchema.optional(), + card: createInvoiceCardSchema.optional(), + bank_account: createInvoiceBankAccountSchema.optional(), + payment_method: createInvoicePaymentMethodSchema.optional(), + payment_intent: createInvoicePaymentIntentSchema.optional(), + addons: createInvoiceAddonsSchema.optional(), + charges: createInvoiceChargesSchema.optional(), + tax_providers_fields: createInvoiceTaxProvidersFieldsSchema.optional(), + notes_to_remove: createInvoiceNotesToRemoveSchema.optional(), +}); +export { createInvoiceBodySchema }; diff --git a/src/validation/invoice/create_for_charge_item.validation.ts b/src/validation/invoice/create_for_charge_item.validation.ts new file mode 100644 index 0000000..2165b33 --- /dev/null +++ b/src/validation/invoice/create_for_charge_item.validation.ts @@ -0,0 +1,37 @@ +// Generated Zod validator: Invoice.createForChargeItem +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForChargeItemInvoiceItemPriceSchema = z.object({ + item_price_id: z.string().max(100), + quantity: z.number().int().min(1).optional(), + quantity_in_decimal: z.string().max(33).optional(), + unit_price: z.number().int().min(0).optional(), + unit_price_in_decimal: z.string().max(39).optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +const createForChargeItemInvoiceItemTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createForChargeItemInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + coupon: z.string().max(100).optional(), + payment_source_id: z.string().max(40).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + invoice_date: z.number().int().optional(), + item_price: createForChargeItemInvoiceItemPriceSchema.optional(), + item_tiers: createForChargeItemInvoiceItemTiersSchema.optional(), +}); +export { createForChargeItemInvoiceBodySchema }; diff --git a/src/validation/invoice/create_for_charge_items_and_charges.validation.ts b/src/validation/invoice/create_for_charge_items_and_charges.validation.ts new file mode 100644 index 0000000..c97c73d --- /dev/null +++ b/src/validation/invoice/create_for_charge_items_and_charges.validation.ts @@ -0,0 +1,419 @@ +// Generated Zod validator: Invoice.createForChargeItemsAndCharges +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForChargeItemsAndChargesInvoiceShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createForChargeItemsAndChargesInvoiceStatementDescriptorSchema = z.object( + { + descriptor: z.string().max(65000).optional(), + }, +); +const createForChargeItemsAndChargesInvoiceAdditionalInformationSchema = + z.looseObject({}); +const createForChargeItemsAndChargesInvoiceCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: + createForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), +}); +const createForChargeItemsAndChargesInvoiceBillingAddressSchema = z.looseObject( + {}, +); +const createForChargeItemsAndChargesInvoiceBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + issuing_country: z.string().max(50).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: + createForChargeItemsAndChargesInvoiceBillingAddressSchema.optional(), +}); +const createForChargeItemsAndChargesInvoicePaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + createForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), +}); +const createForChargeItemsAndChargesInvoicePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + createForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), +}); +const createForChargeItemsAndChargesInvoiceItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createForChargeItemsAndChargesInvoiceItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createForChargeItemsAndChargesInvoiceChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createForChargeItemsAndChargesInvoiceNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum([ + 'customer', + 'subscription', + 'coupon', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const createForChargeItemsAndChargesInvoiceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createForChargeItemsAndChargesInvoiceDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const createForChargeItemsAndChargesInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + currency_code: z.string().max(3).optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + po_number: z.string().max(100).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + net_term_days: z.number().int().optional(), + invoice_date: z.number().int().optional(), + token_id: z.string().max(40).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + retain_payment_source: z.boolean().default(true).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + shipping_address: + createForChargeItemsAndChargesInvoiceShippingAddressSchema.optional(), + statement_descriptor: + createForChargeItemsAndChargesInvoiceStatementDescriptorSchema.optional(), + card: createForChargeItemsAndChargesInvoiceCardSchema.optional(), + bank_account: + createForChargeItemsAndChargesInvoiceBankAccountSchema.optional(), + payment_method: + createForChargeItemsAndChargesInvoicePaymentMethodSchema.optional(), + payment_intent: + createForChargeItemsAndChargesInvoicePaymentIntentSchema.optional(), + item_prices: createForChargeItemsAndChargesInvoiceItemPricesSchema.optional(), + item_tiers: createForChargeItemsAndChargesInvoiceItemTiersSchema.optional(), + charges: createForChargeItemsAndChargesInvoiceChargesSchema.optional(), + notes_to_remove: + createForChargeItemsAndChargesInvoiceNotesToRemoveSchema.optional(), + tax_providers_fields: + createForChargeItemsAndChargesInvoiceTaxProvidersFieldsSchema.optional(), + discounts: createForChargeItemsAndChargesInvoiceDiscountsSchema.optional(), +}); +export { createForChargeItemsAndChargesInvoiceBodySchema }; diff --git a/src/validation/invoice/delete.validation.ts b/src/validation/invoice/delete.validation.ts new file mode 100644 index 0000000..27e01bd --- /dev/null +++ b/src/validation/invoice/delete.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Invoice.delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { deleteInvoiceBodySchema }; diff --git a/src/validation/invoice/delete_line_items.validation.ts b/src/validation/invoice/delete_line_items.validation.ts new file mode 100644 index 0000000..7f2675b --- /dev/null +++ b/src/validation/invoice/delete_line_items.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Invoice.deleteLineItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteLineItemsInvoiceLineItemsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), +}); +const deleteLineItemsInvoiceBodySchema = z.looseObject({ + line_items: deleteLineItemsInvoiceLineItemsSchema.optional(), +}); +export { deleteLineItemsInvoiceBodySchema }; diff --git a/src/validation/invoice/import_invoice.validation.ts b/src/validation/invoice/import_invoice.validation.ts new file mode 100644 index 0000000..1d8f634 --- /dev/null +++ b/src/validation/invoice/import_invoice.validation.ts @@ -0,0 +1,265 @@ +// Generated Zod validator: Invoice.importInvoice +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importInvoiceInvoiceCreditNoteSchema = z.object({ + id: z.string().max(50).optional(), +}); +const importInvoiceInvoiceBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const importInvoiceInvoiceShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const importInvoiceInvoiceLineItemsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), + subscription_id: z.array(z.string().max(50).optional()).optional(), + description: z.array(z.string().max(250).optional()), + unit_amount: z.array(z.number().int().optional()).optional(), + quantity: z.array(z.number().int().optional()).optional(), + amount: z.array(z.number().int().optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + entity_type: z + .array( + z + .enum([ + 'adhoc', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan_setup', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), + item_level_discount1_entity_id: z + .array(z.string().max(100).optional()) + .optional(), + item_level_discount1_amount: z + .array(z.number().int().min(0).optional()) + .optional(), + item_level_discount2_entity_id: z + .array(z.string().max(100).optional()) + .optional(), + item_level_discount2_amount: z + .array(z.number().int().min(0).optional()) + .optional(), + tax1_name: z.array(z.string().max(50).optional()).optional(), + tax1_amount: z.array(z.number().int().min(0).optional()).optional(), + tax2_name: z.array(z.string().max(50).optional()).optional(), + tax2_amount: z.array(z.number().int().min(0).optional()).optional(), + tax3_name: z.array(z.string().max(50).optional()).optional(), + tax3_amount: z.array(z.number().int().min(0).optional()).optional(), + tax4_name: z.array(z.string().max(50).optional()).optional(), + tax4_amount: z.array(z.number().int().min(0).optional()).optional(), + tax5_name: z.array(z.string().max(50).optional()).optional(), + tax5_amount: z.array(z.number().int().min(0).optional()).optional(), + tax6_name: z.array(z.string().max(50).optional()).optional(), + tax6_amount: z.array(z.number().int().min(0).optional()).optional(), + tax7_name: z.array(z.string().max(50).optional()).optional(), + tax7_amount: z.array(z.number().int().min(0).optional()).optional(), + tax8_name: z.array(z.string().max(50).optional()).optional(), + tax8_amount: z.array(z.number().int().min(0).optional()).optional(), + tax9_name: z.array(z.string().max(50).optional()).optional(), + tax9_amount: z.array(z.number().int().min(0).optional()).optional(), + tax10_name: z.array(z.string().max(50).optional()).optional(), + tax10_amount: z.array(z.number().int().min(0).optional()).optional(), + created_at: z.array(z.number().int().optional()).optional(), +}); +const importInvoiceInvoicePaymentReferenceNumbersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + type: z.array( + z.enum(['kid', 'ocr', 'frn', 'fik', 'swiss_reference']).optional(), + ), + number: z.array(z.string().max(100).optional()), +}); +const importInvoiceInvoiceLineItemTiersSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()), + starting_unit: z.array(z.number().int().min(0).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + quantity_used: z.array(z.number().int().min(0).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), +}); +const importInvoiceInvoiceDiscountsSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()).optional(), + entity_type: z.array( + z + .enum([ + 'item_level_coupon', + 'document_level_coupon', + 'promotional_credits', + 'item_level_discount', + 'document_level_discount', + ]) + .optional(), + ), + entity_id: z.array(z.string().max(100).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()), +}); +const importInvoiceInvoiceTaxesSchema = z.object({ + name: z.array(z.string().max(100).optional()), + rate: z.array(z.number().min(0).max(100).optional()), + amount: z.array(z.number().int().min(0).optional()).optional(), + description: z.array(z.string().max(50).optional()).optional(), + juris_type: z + .array( + z + .enum([ + 'country', + 'federal', + 'state', + 'county', + 'city', + 'special', + 'unincorporated', + 'other', + ]) + .optional(), + ) + .optional(), + juris_name: z.array(z.string().max(250).optional()).optional(), + juris_code: z.array(z.string().max(250).optional()).optional(), +}); +const importInvoiceInvoicePaymentsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + amount: z.array(z.number().int().min(1).optional()), + payment_method: z.array( + z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + ), + date: z.array(z.number().int().optional()).optional(), + reference_number: z.array(z.string().max(100).min(1).optional()).optional(), +}); +const importInvoiceInvoiceNotesSchema = z.object({ + entity_type: z + .array( + z + .enum([ + 'coupon', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(50).optional()).optional(), + note: z.array(z.string().max(65000).optional()).optional(), +}); +const importInvoiceInvoiceLineItemAddressesSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()).optional(), + first_name: z.array(z.string().max(150).optional()).optional(), + last_name: z.array(z.string().max(150).optional()).optional(), + email: z.array(z.string().email().max(70).optional()).optional(), + company: z.array(z.string().max(250).optional()).optional(), + phone: z.array(z.string().max(50).optional()).optional(), + line1: z.array(z.string().max(150).optional()).optional(), + line2: z.array(z.string().max(150).optional()).optional(), + line3: z.array(z.string().max(150).optional()).optional(), + city: z.array(z.string().max(50).optional()).optional(), + state_code: z.array(z.string().max(50).optional()).optional(), + state: z.array(z.string().max(50).optional()).optional(), + zip: z.array(z.string().max(20).optional()).optional(), + country: z.array(z.string().max(50).optional()).optional(), + validation_status: z + .array( + z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + ) + .optional(), +}); +const importInvoiceInvoiceBodySchema = z.looseObject({ + id: z.string().max(50), + currency_code: z.string().max(3).optional(), + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + price_type: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + tax_override_reason: z + .enum(['id_exempt', 'customer_exempt', 'export']) + .optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + date: z.number().int(), + total: z.number().int().min(0), + round_off: z.number().int().min(-99).max(99).optional(), + status: z + .enum(['paid', 'posted', 'payment_due', 'not_paid', 'voided', 'pending']) + .optional(), + voided_at: z.number().int().optional(), + void_reason_code: z.string().max(100).optional(), + is_written_off: z.boolean().default(false).optional(), + write_off_amount: z.number().int().min(0).optional(), + write_off_date: z.number().int().optional(), + due_date: z.number().int().optional(), + net_term_days: z.number().int().optional(), + has_advance_charges: z.boolean().default(false).optional(), + use_for_proration: z.boolean().default(false).optional(), + credit_note: importInvoiceInvoiceCreditNoteSchema.optional(), + billing_address: importInvoiceInvoiceBillingAddressSchema.optional(), + shipping_address: importInvoiceInvoiceShippingAddressSchema.optional(), + line_items: importInvoiceInvoiceLineItemsSchema.optional(), + payment_reference_numbers: + importInvoiceInvoicePaymentReferenceNumbersSchema.optional(), + line_item_tiers: importInvoiceInvoiceLineItemTiersSchema.optional(), + discounts: importInvoiceInvoiceDiscountsSchema.optional(), + taxes: importInvoiceInvoiceTaxesSchema.optional(), + payments: importInvoiceInvoicePaymentsSchema.optional(), + notes: importInvoiceInvoiceNotesSchema.optional(), + line_item_addresses: importInvoiceInvoiceLineItemAddressesSchema.optional(), +}); +export { importInvoiceInvoiceBodySchema }; diff --git a/src/validation/invoice/invoices_for_customer.validation.ts b/src/validation/invoice/invoices_for_customer.validation.ts new file mode 100644 index 0000000..a360ca6 --- /dev/null +++ b/src/validation/invoice/invoices_for_customer.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Invoice.invoicesForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const invoicesForCustomerInvoiceBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { invoicesForCustomerInvoiceBodySchema }; diff --git a/src/validation/invoice/invoices_for_subscription.validation.ts b/src/validation/invoice/invoices_for_subscription.validation.ts new file mode 100644 index 0000000..774c3b3 --- /dev/null +++ b/src/validation/invoice/invoices_for_subscription.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Invoice.invoicesForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const invoicesForSubscriptionInvoiceBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { invoicesForSubscriptionInvoiceBodySchema }; diff --git a/src/validation/invoice/pause_dunning.validation.ts b/src/validation/invoice/pause_dunning.validation.ts new file mode 100644 index 0000000..ebdc0fb --- /dev/null +++ b/src/validation/invoice/pause_dunning.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Invoice.pauseDunning +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const pauseDunningInvoiceBodySchema = z.looseObject({ + expected_payment_date: z.number().int(), + comment: z.string().max(300).optional(), +}); +export { pauseDunningInvoiceBodySchema }; diff --git a/src/validation/invoice/pdf.validation.ts b/src/validation/invoice/pdf.validation.ts new file mode 100644 index 0000000..2f435cf --- /dev/null +++ b/src/validation/invoice/pdf.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Invoice.pdf +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const pdfInvoiceBodySchema = z.looseObject({ + disposition_type: z.enum(['attachment', 'inline']).optional(), +}); +export { pdfInvoiceBodySchema }; diff --git a/src/validation/invoice/record_payment.validation.ts b/src/validation/invoice/record_payment.validation.ts new file mode 100644 index 0000000..e405edf --- /dev/null +++ b/src/validation/invoice/record_payment.validation.ts @@ -0,0 +1,28 @@ +// Generated Zod validator: Invoice.recordPayment +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const recordPaymentInvoiceTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z.enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), + id_at_gateway: z.string().max(100).optional(), + status: z.enum(['success', 'failure', 'late_failure']).optional(), + date: z.number().int().optional(), + error_code: z.string().max(100).optional(), + error_text: z.string().max(65000).optional(), +}); +const recordPaymentInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + transaction: recordPaymentInvoiceTransactionSchema.optional(), +}); +export { recordPaymentInvoiceBodySchema }; diff --git a/src/validation/invoice/record_refund.validation.ts b/src/validation/invoice/record_refund.validation.ts new file mode 100644 index 0000000..f93d94c --- /dev/null +++ b/src/validation/invoice/record_refund.validation.ts @@ -0,0 +1,41 @@ +// Generated Zod validator: Invoice.recordRefund +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const recordRefundInvoiceTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z.enum([ + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), + date: z.number().int(), +}); +const recordRefundInvoiceCreditNoteSchema = z.object({ + reason_code: z + .enum([ + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + ]) + .optional(), + create_reason_code: z.string().max(100).optional(), +}); +const recordRefundInvoiceBodySchema = z.looseObject({ + comment: z.string().max(65000).optional(), + customer_notes: z.string().max(2000).optional(), + transaction: recordRefundInvoiceTransactionSchema.optional(), + credit_note: recordRefundInvoiceCreditNoteSchema.optional(), +}); +export { recordRefundInvoiceBodySchema }; diff --git a/src/validation/invoice/record_tax_withheld.validation.ts b/src/validation/invoice/record_tax_withheld.validation.ts new file mode 100644 index 0000000..fd54bfa --- /dev/null +++ b/src/validation/invoice/record_tax_withheld.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Invoice.recordTaxWithheld +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const recordTaxWithheldInvoiceTaxWithheldSchema = z.object({ + amount: z.number().int().min(1), + reference_number: z.string().max(100).optional(), + date: z.number().int().optional(), + description: z.string().max(65000).optional(), +}); +const recordTaxWithheldInvoiceBodySchema = z.looseObject({ + tax_withheld: recordTaxWithheldInvoiceTaxWithheldSchema.optional(), +}); +export { recordTaxWithheldInvoiceBodySchema }; diff --git a/src/validation/invoice/refund.validation.ts b/src/validation/invoice/refund.validation.ts new file mode 100644 index 0000000..ec3ab74 --- /dev/null +++ b/src/validation/invoice/refund.validation.ts @@ -0,0 +1,24 @@ +// Generated Zod validator: Invoice.refund +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const refundInvoiceCreditNoteSchema = z.object({ + reason_code: z + .enum([ + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + ]) + .optional(), + create_reason_code: z.string().max(100).optional(), +}); +const refundInvoiceBodySchema = z.looseObject({ + refund_amount: z.number().int().min(1).optional(), + comment: z.string().max(300).optional(), + customer_notes: z.string().max(2000).optional(), + credit_note: refundInvoiceCreditNoteSchema.optional(), +}); +export { refundInvoiceBodySchema }; diff --git a/src/validation/invoice/remove_credit_note.validation.ts b/src/validation/invoice/remove_credit_note.validation.ts new file mode 100644 index 0000000..6af757d --- /dev/null +++ b/src/validation/invoice/remove_credit_note.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Invoice.removeCreditNote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const removeCreditNoteInvoiceCreditNoteSchema = z.object({ + id: z.string().max(50), +}); +const removeCreditNoteInvoiceBodySchema = z.looseObject({ + credit_note: removeCreditNoteInvoiceCreditNoteSchema.optional(), +}); +export { removeCreditNoteInvoiceBodySchema }; diff --git a/src/validation/invoice/remove_payment.validation.ts b/src/validation/invoice/remove_payment.validation.ts new file mode 100644 index 0000000..8735a4e --- /dev/null +++ b/src/validation/invoice/remove_payment.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Invoice.removePayment +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const removePaymentInvoiceTransactionSchema = z.object({ + id: z.string().max(40), +}); +const removePaymentInvoiceBodySchema = z.looseObject({ + transaction: removePaymentInvoiceTransactionSchema.optional(), +}); +export { removePaymentInvoiceBodySchema }; diff --git a/src/validation/invoice/remove_tax_withheld.validation.ts b/src/validation/invoice/remove_tax_withheld.validation.ts new file mode 100644 index 0000000..4968a8a --- /dev/null +++ b/src/validation/invoice/remove_tax_withheld.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Invoice.removeTaxWithheld +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const removeTaxWithheldInvoiceTaxWithheldSchema = z.object({ + id: z.string().max(40), +}); +const removeTaxWithheldInvoiceBodySchema = z.looseObject({ + tax_withheld: removeTaxWithheldInvoiceTaxWithheldSchema.optional(), +}); +export { removeTaxWithheldInvoiceBodySchema }; diff --git a/src/validation/invoice/resume_dunning.validation.ts b/src/validation/invoice/resume_dunning.validation.ts new file mode 100644 index 0000000..381f0dd --- /dev/null +++ b/src/validation/invoice/resume_dunning.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Invoice.resumeDunning +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const resumeDunningInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { resumeDunningInvoiceBodySchema }; diff --git a/src/validation/invoice/retrieve.validation.ts b/src/validation/invoice/retrieve.validation.ts new file mode 100644 index 0000000..e0f2dc4 --- /dev/null +++ b/src/validation/invoice/retrieve.validation.ts @@ -0,0 +1,20 @@ +// Generated Zod validator: Invoice.retrieve +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveInvoiceSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const retrieveInvoiceCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const retrieveInvoiceLineItemSchema = z.object({ + subscription_id: retrieveInvoiceSubscriptionIdSchema.optional(), + customer_id: retrieveInvoiceCustomerIdSchema.optional(), +}); +const retrieveInvoiceBodySchema = z.looseObject({ + line_items_limit: z.number().int().min(1).max(300).optional(), + line_items_offset: z.string().max(1000).optional(), + line_item: retrieveInvoiceLineItemSchema.optional(), +}); +export { retrieveInvoiceBodySchema }; diff --git a/src/validation/invoice/stop_dunning.validation.ts b/src/validation/invoice/stop_dunning.validation.ts new file mode 100644 index 0000000..2f9fcae --- /dev/null +++ b/src/validation/invoice/stop_dunning.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Invoice.stopDunning +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const stopDunningInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { stopDunningInvoiceBodySchema }; diff --git a/src/validation/invoice/update_details.validation.ts b/src/validation/invoice/update_details.validation.ts new file mode 100644 index 0000000..db9563a --- /dev/null +++ b/src/validation/invoice/update_details.validation.ts @@ -0,0 +1,54 @@ +// Generated Zod validator: Invoice.updateDetails +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateDetailsInvoiceBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateDetailsInvoiceShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateDetailsInvoiceStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const updateDetailsInvoiceBodySchema = z.looseObject({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + po_number: z.string().max(100).optional(), + comment: z.string().max(300).optional(), + billing_address: updateDetailsInvoiceBillingAddressSchema.optional(), + shipping_address: updateDetailsInvoiceShippingAddressSchema.optional(), + statement_descriptor: + updateDetailsInvoiceStatementDescriptorSchema.optional(), +}); +export { updateDetailsInvoiceBodySchema }; diff --git a/src/validation/invoice/void_invoice.validation.ts b/src/validation/invoice/void_invoice.validation.ts new file mode 100644 index 0000000..4822598 --- /dev/null +++ b/src/validation/invoice/void_invoice.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Invoice.voidInvoice +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const voidInvoiceInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + void_reason_code: z.string().max(100).optional(), +}); +export { voidInvoiceInvoiceBodySchema }; diff --git a/src/validation/invoice/write_off.validation.ts b/src/validation/invoice/write_off.validation.ts new file mode 100644 index 0000000..ae8d950 --- /dev/null +++ b/src/validation/invoice/write_off.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Invoice.writeOff +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const writeOffInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { writeOffInvoiceBodySchema }; diff --git a/src/validation/item/create.validation.ts b/src/validation/item/create.validation.ts new file mode 100644 index 0000000..23d8963 --- /dev/null +++ b/src/validation/item/create.validation.ts @@ -0,0 +1,42 @@ +// Generated Zod validator: Item.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createItemMetadataSchema = z.looseObject({}); +const createItemBundleConfigurationSchema = z.object({ + type: z.enum(['fixed']).optional(), +}); +const createItemBundleItemsToAddSchema = z.object({ + item_id: z.array(z.string().max(100).optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), +}); +const createItemBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + type: z.enum(['plan', 'addon', 'charge']), + description: z.string().max(2000).optional(), + item_family_id: z.string().max(100), + is_giftable: z.boolean().default(false).optional(), + is_shippable: z.boolean().default(false).optional(), + external_name: z.string().max(100).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + redirect_url: z.string().max(500).optional(), + enabled_for_checkout: z.boolean().default(true).optional(), + item_applicability: z.enum(['all', 'restricted']).optional(), + applicable_items: z.array(z.string().max(100).optional()).optional(), + unit: z.string().max(30).optional(), + gift_claim_redirect_url: z.string().max(500).optional(), + included_in_mrr: z.boolean().optional(), + metered: z.boolean().default(false).optional(), + usage_calculation: z + .enum(['sum_of_usages', 'last_usage', 'max_usage']) + .optional(), + is_percentage_pricing: z.boolean().default(false).optional(), + metadata: createItemMetadataSchema.optional(), + business_entity_id: z.string().max(50).optional(), + bundle_configuration: createItemBundleConfigurationSchema.optional(), + bundle_items_to_add: createItemBundleItemsToAddSchema.optional(), +}); +export { createItemBodySchema }; diff --git a/src/validation/item/update.validation.ts b/src/validation/item/update.validation.ts new file mode 100644 index 0000000..f90e2e9 --- /dev/null +++ b/src/validation/item/update.validation.ts @@ -0,0 +1,48 @@ +// Generated Zod validator: Item.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateItemMetadataSchema = z.looseObject({}); +const updateItemBundleConfigurationSchema = z.object({ + type: z.enum(['fixed']).optional(), +}); +const updateItemBundleItemsToAddSchema = z.object({ + item_id: z.array(z.string().max(100).optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), +}); +const updateItemBundleItemsToUpdateSchema = z.object({ + item_id: z.array(z.string().max(100).optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), +}); +const updateItemBundleItemsToRemoveSchema = z.object({ + item_id: z.array(z.string().max(100).optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), +}); +const updateItemBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + is_shippable: z.boolean().default(false).optional(), + external_name: z.string().max(100).optional(), + item_family_id: z.string().max(100).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + redirect_url: z.string().max(500).optional(), + enabled_for_checkout: z.boolean().default(true).optional(), + item_applicability: z.enum(['all', 'restricted']).optional(), + clear_applicable_items: z.boolean().default(false).optional(), + applicable_items: z.array(z.string().max(100).optional()).optional(), + unit: z.string().max(30).optional(), + gift_claim_redirect_url: z.string().max(500).optional(), + metadata: updateItemMetadataSchema.optional(), + included_in_mrr: z.boolean().optional(), + status: z.enum(['active', 'archived']).optional(), + is_percentage_pricing: z.boolean().default(false).optional(), + bundle_configuration: updateItemBundleConfigurationSchema.optional(), + bundle_items_to_add: updateItemBundleItemsToAddSchema.optional(), + bundle_items_to_update: updateItemBundleItemsToUpdateSchema.optional(), + bundle_items_to_remove: updateItemBundleItemsToRemoveSchema.optional(), +}); +export { updateItemBodySchema }; diff --git a/src/validation/item_entitlement/add_item_entitlements.validation.ts b/src/validation/item_entitlement/add_item_entitlements.validation.ts new file mode 100644 index 0000000..5c7c832 --- /dev/null +++ b/src/validation/item_entitlement/add_item_entitlements.validation.ts @@ -0,0 +1,19 @@ +// Generated Zod validator: ItemEntitlement.addItemEntitlements +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addItemEntitlementsItemEntitlementItemEntitlementsSchema = z.object({ + item_id: z.array(z.string().max(100).optional()), + item_type: z + .array( + z.enum(['plan', 'addon', 'charge', 'subscription', 'item']).optional(), + ) + .optional(), + value: z.array(z.string().max(50).optional()).optional(), +}); +const addItemEntitlementsItemEntitlementBodySchema = z.looseObject({ + action: z.enum(['upsert', 'remove']), + item_entitlements: + addItemEntitlementsItemEntitlementItemEntitlementsSchema.optional(), +}); +export { addItemEntitlementsItemEntitlementBodySchema }; diff --git a/src/validation/item_entitlement/item_entitlements_for_feature.validation.ts b/src/validation/item_entitlement/item_entitlements_for_feature.validation.ts new file mode 100644 index 0000000..3ed9c5f --- /dev/null +++ b/src/validation/item_entitlement/item_entitlements_for_feature.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: ItemEntitlement.itemEntitlementsForFeature +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const itemEntitlementsForFeatureItemEntitlementBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + include_drafts: z.boolean().default(false).optional(), +}); +export { itemEntitlementsForFeatureItemEntitlementBodySchema }; diff --git a/src/validation/item_entitlement/item_entitlements_for_item.validation.ts b/src/validation/item_entitlement/item_entitlements_for_item.validation.ts new file mode 100644 index 0000000..ebe0284 --- /dev/null +++ b/src/validation/item_entitlement/item_entitlements_for_item.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: ItemEntitlement.itemEntitlementsForItem +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const itemEntitlementsForItemItemEntitlementBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + include_drafts: z.boolean().default(false).optional(), + embed: z.string().max(1000).optional(), +}); +export { itemEntitlementsForItemItemEntitlementBodySchema }; diff --git a/src/validation/item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.ts b/src/validation/item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.ts new file mode 100644 index 0000000..743d192 --- /dev/null +++ b/src/validation/item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.ts @@ -0,0 +1,16 @@ +// Generated Zod validator: ItemEntitlement.upsertOrRemoveItemEntitlementsForItem +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const upsertOrRemoveItemEntitlementsForItemItemEntitlementItemEntitlementsSchema = + z.object({ + feature_id: z.array(z.string().max(50).optional()), + value: z.array(z.string().max(50).optional()).optional(), + }); +const upsertOrRemoveItemEntitlementsForItemItemEntitlementBodySchema = + z.looseObject({ + action: z.enum(['upsert', 'remove']), + item_entitlements: + upsertOrRemoveItemEntitlementsForItemItemEntitlementItemEntitlementsSchema.optional(), + }); +export { upsertOrRemoveItemEntitlementsForItemItemEntitlementBodySchema }; diff --git a/src/validation/item_family/create.validation.ts b/src/validation/item_family/create.validation.ts new file mode 100644 index 0000000..717782a --- /dev/null +++ b/src/validation/item_family/create.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: ItemFamily.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createItemFamilyBodySchema = z.looseObject({ + id: z.string().max(50), + name: z.string().max(50), + description: z.string().max(500).optional(), + business_entity_id: z.string().max(50).optional(), +}); +export { createItemFamilyBodySchema }; diff --git a/src/validation/item_family/update.validation.ts b/src/validation/item_family/update.validation.ts new file mode 100644 index 0000000..7279837 --- /dev/null +++ b/src/validation/item_family/update.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: ItemFamily.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateItemFamilyBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + description: z.string().max(500).optional(), +}); +export { updateItemFamilyBodySchema }; diff --git a/src/validation/item_price/create.validation.ts b/src/validation/item_price/create.validation.ts new file mode 100644 index 0000000..c307fba --- /dev/null +++ b/src/validation/item_price/create.validation.ts @@ -0,0 +1,84 @@ +// Generated Zod validator: ItemPrice.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createItemPriceMetadataSchema = z.looseObject({}); +const createItemPriceTaxDetailSchema = z.object({ + tax_profile_id: z.string().max(50).optional(), + avalara_tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + taxjar_product_code: z.string().max(50).optional(), +}); +const createItemPriceAccountingDetailSchema = z.object({ + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), +}); +const createItemPriceTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createItemPriceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const createItemPriceBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + description: z.string().max(2000).optional(), + item_id: z.string().max(100), + invoice_notes: z.string().max(2000).optional(), + proration_type: z + .enum(['site_default', 'partial_term', 'full_term']) + .optional(), + external_name: z.string().max(100).optional(), + currency_code: z.string().max(3).optional(), + price_variant_id: z.string().max(100).optional(), + is_taxable: z.boolean().default(true).optional(), + free_quantity: z.number().int().min(0).optional(), + free_quantity_in_decimal: z.string().max(33).optional(), + metadata: createItemPriceMetadataSchema.optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + usage_accumulation_reset_frequency: z + .enum(['never', 'subscription_billing_frequency']) + .optional(), + business_entity_id: z.string().max(50).optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + period: z.number().int().min(1).optional(), + trial_period_unit: z.enum(['day', 'month']).optional(), + trial_period: z.number().int().min(0).optional(), + shipping_period: z.number().int().min(1).optional(), + shipping_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + billing_cycles: z.number().int().min(1).optional(), + trial_end_action: z + .enum(['site_default', 'activate_subscription', 'cancel_subscription']) + .optional(), + tax_detail: createItemPriceTaxDetailSchema.optional(), + accounting_detail: createItemPriceAccountingDetailSchema.optional(), + tiers: createItemPriceTiersSchema.optional(), + tax_providers_fields: createItemPriceTaxProvidersFieldsSchema.optional(), +}); +export { createItemPriceBodySchema }; diff --git a/src/validation/item_price/find_applicable_item_prices.validation.ts b/src/validation/item_price/find_applicable_item_prices.validation.ts new file mode 100644 index 0000000..4fcdc83 --- /dev/null +++ b/src/validation/item_price/find_applicable_item_prices.validation.ts @@ -0,0 +1,15 @@ +// Generated Zod validator: ItemPrice.findApplicableItemPrices +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const findApplicableItemPricesItemPriceSortBySchema = z.looseObject({ + asc: z.enum(['name', 'id', 'updated_at']).optional(), + desc: z.enum(['name', 'id', 'updated_at']).optional(), +}); +const findApplicableItemPricesItemPriceBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + item_id: z.string().max(100).optional(), + sort_by: findApplicableItemPricesItemPriceSortBySchema.optional(), +}); +export { findApplicableItemPricesItemPriceBodySchema }; diff --git a/src/validation/item_price/find_applicable_items.validation.ts b/src/validation/item_price/find_applicable_items.validation.ts new file mode 100644 index 0000000..e14d8da --- /dev/null +++ b/src/validation/item_price/find_applicable_items.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: ItemPrice.findApplicableItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const findApplicableItemsItemPriceSortBySchema = z.looseObject({ + asc: z.enum(['name', 'id', 'updated_at']).optional(), + desc: z.enum(['name', 'id', 'updated_at']).optional(), +}); +const findApplicableItemsItemPriceBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + sort_by: findApplicableItemsItemPriceSortBySchema.optional(), +}); +export { findApplicableItemsItemPriceBodySchema }; diff --git a/src/validation/item_price/update.validation.ts b/src/validation/item_price/update.validation.ts new file mode 100644 index 0000000..0a9bd09 --- /dev/null +++ b/src/validation/item_price/update.validation.ts @@ -0,0 +1,82 @@ +// Generated Zod validator: ItemPrice.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateItemPriceMetadataSchema = z.looseObject({}); +const updateItemPriceTaxDetailSchema = z.object({ + tax_profile_id: z.string().max(50).optional(), + avalara_tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + taxjar_product_code: z.string().max(50).optional(), +}); +const updateItemPriceAccountingDetailSchema = z.object({ + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), +}); +const updateItemPriceTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const updateItemPriceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const updateItemPriceBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + proration_type: z + .enum(['site_default', 'partial_term', 'full_term']) + .optional(), + price_variant_id: z.string().max(100).optional(), + status: z.enum(['active', 'archived']).optional(), + external_name: z.string().max(100).optional(), + usage_accumulation_reset_frequency: z + .enum(['never', 'subscription_billing_frequency']) + .optional(), + currency_code: z.string().max(3).optional(), + invoice_notes: z.string().max(2000).optional(), + is_taxable: z.boolean().default(true).optional(), + free_quantity: z.number().int().min(0).optional(), + free_quantity_in_decimal: z.string().max(33).optional(), + metadata: updateItemPriceMetadataSchema.optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + period: z.number().int().min(1).optional(), + trial_period_unit: z.enum(['day', 'month']).optional(), + trial_period: z.number().int().min(0).optional(), + shipping_period: z.number().int().min(1).optional(), + shipping_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + billing_cycles: z.number().int().min(1).optional(), + trial_end_action: z + .enum(['site_default', 'activate_subscription', 'cancel_subscription']) + .optional(), + show_description_in_invoices: z.boolean().optional(), + show_description_in_quotes: z.boolean().optional(), + tax_detail: updateItemPriceTaxDetailSchema.optional(), + accounting_detail: updateItemPriceAccountingDetailSchema.optional(), + tiers: updateItemPriceTiersSchema.optional(), + tax_providers_fields: updateItemPriceTaxProvidersFieldsSchema.optional(), +}); +export { updateItemPriceBodySchema }; diff --git a/src/validation/non_subscription/process_receipt.validation.ts b/src/validation/non_subscription/process_receipt.validation.ts new file mode 100644 index 0000000..e01d6d7 --- /dev/null +++ b/src/validation/non_subscription/process_receipt.validation.ts @@ -0,0 +1,24 @@ +// Generated Zod validator: NonSubscription.processReceipt +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const processReceiptNonSubscriptionProductSchema = z.object({ + id: z.string().max(96), + currency_code: z.string().max(3), + price: z.number().int().min(0), + type: z.enum(['consumable', 'non_consumable', 'non_renewing_subscription']), + name: z.string().max(96).optional(), + price_in_decimal: z.string().max(39).optional(), +}); +const processReceiptNonSubscriptionCustomerSchema = z.object({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), +}); +const processReceiptNonSubscriptionBodySchema = z.looseObject({ + receipt: z.string().max(65000), + product: processReceiptNonSubscriptionProductSchema.optional(), + customer: processReceiptNonSubscriptionCustomerSchema.optional(), +}); +export { processReceiptNonSubscriptionBodySchema }; diff --git a/src/validation/offer_event/offer_events.validation.ts b/src/validation/offer_event/offer_events.validation.ts new file mode 100644 index 0000000..764645c --- /dev/null +++ b/src/validation/offer_event/offer_events.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: OfferEvent.offerEvents +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const offerEventsOfferEventBodySchema = z.looseObject({ + personalized_offer_id: z.string().max(50), + type: z.enum(['viewed', 'dismissed']), +}); +export { offerEventsOfferEventBodySchema }; diff --git a/src/validation/offer_fulfillment/offer_fulfillments.validation.ts b/src/validation/offer_fulfillment/offer_fulfillments.validation.ts new file mode 100644 index 0000000..80a8a4a --- /dev/null +++ b/src/validation/offer_fulfillment/offer_fulfillments.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: OfferFulfillment.offerFulfillments +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const offerFulfillmentsOfferFulfillmentBodySchema = z.looseObject({ + personalized_offer_id: z.string().max(50), + option_id: z.string().max(50), +}); +export { offerFulfillmentsOfferFulfillmentBodySchema }; diff --git a/src/validation/offer_fulfillment/offer_fulfillments_update.validation.ts b/src/validation/offer_fulfillment/offer_fulfillments_update.validation.ts new file mode 100644 index 0000000..b940424 --- /dev/null +++ b/src/validation/offer_fulfillment/offer_fulfillments_update.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: OfferFulfillment.offerFulfillmentsUpdate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const offerFulfillmentsUpdateOfferFulfillmentBodySchema = z.looseObject({ + id: z.string().max(50), + status: z.enum(['completed', 'failed']), + failure_reason: z.string().max(100).optional(), +}); +export { offerFulfillmentsUpdateOfferFulfillmentBodySchema }; diff --git a/src/validation/omnichannel_one_time_order/list.validation.ts b/src/validation/omnichannel_one_time_order/list.validation.ts new file mode 100644 index 0000000..4e22c1b --- /dev/null +++ b/src/validation/omnichannel_one_time_order/list.validation.ts @@ -0,0 +1,22 @@ +// Generated Zod validator: OmnichannelOneTimeOrder.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listOmnichannelOneTimeOrderSourceSchema = z.object({ + is: z.enum(['apple_app_store', 'google_play_store']).optional(), + is_not: z.enum(['apple_app_store', 'google_play_store']).optional(), + in: z.enum(['apple_app_store', 'google_play_store']).optional(), + not_in: z.enum(['apple_app_store', 'google_play_store']).optional(), +}); +const listOmnichannelOneTimeOrderCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listOmnichannelOneTimeOrderBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + source: listOmnichannelOneTimeOrderSourceSchema.optional(), + customer_id: listOmnichannelOneTimeOrderCustomerIdSchema.optional(), +}); +export { listOmnichannelOneTimeOrderBodySchema }; diff --git a/src/validation/omnichannel_subscription/list.validation.ts b/src/validation/omnichannel_subscription/list.validation.ts new file mode 100644 index 0000000..baf6edd --- /dev/null +++ b/src/validation/omnichannel_subscription/list.validation.ts @@ -0,0 +1,75 @@ +// Generated Zod validator: OmnichannelSubscription.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listOmnichannelSubscriptionSourceSchema = z.object({ + is: z.enum(['apple_app_store', 'google_play_store']).optional(), + is_not: z.enum(['apple_app_store', 'google_play_store']).optional(), + in: z.enum(['apple_app_store', 'google_play_store']).optional(), + not_in: z.enum(['apple_app_store', 'google_play_store']).optional(), +}); +const listOmnichannelSubscriptionCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listOmnichannelSubscriptionStatusSchema = z.object({ + is: z + .enum([ + 'active', + 'expired', + 'cancelled', + 'in_dunning', + 'in_grace_period', + 'paused', + ]) + .optional(), + is_not: z + .enum([ + 'active', + 'expired', + 'cancelled', + 'in_dunning', + 'in_grace_period', + 'paused', + ]) + .optional(), + in: z + .enum([ + 'active', + 'expired', + 'cancelled', + 'in_dunning', + 'in_grace_period', + 'paused', + ]) + .optional(), + not_in: z + .enum([ + 'active', + 'expired', + 'cancelled', + 'in_dunning', + 'in_grace_period', + 'paused', + ]) + .optional(), +}); +const listOmnichannelSubscriptionItemIdAtSourceSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listOmnichannelSubscriptionOmnichannelSubscriptionItemSchema = z.object({ + status: listOmnichannelSubscriptionStatusSchema.optional(), + item_id_at_source: listOmnichannelSubscriptionItemIdAtSourceSchema.optional(), +}); +const listOmnichannelSubscriptionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + source: listOmnichannelSubscriptionSourceSchema.optional(), + customer_id: listOmnichannelSubscriptionCustomerIdSchema.optional(), + omnichannel_subscription_item: + listOmnichannelSubscriptionOmnichannelSubscriptionItemSchema.optional(), +}); +export { listOmnichannelSubscriptionBodySchema }; diff --git a/src/validation/omnichannel_subscription/move.validation.ts b/src/validation/omnichannel_subscription/move.validation.ts new file mode 100644 index 0000000..361f699 --- /dev/null +++ b/src/validation/omnichannel_subscription/move.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: OmnichannelSubscription.move +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const moveOmnichannelSubscriptionBodySchema = z.looseObject({ + to_customer_id: z.string().max(50), +}); +export { moveOmnichannelSubscriptionBodySchema }; diff --git a/src/validation/omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.ts b/src/validation/omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.ts new file mode 100644 index 0000000..9fb6ae6 --- /dev/null +++ b/src/validation/omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: OmnichannelSubscription.omnichannel_transactionsForOmnichannelSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const omnichannelTransactionsforomnichannelsubscriptionOmnichannelSubscriptionBodySchema = + z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + }); +export { omnichannelTransactionsforomnichannelsubscriptionOmnichannelSubscriptionBodySchema }; diff --git a/src/validation/omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.ts b/src/validation/omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.ts new file mode 100644 index 0000000..2463957 --- /dev/null +++ b/src/validation/omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: OmnichannelSubscriptionItem.listOmniSubItemScheduleChanges +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listOmniSubItemScheduleChangesOmnichannelSubscriptionItemBodySchema = + z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + }); +export { listOmniSubItemScheduleChangesOmnichannelSubscriptionItemBodySchema }; diff --git a/src/validation/order/cancel.validation.ts b/src/validation/order/cancel.validation.ts new file mode 100644 index 0000000..74ce541 --- /dev/null +++ b/src/validation/order/cancel.validation.ts @@ -0,0 +1,30 @@ +// Generated Zod validator: Order.cancel +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const cancelOrderCreditNoteSchema = z.object({ + total: z.number().int().min(0).optional(), +}); +const cancelOrderBodySchema = z.looseObject({ + cancellation_reason: z.enum([ + 'shipping_cut_off_passed', + 'product_unsatisfactory', + 'third_party_cancellation', + 'product_not_required', + 'delivery_date_missed', + 'alternative_found', + 'invoice_written_off', + 'invoice_voided', + 'fraudulent_transaction', + 'payment_declined', + 'subscription_cancelled', + 'product_not_available', + 'others', + 'order_resent', + ]), + customer_notes: z.string().max(2000).optional(), + comment: z.string().max(300).optional(), + cancelled_at: z.number().int().optional(), + credit_note: cancelOrderCreditNoteSchema.optional(), +}); +export { cancelOrderBodySchema }; diff --git a/src/validation/order/create.validation.ts b/src/validation/order/create.validation.ts new file mode 100644 index 0000000..05c92a5 --- /dev/null +++ b/src/validation/order/create.validation.ts @@ -0,0 +1,18 @@ +// Generated Zod validator: Order.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createOrderBodySchema = z.looseObject({ + id: z.string().max(40).optional(), + invoice_id: z.string().max(50), + status: z + .enum(['new', 'processing', 'complete', 'cancelled', 'voided']) + .optional(), + reference_id: z.string().max(50).optional(), + fulfillment_status: z.string().max(50).optional(), + note: z.string().max(600).optional(), + tracking_id: z.string().max(50).optional(), + tracking_url: z.string().max(255).optional(), + batch_id: z.string().max(50).optional(), +}); +export { createOrderBodySchema }; diff --git a/src/validation/order/create_refundable_credit_note.validation.ts b/src/validation/order/create_refundable_credit_note.validation.ts new file mode 100644 index 0000000..740b7de --- /dev/null +++ b/src/validation/order/create_refundable_credit_note.validation.ts @@ -0,0 +1,27 @@ +// Generated Zod validator: Order.createRefundableCreditNote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createRefundableCreditNoteOrderCreditNoteSchema = z.object({ + reason_code: z.enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]), + total: z.number().int().min(0), +}); +const createRefundableCreditNoteOrderBodySchema = z.looseObject({ + customer_notes: z.string().max(2000).optional(), + comment: z.string().max(300).optional(), + credit_note: createRefundableCreditNoteOrderCreditNoteSchema.optional(), +}); +export { createRefundableCreditNoteOrderBodySchema }; diff --git a/src/validation/order/import_order.validation.ts b/src/validation/order/import_order.validation.ts new file mode 100644 index 0000000..d8cd0db --- /dev/null +++ b/src/validation/order/import_order.validation.ts @@ -0,0 +1,93 @@ +// Generated Zod validator: Order.importOrder +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importOrderOrderShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const importOrderOrderBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const importOrderOrderBodySchema = z.looseObject({ + id: z.string().max(40).optional(), + document_number: z.string().max(50).optional(), + invoice_id: z.string().max(50), + status: z.enum([ + 'cancelled', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]), + subscription_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), + created_at: z.number().int(), + order_date: z.number().int(), + shipping_date: z.number().int(), + reference_id: z.string().max(50).optional(), + fulfillment_status: z.string().max(50).optional(), + note: z.string().max(600).optional(), + tracking_id: z.string().max(50).optional(), + tracking_url: z.string().max(255).optional(), + batch_id: z.string().max(50).optional(), + shipment_carrier: z.string().max(50).optional(), + shipping_cut_off_date: z.number().int().optional(), + delivered_at: z.number().int().optional(), + shipped_at: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + cancellation_reason: z + .enum([ + 'shipping_cut_off_passed', + 'product_unsatisfactory', + 'third_party_cancellation', + 'product_not_required', + 'delivery_date_missed', + 'alternative_found', + 'invoice_written_off', + 'invoice_voided', + 'fraudulent_transaction', + 'payment_declined', + 'subscription_cancelled', + 'product_not_available', + 'others', + 'order_resent', + ]) + .optional(), + refundable_credits_issued: z.number().int().min(0).optional(), + shipping_address: importOrderOrderShippingAddressSchema.optional(), + billing_address: importOrderOrderBillingAddressSchema.optional(), +}); +export { importOrderOrderBodySchema }; diff --git a/src/validation/order/orders_for_invoice.validation.ts b/src/validation/order/orders_for_invoice.validation.ts new file mode 100644 index 0000000..4f0d033 --- /dev/null +++ b/src/validation/order/orders_for_invoice.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Order.ordersForInvoice +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const ordersForInvoiceOrderBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { ordersForInvoiceOrderBodySchema }; diff --git a/src/validation/order/reopen.validation.ts b/src/validation/order/reopen.validation.ts new file mode 100644 index 0000000..3a68479 --- /dev/null +++ b/src/validation/order/reopen.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Order.reopen +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const reopenOrderBodySchema = z.looseObject({ + void_cancellation_credit_notes: z.boolean().optional(), +}); +export { reopenOrderBodySchema }; diff --git a/src/validation/order/resend.validation.ts b/src/validation/order/resend.validation.ts new file mode 100644 index 0000000..9356740 --- /dev/null +++ b/src/validation/order/resend.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Order.resend +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const resendOrderOrderLineItemsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + fulfillment_quantity: z.array(z.number().int().min(0).optional()).optional(), +}); +const resendOrderBodySchema = z.looseObject({ + shipping_date: z.number().int().optional(), + resend_reason: z.string().max(100).optional(), + order_line_items: resendOrderOrderLineItemsSchema.optional(), +}); +export { resendOrderBodySchema }; diff --git a/src/validation/order/update.validation.ts b/src/validation/order/update.validation.ts new file mode 100644 index 0000000..9db7ae6 --- /dev/null +++ b/src/validation/order/update.validation.ts @@ -0,0 +1,93 @@ +// Generated Zod validator: Order.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateOrderShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateOrderOrderLineItemsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + status: z + .array( + z + .enum([ + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + 'cancelled', + ]) + .optional(), + ) + .optional(), + sku: z.array(z.string().max(250).optional()).optional(), +}); +const updateOrderBodySchema = z.looseObject({ + reference_id: z.string().max(50).optional(), + batch_id: z.string().max(50).optional(), + note: z.string().max(600).optional(), + shipping_date: z.number().int().optional(), + order_date: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + cancellation_reason: z + .enum([ + 'shipping_cut_off_passed', + 'product_unsatisfactory', + 'third_party_cancellation', + 'product_not_required', + 'delivery_date_missed', + 'alternative_found', + 'invoice_written_off', + 'invoice_voided', + 'fraudulent_transaction', + 'payment_declined', + 'subscription_cancelled', + 'product_not_available', + 'others', + 'order_resent', + ]) + .optional(), + shipped_at: z.number().int().optional(), + delivered_at: z.number().int().optional(), + tracking_url: z.string().max(255).optional(), + tracking_id: z.string().max(50).optional(), + shipment_carrier: z.string().max(50).optional(), + fulfillment_status: z.string().max(50).optional(), + status: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), + shipping_address: updateOrderShippingAddressSchema.optional(), + order_line_items: updateOrderOrderLineItemsSchema.optional(), +}); +export { updateOrderBodySchema }; diff --git a/src/validation/payment_intent/create.validation.ts b/src/validation/payment_intent/create.validation.ts new file mode 100644 index 0000000..8a7813c --- /dev/null +++ b/src/validation/payment_intent/create.validation.ts @@ -0,0 +1,60 @@ +// Generated Zod validator: PaymentIntent.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createPaymentIntentBodySchema = z.looseObject({ + business_entity_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), + amount: z.number().int().min(0), + currency_code: z.string().max(3), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + defer_payment_method_type: z.boolean().default(false).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + success_url: z.string().max(250).optional(), + failure_url: z.string().max(250).optional(), +}); +export { createPaymentIntentBodySchema }; diff --git a/src/validation/payment_intent/update.validation.ts b/src/validation/payment_intent/update.validation.ts new file mode 100644 index 0000000..679c744 --- /dev/null +++ b/src/validation/payment_intent/update.validation.ts @@ -0,0 +1,56 @@ +// Generated Zod validator: PaymentIntent.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updatePaymentIntentBodySchema = z.looseObject({ + amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + gateway_account_id: z.string().max(50).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + success_url: z.string().max(250).optional(), + failure_url: z.string().max(250).optional(), +}); +export { updatePaymentIntentBodySchema }; diff --git a/src/validation/payment_schedule_scheme/create.validation.ts b/src/validation/payment_schedule_scheme/create.validation.ts new file mode 100644 index 0000000..ab93395 --- /dev/null +++ b/src/validation/payment_schedule_scheme/create.validation.ts @@ -0,0 +1,17 @@ +// Generated Zod validator: PaymentScheduleScheme.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createPaymentScheduleSchemeFlexibleSchedulesSchema = z.object({ + period: z.array(z.number().int().min(0).max(52).optional()).optional(), + amount_percentage: z.array(z.number().min(1).max(100).optional()).optional(), +}); +const createPaymentScheduleSchemeBodySchema = z.looseObject({ + number_of_schedules: z.number().int().min(1).max(52), + period_unit: z.enum(['day', 'week', 'month']), + period: z.number().int().min(1).max(30).optional(), + name: z.string().max(100), + flexible_schedules: + createPaymentScheduleSchemeFlexibleSchedulesSchema.optional(), +}); +export { createPaymentScheduleSchemeBodySchema }; diff --git a/src/validation/payment_source/create_bank_account.validation.ts b/src/validation/payment_source/create_bank_account.validation.ts new file mode 100644 index 0000000..718caab --- /dev/null +++ b/src/validation/payment_source/create_bank_account.validation.ts @@ -0,0 +1,33 @@ +// Generated Zod validator: PaymentSource.createBankAccount +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createBankAccountPaymentSourceBillingAddressSchema = z.looseObject({}); +const createBankAccountPaymentSourceBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: + createBankAccountPaymentSourceBillingAddressSchema.optional(), +}); +const createBankAccountPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + issuing_country: z.string().max(50).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + bank_account: createBankAccountPaymentSourceBankAccountSchema.optional(), +}); +export { createBankAccountPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_card.validation.ts b/src/validation/payment_source/create_card.validation.ts new file mode 100644 index 0000000..3e4f3f0 --- /dev/null +++ b/src/validation/payment_source/create_card.validation.ts @@ -0,0 +1,32 @@ +// Generated Zod validator: PaymentSource.createCard +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createCardPaymentSourceAdditionalInformationSchema = z.looseObject({}); +const createCardPaymentSourceCardSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500), + expiry_month: z.number().int().min(1).max(12), + expiry_year: z.number().int(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + additional_information: + createCardPaymentSourceAdditionalInformationSchema.optional(), +}); +const createCardPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + replace_primary_payment_source: z.boolean().default(false).optional(), + card: createCardPaymentSourceCardSchema.optional(), +}); +export { createCardPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_using_payment_intent.validation.ts b/src/validation/payment_source/create_using_payment_intent.validation.ts new file mode 100644 index 0000000..10b1923 --- /dev/null +++ b/src/validation/payment_source/create_using_payment_intent.validation.ts @@ -0,0 +1,71 @@ +// Generated Zod validator: PaymentSource.createUsingPaymentIntent +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUsingPaymentIntentPaymentSourceAdditionalInfoSchema = z.looseObject( + {}, +); +const createUsingPaymentIntentPaymentSourceAdditionalInformationSchema = + z.looseObject({}); +const createUsingPaymentIntentPaymentSourcePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_info: + createUsingPaymentIntentPaymentSourceAdditionalInfoSchema.optional(), + additional_information: + createUsingPaymentIntentPaymentSourceAdditionalInformationSchema.optional(), +}); +const createUsingPaymentIntentPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + replace_primary_payment_source: z.boolean().default(false).optional(), + payment_intent: + createUsingPaymentIntentPaymentSourcePaymentIntentSchema.optional(), +}); +export { createUsingPaymentIntentPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_using_permanent_token.validation.ts b/src/validation/payment_source/create_using_permanent_token.validation.ts new file mode 100644 index 0000000..3225e79 --- /dev/null +++ b/src/validation/payment_source/create_using_permanent_token.validation.ts @@ -0,0 +1,114 @@ +// Generated Zod validator: PaymentSource.createUsingPermanentToken +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUsingPermanentTokenPaymentSourceAdditionalInformationSchema = + z.looseObject({}); +const createUsingPermanentTokenPaymentSourceCardSchema = z.object({ + last4: z.string().max(4).min(4).optional(), + iin: z.string().max(6).min(6).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + brand: z + .enum([ + 'visa', + 'mastercard', + 'american_express', + 'discover', + 'jcb', + 'diners_club', + 'other', + 'bancontact', + 'cmr_falabella', + 'tarjeta_naranja', + 'nativa', + 'cencosud', + 'cabal', + 'argencard', + 'elo', + 'hipercard', + 'carnet', + 'rupay', + 'maestro', + 'dankort', + 'cartes_bancaires', + 'mada', + ]) + .optional(), + funding_type: z.enum(['credit', 'debit', 'prepaid', 'not_known']).optional(), +}); +const createUsingPermanentTokenPaymentSourceBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), +}); +const createUsingPermanentTokenPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + type: z.enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + issuing_country: z.string().max(50).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + payment_method_token: z.string().max(100).optional(), + customer_profile_token: z.string().max(100).optional(), + network_transaction_id: z.string().max(100).optional(), + mandate_id: z.string().max(100).optional(), + skip_retrieval: z.boolean().default(false).optional(), + additional_information: + createUsingPermanentTokenPaymentSourceAdditionalInformationSchema.optional(), + card: createUsingPermanentTokenPaymentSourceCardSchema.optional(), + billing_address: + createUsingPermanentTokenPaymentSourceBillingAddressSchema.optional(), +}); +export { createUsingPermanentTokenPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_using_temp_token.validation.ts b/src/validation/payment_source/create_using_temp_token.validation.ts new file mode 100644 index 0000000..5ece9bc --- /dev/null +++ b/src/validation/payment_source/create_using_temp_token.validation.ts @@ -0,0 +1,60 @@ +// Generated Zod validator: PaymentSource.createUsingTempToken +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUsingTempTokenPaymentSourceAdditionalInformationSchema = + z.looseObject({}); +const createUsingTempTokenPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + gateway_account_id: z.string().max(50).optional(), + type: z.enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]), + tmp_token: z.string().max(65000), + issuing_country: z.string().max(50).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + additional_information: + createUsingTempTokenPaymentSourceAdditionalInformationSchema.optional(), +}); +export { createUsingTempTokenPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_using_token.validation.ts b/src/validation/payment_source/create_using_token.validation.ts new file mode 100644 index 0000000..bc1ff39 --- /dev/null +++ b/src/validation/payment_source/create_using_token.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: PaymentSource.createUsingToken +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUsingTokenPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + replace_primary_payment_source: z.boolean().default(false).optional(), + token_id: z.string().max(40), +}); +export { createUsingTokenPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_voucher_payment_source.validation.ts b/src/validation/payment_source/create_voucher_payment_source.validation.ts new file mode 100644 index 0000000..7379e8a --- /dev/null +++ b/src/validation/payment_source/create_voucher_payment_source.validation.ts @@ -0,0 +1,20 @@ +// Generated Zod validator: PaymentSource.createVoucherPaymentSource +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createVoucherPaymentSourcePaymentSourceBillingAddressSchema = + z.looseObject({}); +const createVoucherPaymentSourcePaymentSourceVoucherPaymentSourceSchema = + z.object({ + voucher_type: z.enum(['boleto']), + gateway_account_id: z.string().max(50).optional(), + tax_id: z.string().max(20).optional(), + billing_address: + createVoucherPaymentSourcePaymentSourceBillingAddressSchema.optional(), + }); +const createVoucherPaymentSourcePaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + voucher_payment_source: + createVoucherPaymentSourcePaymentSourceVoucherPaymentSourceSchema.optional(), +}); +export { createVoucherPaymentSourcePaymentSourceBodySchema }; diff --git a/src/validation/payment_source/export_payment_source.validation.ts b/src/validation/payment_source/export_payment_source.validation.ts new file mode 100644 index 0000000..ca7ba6c --- /dev/null +++ b/src/validation/payment_source/export_payment_source.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: PaymentSource.exportPaymentSource +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const exportPaymentSourcePaymentSourceBodySchema = z.looseObject({ + gateway_account_id: z.string().max(50), +}); +export { exportPaymentSourcePaymentSourceBodySchema }; diff --git a/src/validation/payment_source/switch_gateway_account.validation.ts b/src/validation/payment_source/switch_gateway_account.validation.ts new file mode 100644 index 0000000..b7013bb --- /dev/null +++ b/src/validation/payment_source/switch_gateway_account.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: PaymentSource.switchGatewayAccount +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const switchGatewayAccountPaymentSourceBodySchema = z.looseObject({ + gateway_account_id: z.string().max(50), +}); +export { switchGatewayAccountPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/update_bank_account.validation.ts b/src/validation/payment_source/update_bank_account.validation.ts new file mode 100644 index 0000000..d3cf216 --- /dev/null +++ b/src/validation/payment_source/update_bank_account.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: PaymentSource.updateBankAccount +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateBankAccountPaymentSourceBankAccountSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), +}); +const updateBankAccountPaymentSourceBodySchema = z.looseObject({ + bank_account: updateBankAccountPaymentSourceBankAccountSchema.optional(), +}); +export { updateBankAccountPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/update_card.validation.ts b/src/validation/payment_source/update_card.validation.ts new file mode 100644 index 0000000..0d9d93b --- /dev/null +++ b/src/validation/payment_source/update_card.validation.ts @@ -0,0 +1,27 @@ +// Generated Zod validator: PaymentSource.updateCard +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateCardPaymentSourceGatewayMetaDataSchema = z.looseObject({}); +const updateCardPaymentSourceAdditionalInformationSchema = z.looseObject({}); +const updateCardPaymentSourceCardSchema = z.object({ + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_country: z.string().max(50).optional(), + additional_information: + updateCardPaymentSourceAdditionalInformationSchema.optional(), +}); +const updateCardPaymentSourceBodySchema = z.looseObject({ + gateway_meta_data: updateCardPaymentSourceGatewayMetaDataSchema.optional(), + reference_transaction: z.string().max(50).optional(), + card: updateCardPaymentSourceCardSchema.optional(), +}); +export { updateCardPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/verify_bank_account.validation.ts b/src/validation/payment_source/verify_bank_account.validation.ts new file mode 100644 index 0000000..3d62c11 --- /dev/null +++ b/src/validation/payment_source/verify_bank_account.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: PaymentSource.verifyBankAccount +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const verifyBankAccountPaymentSourceBodySchema = z.looseObject({ + amount1: z.number().int().min(0), + amount2: z.number().int().min(0), +}); +export { verifyBankAccountPaymentSourceBodySchema }; diff --git a/src/validation/payment_voucher/create.validation.ts b/src/validation/payment_voucher/create.validation.ts new file mode 100644 index 0000000..cebe386 --- /dev/null +++ b/src/validation/payment_voucher/create.validation.ts @@ -0,0 +1,18 @@ +// Generated Zod validator: PaymentVoucher.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createPaymentVoucherVoucherPaymentSourceSchema = z.object({ + voucher_type: z.enum(['boleto']), +}); +const createPaymentVoucherInvoiceAllocationsSchema = z.object({ + invoice_id: z.array(z.string().max(50).optional()), +}); +const createPaymentVoucherBodySchema = z.looseObject({ + customer_id: z.string().max(50), + payment_source_id: z.string().max(40).optional(), + voucher_payment_source: + createPaymentVoucherVoucherPaymentSourceSchema.optional(), + invoice_allocations: createPaymentVoucherInvoiceAllocationsSchema.optional(), +}); +export { createPaymentVoucherBodySchema }; diff --git a/src/validation/payment_voucher/payment_vouchersforcustomer.validation.ts b/src/validation/payment_voucher/payment_vouchersforcustomer.validation.ts new file mode 100644 index 0000000..d98b6f7 --- /dev/null +++ b/src/validation/payment_voucher/payment_vouchersforcustomer.validation.ts @@ -0,0 +1,21 @@ +// Generated Zod validator: PaymentVoucher.payment_vouchersForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const paymentVouchersforcustomerPaymentVoucherStatusSchema = z.object({ + is: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + is_not: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + not_in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), +}); +const paymentVouchersforcustomerPaymentVoucherSortBySchema = z.looseObject({ + asc: z.enum(['date', 'updated_at']).optional(), + desc: z.enum(['date', 'updated_at']).optional(), +}); +const paymentVouchersforcustomerPaymentVoucherBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + status: paymentVouchersforcustomerPaymentVoucherStatusSchema.optional(), + sort_by: paymentVouchersforcustomerPaymentVoucherSortBySchema.optional(), +}); +export { paymentVouchersforcustomerPaymentVoucherBodySchema }; diff --git a/src/validation/payment_voucher/payment_vouchersforinvoice.validation.ts b/src/validation/payment_voucher/payment_vouchersforinvoice.validation.ts new file mode 100644 index 0000000..1c24007 --- /dev/null +++ b/src/validation/payment_voucher/payment_vouchersforinvoice.validation.ts @@ -0,0 +1,21 @@ +// Generated Zod validator: PaymentVoucher.payment_vouchersForInvoice +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const paymentVouchersforinvoicePaymentVoucherStatusSchema = z.object({ + is: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + is_not: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + not_in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), +}); +const paymentVouchersforinvoicePaymentVoucherSortBySchema = z.looseObject({ + asc: z.enum(['date', 'updated_at']).optional(), + desc: z.enum(['date', 'updated_at']).optional(), +}); +const paymentVouchersforinvoicePaymentVoucherBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + status: paymentVouchersforinvoicePaymentVoucherStatusSchema.optional(), + sort_by: paymentVouchersforinvoicePaymentVoucherSortBySchema.optional(), +}); +export { paymentVouchersforinvoicePaymentVoucherBodySchema }; diff --git a/src/validation/personalized_offer/personalized_offers.validation.ts b/src/validation/personalized_offer/personalized_offers.validation.ts new file mode 100644 index 0000000..f84f344 --- /dev/null +++ b/src/validation/personalized_offer/personalized_offers.validation.ts @@ -0,0 +1,25 @@ +// Generated Zod validator: PersonalizedOffer.personalizedOffers +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const personalizedOffersPersonalizedOfferCustomSchema = z.looseObject({}); +const personalizedOffersPersonalizedOfferRequestContextSchema = z.object({ + user_agent: z.string().max(255).optional(), + locale: z.string().max(50).optional(), + timezone: z.string().max(64).optional(), + url: z.string().max(250).optional(), + referrer_url: z.string().max(250).optional(), +}); +const personalizedOffersPersonalizedOfferBodySchema = z.looseObject({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + roles: z.array(z.string().max(50).optional()).optional(), + external_user_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + customer_id: z.string().max(50), + custom: personalizedOffersPersonalizedOfferCustomSchema.optional(), + request_context: + personalizedOffersPersonalizedOfferRequestContextSchema.optional(), +}); +export { personalizedOffersPersonalizedOfferBodySchema }; diff --git a/src/validation/plan/copy.validation.ts b/src/validation/plan/copy.validation.ts new file mode 100644 index 0000000..35e157a --- /dev/null +++ b/src/validation/plan/copy.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Plan.copy +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const copyPlanBodySchema = z.looseObject({ + from_site: z.string().max(50), + id_at_from_site: z.string().max(100), + id: z.string().max(100).optional(), + for_site_merging: z.boolean().default(false).optional(), +}); +export { copyPlanBodySchema }; diff --git a/src/validation/plan/create.validation.ts b/src/validation/plan/create.validation.ts new file mode 100644 index 0000000..1254957 --- /dev/null +++ b/src/validation/plan/create.validation.ts @@ -0,0 +1,112 @@ +// Generated Zod validator: Plan.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createPlanMetaDataSchema = z.looseObject({}); +const createPlanTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const createPlanTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const createPlanApplicableAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), +}); +const createPlanEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), +}); +const createPlanAttachedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + billing_cycles: z.array(z.number().int().min(1).optional()).optional(), + type: z.array(z.enum(['recommended', 'mandatory']).optional()).optional(), +}); +const createPlanBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + invoice_name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + trial_period: z.number().int().min(1).optional(), + trial_period_unit: z.enum(['day', 'month']).optional(), + trial_end_action: z + .enum(['site_default', 'activate_subscription', 'cancel_subscription']) + .optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + setup_cost: z.number().int().min(1).optional(), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + currency_code: z.string().max(3).optional(), + billing_cycles: z.number().int().min(1).optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + charge_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + free_quantity: z.number().int().min(0).optional(), + free_quantity_in_decimal: z.string().max(33).optional(), + addon_applicability: z.enum(['all', 'restricted']).optional(), + downgrade_penalty: z.number().min(0.01).max(100).optional(), + redirect_url: z.string().max(500).optional(), + enabled_in_hosted_pages: z.boolean().default(true).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + taxable: z.boolean().default(true).optional(), + tax_profile_id: z.string().max(50).optional(), + tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), + is_shippable: z.boolean().default(false).optional(), + shipping_frequency_period: z.number().int().min(1).optional(), + shipping_frequency_period_unit: z + .enum(['year', 'month', 'week', 'day']) + .optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: createPlanMetaDataSchema.optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + giftable: z.boolean().default(false).optional(), + status: z.enum(['active', 'archived']).optional(), + claim_url: z.string().max(500).optional(), + tiers: createPlanTiersSchema.optional(), + tax_providers_fields: createPlanTaxProvidersFieldsSchema.optional(), + applicable_addons: createPlanApplicableAddonsSchema.optional(), + event_based_addons: createPlanEventBasedAddonsSchema.optional(), + attached_addons: createPlanAttachedAddonsSchema.optional(), +}); +export { createPlanBodySchema }; diff --git a/src/validation/plan/update.validation.ts b/src/validation/plan/update.validation.ts new file mode 100644 index 0000000..71ba5dd --- /dev/null +++ b/src/validation/plan/update.validation.ts @@ -0,0 +1,108 @@ +// Generated Zod validator: Plan.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updatePlanMetaDataSchema = z.looseObject({}); +const updatePlanTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const updatePlanTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const updatePlanApplicableAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), +}); +const updatePlanEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), +}); +const updatePlanAttachedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + billing_cycles: z.array(z.number().int().min(1).optional()).optional(), + type: z.array(z.enum(['recommended', 'mandatory']).optional()).optional(), +}); +const updatePlanBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + invoice_name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + trial_period: z.number().int().min(0).optional(), + trial_period_unit: z.enum(['day', 'month']).optional(), + trial_end_action: z + .enum(['site_default', 'activate_subscription', 'cancel_subscription']) + .optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + setup_cost: z.number().int().min(1).optional(), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + currency_code: z.string().max(3).optional(), + billing_cycles: z.number().int().min(1).optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + charge_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + free_quantity: z.number().int().min(0).optional(), + free_quantity_in_decimal: z.string().max(33).optional(), + addon_applicability: z.enum(['all', 'restricted']).optional(), + downgrade_penalty: z.number().min(0.01).max(100).optional(), + redirect_url: z.string().max(500).optional(), + enabled_in_hosted_pages: z.boolean().default(true).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + taxable: z.boolean().default(true).optional(), + tax_profile_id: z.string().max(50).optional(), + tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), + is_shippable: z.boolean().default(false).optional(), + shipping_frequency_period: z.number().int().min(1).optional(), + shipping_frequency_period_unit: z + .enum(['year', 'month', 'week', 'day']) + .optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: updatePlanMetaDataSchema.optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + tiers: updatePlanTiersSchema.optional(), + tax_providers_fields: updatePlanTaxProvidersFieldsSchema.optional(), + applicable_addons: updatePlanApplicableAddonsSchema.optional(), + event_based_addons: updatePlanEventBasedAddonsSchema.optional(), + attached_addons: updatePlanAttachedAddonsSchema.optional(), +}); +export { updatePlanBodySchema }; diff --git a/src/validation/portal_session/activate.validation.ts b/src/validation/portal_session/activate.validation.ts new file mode 100644 index 0000000..cc5e79d --- /dev/null +++ b/src/validation/portal_session/activate.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: PortalSession.activate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const activatePortalSessionBodySchema = z.looseObject({ + token: z.string().max(70), +}); +export { activatePortalSessionBodySchema }; diff --git a/src/validation/portal_session/create.validation.ts b/src/validation/portal_session/create.validation.ts new file mode 100644 index 0000000..19282c8 --- /dev/null +++ b/src/validation/portal_session/create.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: PortalSession.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createPortalSessionCustomerSchema = z.object({ + id: z.string().max(50), +}); +const createPortalSessionBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + forward_url: z.string().max(250).optional(), + customer: createPortalSessionCustomerSchema.optional(), +}); +export { createPortalSessionBodySchema }; diff --git a/src/validation/price_variant/create.validation.ts b/src/validation/price_variant/create.validation.ts new file mode 100644 index 0000000..6990aa5 --- /dev/null +++ b/src/validation/price_variant/create.validation.ts @@ -0,0 +1,18 @@ +// Generated Zod validator: PriceVariant.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createPriceVariantAttributesSchema = z.object({ + name: z.array(z.string().max(100).optional()), + value: z.array(z.string().max(100).optional()), +}); +const createPriceVariantBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + external_name: z.string().max(100).optional(), + description: z.string().max(500).optional(), + variant_group: z.string().max(100).optional(), + business_entity_id: z.string().max(50).optional(), + attributes: createPriceVariantAttributesSchema.optional(), +}); +export { createPriceVariantBodySchema }; diff --git a/src/validation/price_variant/update.validation.ts b/src/validation/price_variant/update.validation.ts new file mode 100644 index 0000000..984ca5f --- /dev/null +++ b/src/validation/price_variant/update.validation.ts @@ -0,0 +1,17 @@ +// Generated Zod validator: PriceVariant.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updatePriceVariantAttributesSchema = z.object({ + name: z.array(z.string().max(100).optional()), + value: z.array(z.string().max(100).optional()), +}); +const updatePriceVariantBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + external_name: z.string().max(100).optional(), + description: z.string().max(500).optional(), + variant_group: z.string().max(100).optional(), + status: z.enum(['active', 'archived']).optional(), + attributes: updatePriceVariantAttributesSchema.optional(), +}); +export { updatePriceVariantBodySchema }; diff --git a/src/validation/pricing_page_session/create_for_existing_subscription.validation.ts b/src/validation/pricing_page_session/create_for_existing_subscription.validation.ts new file mode 100644 index 0000000..99e951f --- /dev/null +++ b/src/validation/pricing_page_session/create_for_existing_subscription.validation.ts @@ -0,0 +1,57 @@ +// Generated Zod validator: PricingPageSession.createForExistingSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForExistingSubscriptionPricingPageSessionCustomSchema = + z.looseObject({}); +const createForExistingSubscriptionPricingPageSessionPricingPageSchema = + z.object({ + id: z.string().max(50).optional(), + }); +const createForExistingSubscriptionPricingPageSessionSubscriptionSchema = + z.looseObject({ + id: z.string().max(50), + }); +const createForExistingSubscriptionPricingPageSessionContractTermSchema = + z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), + }); +const createForExistingSubscriptionPricingPageSessionDiscountsSchema = z.object( + { + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + label: z.array(z.string().max(100).optional()).optional(), + }, +); +const createForExistingSubscriptionPricingPageSessionBodySchema = z.looseObject( + { + redirect_url: z.string().max(250).optional(), + custom: + createForExistingSubscriptionPricingPageSessionCustomSchema.optional(), + pricing_page: + createForExistingSubscriptionPricingPageSessionPricingPageSchema.optional(), + subscription: + createForExistingSubscriptionPricingPageSessionSubscriptionSchema.optional(), + contract_term: + createForExistingSubscriptionPricingPageSessionContractTermSchema.optional(), + discounts: + createForExistingSubscriptionPricingPageSessionDiscountsSchema.optional(), + }, +); +export { createForExistingSubscriptionPricingPageSessionBodySchema }; diff --git a/src/validation/pricing_page_session/create_for_new_subscription.validation.ts b/src/validation/pricing_page_session/create_for_new_subscription.validation.ts new file mode 100644 index 0000000..e9da306 --- /dev/null +++ b/src/validation/pricing_page_session/create_for_new_subscription.validation.ts @@ -0,0 +1,106 @@ +// Generated Zod validator: PricingPageSession.createForNewSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForNewSubscriptionPricingPageSessionCustomSchema = z.looseObject( + {}, +); +const createForNewSubscriptionPricingPageSessionPricingPageSchema = z.object({ + id: z.string().max(50), +}); +const createForNewSubscriptionPricingPageSessionSubscriptionSchema = + z.looseObject({ + id: z.string().max(50).optional(), + }); +const createForNewSubscriptionPricingPageSessionCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), +}); +const createForNewSubscriptionPricingPageSessionBillingAddressSchema = z.object( + { + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + }, +); +const createForNewSubscriptionPricingPageSessionShippingAddressSchema = + z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + }); +const createForNewSubscriptionPricingPageSessionContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createForNewSubscriptionPricingPageSessionDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + label: z.array(z.string().max(100).optional()).optional(), +}); +const createForNewSubscriptionPricingPageSessionBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + business_entity_id: z.string().max(50).optional(), + auto_select_local_currency: z.boolean().default(false).optional(), + custom: createForNewSubscriptionPricingPageSessionCustomSchema.optional(), + pricing_page: + createForNewSubscriptionPricingPageSessionPricingPageSchema.optional(), + subscription: + createForNewSubscriptionPricingPageSessionSubscriptionSchema.optional(), + customer: createForNewSubscriptionPricingPageSessionCustomerSchema.optional(), + billing_address: + createForNewSubscriptionPricingPageSessionBillingAddressSchema.optional(), + shipping_address: + createForNewSubscriptionPricingPageSessionShippingAddressSchema.optional(), + contract_term: + createForNewSubscriptionPricingPageSessionContractTermSchema.optional(), + discounts: + createForNewSubscriptionPricingPageSessionDiscountsSchema.optional(), +}); +export { createForNewSubscriptionPricingPageSessionBodySchema }; diff --git a/src/validation/promotional_credit/add.validation.ts b/src/validation/promotional_credit/add.validation.ts new file mode 100644 index 0000000..f2c29e7 --- /dev/null +++ b/src/validation/promotional_credit/add.validation.ts @@ -0,0 +1,16 @@ +// Generated Zod validator: PromotionalCredit.add +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addPromotionalCreditBodySchema = z.looseObject({ + customer_id: z.string().max(50), + amount: z.number().int().min(0).optional(), + amount_in_decimal: z.string().max(33).optional(), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { addPromotionalCreditBodySchema }; diff --git a/src/validation/promotional_credit/deduct.validation.ts b/src/validation/promotional_credit/deduct.validation.ts new file mode 100644 index 0000000..227ef88 --- /dev/null +++ b/src/validation/promotional_credit/deduct.validation.ts @@ -0,0 +1,16 @@ +// Generated Zod validator: PromotionalCredit.deduct +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deductPromotionalCreditBodySchema = z.looseObject({ + customer_id: z.string().max(50), + amount: z.number().int().min(0).optional(), + amount_in_decimal: z.string().max(33).optional(), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { deductPromotionalCreditBodySchema }; diff --git a/src/validation/promotional_credit/list.validation.ts b/src/validation/promotional_credit/list.validation.ts new file mode 100644 index 0000000..84052b6 --- /dev/null +++ b/src/validation/promotional_credit/list.validation.ts @@ -0,0 +1,35 @@ +// Generated Zod validator: PromotionalCredit.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listPromotionalCreditIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listPromotionalCreditCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const listPromotionalCreditTypeSchema = z.object({ + is: z.enum(['increment', 'decrement']).optional(), + is_not: z.enum(['increment', 'decrement']).optional(), + in: z.enum(['increment', 'decrement']).optional(), + not_in: z.enum(['increment', 'decrement']).optional(), +}); +const listPromotionalCreditCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listPromotionalCreditBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + id: listPromotionalCreditIdSchema.optional(), + created_at: listPromotionalCreditCreatedAtSchema.optional(), + type: listPromotionalCreditTypeSchema.optional(), + customer_id: listPromotionalCreditCustomerIdSchema.optional(), +}); +export { listPromotionalCreditBodySchema }; diff --git a/src/validation/promotional_credit/set.validation.ts b/src/validation/promotional_credit/set.validation.ts new file mode 100644 index 0000000..df7a527 --- /dev/null +++ b/src/validation/promotional_credit/set.validation.ts @@ -0,0 +1,16 @@ +// Generated Zod validator: PromotionalCredit.set +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const setPromotionalCreditBodySchema = z.looseObject({ + customer_id: z.string().max(50), + amount: z.number().int().min(0).optional(), + amount_in_decimal: z.string().max(33).optional(), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { setPromotionalCreditBodySchema }; diff --git a/src/validation/purchase/create.validation.ts b/src/validation/purchase/create.validation.ts new file mode 100644 index 0000000..fc536e4 --- /dev/null +++ b/src/validation/purchase/create.validation.ts @@ -0,0 +1,149 @@ +// Generated Zod validator: Purchase.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createPurchaseInvoiceInfoSchema = z.object({ + po_number: z.string().max(100).optional(), + notes: z.string().max(2000).optional(), +}); +const createPurchasePaymentScheduleSchema = z.object({ + scheme_id: z.string().max(40).optional(), + amount: z.number().int().min(0).optional(), +}); +const createPurchaseStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const createPurchaseAdditionalInformationSchema = z.looseObject({}); +const createPurchasePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: createPurchaseAdditionalInformationSchema.optional(), +}); +const createPurchasePurchaseItemsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const createPurchaseItemTiersSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const createPurchaseShippingAddressesSchema = z.object({ + first_name: z.array(z.string().max(150).optional()).optional(), + last_name: z.array(z.string().max(150).optional()).optional(), + email: z.array(z.string().email().max(70).optional()).optional(), + company: z.array(z.string().max(250).optional()).optional(), + phone: z.array(z.string().max(50).optional()).optional(), + line1: z.array(z.string().max(150).optional()).optional(), + line2: z.array(z.string().max(150).optional()).optional(), + line3: z.array(z.string().max(150).optional()).optional(), + city: z.array(z.string().max(50).optional()).optional(), + state: z.array(z.string().max(50).optional()).optional(), + state_code: z.array(z.string().max(50).optional()).optional(), + country: z.array(z.string().max(50).optional()).optional(), + zip: z.array(z.string().max(20).optional()).optional(), + validation_status: z + .array( + z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + ) + .optional(), +}); +const createPurchaseDiscountsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()).optional(), + coupon_id: z.array(z.string().max(100).optional()).optional(), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), +}); +const createPurchaseMetaDataItemSchema = z.looseObject({}); +const createPurchaseSubscriptionInfoSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + subscription_id: z.array(z.string().max(50).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + contract_term_billing_cycle_on_renewal: z + .array(z.number().int().min(1).max(100).optional()) + .optional(), + meta_data: z.array(createPurchaseMetaDataItemSchema.optional()).optional(), +}); +const createPurchaseContractTermsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + action_at_term_end: z + .array(z.enum(['renew', 'evergreen', 'cancel', 'renew_once']).optional()) + .optional(), + cancellation_cutoff_period: z.array(z.number().int().optional()).optional(), +}); +const createPurchaseBodySchema = z.looseObject({ + customer_id: z.string().max(50), + payment_source_id: z.string().max(40).optional(), + replace_primary_payment_source: z.boolean().default(true).optional(), + invoice_info: createPurchaseInvoiceInfoSchema.optional(), + payment_schedule: createPurchasePaymentScheduleSchema.optional(), + statement_descriptor: createPurchaseStatementDescriptorSchema.optional(), + payment_intent: createPurchasePaymentIntentSchema.optional(), + purchase_items: createPurchasePurchaseItemsSchema.optional(), + item_tiers: createPurchaseItemTiersSchema.optional(), + shipping_addresses: createPurchaseShippingAddressesSchema.optional(), + discounts: createPurchaseDiscountsSchema.optional(), + subscription_info: createPurchaseSubscriptionInfoSchema.optional(), + contract_terms: createPurchaseContractTermsSchema.optional(), +}); +export { createPurchaseBodySchema }; diff --git a/src/validation/purchase/estimate.validation.ts b/src/validation/purchase/estimate.validation.ts new file mode 100644 index 0000000..f8720f8 --- /dev/null +++ b/src/validation/purchase/estimate.validation.ts @@ -0,0 +1,126 @@ +// Generated Zod validator: Purchase.estimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const estimatePurchaseCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), +}); +const estimatePurchaseBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const estimatePurchasePurchaseItemsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const estimatePurchaseItemTiersSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const estimatePurchaseShippingAddressesSchema = z.object({ + first_name: z.array(z.string().max(150).optional()).optional(), + last_name: z.array(z.string().max(150).optional()).optional(), + email: z.array(z.string().email().max(70).optional()).optional(), + company: z.array(z.string().max(250).optional()).optional(), + phone: z.array(z.string().max(50).optional()).optional(), + line1: z.array(z.string().max(150).optional()).optional(), + line2: z.array(z.string().max(150).optional()).optional(), + line3: z.array(z.string().max(150).optional()).optional(), + city: z.array(z.string().max(50).optional()).optional(), + state: z.array(z.string().max(50).optional()).optional(), + state_code: z.array(z.string().max(50).optional()).optional(), + country: z.array(z.string().max(50).optional()).optional(), + zip: z.array(z.string().max(20).optional()).optional(), + validation_status: z + .array( + z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + ) + .optional(), +}); +const estimatePurchaseDiscountsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()).optional(), + coupon_id: z.array(z.string().max(100).optional()).optional(), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), +}); +const estimatePurchaseSubscriptionInfoSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + subscription_id: z.array(z.string().max(50).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + contract_term_billing_cycle_on_renewal: z + .array(z.number().int().min(1).max(100).optional()) + .optional(), +}); +const estimatePurchaseContractTermsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + action_at_term_end: z + .array(z.enum(['renew', 'evergreen', 'cancel', 'renew_once']).optional()) + .optional(), + cancellation_cutoff_period: z.array(z.number().int().optional()).optional(), +}); +const estimatePurchaseBodySchema = z.looseObject({ + client_profile_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), + customer: estimatePurchaseCustomerSchema.optional(), + billing_address: estimatePurchaseBillingAddressSchema.optional(), + purchase_items: estimatePurchasePurchaseItemsSchema.optional(), + item_tiers: estimatePurchaseItemTiersSchema.optional(), + shipping_addresses: estimatePurchaseShippingAddressesSchema.optional(), + discounts: estimatePurchaseDiscountsSchema.optional(), + subscription_info: estimatePurchaseSubscriptionInfoSchema.optional(), + contract_terms: estimatePurchaseContractTermsSchema.optional(), +}); +export { estimatePurchaseBodySchema }; diff --git a/src/validation/quote/convert.validation.ts b/src/validation/quote/convert.validation.ts new file mode 100644 index 0000000..dc94901 --- /dev/null +++ b/src/validation/quote/convert.validation.ts @@ -0,0 +1,18 @@ +// Generated Zod validator: Quote.convert +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const convertQuoteSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + po_number: z.string().max(100).optional(), + auto_close_invoices: z.boolean().optional(), +}); +const convertQuoteBodySchema = z.looseObject({ + invoice_date: z.number().int().optional(), + invoice_immediately: z.boolean().optional(), + create_pending_invoices: z.boolean().optional(), + first_invoice_pending: z.boolean().default(false).optional(), + subscription: convertQuoteSubscriptionSchema.optional(), +}); +export { convertQuoteBodySchema }; diff --git a/src/validation/quote/create_for_charge_items_and_charges.validation.ts b/src/validation/quote/create_for_charge_items_and_charges.validation.ts new file mode 100644 index 0000000..0957e2a --- /dev/null +++ b/src/validation/quote/create_for_charge_items_and_charges.validation.ts @@ -0,0 +1,110 @@ +// Generated Zod validator: Quote.createForChargeItemsAndCharges +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForChargeItemsAndChargesQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createForChargeItemsAndChargesQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createForChargeItemsAndChargesQuoteItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), +}); +const createForChargeItemsAndChargesQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createForChargeItemsAndChargesQuoteChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const createForChargeItemsAndChargesQuoteDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const createForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createForChargeItemsAndChargesQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + customer_id: z.string().max(50), + po_number: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + currency_code: z.string().max(3).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + net_term_days: z.number().int().optional(), + billing_address: + createForChargeItemsAndChargesQuoteBillingAddressSchema.optional(), + shipping_address: + createForChargeItemsAndChargesQuoteShippingAddressSchema.optional(), + item_prices: createForChargeItemsAndChargesQuoteItemPricesSchema.optional(), + item_tiers: createForChargeItemsAndChargesQuoteItemTiersSchema.optional(), + charges: createForChargeItemsAndChargesQuoteChargesSchema.optional(), + discounts: createForChargeItemsAndChargesQuoteDiscountsSchema.optional(), + tax_providers_fields: + createForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema.optional(), +}); +export { createForChargeItemsAndChargesQuoteBodySchema }; diff --git a/src/validation/quote/create_for_onetime_charges.validation.ts b/src/validation/quote/create_for_onetime_charges.validation.ts new file mode 100644 index 0000000..d09b17e --- /dev/null +++ b/src/validation/quote/create_for_onetime_charges.validation.ts @@ -0,0 +1,63 @@ +// Generated Zod validator: Quote.createForOnetimeCharges +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForOnetimeChargesQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createForOnetimeChargesQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const createForOnetimeChargesQuoteChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const createForOnetimeChargesQuoteTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createForOnetimeChargesQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + customer_id: z.string().max(50), + po_number: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + currency_code: z.string().max(3).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + shipping_address: + createForOnetimeChargesQuoteShippingAddressSchema.optional(), + addons: createForOnetimeChargesQuoteAddonsSchema.optional(), + charges: createForOnetimeChargesQuoteChargesSchema.optional(), + tax_providers_fields: + createForOnetimeChargesQuoteTaxProvidersFieldsSchema.optional(), +}); +export { createForOnetimeChargesQuoteBodySchema }; diff --git a/src/validation/quote/create_sub_for_customer_quote.validation.ts b/src/validation/quote/create_sub_for_customer_quote.validation.ts new file mode 100644 index 0000000..d0226cb --- /dev/null +++ b/src/validation/quote/create_sub_for_customer_quote.validation.ts @@ -0,0 +1,115 @@ +// Generated Zod validator: Quote.createSubForCustomerQuote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createSubForCustomerQuoteQuoteSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const createSubForCustomerQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubForCustomerQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createSubForCustomerQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const createSubForCustomerQuoteQuoteEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const createSubForCustomerQuoteQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + subscription: createSubForCustomerQuoteQuoteSubscriptionSchema.optional(), + shipping_address: + createSubForCustomerQuoteQuoteShippingAddressSchema.optional(), + contract_term: createSubForCustomerQuoteQuoteContractTermSchema.optional(), + addons: createSubForCustomerQuoteQuoteAddonsSchema.optional(), + event_based_addons: + createSubForCustomerQuoteQuoteEventBasedAddonsSchema.optional(), +}); +export { createSubForCustomerQuoteQuoteBodySchema }; diff --git a/src/validation/quote/create_sub_items_for_customer_quote.validation.ts b/src/validation/quote/create_sub_items_for_customer_quote.validation.ts new file mode 100644 index 0000000..7860192 --- /dev/null +++ b/src/validation/quote/create_sub_items_for_customer_quote.validation.ts @@ -0,0 +1,173 @@ +// Generated Zod validator: Quote.createSubItemsForCustomerQuote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createSubItemsForCustomerQuoteQuoteSubscriptionSchema = z.looseObject({ + id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), +}); +const createSubItemsForCustomerQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubItemsForCustomerQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createSubItemsForCustomerQuoteQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubItemsForCustomerQuoteQuoteSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const createSubItemsForCustomerQuoteQuoteDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const createSubItemsForCustomerQuoteQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const createSubItemsForCustomerQuoteQuoteCouponsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const createSubItemsForCustomerQuoteQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + billing_start_option: z.enum(['immediately', 'on_specific_date']).optional(), + net_term_days: z.number().int().optional(), + subscription: + createSubItemsForCustomerQuoteQuoteSubscriptionSchema.optional(), + shipping_address: + createSubItemsForCustomerQuoteQuoteShippingAddressSchema.optional(), + contract_term: + createSubItemsForCustomerQuoteQuoteContractTermSchema.optional(), + billing_address: + createSubItemsForCustomerQuoteQuoteBillingAddressSchema.optional(), + subscription_items: + createSubItemsForCustomerQuoteQuoteSubscriptionItemsSchema.optional(), + discounts: createSubItemsForCustomerQuoteQuoteDiscountsSchema.optional(), + item_tiers: createSubItemsForCustomerQuoteQuoteItemTiersSchema.optional(), + coupons: createSubItemsForCustomerQuoteQuoteCouponsSchema.optional(), +}); +export { createSubItemsForCustomerQuoteQuoteBodySchema }; diff --git a/src/validation/quote/delete.validation.ts b/src/validation/quote/delete.validation.ts new file mode 100644 index 0000000..c498273 --- /dev/null +++ b/src/validation/quote/delete.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Quote.delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteQuoteBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { deleteQuoteBodySchema }; diff --git a/src/validation/quote/edit_create_sub_customer_quote_for_items.validation.ts b/src/validation/quote/edit_create_sub_customer_quote_for_items.validation.ts new file mode 100644 index 0000000..7c2aeee --- /dev/null +++ b/src/validation/quote/edit_create_sub_customer_quote_for_items.validation.ts @@ -0,0 +1,178 @@ +// Generated Zod validator: Quote.editCreateSubCustomerQuoteForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const editCreateSubCustomerQuoteForItemsQuoteSubscriptionSchema = z.looseObject( + { + id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + }, +); +const editCreateSubCustomerQuoteForItemsQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editCreateSubCustomerQuoteForItemsQuoteContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const editCreateSubCustomerQuoteForItemsQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editCreateSubCustomerQuoteForItemsQuoteSubscriptionItemsSchema = z.object( + { + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z + .array(z.enum(['plan', 'addon', 'charge']).optional()) + .optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), + }, +); +const editCreateSubCustomerQuoteForItemsQuoteDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const editCreateSubCustomerQuoteForItemsQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const editCreateSubCustomerQuoteForItemsQuoteCouponsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const editCreateSubCustomerQuoteForItemsQuoteBodySchema = z.looseObject({ + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + billing_start_option: z.enum(['immediately', 'on_specific_date']).optional(), + net_term_days: z.number().int().optional(), + subscription: + editCreateSubCustomerQuoteForItemsQuoteSubscriptionSchema.optional(), + shipping_address: + editCreateSubCustomerQuoteForItemsQuoteShippingAddressSchema.optional(), + contract_term: + editCreateSubCustomerQuoteForItemsQuoteContractTermSchema.optional(), + billing_address: + editCreateSubCustomerQuoteForItemsQuoteBillingAddressSchema.optional(), + subscription_items: + editCreateSubCustomerQuoteForItemsQuoteSubscriptionItemsSchema.optional(), + discounts: editCreateSubCustomerQuoteForItemsQuoteDiscountsSchema.optional(), + item_tiers: editCreateSubCustomerQuoteForItemsQuoteItemTiersSchema.optional(), + coupons: editCreateSubCustomerQuoteForItemsQuoteCouponsSchema.optional(), +}); +export { editCreateSubCustomerQuoteForItemsQuoteBodySchema }; diff --git a/src/validation/quote/edit_create_sub_for_customer_quote.validation.ts b/src/validation/quote/edit_create_sub_for_customer_quote.validation.ts new file mode 100644 index 0000000..4659d72 --- /dev/null +++ b/src/validation/quote/edit_create_sub_for_customer_quote.validation.ts @@ -0,0 +1,115 @@ +// Generated Zod validator: Quote.editCreateSubForCustomerQuote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const editCreateSubForCustomerQuoteQuoteSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const editCreateSubForCustomerQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editCreateSubForCustomerQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const editCreateSubForCustomerQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const editCreateSubForCustomerQuoteQuoteEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const editCreateSubForCustomerQuoteQuoteBodySchema = z.looseObject({ + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + subscription: editCreateSubForCustomerQuoteQuoteSubscriptionSchema.optional(), + shipping_address: + editCreateSubForCustomerQuoteQuoteShippingAddressSchema.optional(), + contract_term: + editCreateSubForCustomerQuoteQuoteContractTermSchema.optional(), + addons: editCreateSubForCustomerQuoteQuoteAddonsSchema.optional(), + event_based_addons: + editCreateSubForCustomerQuoteQuoteEventBasedAddonsSchema.optional(), +}); +export { editCreateSubForCustomerQuoteQuoteBodySchema }; diff --git a/src/validation/quote/edit_for_charge_items_and_charges.validation.ts b/src/validation/quote/edit_for_charge_items_and_charges.validation.ts new file mode 100644 index 0000000..96324df --- /dev/null +++ b/src/validation/quote/edit_for_charge_items_and_charges.validation.ts @@ -0,0 +1,108 @@ +// Generated Zod validator: Quote.editForChargeItemsAndCharges +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const editForChargeItemsAndChargesQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editForChargeItemsAndChargesQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editForChargeItemsAndChargesQuoteItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), +}); +const editForChargeItemsAndChargesQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const editForChargeItemsAndChargesQuoteChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const editForChargeItemsAndChargesQuoteDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const editForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const editForChargeItemsAndChargesQuoteBodySchema = z.looseObject({ + po_number: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + currency_code: z.string().max(3).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + net_term_days: z.number().int().optional(), + billing_address: + editForChargeItemsAndChargesQuoteBillingAddressSchema.optional(), + shipping_address: + editForChargeItemsAndChargesQuoteShippingAddressSchema.optional(), + item_prices: editForChargeItemsAndChargesQuoteItemPricesSchema.optional(), + item_tiers: editForChargeItemsAndChargesQuoteItemTiersSchema.optional(), + charges: editForChargeItemsAndChargesQuoteChargesSchema.optional(), + discounts: editForChargeItemsAndChargesQuoteDiscountsSchema.optional(), + tax_providers_fields: + editForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema.optional(), +}); +export { editForChargeItemsAndChargesQuoteBodySchema }; diff --git a/src/validation/quote/edit_one_time_quote.validation.ts b/src/validation/quote/edit_one_time_quote.validation.ts new file mode 100644 index 0000000..bc0a70a --- /dev/null +++ b/src/validation/quote/edit_one_time_quote.validation.ts @@ -0,0 +1,60 @@ +// Generated Zod validator: Quote.editOneTimeQuote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const editOneTimeQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editOneTimeQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const editOneTimeQuoteQuoteChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const editOneTimeQuoteQuoteTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const editOneTimeQuoteQuoteBodySchema = z.looseObject({ + po_number: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + currency_code: z.string().max(3).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + shipping_address: editOneTimeQuoteQuoteShippingAddressSchema.optional(), + addons: editOneTimeQuoteQuoteAddonsSchema.optional(), + charges: editOneTimeQuoteQuoteChargesSchema.optional(), + tax_providers_fields: + editOneTimeQuoteQuoteTaxProvidersFieldsSchema.optional(), +}); +export { editOneTimeQuoteQuoteBodySchema }; diff --git a/src/validation/quote/edit_update_subscription_quote.validation.ts b/src/validation/quote/edit_update_subscription_quote.validation.ts new file mode 100644 index 0000000..09b1447 --- /dev/null +++ b/src/validation/quote/edit_update_subscription_quote.validation.ts @@ -0,0 +1,149 @@ +// Generated Zod validator: Quote.editUpdateSubscriptionQuote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const editUpdateSubscriptionQuoteQuoteSubscriptionSchema = z.object({ + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const editUpdateSubscriptionQuoteQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editUpdateSubscriptionQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editUpdateSubscriptionQuoteQuoteCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), +}); +const editUpdateSubscriptionQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const editUpdateSubscriptionQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const editUpdateSubscriptionQuoteQuoteEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const editUpdateSubscriptionQuoteQuoteBodySchema = z.looseObject({ + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + change_option: z.enum(['immediately', 'specific_date']).optional(), + changes_scheduled_at: z.number().int().optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + subscription: editUpdateSubscriptionQuoteQuoteSubscriptionSchema.optional(), + billing_address: + editUpdateSubscriptionQuoteQuoteBillingAddressSchema.optional(), + shipping_address: + editUpdateSubscriptionQuoteQuoteShippingAddressSchema.optional(), + customer: editUpdateSubscriptionQuoteQuoteCustomerSchema.optional(), + contract_term: editUpdateSubscriptionQuoteQuoteContractTermSchema.optional(), + addons: editUpdateSubscriptionQuoteQuoteAddonsSchema.optional(), + event_based_addons: + editUpdateSubscriptionQuoteQuoteEventBasedAddonsSchema.optional(), +}); +export { editUpdateSubscriptionQuoteQuoteBodySchema }; diff --git a/src/validation/quote/edit_update_subscription_quote_for_items.validation.ts b/src/validation/quote/edit_update_subscription_quote_for_items.validation.ts new file mode 100644 index 0000000..09c9c26 --- /dev/null +++ b/src/validation/quote/edit_update_subscription_quote_for_items.validation.ts @@ -0,0 +1,191 @@ +// Generated Zod validator: Quote.editUpdateSubscriptionQuoteForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const editUpdateSubscriptionQuoteForItemsQuoteSubscriptionSchema = + z.looseObject({ + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + }); +const editUpdateSubscriptionQuoteForItemsQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editUpdateSubscriptionQuoteForItemsQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const editUpdateSubscriptionQuoteForItemsQuoteCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), +}); +const editUpdateSubscriptionQuoteForItemsQuoteContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const editUpdateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema = + z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z + .array(z.enum(['plan', 'addon', 'charge']).optional()) + .optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), + }); +const editUpdateSubscriptionQuoteForItemsQuoteDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const editUpdateSubscriptionQuoteForItemsQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const editUpdateSubscriptionQuoteForItemsQuoteCouponsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const editUpdateSubscriptionQuoteForItemsQuoteBodySchema = z.looseObject({ + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + change_option: z.enum(['immediately', 'specific_date']).optional(), + changes_scheduled_at: z.number().int().optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + net_term_days: z.number().int().optional(), + subscription: + editUpdateSubscriptionQuoteForItemsQuoteSubscriptionSchema.optional(), + billing_address: + editUpdateSubscriptionQuoteForItemsQuoteBillingAddressSchema.optional(), + shipping_address: + editUpdateSubscriptionQuoteForItemsQuoteShippingAddressSchema.optional(), + customer: editUpdateSubscriptionQuoteForItemsQuoteCustomerSchema.optional(), + contract_term: + editUpdateSubscriptionQuoteForItemsQuoteContractTermSchema.optional(), + subscription_items: + editUpdateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema.optional(), + discounts: editUpdateSubscriptionQuoteForItemsQuoteDiscountsSchema.optional(), + item_tiers: + editUpdateSubscriptionQuoteForItemsQuoteItemTiersSchema.optional(), + coupons: editUpdateSubscriptionQuoteForItemsQuoteCouponsSchema.optional(), +}); +export { editUpdateSubscriptionQuoteForItemsQuoteBodySchema }; diff --git a/src/validation/quote/extend_expiry_date.validation.ts b/src/validation/quote/extend_expiry_date.validation.ts new file mode 100644 index 0000000..9836adc --- /dev/null +++ b/src/validation/quote/extend_expiry_date.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Quote.extendExpiryDate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const extendExpiryDateQuoteBodySchema = z.looseObject({ + valid_till: z.number().int(), +}); +export { extendExpiryDateQuoteBodySchema }; diff --git a/src/validation/quote/pdf.validation.ts b/src/validation/quote/pdf.validation.ts new file mode 100644 index 0000000..e966c85 --- /dev/null +++ b/src/validation/quote/pdf.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Quote.pdf +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const pdfQuoteBodySchema = z.looseObject({ + consolidated_view: z.boolean().default(false).optional(), + disposition_type: z.enum(['attachment', 'inline']).optional(), +}); +export { pdfQuoteBodySchema }; diff --git a/src/validation/quote/quote_line_groups_for_quote.validation.ts b/src/validation/quote/quote_line_groups_for_quote.validation.ts new file mode 100644 index 0000000..c46e950 --- /dev/null +++ b/src/validation/quote/quote_line_groups_for_quote.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Quote.quoteLineGroupsForQuote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const quoteLineGroupsForQuoteQuoteBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { quoteLineGroupsForQuoteQuoteBodySchema }; diff --git a/src/validation/quote/update_signature_status.validation.ts b/src/validation/quote/update_signature_status.validation.ts new file mode 100644 index 0000000..77d8a47 --- /dev/null +++ b/src/validation/quote/update_signature_status.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Quote.updateSignatureStatus +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateSignatureStatusQuoteCpqQuoteSignatureSchema = z.object({ + status: z + .enum(['draft', 'active', 'signed', 'expired', 'cancelled', 'declined']) + .optional(), +}); +const updateSignatureStatusQuoteBodySchema = z.looseObject({ + cpq_quote_signature: + updateSignatureStatusQuoteCpqQuoteSignatureSchema.optional(), +}); +export { updateSignatureStatusQuoteBodySchema }; diff --git a/src/validation/quote/update_status.validation.ts b/src/validation/quote/update_status.validation.ts new file mode 100644 index 0000000..1bec015 --- /dev/null +++ b/src/validation/quote/update_status.validation.ts @@ -0,0 +1,16 @@ +// Generated Zod validator: Quote.updateStatus +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateStatusQuoteBodySchema = z.looseObject({ + status: z.enum([ + 'open', + 'accepted', + 'declined', + 'proposed', + 'voided', + 'closed', + ]), + comment: z.string().max(300).optional(), +}); +export { updateStatusQuoteBodySchema }; diff --git a/src/validation/quote/update_subscription_quote.validation.ts b/src/validation/quote/update_subscription_quote.validation.ts new file mode 100644 index 0000000..6d68ada --- /dev/null +++ b/src/validation/quote/update_subscription_quote.validation.ts @@ -0,0 +1,150 @@ +// Generated Zod validator: Quote.updateSubscriptionQuote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateSubscriptionQuoteQuoteSubscriptionSchema = z.object({ + id: z.string().max(50), + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const updateSubscriptionQuoteQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionQuoteQuoteCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), +}); +const updateSubscriptionQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const updateSubscriptionQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const updateSubscriptionQuoteQuoteEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const updateSubscriptionQuoteQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + change_option: z.enum(['immediately', 'specific_date']).optional(), + changes_scheduled_at: z.number().int().optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + subscription: updateSubscriptionQuoteQuoteSubscriptionSchema.optional(), + billing_address: updateSubscriptionQuoteQuoteBillingAddressSchema.optional(), + shipping_address: + updateSubscriptionQuoteQuoteShippingAddressSchema.optional(), + customer: updateSubscriptionQuoteQuoteCustomerSchema.optional(), + contract_term: updateSubscriptionQuoteQuoteContractTermSchema.optional(), + addons: updateSubscriptionQuoteQuoteAddonsSchema.optional(), + event_based_addons: + updateSubscriptionQuoteQuoteEventBasedAddonsSchema.optional(), +}); +export { updateSubscriptionQuoteQuoteBodySchema }; diff --git a/src/validation/quote/update_subscription_quote_for_items.validation.ts b/src/validation/quote/update_subscription_quote_for_items.validation.ts new file mode 100644 index 0000000..832b0f4 --- /dev/null +++ b/src/validation/quote/update_subscription_quote_for_items.validation.ts @@ -0,0 +1,188 @@ +// Generated Zod validator: Quote.updateSubscriptionQuoteForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateSubscriptionQuoteForItemsQuoteSubscriptionSchema = z.looseObject({ + id: z.string().max(50), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const updateSubscriptionQuoteForItemsQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionQuoteForItemsQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionQuoteForItemsQuoteCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), +}); +const updateSubscriptionQuoteForItemsQuoteContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const updateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const updateSubscriptionQuoteForItemsQuoteDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const updateSubscriptionQuoteForItemsQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const updateSubscriptionQuoteForItemsQuoteCouponsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const updateSubscriptionQuoteForItemsQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + change_option: z.enum(['immediately', 'specific_date']).optional(), + changes_scheduled_at: z.number().int().optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + net_term_days: z.number().int().optional(), + subscription: + updateSubscriptionQuoteForItemsQuoteSubscriptionSchema.optional(), + billing_address: + updateSubscriptionQuoteForItemsQuoteBillingAddressSchema.optional(), + shipping_address: + updateSubscriptionQuoteForItemsQuoteShippingAddressSchema.optional(), + customer: updateSubscriptionQuoteForItemsQuoteCustomerSchema.optional(), + contract_term: + updateSubscriptionQuoteForItemsQuoteContractTermSchema.optional(), + subscription_items: + updateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema.optional(), + discounts: updateSubscriptionQuoteForItemsQuoteDiscountsSchema.optional(), + item_tiers: updateSubscriptionQuoteForItemsQuoteItemTiersSchema.optional(), + coupons: updateSubscriptionQuoteForItemsQuoteCouponsSchema.optional(), +}); +export { updateSubscriptionQuoteForItemsQuoteBodySchema }; diff --git a/src/validation/ramp/create_for_subscription.validation.ts b/src/validation/ramp/create_for_subscription.validation.ts new file mode 100644 index 0000000..0218863 --- /dev/null +++ b/src/validation/ramp/create_for_subscription.validation.ts @@ -0,0 +1,112 @@ +// Generated Zod validator: Ramp.createForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForSubscriptionRampContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), + renewal_billing_cycles: z.number().int().optional(), +}); +const createForSubscriptionRampItemsToAddSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const createForSubscriptionRampItemsToUpdateSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const createForSubscriptionRampItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createForSubscriptionRampCouponsToAddSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const createForSubscriptionRampDiscountsToAddSchema = z.object({ + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const createForSubscriptionRampBodySchema = z.looseObject({ + effective_from: z.number().int(), + description: z.string().max(250).optional(), + coupons_to_remove: z.array(z.string().max(100).optional()).optional(), + discounts_to_remove: z.array(z.string().max(100).optional()).optional(), + items_to_remove: z.array(z.string().max(100).optional()).optional(), + contract_term: createForSubscriptionRampContractTermSchema.optional(), + items_to_add: createForSubscriptionRampItemsToAddSchema.optional(), + items_to_update: createForSubscriptionRampItemsToUpdateSchema.optional(), + item_tiers: createForSubscriptionRampItemTiersSchema.optional(), + coupons_to_add: createForSubscriptionRampCouponsToAddSchema.optional(), + discounts_to_add: createForSubscriptionRampDiscountsToAddSchema.optional(), +}); +export { createForSubscriptionRampBodySchema }; diff --git a/src/validation/ramp/update.validation.ts b/src/validation/ramp/update.validation.ts new file mode 100644 index 0000000..9678415 --- /dev/null +++ b/src/validation/ramp/update.validation.ts @@ -0,0 +1,112 @@ +// Generated Zod validator: Ramp.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateRampContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), + renewal_billing_cycles: z.number().int().optional(), +}); +const updateRampItemsToAddSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const updateRampItemsToUpdateSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const updateRampItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const updateRampCouponsToAddSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const updateRampDiscountsToAddSchema = z.object({ + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const updateRampBodySchema = z.looseObject({ + effective_from: z.number().int(), + description: z.string().max(250).optional(), + coupons_to_remove: z.array(z.string().max(100).optional()).optional(), + discounts_to_remove: z.array(z.string().max(100).optional()).optional(), + items_to_remove: z.array(z.string().max(100).optional()).optional(), + contract_term: updateRampContractTermSchema.optional(), + items_to_add: updateRampItemsToAddSchema.optional(), + items_to_update: updateRampItemsToUpdateSchema.optional(), + item_tiers: updateRampItemTiersSchema.optional(), + coupons_to_add: updateRampCouponsToAddSchema.optional(), + discounts_to_add: updateRampDiscountsToAddSchema.optional(), +}); +export { updateRampBodySchema }; diff --git a/src/validation/recorded_purchase/create.validation.ts b/src/validation/recorded_purchase/create.validation.ts new file mode 100644 index 0000000..b03ad3c --- /dev/null +++ b/src/validation/recorded_purchase/create.validation.ts @@ -0,0 +1,29 @@ +// Generated Zod validator: RecordedPurchase.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createRecordedPurchaseCustomerSchema = z.object({ + id: z.string().max(50), +}); +const createRecordedPurchaseAppleAppStoreSchema = z.object({ + transaction_id: z.string().max(100).optional(), + receipt: z.string().max(65000).optional(), + product_id: z.string().max(255).optional(), +}); +const createRecordedPurchaseGooglePlayStoreSchema = z.object({ + purchase_token: z.string().max(500).optional(), + product_id: z.string().max(255).optional(), + order_id: z.string().max(100).optional(), +}); +const createRecordedPurchaseOmnichannelSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), +}); +const createRecordedPurchaseBodySchema = z.looseObject({ + app_id: z.string().max(100), + customer: createRecordedPurchaseCustomerSchema.optional(), + apple_app_store: createRecordedPurchaseAppleAppStoreSchema.optional(), + google_play_store: createRecordedPurchaseGooglePlayStoreSchema.optional(), + omnichannel_subscription: + createRecordedPurchaseOmnichannelSubscriptionSchema.optional(), +}); +export { createRecordedPurchaseBodySchema }; diff --git a/src/validation/resource_migration/retrieve_latest.validation.ts b/src/validation/resource_migration/retrieve_latest.validation.ts new file mode 100644 index 0000000..6d31005 --- /dev/null +++ b/src/validation/resource_migration/retrieve_latest.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: ResourceMigration.retrieveLatest +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveLatestResourceMigrationBodySchema = z.looseObject({ + from_site: z.string().max(50).min(4), + entity_type: z.enum(['customer']), + entity_id: z.string().max(100), +}); +export { retrieveLatestResourceMigrationBodySchema }; diff --git a/src/validation/site_migration_detail/list.validation.ts b/src/validation/site_migration_detail/list.validation.ts new file mode 100644 index 0000000..604b75c --- /dev/null +++ b/src/validation/site_migration_detail/list.validation.ts @@ -0,0 +1,78 @@ +// Generated Zod validator: SiteMigrationDetail.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listSiteMigrationDetailEntityIdAtOtherSiteSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listSiteMigrationDetailOtherSiteNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listSiteMigrationDetailEntityIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listSiteMigrationDetailEntityTypeSchema = z.object({ + is: z + .enum([ + 'customer', + 'subscription', + 'invoice', + 'credit_note', + 'transaction', + 'order', + ]) + .optional(), + is_not: z + .enum([ + 'customer', + 'subscription', + 'invoice', + 'credit_note', + 'transaction', + 'order', + ]) + .optional(), + in: z + .enum([ + 'customer', + 'subscription', + 'invoice', + 'credit_note', + 'transaction', + 'order', + ]) + .optional(), + not_in: z + .enum([ + 'customer', + 'subscription', + 'invoice', + 'credit_note', + 'transaction', + 'order', + ]) + .optional(), +}); +const listSiteMigrationDetailStatusSchema = z.object({ + is: z.enum(['moved_in', 'moved_out', 'moving_out']).optional(), + is_not: z.enum(['moved_in', 'moved_out', 'moving_out']).optional(), + in: z.enum(['moved_in', 'moved_out', 'moving_out']).optional(), + not_in: z.enum(['moved_in', 'moved_out', 'moving_out']).optional(), +}); +const listSiteMigrationDetailBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + entity_id_at_other_site: + listSiteMigrationDetailEntityIdAtOtherSiteSchema.optional(), + other_site_name: listSiteMigrationDetailOtherSiteNameSchema.optional(), + entity_id: listSiteMigrationDetailEntityIdSchema.optional(), + entity_type: listSiteMigrationDetailEntityTypeSchema.optional(), + status: listSiteMigrationDetailStatusSchema.optional(), +}); +export { listSiteMigrationDetailBodySchema }; diff --git a/src/validation/subscription/add_charge_at_term_end.validation.ts b/src/validation/subscription/add_charge_at_term_end.validation.ts new file mode 100644 index 0000000..8da3666 --- /dev/null +++ b/src/validation/subscription/add_charge_at_term_end.validation.ts @@ -0,0 +1,17 @@ +// Generated Zod validator: Subscription.addChargeAtTermEnd +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const addChargeAtTermEndSubscriptionBodySchema = z.looseObject({ + amount: z.number().int().min(1).optional(), + description: z.string().max(250), + amount_in_decimal: z.string().max(39).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +export { addChargeAtTermEndSubscriptionBodySchema }; diff --git a/src/validation/subscription/cancel.validation.ts b/src/validation/subscription/cancel.validation.ts new file mode 100644 index 0000000..8c0ee4f --- /dev/null +++ b/src/validation/subscription/cancel.validation.ts @@ -0,0 +1,46 @@ +// Generated Zod validator: Subscription.cancel +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const cancelSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), +}); +const cancelSubscriptionBodySchema = z.looseObject({ + cancel_option: z + .enum([ + 'immediately', + 'end_of_term', + 'specific_date', + 'end_of_billing_term', + ]) + .optional(), + end_of_term: z.boolean().default(false).optional(), + cancel_at: z.number().int().optional(), + credit_option_for_current_term_charges: z + .enum(['none', 'prorate', 'full']) + .optional(), + unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), + account_receivables_handling: z + .enum(['no_action', 'schedule_payment_collection', 'write_off']) + .optional(), + refundable_credits_handling: z + .enum(['no_action', 'schedule_refund']) + .optional(), + contract_term_cancel_option: z + .enum([ + 'terminate_immediately', + 'end_of_contract_term', + 'specific_date', + 'end_of_subscription_billing_term', + ]) + .optional(), + invoice_date: z.number().int().optional(), + cancel_reason_code: z.string().max(100).optional(), + event_based_addons: cancelSubscriptionEventBasedAddonsSchema.optional(), +}); +export { cancelSubscriptionBodySchema }; diff --git a/src/validation/subscription/cancel_for_items.validation.ts b/src/validation/subscription/cancel_for_items.validation.ts new file mode 100644 index 0000000..8e377a2 --- /dev/null +++ b/src/validation/subscription/cancel_for_items.validation.ts @@ -0,0 +1,50 @@ +// Generated Zod validator: Subscription.cancelForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const cancelForItemsSubscriptionSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), +}); +const cancelForItemsSubscriptionBodySchema = z.looseObject({ + cancel_option: z + .enum([ + 'immediately', + 'end_of_term', + 'specific_date', + 'end_of_billing_term', + ]) + .optional(), + end_of_term: z.boolean().default(false).optional(), + cancel_at: z.number().int().optional(), + credit_option_for_current_term_charges: z + .enum(['none', 'prorate', 'full']) + .optional(), + unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), + account_receivables_handling: z + .enum(['no_action', 'schedule_payment_collection', 'write_off']) + .optional(), + refundable_credits_handling: z + .enum(['no_action', 'schedule_refund']) + .optional(), + contract_term_cancel_option: z + .enum([ + 'terminate_immediately', + 'end_of_contract_term', + 'specific_date', + 'end_of_subscription_billing_term', + ]) + .optional(), + invoice_date: z.number().int().optional(), + cancel_reason_code: z.string().max(100).optional(), + decommissioned: z.boolean().default(false).optional(), + subscription_items: + cancelForItemsSubscriptionSubscriptionItemsSchema.optional(), +}); +export { cancelForItemsSubscriptionBodySchema }; diff --git a/src/validation/subscription/change_term_end.validation.ts b/src/validation/subscription/change_term_end.validation.ts new file mode 100644 index 0000000..6bf9654 --- /dev/null +++ b/src/validation/subscription/change_term_end.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: Subscription.changeTermEnd +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const changeTermEndSubscriptionBodySchema = z.looseObject({ + term_ends_at: z.number().int(), + prorate: z.boolean().optional(), + invoice_immediately: z.boolean().optional(), +}); +export { changeTermEndSubscriptionBodySchema }; diff --git a/src/validation/subscription/charge_addon_at_term_end.validation.ts b/src/validation/subscription/charge_addon_at_term_end.validation.ts new file mode 100644 index 0000000..e84a3aa --- /dev/null +++ b/src/validation/subscription/charge_addon_at_term_end.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Subscription.chargeAddonAtTermEnd +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const chargeAddonAtTermEndSubscriptionBodySchema = z.looseObject({ + addon_id: z.string().max(100), + addon_quantity: z.number().int().min(1).optional(), + addon_unit_price: z.number().int().min(0).optional(), + addon_quantity_in_decimal: z.string().max(33).optional(), + addon_unit_price_in_decimal: z.string().max(39).optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +export { chargeAddonAtTermEndSubscriptionBodySchema }; diff --git a/src/validation/subscription/charge_future_renewals.validation.ts b/src/validation/subscription/charge_future_renewals.validation.ts new file mode 100644 index 0000000..0a40e99 --- /dev/null +++ b/src/validation/subscription/charge_future_renewals.validation.ts @@ -0,0 +1,28 @@ +// Generated Zod validator: Subscription.chargeFutureRenewals +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const chargeFutureRenewalsSubscriptionFixedIntervalScheduleSchema = z.object({ + number_of_occurrences: z.number().int().min(1).optional(), + days_before_renewal: z.number().int().min(1).optional(), + end_schedule_on: z + .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) + .optional(), + end_date: z.number().int().optional(), +}); +const chargeFutureRenewalsSubscriptionSpecificDatesScheduleSchema = z.object({ + terms_to_charge: z.array(z.number().int().optional()).optional(), + date: z.array(z.number().int().optional()).optional(), +}); +const chargeFutureRenewalsSubscriptionBodySchema = z.looseObject({ + terms_to_charge: z.number().int().min(1).optional(), + invoice_immediately: z.boolean().optional(), + schedule_type: z + .enum(['immediate', 'specific_dates', 'fixed_intervals']) + .optional(), + fixed_interval_schedule: + chargeFutureRenewalsSubscriptionFixedIntervalScheduleSchema.optional(), + specific_dates_schedule: + chargeFutureRenewalsSubscriptionSpecificDatesScheduleSchema.optional(), +}); +export { chargeFutureRenewalsSubscriptionBodySchema }; diff --git a/src/validation/subscription/contract_terms_for_subscription.validation.ts b/src/validation/subscription/contract_terms_for_subscription.validation.ts new file mode 100644 index 0000000..5b18426 --- /dev/null +++ b/src/validation/subscription/contract_terms_for_subscription.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: Subscription.contractTermsForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const contractTermsForSubscriptionSubscriptionSortBySchema = z.looseObject({ + asc: z.enum(['created_at']).optional(), + desc: z.enum(['created_at']).optional(), +}); +const contractTermsForSubscriptionSubscriptionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + sort_by: contractTermsForSubscriptionSubscriptionSortBySchema.optional(), +}); +export { contractTermsForSubscriptionSubscriptionBodySchema }; diff --git a/src/validation/subscription/create.validation.ts b/src/validation/subscription/create.validation.ts new file mode 100644 index 0000000..8bb766f --- /dev/null +++ b/src/validation/subscription/create.validation.ts @@ -0,0 +1,506 @@ +// Generated Zod validator: Subscription.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createSubscriptionMetaDataSchema = z.looseObject({}); +const createSubscriptionCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + net_term_days: z.number().int().optional(), + taxjar_exemption_category: z + .enum(['wholesale', 'government', 'other']) + .optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + allow_direct_debit: z.boolean().default(false).optional(), + consolidated_invoicing: z.boolean().optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + registered_for_gst: z.boolean().optional(), + business_customer_without_vat_number: z.boolean().optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), +}); +const createSubscriptionAdditionalInformationSchema = z.looseObject({}); +const createSubscriptionCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: + createSubscriptionAdditionalInformationSchema.optional(), +}); +const createSubscriptionBillingAddressSchema = z.looseObject({}); +const createSubscriptionBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + issuing_country: z.string().max(50).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: createSubscriptionBillingAddressSchema.optional(), +}); +const createSubscriptionPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + createSubscriptionAdditionalInformationSchema.optional(), +}); +const createSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + createSubscriptionAdditionalInformationSchema.optional(), +}); +const createSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const createSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createSubscriptionEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const createSubscriptionTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const createSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const createSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const createSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + token_id: z.string().max(40).optional(), + affiliate_token: z.string().max(250).optional(), + created_from_ip: z.string().max(50).optional(), + invoice_notes: z.string().max(2000).optional(), + invoice_date: z.number().int().optional(), + meta_data: createSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + client_profile_id: z.string().max(50).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + customer: createSubscriptionCustomerSchema.optional(), + card: createSubscriptionCardSchema.optional(), + bank_account: createSubscriptionBankAccountSchema.optional(), + payment_method: createSubscriptionPaymentMethodSchema.optional(), + payment_intent: createSubscriptionPaymentIntentSchema.optional(), + billing_address: createSubscriptionBillingAddressSchema.optional(), + shipping_address: createSubscriptionShippingAddressSchema.optional(), + statement_descriptor: createSubscriptionStatementDescriptorSchema.optional(), + contract_term: createSubscriptionContractTermSchema.optional(), + entity_identifiers: createSubscriptionEntityIdentifiersSchema.optional(), + tax_providers_fields: createSubscriptionTaxProvidersFieldsSchema.optional(), + addons: createSubscriptionAddonsSchema.optional(), + event_based_addons: createSubscriptionEventBasedAddonsSchema.optional(), + coupons: createSubscriptionCouponsSchema.optional(), +}); +export { createSubscriptionBodySchema }; diff --git a/src/validation/subscription/create_for_customer.validation.ts b/src/validation/subscription/create_for_customer.validation.ts new file mode 100644 index 0000000..f322c7e --- /dev/null +++ b/src/validation/subscription/create_for_customer.validation.ts @@ -0,0 +1,197 @@ +// Generated Zod validator: Subscription.createForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createForCustomerSubscriptionMetaDataSchema = z.looseObject({}); +const createForCustomerSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createForCustomerSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const createForCustomerSubscriptionAdditionalInformationSchema = z.looseObject( + {}, +); +const createForCustomerSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + createForCustomerSubscriptionAdditionalInformationSchema.optional(), +}); +const createForCustomerSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createForCustomerSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const createForCustomerSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const createForCustomerSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const createForCustomerSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + payment_source_id: z.string().max(40).optional(), + override_relationship: z.boolean().optional(), + invoice_notes: z.string().max(2000).optional(), + invoice_date: z.number().int().optional(), + meta_data: createForCustomerSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + replace_primary_payment_source: z.boolean().default(true).optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + shipping_address: + createForCustomerSubscriptionShippingAddressSchema.optional(), + statement_descriptor: + createForCustomerSubscriptionStatementDescriptorSchema.optional(), + payment_intent: createForCustomerSubscriptionPaymentIntentSchema.optional(), + contract_term: createForCustomerSubscriptionContractTermSchema.optional(), + addons: createForCustomerSubscriptionAddonsSchema.optional(), + event_based_addons: + createForCustomerSubscriptionEventBasedAddonsSchema.optional(), + coupons: createForCustomerSubscriptionCouponsSchema.optional(), +}); +export { createForCustomerSubscriptionBodySchema }; diff --git a/src/validation/subscription/create_with_items.validation.ts b/src/validation/subscription/create_with_items.validation.ts new file mode 100644 index 0000000..3a85a02 --- /dev/null +++ b/src/validation/subscription/create_with_items.validation.ts @@ -0,0 +1,230 @@ +// Generated Zod validator: Subscription.createWithItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createWithItemsSubscriptionMetaDataSchema = z.looseObject({}); +const createWithItemsSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const createWithItemsSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const createWithItemsSubscriptionAdditionalInformationSchema = z.looseObject( + {}, +); +const createWithItemsSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + createWithItemsSubscriptionAdditionalInformationSchema.optional(), +}); +const createWithItemsSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + contract_start: z.number().int().optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const createWithItemsSubscriptionBillingOverrideSchema = z.object({ + max_excess_payment_usage: z.number().int().min(-1).optional(), + max_refundable_credits_usage: z.number().int().min(-1).optional(), +}); +const createWithItemsSubscriptionSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + usage_accumulation_reset_frequency: z + .array(z.enum(['never', 'subscription_billing_frequency']).optional()) + .optional(), +}); +const createWithItemsSubscriptionDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const createWithItemsSubscriptionItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createWithItemsSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const createWithItemsSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + business_entity_id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + net_term_days: z.number().int().optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + payment_source_id: z.string().max(40).optional(), + override_relationship: z.boolean().optional(), + invoice_notes: z.string().max(2000).optional(), + invoice_date: z.number().int().optional(), + meta_data: createWithItemsSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + replace_primary_payment_source: z.boolean().default(true).optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + create_pending_invoices: z.boolean().optional(), + auto_close_invoices: z.boolean().optional(), + first_invoice_pending: z.boolean().default(false).optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + shipping_address: createWithItemsSubscriptionShippingAddressSchema.optional(), + statement_descriptor: + createWithItemsSubscriptionStatementDescriptorSchema.optional(), + payment_intent: createWithItemsSubscriptionPaymentIntentSchema.optional(), + contract_term: createWithItemsSubscriptionContractTermSchema.optional(), + billing_override: createWithItemsSubscriptionBillingOverrideSchema.optional(), + subscription_items: + createWithItemsSubscriptionSubscriptionItemsSchema.optional(), + discounts: createWithItemsSubscriptionDiscountsSchema.optional(), + item_tiers: createWithItemsSubscriptionItemTiersSchema.optional(), + coupons: createWithItemsSubscriptionCouponsSchema.optional(), +}); +export { createWithItemsSubscriptionBodySchema }; diff --git a/src/validation/subscription/edit_advance_invoice_schedule.validation.ts b/src/validation/subscription/edit_advance_invoice_schedule.validation.ts new file mode 100644 index 0000000..1bd0c96 --- /dev/null +++ b/src/validation/subscription/edit_advance_invoice_schedule.validation.ts @@ -0,0 +1,28 @@ +// Generated Zod validator: Subscription.editAdvanceInvoiceSchedule +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const editAdvanceInvoiceScheduleSubscriptionFixedIntervalScheduleSchema = + z.object({ + number_of_occurrences: z.number().int().min(1).optional(), + days_before_renewal: z.number().int().min(1).optional(), + end_schedule_on: z + .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) + .optional(), + end_date: z.number().int().optional(), + }); +const editAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema = + z.object({ + id: z.array(z.string().max(50).optional()).optional(), + terms_to_charge: z.array(z.number().int().optional()).optional(), + date: z.array(z.number().int().optional()).optional(), + }); +const editAdvanceInvoiceScheduleSubscriptionBodySchema = z.looseObject({ + terms_to_charge: z.number().int().min(1).optional(), + schedule_type: z.enum(['specific_dates', 'fixed_intervals']).optional(), + fixed_interval_schedule: + editAdvanceInvoiceScheduleSubscriptionFixedIntervalScheduleSchema.optional(), + specific_dates_schedule: + editAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema.optional(), +}); +export { editAdvanceInvoiceScheduleSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_contract_term.validation.ts b/src/validation/subscription/import_contract_term.validation.ts new file mode 100644 index 0000000..99fcd27 --- /dev/null +++ b/src/validation/subscription/import_contract_term.validation.ts @@ -0,0 +1,30 @@ +// Generated Zod validator: Subscription.importContractTerm +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importContractTermSubscriptionContractTermSchema = z.object({ + id: z.string().max(50).optional(), + created_at: z.number().int().optional(), + contract_start: z.number().int().optional(), + contract_end: z.number().int().optional(), + status: z.enum(['active', 'completed', 'cancelled', 'terminated']).optional(), + total_amount_raised: z.number().int().min(0).optional(), + total_amount_raised_before_tax: z.number().int().min(0).optional(), + total_contract_value: z.number().int().min(0).optional(), + total_contract_value_before_tax: z.number().int().min(0).optional(), + billing_cycle: z.number().int().min(0).optional(), + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const importContractTermSubscriptionBodySchema = z.looseObject({ + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + contract_term: importContractTermSubscriptionContractTermSchema.optional(), +}); +export { importContractTermSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_for_customer.validation.ts b/src/validation/subscription/import_for_customer.validation.ts new file mode 100644 index 0000000..f1845d9 --- /dev/null +++ b/src/validation/subscription/import_for_customer.validation.ts @@ -0,0 +1,144 @@ +// Generated Zod validator: Subscription.importForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importForCustomerSubscriptionMetaDataSchema = z.looseObject({}); +const importForCustomerSubscriptionContractTermSchema = z.object({ + id: z.string().max(50).optional(), + created_at: z.number().int().optional(), + contract_start: z.number().int().optional(), + billing_cycle: z.number().int().min(0).optional(), + total_amount_raised: z.number().int().min(0).optional(), + total_amount_raised_before_tax: z.number().int().min(0).optional(), + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const importForCustomerSubscriptionTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + reference_number: z.string().max(100).optional(), + date: z.number().int().optional(), +}); +const importForCustomerSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const importForCustomerSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), +}); +const importForCustomerSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), +}); +const importForCustomerSubscriptionChargedEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + last_charged_at: z.array(z.number().int().optional()).optional(), +}); +const importForCustomerSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const importForCustomerSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + auto_collection: z.enum(['on', 'off']).optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + payment_source_id: z.string().max(40).optional(), + status: z.enum([ + 'future', + 'in_trial', + 'active', + 'non_renewing', + 'paused', + 'cancelled', + 'transferred', + ]), + current_term_end: z.number().int().optional(), + current_term_start: z.number().int().optional(), + trial_start: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + started_at: z.number().int().optional(), + activated_at: z.number().int().optional(), + pause_date: z.number().int().optional(), + resume_date: z.number().int().optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + create_current_term_invoice: z.boolean().default(false).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: importForCustomerSubscriptionMetaDataSchema.optional(), + contract_term: importForCustomerSubscriptionContractTermSchema.optional(), + transaction: importForCustomerSubscriptionTransactionSchema.optional(), + shipping_address: + importForCustomerSubscriptionShippingAddressSchema.optional(), + addons: importForCustomerSubscriptionAddonsSchema.optional(), + event_based_addons: + importForCustomerSubscriptionEventBasedAddonsSchema.optional(), + charged_event_based_addons: + importForCustomerSubscriptionChargedEventBasedAddonsSchema.optional(), + coupons: importForCustomerSubscriptionCouponsSchema.optional(), +}); +export { importForCustomerSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_for_items.validation.ts b/src/validation/subscription/import_for_items.validation.ts new file mode 100644 index 0000000..5237969 --- /dev/null +++ b/src/validation/subscription/import_for_items.validation.ts @@ -0,0 +1,168 @@ +// Generated Zod validator: Subscription.importForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importForItemsSubscriptionMetaDataSchema = z.looseObject({}); +const importForItemsSubscriptionContractTermSchema = z.object({ + id: z.string().max(50).optional(), + created_at: z.number().int().optional(), + contract_start: z.number().int().optional(), + billing_cycle: z.number().int().min(0).optional(), + total_amount_raised: z.number().int().min(0).optional(), + total_amount_raised_before_tax: z.number().int().min(0).optional(), + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const importForItemsSubscriptionTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + reference_number: z.string().max(100).optional(), + date: z.number().int().optional(), +}); +const importForItemsSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const importForItemsSubscriptionSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), +}); +const importForItemsSubscriptionDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const importForItemsSubscriptionChargedItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + last_charged_at: z.array(z.number().int().optional()).optional(), +}); +const importForItemsSubscriptionItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const importForItemsSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const importForItemsSubscriptionBodySchema = z.looseObject({ + exhausted_coupon_ids: z.array(z.string().max(100).optional()).optional(), + id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + net_term_days: z.number().int().optional(), + start_date: z.number().int().optional(), + auto_collection: z.enum(['on', 'off']).optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + payment_source_id: z.string().max(40).optional(), + status: z.enum([ + 'future', + 'in_trial', + 'active', + 'non_renewing', + 'paused', + 'cancelled', + 'transferred', + ]), + current_term_end: z.number().int().optional(), + current_term_start: z.number().int().optional(), + trial_start: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + started_at: z.number().int().optional(), + activated_at: z.number().int().optional(), + pause_date: z.number().int().optional(), + resume_date: z.number().int().optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + create_current_term_invoice: z.boolean().default(false).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: importForItemsSubscriptionMetaDataSchema.optional(), + cancel_reason_code: z.string().max(100).optional(), + create_pending_invoices: z.boolean().optional(), + auto_close_invoices: z.boolean().optional(), + contract_term: importForItemsSubscriptionContractTermSchema.optional(), + transaction: importForItemsSubscriptionTransactionSchema.optional(), + shipping_address: importForItemsSubscriptionShippingAddressSchema.optional(), + subscription_items: + importForItemsSubscriptionSubscriptionItemsSchema.optional(), + discounts: importForItemsSubscriptionDiscountsSchema.optional(), + charged_items: importForItemsSubscriptionChargedItemsSchema.optional(), + item_tiers: importForItemsSubscriptionItemTiersSchema.optional(), + coupons: importForItemsSubscriptionCouponsSchema.optional(), +}); +export { importForItemsSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_subscription.validation.ts b/src/validation/subscription/import_subscription.validation.ts new file mode 100644 index 0000000..06baf95 --- /dev/null +++ b/src/validation/subscription/import_subscription.validation.ts @@ -0,0 +1,417 @@ +// Generated Zod validator: Subscription.importSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importSubscriptionSubscriptionMetaDataSchema = z.looseObject({}); +const importSubscriptionSubscriptionCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + net_term_days: z.number().int().optional(), + taxjar_exemption_category: z + .enum(['wholesale', 'government', 'other']) + .optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), + auto_collection: z.enum(['on', 'off']).optional(), + allow_direct_debit: z.boolean().default(false).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), +}); +const importSubscriptionSubscriptionContractTermSchema = z.object({ + id: z.string().max(50).optional(), + created_at: z.number().int().optional(), + contract_start: z.number().int().optional(), + billing_cycle: z.number().int().min(0).optional(), + total_amount_raised: z.number().int().min(0).optional(), + total_amount_raised_before_tax: z.number().int().min(0).optional(), + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const importSubscriptionSubscriptionAdditionalInformationSchema = z.looseObject( + {}, +); +const importSubscriptionSubscriptionCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + additional_information: + importSubscriptionSubscriptionAdditionalInformationSchema.optional(), +}); +const importSubscriptionSubscriptionPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + importSubscriptionSubscriptionAdditionalInformationSchema.optional(), +}); +const importSubscriptionSubscriptionBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const importSubscriptionSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const importSubscriptionSubscriptionTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + reference_number: z.string().max(100).optional(), + date: z.number().int().optional(), +}); +const importSubscriptionSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), +}); +const importSubscriptionSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), +}); +const importSubscriptionSubscriptionChargedEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + last_charged_at: z.array(z.number().int().optional()).optional(), +}); +const importSubscriptionSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const importSubscriptionSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + client_profile_id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + auto_collection: z.enum(['on', 'off']).optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + status: z.enum([ + 'future', + 'in_trial', + 'active', + 'non_renewing', + 'paused', + 'cancelled', + 'transferred', + ]), + current_term_end: z.number().int().optional(), + current_term_start: z.number().int().optional(), + trial_start: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + started_at: z.number().int().optional(), + activated_at: z.number().int().optional(), + pause_date: z.number().int().optional(), + resume_date: z.number().int().optional(), + create_current_term_invoice: z.boolean().default(false).optional(), + affiliate_token: z.string().max(250).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: importSubscriptionSubscriptionMetaDataSchema.optional(), + customer: importSubscriptionSubscriptionCustomerSchema.optional(), + contract_term: importSubscriptionSubscriptionContractTermSchema.optional(), + card: importSubscriptionSubscriptionCardSchema.optional(), + payment_method: importSubscriptionSubscriptionPaymentMethodSchema.optional(), + billing_address: + importSubscriptionSubscriptionBillingAddressSchema.optional(), + shipping_address: + importSubscriptionSubscriptionShippingAddressSchema.optional(), + transaction: importSubscriptionSubscriptionTransactionSchema.optional(), + addons: importSubscriptionSubscriptionAddonsSchema.optional(), + event_based_addons: + importSubscriptionSubscriptionEventBasedAddonsSchema.optional(), + charged_event_based_addons: + importSubscriptionSubscriptionChargedEventBasedAddonsSchema.optional(), + coupons: importSubscriptionSubscriptionCouponsSchema.optional(), +}); +export { importSubscriptionSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_unbilled_charges.validation.ts b/src/validation/subscription/import_unbilled_charges.validation.ts new file mode 100644 index 0000000..b400e54 --- /dev/null +++ b/src/validation/subscription/import_unbilled_charges.validation.ts @@ -0,0 +1,69 @@ +// Generated Zod validator: Subscription.importUnbilledCharges +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const importUnbilledChargesSubscriptionUnbilledChargesSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + date_from: z.array(z.number().int().optional()), + date_to: z.array(z.number().int().optional()), + entity_type: z.array( + z + .enum([ + 'adhoc', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan_setup', + 'plan', + 'addon', + ]) + .optional(), + ), + entity_id: z.array(z.string().max(100).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + quantity: z.array(z.number().int().min(0).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + discount_amount: z.array(z.number().int().min(0).optional()).optional(), + use_for_proration: z.array(z.boolean().default(false).optional()).optional(), + is_advance_charge: z.array(z.boolean().default(false).optional()).optional(), +}); +const importUnbilledChargesSubscriptionDiscountsSchema = z.object({ + unbilled_charge_id: z.array(z.string().max(40).optional()).optional(), + entity_type: z + .array( + z + .enum([ + 'item_level_coupon', + 'document_level_coupon', + 'item_level_discount', + 'document_level_discount', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()), +}); +const importUnbilledChargesSubscriptionTiersSchema = z.object({ + unbilled_charge_id: z.array(z.string().max(40).optional()), + starting_unit: z.array(z.number().int().min(0).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + quantity_used: z.array(z.number().int().min(0).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), +}); +const importUnbilledChargesSubscriptionBodySchema = z.looseObject({ + unbilled_charges: + importUnbilledChargesSubscriptionUnbilledChargesSchema.optional(), + discounts: importUnbilledChargesSubscriptionDiscountsSchema.optional(), + tiers: importUnbilledChargesSubscriptionTiersSchema.optional(), +}); +export { importUnbilledChargesSubscriptionBodySchema }; diff --git a/src/validation/subscription/list_discounts.validation.ts b/src/validation/subscription/list_discounts.validation.ts new file mode 100644 index 0000000..b24e9b5 --- /dev/null +++ b/src/validation/subscription/list_discounts.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Subscription.listDiscounts +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listDiscountsSubscriptionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { listDiscountsSubscriptionBodySchema }; diff --git a/src/validation/subscription/move.validation.ts b/src/validation/subscription/move.validation.ts new file mode 100644 index 0000000..6ce741e --- /dev/null +++ b/src/validation/subscription/move.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Subscription.move +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const moveSubscriptionBodySchema = z.looseObject({ + to_customer_id: z.string().max(50), + copy_payment_source: z.boolean().default(false).optional(), +}); +export { moveSubscriptionBodySchema }; diff --git a/src/validation/subscription/override_billing_profile.validation.ts b/src/validation/subscription/override_billing_profile.validation.ts new file mode 100644 index 0000000..8f6cea7 --- /dev/null +++ b/src/validation/subscription/override_billing_profile.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Subscription.overrideBillingProfile +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const overrideBillingProfileSubscriptionBodySchema = z.looseObject({ + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), +}); +export { overrideBillingProfileSubscriptionBodySchema }; diff --git a/src/validation/subscription/pause.validation.ts b/src/validation/subscription/pause.validation.ts new file mode 100644 index 0000000..1b5f01c --- /dev/null +++ b/src/validation/subscription/pause.validation.ts @@ -0,0 +1,15 @@ +// Generated Zod validator: Subscription.pause +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const pauseSubscriptionBodySchema = z.looseObject({ + pause_option: z + .enum(['immediately', 'end_of_term', 'specific_date', 'billing_cycles']) + .optional(), + pause_date: z.number().int().optional(), + unbilled_charges_handling: z.enum(['no_action', 'invoice']).optional(), + invoice_dunning_handling: z.enum(['continue', 'stop']).optional(), + skip_billing_cycles: z.number().int().min(1).optional(), + resume_date: z.number().int().optional(), +}); +export { pauseSubscriptionBodySchema }; diff --git a/src/validation/subscription/reactivate.validation.ts b/src/validation/subscription/reactivate.validation.ts new file mode 100644 index 0000000..8ad3d7b --- /dev/null +++ b/src/validation/subscription/reactivate.validation.ts @@ -0,0 +1,87 @@ +// Generated Zod validator: Subscription.reactivate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const reactivateSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const reactivateSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const reactivateSubscriptionAdditionalInformationSchema = z.looseObject({}); +const reactivateSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + reactivateSubscriptionAdditionalInformationSchema.optional(), +}); +const reactivateSubscriptionBodySchema = z.looseObject({ + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + trial_period_days: z.number().int().min(1).max(365).optional(), + reactivate_from: z.number().int().optional(), + invoice_immediately: z.boolean().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + terms_to_charge: z.number().int().min(1).optional(), + invoice_date: z.number().int().optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + contract_term: reactivateSubscriptionContractTermSchema.optional(), + statement_descriptor: + reactivateSubscriptionStatementDescriptorSchema.optional(), + payment_intent: reactivateSubscriptionPaymentIntentSchema.optional(), +}); +export { reactivateSubscriptionBodySchema }; diff --git a/src/validation/subscription/regenerate_invoice.validation.ts b/src/validation/subscription/regenerate_invoice.validation.ts new file mode 100644 index 0000000..96bd632 --- /dev/null +++ b/src/validation/subscription/regenerate_invoice.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Subscription.regenerateInvoice +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const regenerateInvoiceSubscriptionBodySchema = z.looseObject({ + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), + prorate: z.boolean().optional(), + invoice_immediately: z.boolean().optional(), +}); +export { regenerateInvoiceSubscriptionBodySchema }; diff --git a/src/validation/subscription/remove_advance_invoice_schedule.validation.ts b/src/validation/subscription/remove_advance_invoice_schedule.validation.ts new file mode 100644 index 0000000..0a92403 --- /dev/null +++ b/src/validation/subscription/remove_advance_invoice_schedule.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: Subscription.removeAdvanceInvoiceSchedule +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const removeAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema = + z.object({ + id: z.array(z.string().max(50).optional()).optional(), + }); +const removeAdvanceInvoiceScheduleSubscriptionBodySchema = z.looseObject({ + specific_dates_schedule: + removeAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema.optional(), +}); +export { removeAdvanceInvoiceScheduleSubscriptionBodySchema }; diff --git a/src/validation/subscription/remove_coupons.validation.ts b/src/validation/subscription/remove_coupons.validation.ts new file mode 100644 index 0000000..91d60a4 --- /dev/null +++ b/src/validation/subscription/remove_coupons.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Subscription.removeCoupons +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const removeCouponsSubscriptionBodySchema = z.looseObject({ + coupon_ids: z.array(z.string().max(100).optional()).optional(), +}); +export { removeCouponsSubscriptionBodySchema }; diff --git a/src/validation/subscription/remove_scheduled_cancellation.validation.ts b/src/validation/subscription/remove_scheduled_cancellation.validation.ts new file mode 100644 index 0000000..ddb90d5 --- /dev/null +++ b/src/validation/subscription/remove_scheduled_cancellation.validation.ts @@ -0,0 +1,20 @@ +// Generated Zod validator: Subscription.removeScheduledCancellation +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const removeScheduledCancellationSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const removeScheduledCancellationSubscriptionBodySchema = z.looseObject({ + billing_cycles: z.number().int().min(0).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + contract_term: + removeScheduledCancellationSubscriptionContractTermSchema.optional(), +}); +export { removeScheduledCancellationSubscriptionBodySchema }; diff --git a/src/validation/subscription/resume.validation.ts b/src/validation/subscription/resume.validation.ts new file mode 100644 index 0000000..25c3833 --- /dev/null +++ b/src/validation/subscription/resume.validation.ts @@ -0,0 +1,71 @@ +// Generated Zod validator: Subscription.resume +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const resumeSubscriptionAdditionalInformationSchema = z.looseObject({}); +const resumeSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + resumeSubscriptionAdditionalInformationSchema.optional(), +}); +const resumeSubscriptionBodySchema = z.looseObject({ + resume_option: z.enum(['immediately', 'specific_date']).optional(), + resume_date: z.number().int().optional(), + charges_handling: z + .enum(['invoice_immediately', 'add_to_unbilled_charges']) + .optional(), + unpaid_invoices_handling: z + .enum(['no_action', 'schedule_payment_collection']) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + payment_intent: resumeSubscriptionPaymentIntentSchema.optional(), +}); +export { resumeSubscriptionBodySchema }; diff --git a/src/validation/subscription/subscriptions_for_customer.validation.ts b/src/validation/subscription/subscriptions_for_customer.validation.ts new file mode 100644 index 0000000..c82f16c --- /dev/null +++ b/src/validation/subscription/subscriptions_for_customer.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Subscription.subscriptionsForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const subscriptionsForCustomerSubscriptionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { subscriptionsForCustomerSubscriptionBodySchema }; diff --git a/src/validation/subscription/update.validation.ts b/src/validation/subscription/update.validation.ts new file mode 100644 index 0000000..5cf74be --- /dev/null +++ b/src/validation/subscription/update.validation.ts @@ -0,0 +1,440 @@ +// Generated Zod validator: Subscription.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateSubscriptionMetaDataSchema = z.looseObject({}); +const updateSubscriptionAdditionalInformationSchema = z.looseObject({}); +const updateSubscriptionCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: + updateSubscriptionAdditionalInformationSchema.optional(), +}); +const updateSubscriptionPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + updateSubscriptionAdditionalInformationSchema.optional(), +}); +const updateSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + updateSubscriptionAdditionalInformationSchema.optional(), +}); +const updateSubscriptionBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const updateSubscriptionCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + entity_identifier_standard: z.string().max(50).optional(), + business_customer_without_vat_number: z.boolean().optional(), + registered_for_gst: z.boolean().optional(), +}); +const updateSubscriptionContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const updateSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + proration_type: z + .array(z.enum(['full_term', 'partial_term', 'none']).optional()) + .optional(), +}); +const updateSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const updateSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const updateSubscriptionBodySchema = z.looseObject({ + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + invoice_date: z.number().int().optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + coupon: z.string().max(100).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + prorate: z.boolean().optional(), + end_of_term: z.boolean().default(false).optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + token_id: z.string().max(40).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: updateSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + override_relationship: z.boolean().optional(), + changes_scheduled_at: z.number().int().optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + card: updateSubscriptionCardSchema.optional(), + payment_method: updateSubscriptionPaymentMethodSchema.optional(), + payment_intent: updateSubscriptionPaymentIntentSchema.optional(), + billing_address: updateSubscriptionBillingAddressSchema.optional(), + shipping_address: updateSubscriptionShippingAddressSchema.optional(), + statement_descriptor: updateSubscriptionStatementDescriptorSchema.optional(), + customer: updateSubscriptionCustomerSchema.optional(), + contract_term: updateSubscriptionContractTermSchema.optional(), + addons: updateSubscriptionAddonsSchema.optional(), + event_based_addons: updateSubscriptionEventBasedAddonsSchema.optional(), + coupons: updateSubscriptionCouponsSchema.optional(), +}); +export { updateSubscriptionBodySchema }; diff --git a/src/validation/subscription/update_for_items.validation.ts b/src/validation/subscription/update_for_items.validation.ts new file mode 100644 index 0000000..a331e6f --- /dev/null +++ b/src/validation/subscription/update_for_items.validation.ts @@ -0,0 +1,478 @@ +// Generated Zod validator: Subscription.updateForItems +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateForItemsSubscriptionMetaDataSchema = z.looseObject({}); +const updateForItemsSubscriptionAdditionalInformationSchema = z.looseObject({}); +const updateForItemsSubscriptionCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: + updateForItemsSubscriptionAdditionalInformationSchema.optional(), +}); +const updateForItemsSubscriptionPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + updateForItemsSubscriptionAdditionalInformationSchema.optional(), +}); +const updateForItemsSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + updateForItemsSubscriptionAdditionalInformationSchema.optional(), +}); +const updateForItemsSubscriptionBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateForItemsSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const updateForItemsSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const updateForItemsSubscriptionCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + entity_identifier_standard: z.string().max(50).optional(), + business_customer_without_vat_number: z.boolean().optional(), + registered_for_gst: z.boolean().optional(), +}); +const updateForItemsSubscriptionContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), + contract_start: z.number().int().optional(), +}); +const updateForItemsSubscriptionBillingOverrideSchema = z.object({ + max_excess_payment_usage: z.number().int().min(-1).optional(), + max_refundable_credits_usage: z.number().int().min(-1).optional(), +}); +const updateForItemsSubscriptionSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + proration_type: z + .array(z.enum(['full_term', 'partial_term', 'none']).optional()) + .optional(), + usage_accumulation_reset_frequency: z + .array(z.enum(['never', 'subscription_billing_frequency']).optional()) + .optional(), +}); +const updateForItemsSubscriptionDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), +}); +const updateForItemsSubscriptionItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const updateForItemsSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const updateForItemsSubscriptionBodySchema = z.looseObject({ + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + setup_fee: z.number().int().min(0).optional(), + net_term_days: z.number().int().optional(), + invoice_date: z.number().int().optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + coupon: z.string().max(100).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + prorate: z.boolean().optional(), + end_of_term: z.boolean().default(false).optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + token_id: z.string().max(40).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: updateForItemsSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + override_relationship: z.boolean().optional(), + changes_scheduled_at: z.number().int().optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + create_pending_invoices: z.boolean().optional(), + auto_close_invoices: z.boolean().optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + invoice_usages: z.boolean().default(false).optional(), + card: updateForItemsSubscriptionCardSchema.optional(), + payment_method: updateForItemsSubscriptionPaymentMethodSchema.optional(), + payment_intent: updateForItemsSubscriptionPaymentIntentSchema.optional(), + billing_address: updateForItemsSubscriptionBillingAddressSchema.optional(), + shipping_address: updateForItemsSubscriptionShippingAddressSchema.optional(), + statement_descriptor: + updateForItemsSubscriptionStatementDescriptorSchema.optional(), + customer: updateForItemsSubscriptionCustomerSchema.optional(), + contract_term: updateForItemsSubscriptionContractTermSchema.optional(), + billing_override: updateForItemsSubscriptionBillingOverrideSchema.optional(), + subscription_items: + updateForItemsSubscriptionSubscriptionItemsSchema.optional(), + discounts: updateForItemsSubscriptionDiscountsSchema.optional(), + item_tiers: updateForItemsSubscriptionItemTiersSchema.optional(), + coupons: updateForItemsSubscriptionCouponsSchema.optional(), +}); +export { updateForItemsSubscriptionBodySchema }; diff --git a/src/validation/subscription_entitlement/set_subscription_entitlement_availability.validation.ts b/src/validation/subscription_entitlement/set_subscription_entitlement_availability.validation.ts new file mode 100644 index 0000000..7956e2b --- /dev/null +++ b/src/validation/subscription_entitlement/set_subscription_entitlement_availability.validation.ts @@ -0,0 +1,15 @@ +// Generated Zod validator: SubscriptionEntitlement.setSubscriptionEntitlementAvailability +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const setSubscriptionEntitlementAvailabilitySubscriptionEntitlementSubscriptionEntitlementsSchema = + z.object({ + feature_id: z.array(z.string().max(50).optional()), + }); +const setSubscriptionEntitlementAvailabilitySubscriptionEntitlementBodySchema = + z.looseObject({ + is_enabled: z.boolean(), + subscription_entitlements: + setSubscriptionEntitlementAvailabilitySubscriptionEntitlementSubscriptionEntitlementsSchema.optional(), + }); +export { setSubscriptionEntitlementAvailabilitySubscriptionEntitlementBodySchema }; diff --git a/src/validation/subscription_entitlement/subscription_entitlements_for_subscription.validation.ts b/src/validation/subscription_entitlement/subscription_entitlements_for_subscription.validation.ts new file mode 100644 index 0000000..7f05ab4 --- /dev/null +++ b/src/validation/subscription_entitlement/subscription_entitlements_for_subscription.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: SubscriptionEntitlement.subscriptionEntitlementsForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const subscriptionEntitlementsForSubscriptionSubscriptionEntitlementBodySchema = + z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + include_drafts: z.boolean().default(false).optional(), + embed: z.string().max(1000).optional(), + include_scheduled_overrides: z.boolean().default(false).optional(), + }); +export { subscriptionEntitlementsForSubscriptionSubscriptionEntitlementBodySchema }; diff --git a/src/validation/time_machine/start_afresh.validation.ts b/src/validation/time_machine/start_afresh.validation.ts new file mode 100644 index 0000000..6936ee2 --- /dev/null +++ b/src/validation/time_machine/start_afresh.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: TimeMachine.startAfresh +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const startAfreshTimeMachineBodySchema = z.looseObject({ + genesis_time: z.number().int().optional(), +}); +export { startAfreshTimeMachineBodySchema }; diff --git a/src/validation/time_machine/travel_forward.validation.ts b/src/validation/time_machine/travel_forward.validation.ts new file mode 100644 index 0000000..cea73a9 --- /dev/null +++ b/src/validation/time_machine/travel_forward.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: TimeMachine.travelForward +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const travelForwardTimeMachineBodySchema = z.looseObject({ + destination_time: z.number().int().optional(), +}); +export { travelForwardTimeMachineBodySchema }; diff --git a/src/validation/transaction/create_authorization.validation.ts b/src/validation/transaction/create_authorization.validation.ts new file mode 100644 index 0000000..a71a95b --- /dev/null +++ b/src/validation/transaction/create_authorization.validation.ts @@ -0,0 +1,11 @@ +// Generated Zod validator: Transaction.createAuthorization +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createAuthorizationTransactionBodySchema = z.looseObject({ + customer_id: z.string().max(50), + payment_source_id: z.string().max(40).optional(), + currency_code: z.string().max(3).optional(), + amount: z.number().int().min(1), +}); +export { createAuthorizationTransactionBodySchema }; diff --git a/src/validation/transaction/delete_offline_transaction.validation.ts b/src/validation/transaction/delete_offline_transaction.validation.ts new file mode 100644 index 0000000..bfab8c3 --- /dev/null +++ b/src/validation/transaction/delete_offline_transaction.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Transaction.deleteOfflineTransaction +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteOfflineTransactionTransactionBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { deleteOfflineTransactionTransactionBodySchema }; diff --git a/src/validation/transaction/payments_for_invoice.validation.ts b/src/validation/transaction/payments_for_invoice.validation.ts new file mode 100644 index 0000000..7c7cb00 --- /dev/null +++ b/src/validation/transaction/payments_for_invoice.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Transaction.paymentsForInvoice +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const paymentsForInvoiceTransactionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { paymentsForInvoiceTransactionBodySchema }; diff --git a/src/validation/transaction/reconcile.validation.ts b/src/validation/transaction/reconcile.validation.ts new file mode 100644 index 0000000..81deaaa --- /dev/null +++ b/src/validation/transaction/reconcile.validation.ts @@ -0,0 +1,10 @@ +// Generated Zod validator: Transaction.reconcile +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const reconcileTransactionBodySchema = z.looseObject({ + id_at_gateway: z.string().max(100).optional(), + customer_id: z.string().max(50).optional(), + status: z.enum(['success', 'failure']).optional(), +}); +export { reconcileTransactionBodySchema }; diff --git a/src/validation/transaction/record_refund.validation.ts b/src/validation/transaction/record_refund.validation.ts new file mode 100644 index 0000000..c9ac699 --- /dev/null +++ b/src/validation/transaction/record_refund.validation.ts @@ -0,0 +1,22 @@ +// Generated Zod validator: Transaction.recordRefund +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const recordRefundTransactionBodySchema = z.looseObject({ + amount: z.number().int().min(1).optional(), + payment_method: z.enum([ + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + date: z.number().int(), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), + comment: z.string().max(300).optional(), +}); +export { recordRefundTransactionBodySchema }; diff --git a/src/validation/transaction/refund.validation.ts b/src/validation/transaction/refund.validation.ts new file mode 100644 index 0000000..e80168f --- /dev/null +++ b/src/validation/transaction/refund.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Transaction.refund +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const refundTransactionBodySchema = z.looseObject({ + amount: z.number().int().min(1).optional(), + comment: z.string().max(300).optional(), +}); +export { refundTransactionBodySchema }; diff --git a/src/validation/transaction/transactions_for_customer.validation.ts b/src/validation/transaction/transactions_for_customer.validation.ts new file mode 100644 index 0000000..49f7fcf --- /dev/null +++ b/src/validation/transaction/transactions_for_customer.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Transaction.transactionsForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const transactionsForCustomerTransactionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { transactionsForCustomerTransactionBodySchema }; diff --git a/src/validation/transaction/transactions_for_subscription.validation.ts b/src/validation/transaction/transactions_for_subscription.validation.ts new file mode 100644 index 0000000..027a3f6 --- /dev/null +++ b/src/validation/transaction/transactions_for_subscription.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: Transaction.transactionsForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const transactionsForSubscriptionTransactionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { transactionsForSubscriptionTransactionBodySchema }; diff --git a/src/validation/unbilled_charge/create.validation.ts b/src/validation/unbilled_charge/create.validation.ts new file mode 100644 index 0000000..cd7949f --- /dev/null +++ b/src/validation/unbilled_charge/create.validation.ts @@ -0,0 +1,57 @@ +// Generated Zod validator: UnbilledCharge.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUnbilledChargeItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createUnbilledChargeItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const createUnbilledChargeChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createUnbilledChargeTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createUnbilledChargeBodySchema = z.looseObject({ + subscription_id: z.string().max(50), + currency_code: z.string().max(3).optional(), + item_prices: createUnbilledChargeItemPricesSchema.optional(), + item_tiers: createUnbilledChargeItemTiersSchema.optional(), + charges: createUnbilledChargeChargesSchema.optional(), + tax_providers_fields: createUnbilledChargeTaxProvidersFieldsSchema.optional(), +}); +export { createUnbilledChargeBodySchema }; diff --git a/src/validation/unbilled_charge/create_unbilled_charge.validation.ts b/src/validation/unbilled_charge/create_unbilled_charge.validation.ts new file mode 100644 index 0000000..d2b7751 --- /dev/null +++ b/src/validation/unbilled_charge/create_unbilled_charge.validation.ts @@ -0,0 +1,44 @@ +// Generated Zod validator: UnbilledCharge.createUnbilledCharge +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUnbilledChargeUnbilledChargeAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createUnbilledChargeUnbilledChargeChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const createUnbilledChargeUnbilledChargeTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const createUnbilledChargeUnbilledChargeBodySchema = z.looseObject({ + subscription_id: z.string().max(50), + currency_code: z.string().max(3).optional(), + addons: createUnbilledChargeUnbilledChargeAddonsSchema.optional(), + charges: createUnbilledChargeUnbilledChargeChargesSchema.optional(), + tax_providers_fields: + createUnbilledChargeUnbilledChargeTaxProvidersFieldsSchema.optional(), +}); +export { createUnbilledChargeUnbilledChargeBodySchema }; diff --git a/src/validation/unbilled_charge/invoice_now_estimate.validation.ts b/src/validation/unbilled_charge/invoice_now_estimate.validation.ts new file mode 100644 index 0000000..440fc3e --- /dev/null +++ b/src/validation/unbilled_charge/invoice_now_estimate.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: UnbilledCharge.invoiceNowEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const invoiceNowEstimateUnbilledChargeBodySchema = z.looseObject({ + subscription_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), +}); +export { invoiceNowEstimateUnbilledChargeBodySchema }; diff --git a/src/validation/unbilled_charge/invoice_unbilled_charges.validation.ts b/src/validation/unbilled_charge/invoice_unbilled_charges.validation.ts new file mode 100644 index 0000000..531cc19 --- /dev/null +++ b/src/validation/unbilled_charge/invoice_unbilled_charges.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: UnbilledCharge.invoiceUnbilledCharges +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const invoiceUnbilledChargesUnbilledChargeBodySchema = z.looseObject({ + subscription_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), +}); +export { invoiceUnbilledChargesUnbilledChargeBodySchema }; diff --git a/src/validation/usage/create.validation.ts b/src/validation/usage/create.validation.ts new file mode 100644 index 0000000..80385f1 --- /dev/null +++ b/src/validation/usage/create.validation.ts @@ -0,0 +1,13 @@ +// Generated Zod validator: Usage.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUsageBodySchema = z.looseObject({ + id: z.string().max(100).optional(), + item_price_id: z.string().max(100), + quantity: z.string().max(40), + usage_date: z.number().int(), + dedupe_option: z.enum(['skip', 'update_existing']).optional(), + note: z.string().max(500).optional(), +}); +export { createUsageBodySchema }; diff --git a/src/validation/usage/delete.validation.ts b/src/validation/usage/delete.validation.ts new file mode 100644 index 0000000..c0efb94 --- /dev/null +++ b/src/validation/usage/delete.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Usage.delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const deleteUsageBodySchema = z.looseObject({ + id: z.string().max(100), +}); +export { deleteUsageBodySchema }; diff --git a/src/validation/usage/list.validation.ts b/src/validation/usage/list.validation.ts new file mode 100644 index 0000000..08ca94d --- /dev/null +++ b/src/validation/usage/list.validation.ts @@ -0,0 +1,60 @@ +// Generated Zod validator: Usage.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listUsageIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listUsageSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listUsageUsageDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const listUsageUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const listUsageItemPriceIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const listUsageInvoiceIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const listUsageSourceSchema = z.object({ + is: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), + is_not: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), + in: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), + not_in: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), +}); +const listUsageSortBySchema = z.looseObject({ + asc: z.enum(['usage_date', 'updated_at']).optional(), + desc: z.enum(['usage_date', 'updated_at']).optional(), +}); +const listUsageBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + id: listUsageIdSchema.optional(), + subscription_id: listUsageSubscriptionIdSchema.optional(), + usage_date: listUsageUsageDateSchema.optional(), + updated_at: listUsageUpdatedAtSchema.optional(), + item_price_id: listUsageItemPriceIdSchema.optional(), + invoice_id: listUsageInvoiceIdSchema.optional(), + source: listUsageSourceSchema.optional(), + sort_by: listUsageSortBySchema.optional(), +}); +export { listUsageBodySchema }; diff --git a/src/validation/usage/pdf.validation.ts b/src/validation/usage/pdf.validation.ts new file mode 100644 index 0000000..3faac6a --- /dev/null +++ b/src/validation/usage/pdf.validation.ts @@ -0,0 +1,12 @@ +// Generated Zod validator: Usage.pdf +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const pdfUsageInvoiceSchema = z.object({ + id: z.string().max(50), +}); +const pdfUsageBodySchema = z.looseObject({ + disposition_type: z.enum(['attachment', 'inline']).optional(), + invoice: pdfUsageInvoiceSchema.optional(), +}); +export { pdfUsageBodySchema }; diff --git a/src/validation/usage/retrieve.validation.ts b/src/validation/usage/retrieve.validation.ts new file mode 100644 index 0000000..fc3bf66 --- /dev/null +++ b/src/validation/usage/retrieve.validation.ts @@ -0,0 +1,8 @@ +// Generated Zod validator: Usage.retrieve +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveUsageBodySchema = z.looseObject({ + id: z.string().max(100), +}); +export { retrieveUsageBodySchema }; diff --git a/src/validation/usage_charge/retrieve_usage_charges_for_subscription.validation.ts b/src/validation/usage_charge/retrieve_usage_charges_for_subscription.validation.ts new file mode 100644 index 0000000..1b8b665 --- /dev/null +++ b/src/validation/usage_charge/retrieve_usage_charges_for_subscription.validation.ts @@ -0,0 +1,14 @@ +// Generated Zod validator: UsageCharge.retrieveUsageChargesForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveUsageChargesForSubscriptionUsageChargeFeatureIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const retrieveUsageChargesForSubscriptionUsageChargeBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + feature_id: + retrieveUsageChargesForSubscriptionUsageChargeFeatureIdSchema.optional(), +}); +export { retrieveUsageChargesForSubscriptionUsageChargeBodySchema }; diff --git a/src/validation/usage_event/batch_ingest.validation.ts b/src/validation/usage_event/batch_ingest.validation.ts new file mode 100644 index 0000000..81496e0 --- /dev/null +++ b/src/validation/usage_event/batch_ingest.validation.ts @@ -0,0 +1,15 @@ +// Generated Zod validator: UsageEvent.batchIngest +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const batchIngestUsageEventPropertiesItemSchema = z.looseObject({}); +const batchIngestUsageEventEventsSchema = z.object({ + deduplication_id: z.array(z.string().max(36).optional()), + subscription_id: z.array(z.string().max(50).optional()), + usage_timestamp: z.array(z.number().int().optional()), + properties: z.array(batchIngestUsageEventPropertiesItemSchema.optional()), +}); +const batchIngestUsageEventBodySchema = z.looseObject({ + events: batchIngestUsageEventEventsSchema.optional(), +}); +export { batchIngestUsageEventBodySchema }; diff --git a/src/validation/usage_event/create.validation.ts b/src/validation/usage_event/create.validation.ts new file mode 100644 index 0000000..301a01e --- /dev/null +++ b/src/validation/usage_event/create.validation.ts @@ -0,0 +1,12 @@ +// Generated Zod validator: UsageEvent.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUsageEventPropertiesSchema = z.looseObject({}); +const createUsageEventBodySchema = z.looseObject({ + deduplication_id: z.string().max(36), + subscription_id: z.string().max(50), + usage_timestamp: z.number().int(), + properties: createUsageEventPropertiesSchema, +}); +export { createUsageEventBodySchema }; diff --git a/src/validation/usage_file/upload_url.validation.ts b/src/validation/usage_file/upload_url.validation.ts new file mode 100644 index 0000000..1573048 --- /dev/null +++ b/src/validation/usage_file/upload_url.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: UsageFile.uploadUrl +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const uploadUrlUsageFileBodySchema = z.looseObject({ + file_name: z.string().max(150), + mime_type: z.string().max(100), +}); +export { uploadUrlUsageFileBodySchema }; diff --git a/src/validation/usage_summary/retrieve_usage_summary_for_subscription.validation.ts b/src/validation/usage_summary/retrieve_usage_summary_for_subscription.validation.ts new file mode 100644 index 0000000..5511182 --- /dev/null +++ b/src/validation/usage_summary/retrieve_usage_summary_for_subscription.validation.ts @@ -0,0 +1,15 @@ +// Generated Zod validator: UsageSummary.retrieveUsageSummaryForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const retrieveUsageSummaryForSubscriptionUsageSummaryBodySchema = z.looseObject( + { + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + feature_id: z.string().max(100), + window_size: z.enum(['month', 'week', 'day', 'hour', 'minute']).optional(), + timeframe_start: z.number().int().optional(), + timeframe_end: z.number().int().optional(), + }, +); +export { retrieveUsageSummaryForSubscriptionUsageSummaryBodySchema }; diff --git a/src/validation/virtual_bank_account/create.validation.ts b/src/validation/virtual_bank_account/create.validation.ts new file mode 100644 index 0000000..6965c1a --- /dev/null +++ b/src/validation/virtual_bank_account/create.validation.ts @@ -0,0 +1,21 @@ +// Generated Zod validator: VirtualBankAccount.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createVirtualBankAccountBodySchema = z.looseObject({ + customer_id: z.string().max(50), + email: z.string().email().max(70).optional(), + gateway_account_id: z.string().max(50).optional(), + scheme: z + .enum([ + 'ach_credit', + 'sepa_credit', + 'us_automated_bank_transfer', + 'gb_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + ]) + .optional(), +}); +export { createVirtualBankAccountBodySchema }; diff --git a/src/validation/virtual_bank_account/create_using_permanent_token.validation.ts b/src/validation/virtual_bank_account/create_using_permanent_token.validation.ts new file mode 100644 index 0000000..3df2af7 --- /dev/null +++ b/src/validation/virtual_bank_account/create_using_permanent_token.validation.ts @@ -0,0 +1,21 @@ +// Generated Zod validator: VirtualBankAccount.createUsingPermanentToken +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createUsingPermanentTokenVirtualBankAccountBodySchema = z.looseObject({ + customer_id: z.string().max(50), + reference_id: z.string().max(150), + gateway_account_id: z.string().max(50).optional(), + scheme: z + .enum([ + 'ach_credit', + 'sepa_credit', + 'us_automated_bank_transfer', + 'gb_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + ]) + .optional(), +}); +export { createUsingPermanentTokenVirtualBankAccountBodySchema }; diff --git a/src/validation/webhook_endpoint/create.validation.ts b/src/validation/webhook_endpoint/create.validation.ts new file mode 100644 index 0000000..ab71f14 --- /dev/null +++ b/src/validation/webhook_endpoint/create.validation.ts @@ -0,0 +1,252 @@ +// Generated Zod validator: WebhookEndpoint.create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const createWebhookEndpointBodySchema = z.looseObject({ + name: z.string().max(50), + api_version: z.enum(['v1', 'v2']).optional(), + url: z.string().max(512), + primary_url: z.boolean().default(false).optional(), + disabled: z.boolean().default(false).optional(), + basic_auth_password: z.string().max(250).optional(), + basic_auth_username: z.string().max(250).optional(), + send_card_resource: z.boolean().default(false).optional(), + chargebee_response_schema_type: z + .enum(['plans_addons', 'items', 'compat']) + .optional(), + enabled_events: z + .array( + z + .enum([ + 'coupon_created', + 'coupon_updated', + 'coupon_deleted', + 'coupon_set_created', + 'coupon_set_updated', + 'coupon_set_deleted', + 'coupon_codes_added', + 'coupon_codes_deleted', + 'coupon_codes_updated', + 'customer_created', + 'customer_changed', + 'customer_deleted', + 'customer_moved_out', + 'customer_moved_in', + 'promotional_credits_added', + 'promotional_credits_deducted', + 'subscription_created', + 'subscription_created_with_backdating', + 'subscription_started', + 'subscription_trial_end_reminder', + 'subscription_activated', + 'subscription_activated_with_backdating', + 'subscription_changed', + 'subscription_trial_extended', + 'mrr_updated', + 'subscription_changed_with_backdating', + 'subscription_cancellation_scheduled', + 'subscription_cancellation_reminder', + 'subscription_cancelled', + 'subscription_canceled_with_backdating', + 'subscription_reactivated', + 'subscription_reactivated_with_backdating', + 'subscription_renewed', + 'subscription_items_renewed', + 'subscription_scheduled_cancellation_removed', + 'subscription_changes_scheduled', + 'subscription_scheduled_changes_removed', + 'subscription_shipping_address_updated', + 'subscription_deleted', + 'subscription_paused', + 'subscription_pause_scheduled', + 'subscription_scheduled_pause_removed', + 'subscription_resumed', + 'subscription_resumption_scheduled', + 'subscription_scheduled_resumption_removed', + 'subscription_advance_invoice_schedule_added', + 'subscription_advance_invoice_schedule_updated', + 'subscription_advance_invoice_schedule_removed', + 'pending_invoice_created', + 'pending_invoice_updated', + 'invoice_generated', + 'invoice_generated_with_backdating', + 'invoice_updated', + 'invoice_deleted', + 'credit_note_created', + 'credit_note_created_with_backdating', + 'credit_note_updated', + 'credit_note_deleted', + 'payment_schedules_created', + 'payment_schedules_updated', + 'payment_schedule_scheme_created', + 'payment_schedule_scheme_deleted', + 'subscription_renewal_reminder', + 'add_usages_reminder', + 'payment_due_reminder', + 'transaction_created', + 'transaction_updated', + 'transaction_deleted', + 'payment_succeeded', + 'payment_failed', + 'dunning_updated', + 'payment_refunded', + 'payment_initiated', + 'refund_initiated', + 'netd_payment_due_reminder', + 'authorization_succeeded', + 'authorization_voided', + 'card_added', + 'card_updated', + 'card_expiry_reminder', + 'card_expired', + 'card_deleted', + 'payment_source_added', + 'payment_source_updated', + 'payment_source_deleted', + 'payment_source_expiring', + 'payment_source_expired', + 'payment_source_locally_deleted', + 'virtual_bank_account_added', + 'virtual_bank_account_updated', + 'virtual_bank_account_deleted', + 'token_created', + 'token_consumed', + 'token_expired', + 'unbilled_charges_created', + 'unbilled_charges_voided', + 'unbilled_charges_deleted', + 'unbilled_charges_invoiced', + 'order_created', + 'order_updated', + 'order_cancelled', + 'order_delivered', + 'order_returned', + 'order_ready_to_process', + 'order_ready_to_ship', + 'order_deleted', + 'order_resent', + 'quote_created', + 'quote_updated', + 'quote_deleted', + 'tax_withheld_recorded', + 'tax_withheld_deleted', + 'tax_withheld_refunded', + 'gift_scheduled', + 'gift_unclaimed', + 'gift_claimed', + 'gift_expired', + 'gift_cancelled', + 'gift_updated', + 'hierarchy_created', + 'hierarchy_deleted', + 'payment_intent_created', + 'payment_intent_updated', + 'contract_term_created', + 'contract_term_renewed', + 'contract_term_terminated', + 'contract_term_completed', + 'contract_term_cancelled', + 'item_family_created', + 'item_family_updated', + 'item_family_deleted', + 'item_created', + 'item_updated', + 'item_deleted', + 'item_price_created', + 'item_price_updated', + 'item_price_deleted', + 'attached_item_created', + 'attached_item_updated', + 'attached_item_deleted', + 'differential_price_created', + 'differential_price_updated', + 'differential_price_deleted', + 'feature_created', + 'feature_updated', + 'feature_deleted', + 'feature_activated', + 'feature_reactivated', + 'feature_archived', + 'item_entitlements_updated', + 'entitlement_overrides_updated', + 'entitlement_overrides_removed', + 'item_entitlements_removed', + 'entitlement_overrides_auto_removed', + 'subscription_entitlements_created', + 'subscription_entitlements_updated', + 'business_entity_created', + 'business_entity_updated', + 'business_entity_deleted', + 'customer_business_entity_changed', + 'subscription_business_entity_changed', + 'purchase_created', + 'voucher_created', + 'voucher_expired', + 'voucher_create_failed', + 'product_created', + 'product_updated', + 'product_deleted', + 'variant_created', + 'variant_updated', + 'variant_deleted', + 'item_price_entitlements_updated', + 'item_price_entitlements_removed', + 'subscription_ramp_created', + 'subscription_ramp_deleted', + 'subscription_ramp_applied', + 'subscription_ramp_drafted', + 'subscription_ramp_updated', + 'price_variant_created', + 'price_variant_updated', + 'price_variant_deleted', + 'customer_entitlements_updated', + 'subscription_moved_in', + 'subscription_moved_out', + 'subscription_movement_failed', + 'omnichannel_subscription_created', + 'omnichannel_subscription_item_renewed', + 'omnichannel_subscription_item_downgrade_scheduled', + 'omnichannel_subscription_item_scheduled_downgrade_removed', + 'omnichannel_subscription_item_downgraded', + 'omnichannel_subscription_item_expired', + 'omnichannel_subscription_item_cancellation_scheduled', + 'omnichannel_subscription_item_scheduled_cancellation_removed', + 'omnichannel_subscription_item_resubscribed', + 'omnichannel_subscription_item_upgraded', + 'omnichannel_subscription_item_cancelled', + 'omnichannel_subscription_imported', + 'omnichannel_subscription_item_grace_period_started', + 'omnichannel_subscription_item_grace_period_expired', + 'omnichannel_subscription_item_dunning_started', + 'omnichannel_subscription_item_dunning_expired', + 'rule_created', + 'rule_updated', + 'rule_deleted', + 'record_purchase_failed', + 'omnichannel_subscription_item_change_scheduled', + 'omnichannel_subscription_item_scheduled_change_removed', + 'omnichannel_subscription_item_reactivated', + 'sales_order_created', + 'sales_order_updated', + 'omnichannel_subscription_item_changed', + 'omnichannel_subscription_item_paused', + 'omnichannel_subscription_item_resumed', + 'omnichannel_one_time_order_created', + 'omnichannel_one_time_order_item_cancelled', + 'usage_file_ingested', + 'omnichannel_subscription_item_pause_scheduled', + 'omnichannel_subscription_moved_in', + 'omnichannel_transaction_created', + 'alert_status_changed', + 'plan_created', + 'plan_updated', + 'plan_deleted', + 'addon_created', + 'addon_updated', + 'addon_deleted', + ]) + .optional(), + ) + .optional(), +}); +export { createWebhookEndpointBodySchema }; diff --git a/src/validation/webhook_endpoint/list.validation.ts b/src/validation/webhook_endpoint/list.validation.ts new file mode 100644 index 0000000..57e7b6f --- /dev/null +++ b/src/validation/webhook_endpoint/list.validation.ts @@ -0,0 +1,9 @@ +// Generated Zod validator: WebhookEndpoint.list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const listWebhookEndpointBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { listWebhookEndpointBodySchema }; diff --git a/src/validation/webhook_endpoint/update.validation.ts b/src/validation/webhook_endpoint/update.validation.ts new file mode 100644 index 0000000..9319c29 --- /dev/null +++ b/src/validation/webhook_endpoint/update.validation.ts @@ -0,0 +1,249 @@ +// Generated Zod validator: WebhookEndpoint.update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; +const updateWebhookEndpointBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + api_version: z.enum(['v1', 'v2']).optional(), + url: z.string().max(512).optional(), + primary_url: z.boolean().default(false).optional(), + send_card_resource: z.boolean().default(false).optional(), + basic_auth_password: z.string().max(250).optional(), + basic_auth_username: z.string().max(250).optional(), + disabled: z.boolean().default(false).optional(), + enabled_events: z + .array( + z + .enum([ + 'coupon_created', + 'coupon_updated', + 'coupon_deleted', + 'coupon_set_created', + 'coupon_set_updated', + 'coupon_set_deleted', + 'coupon_codes_added', + 'coupon_codes_deleted', + 'coupon_codes_updated', + 'customer_created', + 'customer_changed', + 'customer_deleted', + 'customer_moved_out', + 'customer_moved_in', + 'promotional_credits_added', + 'promotional_credits_deducted', + 'subscription_created', + 'subscription_created_with_backdating', + 'subscription_started', + 'subscription_trial_end_reminder', + 'subscription_activated', + 'subscription_activated_with_backdating', + 'subscription_changed', + 'subscription_trial_extended', + 'mrr_updated', + 'subscription_changed_with_backdating', + 'subscription_cancellation_scheduled', + 'subscription_cancellation_reminder', + 'subscription_cancelled', + 'subscription_canceled_with_backdating', + 'subscription_reactivated', + 'subscription_reactivated_with_backdating', + 'subscription_renewed', + 'subscription_items_renewed', + 'subscription_scheduled_cancellation_removed', + 'subscription_changes_scheduled', + 'subscription_scheduled_changes_removed', + 'subscription_shipping_address_updated', + 'subscription_deleted', + 'subscription_paused', + 'subscription_pause_scheduled', + 'subscription_scheduled_pause_removed', + 'subscription_resumed', + 'subscription_resumption_scheduled', + 'subscription_scheduled_resumption_removed', + 'subscription_advance_invoice_schedule_added', + 'subscription_advance_invoice_schedule_updated', + 'subscription_advance_invoice_schedule_removed', + 'pending_invoice_created', + 'pending_invoice_updated', + 'invoice_generated', + 'invoice_generated_with_backdating', + 'invoice_updated', + 'invoice_deleted', + 'credit_note_created', + 'credit_note_created_with_backdating', + 'credit_note_updated', + 'credit_note_deleted', + 'payment_schedules_created', + 'payment_schedules_updated', + 'payment_schedule_scheme_created', + 'payment_schedule_scheme_deleted', + 'subscription_renewal_reminder', + 'add_usages_reminder', + 'payment_due_reminder', + 'transaction_created', + 'transaction_updated', + 'transaction_deleted', + 'payment_succeeded', + 'payment_failed', + 'dunning_updated', + 'payment_refunded', + 'payment_initiated', + 'refund_initiated', + 'netd_payment_due_reminder', + 'authorization_succeeded', + 'authorization_voided', + 'card_added', + 'card_updated', + 'card_expiry_reminder', + 'card_expired', + 'card_deleted', + 'payment_source_added', + 'payment_source_updated', + 'payment_source_deleted', + 'payment_source_expiring', + 'payment_source_expired', + 'payment_source_locally_deleted', + 'virtual_bank_account_added', + 'virtual_bank_account_updated', + 'virtual_bank_account_deleted', + 'token_created', + 'token_consumed', + 'token_expired', + 'unbilled_charges_created', + 'unbilled_charges_voided', + 'unbilled_charges_deleted', + 'unbilled_charges_invoiced', + 'order_created', + 'order_updated', + 'order_cancelled', + 'order_delivered', + 'order_returned', + 'order_ready_to_process', + 'order_ready_to_ship', + 'order_deleted', + 'order_resent', + 'quote_created', + 'quote_updated', + 'quote_deleted', + 'tax_withheld_recorded', + 'tax_withheld_deleted', + 'tax_withheld_refunded', + 'gift_scheduled', + 'gift_unclaimed', + 'gift_claimed', + 'gift_expired', + 'gift_cancelled', + 'gift_updated', + 'hierarchy_created', + 'hierarchy_deleted', + 'payment_intent_created', + 'payment_intent_updated', + 'contract_term_created', + 'contract_term_renewed', + 'contract_term_terminated', + 'contract_term_completed', + 'contract_term_cancelled', + 'item_family_created', + 'item_family_updated', + 'item_family_deleted', + 'item_created', + 'item_updated', + 'item_deleted', + 'item_price_created', + 'item_price_updated', + 'item_price_deleted', + 'attached_item_created', + 'attached_item_updated', + 'attached_item_deleted', + 'differential_price_created', + 'differential_price_updated', + 'differential_price_deleted', + 'feature_created', + 'feature_updated', + 'feature_deleted', + 'feature_activated', + 'feature_reactivated', + 'feature_archived', + 'item_entitlements_updated', + 'entitlement_overrides_updated', + 'entitlement_overrides_removed', + 'item_entitlements_removed', + 'entitlement_overrides_auto_removed', + 'subscription_entitlements_created', + 'subscription_entitlements_updated', + 'business_entity_created', + 'business_entity_updated', + 'business_entity_deleted', + 'customer_business_entity_changed', + 'subscription_business_entity_changed', + 'purchase_created', + 'voucher_created', + 'voucher_expired', + 'voucher_create_failed', + 'product_created', + 'product_updated', + 'product_deleted', + 'variant_created', + 'variant_updated', + 'variant_deleted', + 'item_price_entitlements_updated', + 'item_price_entitlements_removed', + 'subscription_ramp_created', + 'subscription_ramp_deleted', + 'subscription_ramp_applied', + 'subscription_ramp_drafted', + 'subscription_ramp_updated', + 'price_variant_created', + 'price_variant_updated', + 'price_variant_deleted', + 'customer_entitlements_updated', + 'subscription_moved_in', + 'subscription_moved_out', + 'subscription_movement_failed', + 'omnichannel_subscription_created', + 'omnichannel_subscription_item_renewed', + 'omnichannel_subscription_item_downgrade_scheduled', + 'omnichannel_subscription_item_scheduled_downgrade_removed', + 'omnichannel_subscription_item_downgraded', + 'omnichannel_subscription_item_expired', + 'omnichannel_subscription_item_cancellation_scheduled', + 'omnichannel_subscription_item_scheduled_cancellation_removed', + 'omnichannel_subscription_item_resubscribed', + 'omnichannel_subscription_item_upgraded', + 'omnichannel_subscription_item_cancelled', + 'omnichannel_subscription_imported', + 'omnichannel_subscription_item_grace_period_started', + 'omnichannel_subscription_item_grace_period_expired', + 'omnichannel_subscription_item_dunning_started', + 'omnichannel_subscription_item_dunning_expired', + 'rule_created', + 'rule_updated', + 'rule_deleted', + 'record_purchase_failed', + 'omnichannel_subscription_item_change_scheduled', + 'omnichannel_subscription_item_scheduled_change_removed', + 'omnichannel_subscription_item_reactivated', + 'sales_order_created', + 'sales_order_updated', + 'omnichannel_subscription_item_changed', + 'omnichannel_subscription_item_paused', + 'omnichannel_subscription_item_resumed', + 'omnichannel_one_time_order_created', + 'omnichannel_one_time_order_item_cancelled', + 'usage_file_ingested', + 'omnichannel_subscription_item_pause_scheduled', + 'omnichannel_subscription_moved_in', + 'omnichannel_transaction_created', + 'alert_status_changed', + 'plan_created', + 'plan_updated', + 'plan_deleted', + 'addon_created', + 'addon_updated', + 'addon_deleted', + ]) + .optional(), + ) + .optional(), +}); +export { updateWebhookEndpointBodySchema }; From 4e834b400e79b560b980de37878953c341634a6b Mon Sep 17 00:00:00 2001 From: cb-alish Date: Fri, 8 May 2026 14:18:20 +0530 Subject: [PATCH 2/7] Added test cases for validator --- test/validation.test.ts | 375 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 375 insertions(+) create mode 100644 test/validation.test.ts diff --git a/test/validation.test.ts b/test/validation.test.ts new file mode 100644 index 0000000..9466c95 --- /dev/null +++ b/test/validation.test.ts @@ -0,0 +1,375 @@ +import { expect } from 'chai'; +import { CreateChargebee } from '../src/createChargebee.js'; +import { ChargebeeZodValidationError } from '../src/chargebeeZodValidationError.js'; +import { getSchema } from '../src/validationLoader.js'; + +// ---- shared mock HTTP client ----------------------------------------------- +// Captures outgoing requests so tests can assert whether an HTTP call was made. +// Returns a minimal valid response so the SDK's response parsing doesn't throw. + +let capturedRequests: Request[] = []; + +const mockHttpClient = { + makeApiRequest: async (request: Request): Promise => { + capturedRequests.push(request.clone()); + return new Response(JSON.stringify({ customer: { id: 'cust_mock' } }), { + status: 200, + headers: { 'Content-Type': 'application/json' }, + }); + }, +}; + +const Chargebee = CreateChargebee(mockHttpClient); + +function createChargebee(conf: Record = {}) { + return new (Chargebee as any)({ + site: 'test-site', + apiKey: 'test-api-key', + ...conf, + }); +} + +beforeEach(() => { + capturedRequests = []; +}); + +// =========================================================================== +// Part 1 – Schema unit tests +// Tests validate the generated Zod schemas directly via getSchema(), without +// any HTTP calls. This keeps the tests fast and independent of network state. +// =========================================================================== + +describe('Validation – schema unit tests', () => { + // ── customer.create ──────────────────────────────────────────────────────── + + describe('customer.create schema', () => { + // Load once – schemas are cached so repeated calls are cheap. + const schema = getSchema('customer', 'create')!; + + it('loads a schema for customer.create', () => { + expect(schema).to.not.be.null; + }); + + it('accepts an empty object (all fields are optional)', () => { + expect(schema.safeParse({}).success).to.be.true; + }); + + it('accepts valid string fields', () => { + expect( + schema.safeParse({ + first_name: 'Jane', + last_name: 'Doe', + company: 'Acme Inc', + phone: '+1-555-0100', + }).success, + ).to.be.true; + }); + + it('accepts a valid email address', () => { + expect(schema.safeParse({ email: 'jane@example.com' }).success).to.be.true; + }); + + it('accepts valid enum values for auto_collection', () => { + expect(schema.safeParse({ auto_collection: 'on' }).success).to.be.true; + expect(schema.safeParse({ auto_collection: 'off' }).success).to.be.true; + }); + + it('accepts an integer for net_term_days', () => { + expect(schema.safeParse({ net_term_days: 30 }).success).to.be.true; + }); + + it('passes unknown keys through (looseObject / allow extra keys)', () => { + expect(schema.safeParse({ undocumented_cf: 'value' }).success).to.be.true; + }); + + it('rejects an invalid email address', () => { + const result = schema.safeParse({ email: 'not-an-email' }); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['email']); + }); + + it('rejects first_name exceeding maxLength(150)', () => { + const result = schema.safeParse({ first_name: 'a'.repeat(151) }); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['first_name']); + }); + + it('rejects an invalid enum value for auto_collection', () => { + const result = schema.safeParse({ auto_collection: 'maybe' }); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['auto_collection']); + }); + + it('rejects a non-integer for net_term_days', () => { + const result = schema.safeParse({ net_term_days: 1.5 }); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['net_term_days']); + }); + + it('reports all violated fields in a single parse (fail-all)', () => { + const result = schema.safeParse({ + email: 'bad-email', + first_name: 'x'.repeat(200), + auto_collection: 'invalid', + }); + expect(result.success).to.be.false; + // All three fields should have issues reported at once. + expect(result.error!.issues.length).to.be.greaterThanOrEqual(3); + const paths = result.error!.issues.map((i) => i.path[0]); + expect(paths).to.include('email'); + expect(paths).to.include('first_name'); + expect(paths).to.include('auto_collection'); + }); + }); + + // ── customer.create – nested card sub-object ─────────────────────────────── + + describe('customer.create – nested card sub-object', () => { + const schema = getSchema('customer', 'create')!; + + it('accepts a valid card sub-object', () => { + expect( + schema.safeParse({ card: { number: '4111111111111111', cvv: '123' } }).success, + ).to.be.true; + }); + + it('rejects card.expiry_month > 12 (max constraint)', () => { + const result = schema.safeParse({ card: { expiry_month: 13 } }); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['card', 'expiry_month']); + }); + + it('rejects card.expiry_month < 1 (min constraint)', () => { + const result = schema.safeParse({ card: { expiry_month: 0 } }); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['card', 'expiry_month']); + }); + + it('rejects card.gateway_account_id exceeding maxLength(50)', () => { + const result = schema.safeParse({ + card: { gateway_account_id: 'x'.repeat(51) }, + }); + expect(result.success).to.be.false; + const paths = result.error!.issues.map((i) => i.path); + expect(paths.some((p) => p.includes('gateway_account_id'))).to.be.true; + }); + }); + + // ── customer.update ──────────────────────────────────────────────────────── + + describe('customer.update schema', () => { + const schema = getSchema('customer', 'update')!; + + it('loads a schema for customer.update', () => { + expect(schema).to.not.be.null; + }); + + it('accepts a valid email for update', () => { + expect(schema.safeParse({ email: 'updated@example.com' }).success).to.be.true; + }); + + it('rejects an invalid email in update', () => { + const result = schema.safeParse({ email: 'not-valid' }); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['email']); + }); + }); + + // ── invoice.charge (has a required field: description) ──────────────────── + + describe('invoice.charge schema', () => { + const schema = getSchema('invoice', 'charge')!; + + it('loads a schema for invoice.charge', () => { + expect(schema).to.not.be.null; + }); + + it('accepts a payload that includes the required description', () => { + expect(schema.safeParse({ description: 'Consulting fee' }).success).to.be.true; + }); + + it('accepts description alongside optional fields', () => { + expect( + schema.safeParse({ description: 'Fee', amount: 500, currency_code: 'USD' }).success, + ).to.be.true; + }); + + it('rejects a payload missing the required description field', () => { + const result = schema.safeParse({}); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['description']); + }); + + it('rejects amount = 0 (min constraint is 1)', () => { + const result = schema.safeParse({ description: 'Fee', amount: 0 }); + expect(result.success).to.be.false; + expect(result.error!.issues[0].path).to.deep.equal(['amount']); + }); + + it('rejects a negative amount', () => { + const result = schema.safeParse({ description: 'Fee', amount: -100 }); + expect(result.success).to.be.false; + }); + }); + + // ── getSchema – loader behaviour ─────────────────────────────────────────── + + describe('getSchema() loader', () => { + it('returns null for an action that has no schema', () => { + expect(getSchema('customer', 'nonexistent_action_xyz')).to.be.null; + }); + + it('returns null for an unknown resource', () => { + expect(getSchema('nonexistent_resource_xyz', 'create')).to.be.null; + }); + + it('returns the same cached object on repeated calls', () => { + const a = getSchema('customer', 'create'); + const b = getSchema('customer', 'create'); + expect(a).to.equal(b); // strict reference equality → cached + }); + }); +}); + +// =========================================================================== +// Part 2 – RequestWrapper integration tests +// Tests that the SDK honours enableValidation at the API call level. +// =========================================================================== + +describe('Validation – RequestWrapper integration', () => { + // ── enableValidation: false (default) ───────────────────────────────────── + + describe('when enableValidation is false (default)', () => { + it('does not validate and still sends the HTTP request for an invalid email', async () => { + const cb = createChargebee(); // enableValidation not set → defaults to false + + await cb.customer.create({ email: 'definitely-not-an-email' }); + + expect(capturedRequests).to.have.length(1); + }); + + it('does not validate and still sends the HTTP request when a required field is missing', async () => { + const cb = createChargebee(); + + await cb.invoice.charge({}); + + expect(capturedRequests).to.have.length(1); + }); + }); + + // ── enableValidation: true ───────────────────────────────────────────────── + + describe('when enableValidation is true', () => { + it('throws ChargebeeZodValidationError for an invalid email', async () => { + const cb = createChargebee({ enableValidation: true }); + + let thrown: unknown; + try { + await cb.customer.create({ email: 'not-an-email' }); + } catch (e) { + thrown = e; + } + + expect(thrown).to.be.instanceOf(ChargebeeZodValidationError); + const err = thrown as ChargebeeZodValidationError; + expect(err.name).to.equal('ChargebeeZodValidationError'); + expect(err.message).to.include('[Chargebee] Validation failed'); + expect(err.message).to.include('email'); + // Validation must abort before any HTTP call is made. + expect(capturedRequests).to.have.length(0); + }); + + it('sets actionName to the SDK method name on the error', async () => { + const cb = createChargebee({ enableValidation: true }); + + let thrown: unknown; + try { + await cb.customer.create({ email: 'bad' }); + } catch (e) { + thrown = e; + } + + const err = thrown as ChargebeeZodValidationError; + expect(err).to.be.instanceOf(ChargebeeZodValidationError); + expect(err.actionName).to.equal('create'); + }); + + it('exposes a zodError with structured issue list', async () => { + const cb = createChargebee({ enableValidation: true }); + + let thrown: unknown; + try { + await cb.customer.create({ + email: 'bad-email', + first_name: 'x'.repeat(200), + }); + } catch (e) { + thrown = e; + } + + const err = thrown as ChargebeeZodValidationError; + expect(err).to.be.instanceOf(ChargebeeZodValidationError); + expect(err.zodError).to.exist; + expect(err.zodError.issues).to.be.an('array').with.length.greaterThan(0); + const fields = err.zodError.issues.map((i) => i.path[0]); + expect(fields).to.include('email'); + }); + + it('throws when an invalid enum value is supplied', async () => { + const cb = createChargebee({ enableValidation: true }); + + let thrown: unknown; + try { + await cb.customer.create({ auto_collection: 'definitely_invalid' }); + } catch (e) { + thrown = e; + } + + expect(thrown).to.be.instanceOf(ChargebeeZodValidationError); + expect((thrown as ChargebeeZodValidationError).message).to.include('auto_collection'); + expect(capturedRequests).to.have.length(0); + }); + + it('throws when a required field is absent (invoice.charge without description)', async () => { + const cb = createChargebee({ enableValidation: true }); + + let thrown: unknown; + try { + await cb.invoice.charge({}); + } catch (e) { + thrown = e; + } + + expect(thrown).to.be.instanceOf(ChargebeeZodValidationError); + expect((thrown as ChargebeeZodValidationError).message).to.include('description'); + expect(capturedRequests).to.have.length(0); + }); + + it('does not throw and makes the HTTP request when params are valid', async () => { + const cb = createChargebee({ enableValidation: true }); + + await cb.customer.create({ + first_name: 'Alice', + email: 'alice@example.com', + }); + + expect(capturedRequests).to.have.length(1); + }); + + it('does not throw for an empty body (all customer.create fields are optional)', async () => { + const cb = createChargebee({ enableValidation: true }); + + await cb.customer.create({}); + + expect(capturedRequests).to.have.length(1); + }); + + it('does not throw for extra unknown keys (looseObject accepts them)', async () => { + const cb = createChargebee({ enableValidation: true }); + + await cb.customer.create({ undocumented_cf_field: 'custom_value' }); + + expect(capturedRequests).to.have.length(1); + }); + }); +}); From c14c44cf39006a71978f35bec6400e11ae5ac673 Mon Sep 17 00:00:00 2001 From: cb-alish Date: Mon, 11 May 2026 10:46:43 +0530 Subject: [PATCH 3/7] feat(validation): flat src/schema modules and loader for sdk-generator output Replace src/validation//.validation.ts with flat src/schema/.schema.ts (and shared.schema.ts), matching the sdk-generator VALIDATOR_ZOD layout. Each file aggregates all body/query schemas for that resource and exports z.infer-derived types per action. - Point validationLoader at ./schema/.schema.js (CJS build). - Resolve exports using PascalCase body const names aligned with ZodNamingStrategy.bodySchemaName in sdk-generator. Regenerated from the same OpenAPI spec via sdk-generator; requires the paired validator emitter changes in sdk-generator. --- src/schema/addon.schema.ts | 160 + .../address.schema.ts} | 20 +- src/schema/alert.schema.ts | 42 + src/schema/attached_item.schema.ts | 76 + src/schema/business_entity.schema.ts | 55 + .../card.schema.ts} | 95 +- src/schema/comment.schema.ts | 73 + src/schema/coupon.schema.ts | 236 ++ src/schema/coupon_code.schema.ts | 15 + src/schema/coupon_set.schema.ts | 37 + src/schema/credit_note.schema.ts | 338 ++ src/schema/currency.schema.ts | 44 + src/schema/customer.schema.ts | 1095 ++++++ src/schema/customer_entitlement.schema.ts | 17 + src/schema/differential_price.schema.ts | 86 + .../entitlement.schema.ts} | 15 +- src/schema/entitlement_override.schema.ts | 47 + src/schema/estimate.schema.ts | 1682 +++++++++ src/schema/export.schema.ts | 1579 ++++++++ src/schema/feature.schema.ts | 41 + src/schema/gift.schema.ts | 290 ++ src/schema/hosted_page.schema.ts | 1765 +++++++++ src/schema/in_app_subscription.schema.ts | 87 + src/schema/index.ts | 64 + src/schema/invoice.schema.ts | 1652 +++++++++ src/schema/item.schema.ts | 95 + src/schema/item_entitlement.schema.ts | 69 + src/schema/item_family.schema.ts | 25 + src/schema/item_price.schema.ts | 204 ++ src/schema/non_subscription.schema.ts | 31 + src/schema/offer_event.schema.ts | 16 + src/schema/offer_fulfillment.schema.ts | 28 + .../omnichannel_one_time_order.schema.ts} | 21 +- src/schema/omnichannel_subscription.schema.ts | 105 + .../omnichannel_subscription_item.schema.ts | 18 + src/schema/order.schema.ts | 301 ++ src/schema/payment_intent.schema.ts | 125 + .../payment_schedule_scheme.schema.ts} | 17 +- src/schema/payment_source.schema.ts | 434 +++ src/schema/payment_voucher.schema.ts | 71 + .../personalized_offer.schema.ts} | 21 +- src/schema/plan.schema.ts | 236 ++ src/schema/portal_session.schema.ts | 30 + src/schema/price_variant.schema.ts | 44 + src/schema/pricing_page_session.schema.ts | 172 + src/schema/promotional_credit.schema.ts | 96 + src/schema/purchase.schema.ts | 280 ++ src/schema/quote.schema.ts | 1717 +++++++++ src/schema/ramp.schema.ts | 231 ++ src/schema/recorded_purchase.schema.ts | 36 + src/schema/resource_migration.schema.ts | 17 + .../site_migration_detail.schema.ts} | 33 +- src/schema/subscription.schema.ts | 3206 +++++++++++++++++ src/schema/subscription_entitlement.schema.ts | 39 + src/schema/time_machine.schema.ts | 25 + src/schema/transaction.schema.ts | 106 + src/schema/unbilled_charge.schema.ts | 132 + src/schema/usage.schema.ts | 106 + src/schema/usage_charge.schema.ts | 21 + src/schema/usage_event.schema.ts | 34 + src/schema/usage_file.schema.ts | 16 + .../usage_summary.schema.ts} | 13 +- src/schema/virtual_bank_account.schema.ts | 51 + src/schema/webhook_endpoint.schema.ts | 521 +++ src/validation/addon/copy.validation.ts | 11 - src/validation/addon/create.validation.ts | 73 - src/validation/addon/update.validation.ts | 71 - src/validation/address/retrieve.validation.ts | 9 - src/validation/alert/create.validation.ts | 24 - src/validation/alert/update.validation.ts | 13 - .../attached_item/create.validation.ts | 24 - .../attached_item/delete.validation.ts | 8 - .../attached_item/retrieve.validation.ts | 8 - .../attached_item/update.validation.ts | 23 - .../create_transfers.validation.ts | 12 - .../get_transfers.validation.ts | 34 - .../card/copy_card_for_customer.validation.ts | 8 - .../switch_gateway_for_customer.validation.ts | 66 - src/validation/comment/create.validation.ts | 27 - src/validation/comment/list.validation.ts | 41 - src/validation/coupon/copy.validation.ts | 11 - src/validation/coupon/create.validation.ts | 38 - .../coupon/create_for_items.validation.ts | 70 - src/validation/coupon/update.validation.ts | 38 - .../coupon/update_for_items.validation.ts | 70 - .../coupon_code/create.validation.ts | 10 - .../coupon_set/add_coupon_codes.validation.ts | 8 - .../coupon_set/create.validation.ts | 12 - .../coupon_set/update.validation.ts | 10 - .../credit_note/create.validation.ts | 53 - .../credit_notes_for_customer.validation.ts | 9 - .../credit_note/delete.validation.ts | 8 - .../import_credit_note.validation.ts | 167 - src/validation/credit_note/pdf.validation.ts | 8 - .../credit_note/record_refund.validation.ts | 27 - .../credit_note/refund.validation.ts | 10 - .../remove_tax_withheld_refund.validation.ts | 11 - .../credit_note/retrieve.validation.ts | 20 - .../void_credit_note.validation.ts | 8 - .../currency/add_schedule.validation.ts | 9 - src/validation/currency/create.validation.ts | 10 - src/validation/currency/list.validation.ts | 9 - src/validation/currency/update.validation.ts | 9 - .../customer/add_contact.validation.ts | 19 - .../add_promotional_credits.validation.ts | 14 - .../assign_payment_role.validation.ts | 9 - .../change_billing_date.validation.ts | 24 - .../customer/collect_payment.validation.ts | 150 - .../contacts_for_customer.validation.ts | 9 - src/validation/customer/create.validation.ts | 378 -- .../deduct_promotional_credits.validation.ts | 14 - src/validation/customer/delete.validation.ts | 8 - .../customer/delete_contact.validation.ts | 11 - .../customer/hierarchy.validation.ts | 14 - .../list_hierarchy_detail.validation.ts | 16 - src/validation/customer/merge.validation.ts | 9 - src/validation/customer/move.validation.ts | 9 - .../record_excess_payment.validation.ts | 26 - .../customer/relationships.validation.ts | 31 - .../set_promotional_credits.validation.ts | 14 - src/validation/customer/update.validation.ts | 79 - .../update_billing_info.validation.ts | 52 - .../customer/update_contact.validation.ts | 19 - .../update_hierarchy_settings.validation.ts | 28 - .../update_payment_method.validation.ts | 125 - .../entitlements_for_customer.validation.ts | 10 - .../differential_price/create.validation.ts | 29 - .../differential_price/delete.validation.ts | 8 - .../differential_price/retrieve.validation.ts | 8 - .../differential_price/update.validation.ts | 28 - ...nt_override_for_subscription.validation.ts | 23 - ...nt_override_for_subscription.validation.ts | 13 - .../advance_invoice_estimate.validation.ts | 28 - .../cancel_subscription.validation.ts | 47 - ...ancel_subscription_for_items.validation.ts | 49 - .../estimate/change_term_end.validation.ts | 10 - .../estimate/create_invoice.validation.ts | 87 - .../create_invoice_for_items.validation.ts | 132 - ...te_sub_for_customer_estimate.validation.ts | 120 - .../create_sub_item_estimate.validation.ts | 195 - ...b_item_for_customer_estimate.validation.ts | 165 - .../create_subscription.validation.ts | 173 - .../estimate/gift_subscription.validation.ts | 115 - .../gift_subscription_for_items.validation.ts | 125 - .../estimate/pause_subscription.validation.ts | 17 - .../estimate/payment_schedules.validation.ts | 11 - .../regenerate_invoice_estimate.validation.ts | 11 - .../estimate/renewal_estimate.validation.ts | 12 - .../resume_subscription.validation.ts | 15 - .../upcoming_invoices_estimate.validation.ts | 8 - .../update_subscription.validation.ts | 143 - ...pdate_subscription_for_items.validation.ts | 174 - .../export/attached_items.validation.ts | 100 - .../export/credit_notes.validation.ts | 210 -- src/validation/export/customers.validation.ts | 191 - .../export/item_families.validation.ts | 43 - src/validation/export/items.validation.ts | 100 - src/validation/export/orders.validation.ts | 209 -- .../export/price_variants.validation.ts | 59 - .../export/transactions.validation.ts | 654 ---- src/validation/feature/create.validation.ts | 19 - src/validation/feature/update.validation.ts | 17 - src/validation/gift/create.validation.ts | 111 - .../gift/create_for_items.validation.ts | 120 - src/validation/gift/list.validation.ts | 43 - src/validation/gift/update_gift.validation.ts | 9 - .../hosted_page/accept_quote.validation.ts | 13 - .../checkout_existing.validation.ts | 177 - .../checkout_existing_for_items.validation.ts | 219 -- .../hosted_page/checkout_gift.validation.ts | 26 - .../checkout_gift_for_items.validation.ts | 33 - .../hosted_page/checkout_new.validation.ts | 218 -- .../checkout_new_for_items.validation.ts | 255 -- .../checkout_one_time.validation.ts | 167 - .../checkout_one_time_for_items.validation.ts | 208 -- .../hosted_page/claim_gift.validation.ts | 16 - .../hosted_page/collect_now.validation.ts | 81 - .../hosted_page/events.validation.ts | 11 - .../extend_subscription.validation.ts | 13 - .../manage_payment_sources.validation.ts | 80 - .../hosted_page/pre_cancel.validation.ts | 14 - .../retrieve_agreement_pdf.validation.ts | 8 - .../hosted_page/update_card.validation.ts | 85 - .../update_payment_method.validation.ts | 85 - .../hosted_page/view_voucher.validation.ts | 15 - .../import_receipt.validation.ts | 17 - .../import_subscription.validation.ts | 24 - .../process_receipt.validation.ts | 25 - .../retrieve_store_subs.validation.ts | 8 - src/validation/index.ts | 309 -- .../invoice/add_addon_charge.validation.ts | 19 - .../invoice/add_charge.validation.ts | 24 - .../invoice/add_charge_item.validation.ts | 32 - .../invoice/apply_credits.validation.ts | 12 - ...pply_payment_schedule_scheme.validation.ts | 9 - .../invoice/apply_payments.validation.ts | 13 - src/validation/invoice/charge.validation.ts | 32 - .../invoice/charge_addon.validation.ts | 22 - src/validation/invoice/close.validation.ts | 31 - .../invoice/collect_payment.validation.ts | 12 - src/validation/invoice/create.validation.ts | 371 -- .../create_for_charge_item.validation.ts | 37 - ...for_charge_items_and_charges.validation.ts | 419 --- src/validation/invoice/delete.validation.ts | 8 - .../invoice/delete_line_items.validation.ts | 11 - .../invoice/import_invoice.validation.ts | 265 -- .../invoices_for_customer.validation.ts | 9 - .../invoices_for_subscription.validation.ts | 9 - .../invoice/pause_dunning.validation.ts | 9 - src/validation/invoice/pdf.validation.ts | 8 - .../invoice/record_payment.validation.ts | 28 - .../invoice/record_refund.validation.ts | 41 - .../invoice/record_tax_withheld.validation.ts | 14 - src/validation/invoice/refund.validation.ts | 24 - .../invoice/remove_credit_note.validation.ts | 11 - .../invoice/remove_payment.validation.ts | 11 - .../invoice/remove_tax_withheld.validation.ts | 11 - .../invoice/resume_dunning.validation.ts | 8 - src/validation/invoice/retrieve.validation.ts | 20 - .../invoice/stop_dunning.validation.ts | 8 - .../invoice/update_details.validation.ts | 54 - .../invoice/void_invoice.validation.ts | 9 - .../invoice/write_off.validation.ts | 8 - src/validation/item/create.validation.ts | 42 - src/validation/item/update.validation.ts | 48 - .../add_item_entitlements.validation.ts | 19 - ...tem_entitlements_for_feature.validation.ts | 10 - .../item_entitlements_for_item.validation.ts | 11 - ...e_item_entitlements_for_item.validation.ts | 16 - .../item_family/create.validation.ts | 11 - .../item_family/update.validation.ts | 9 - .../item_price/create.validation.ts | 84 - .../find_applicable_item_prices.validation.ts | 15 - .../find_applicable_items.validation.ts | 14 - .../item_price/update.validation.ts | 82 - .../process_receipt.validation.ts | 24 - .../offer_event/offer_events.validation.ts | 9 - .../offer_fulfillments.validation.ts | 9 - .../offer_fulfillments_update.validation.ts | 10 - .../list.validation.ts | 75 - .../move.validation.ts | 8 - ...nsforomnichannelsubscription.validation.ts | 10 - ...ni_sub_item_schedule_changes.validation.ts | 10 - src/validation/order/cancel.validation.ts | 30 - src/validation/order/create.validation.ts | 18 - ...reate_refundable_credit_note.validation.ts | 27 - .../order/import_order.validation.ts | 93 - .../order/orders_for_invoice.validation.ts | 9 - src/validation/order/reopen.validation.ts | 8 - src/validation/order/resend.validation.ts | 14 - src/validation/order/update.validation.ts | 93 - .../payment_intent/create.validation.ts | 60 - .../payment_intent/update.validation.ts | 56 - .../create_bank_account.validation.ts | 33 - .../payment_source/create_card.validation.ts | 32 - .../create_using_payment_intent.validation.ts | 71 - ...create_using_permanent_token.validation.ts | 114 - .../create_using_temp_token.validation.ts | 60 - .../create_using_token.validation.ts | 10 - ...reate_voucher_payment_source.validation.ts | 20 - .../export_payment_source.validation.ts | 8 - .../switch_gateway_account.validation.ts | 8 - .../update_bank_account.validation.ts | 13 - .../payment_source/update_card.validation.ts | 27 - .../verify_bank_account.validation.ts | 9 - .../payment_voucher/create.validation.ts | 18 - .../payment_vouchersforcustomer.validation.ts | 21 - .../payment_vouchersforinvoice.validation.ts | 21 - src/validation/plan/copy.validation.ts | 11 - src/validation/plan/create.validation.ts | 112 - src/validation/plan/update.validation.ts | 108 - .../portal_session/activate.validation.ts | 8 - .../portal_session/create.validation.ts | 13 - .../price_variant/create.validation.ts | 18 - .../price_variant/update.validation.ts | 17 - ...te_for_existing_subscription.validation.ts | 57 - .../create_for_new_subscription.validation.ts | 106 - .../promotional_credit/add.validation.ts | 16 - .../promotional_credit/deduct.validation.ts | 16 - .../promotional_credit/list.validation.ts | 35 - .../promotional_credit/set.validation.ts | 16 - src/validation/purchase/create.validation.ts | 149 - .../purchase/estimate.validation.ts | 126 - src/validation/quote/convert.validation.ts | 18 - ...for_charge_items_and_charges.validation.ts | 110 - .../create_for_onetime_charges.validation.ts | 63 - ...reate_sub_for_customer_quote.validation.ts | 115 - ...sub_items_for_customer_quote.validation.ts | 173 - src/validation/quote/delete.validation.ts | 8 - ...sub_customer_quote_for_items.validation.ts | 178 - ...reate_sub_for_customer_quote.validation.ts | 115 - ...for_charge_items_and_charges.validation.ts | 108 - .../quote/edit_one_time_quote.validation.ts | 60 - ...it_update_subscription_quote.validation.ts | 149 - ...subscription_quote_for_items.validation.ts | 191 - .../quote/extend_expiry_date.validation.ts | 8 - src/validation/quote/pdf.validation.ts | 9 - .../quote_line_groups_for_quote.validation.ts | 9 - .../update_signature_status.validation.ts | 14 - .../quote/update_status.validation.ts | 16 - .../update_subscription_quote.validation.ts | 150 - ...subscription_quote_for_items.validation.ts | 188 - .../create_for_subscription.validation.ts | 112 - src/validation/ramp/update.validation.ts | 112 - .../recorded_purchase/create.validation.ts | 29 - .../retrieve_latest.validation.ts | 10 - .../add_charge_at_term_end.validation.ts | 17 - .../subscription/cancel.validation.ts | 46 - .../cancel_for_items.validation.ts | 50 - .../change_term_end.validation.ts | 10 - .../charge_addon_at_term_end.validation.ts | 14 - .../charge_future_renewals.validation.ts | 28 - ...tract_terms_for_subscription.validation.ts | 14 - .../subscription/create.validation.ts | 506 --- .../create_for_customer.validation.ts | 197 - .../create_with_items.validation.ts | 230 -- ...dit_advance_invoice_schedule.validation.ts | 28 - .../import_contract_term.validation.ts | 30 - .../import_for_customer.validation.ts | 144 - .../import_for_items.validation.ts | 168 - .../import_subscription.validation.ts | 417 --- .../import_unbilled_charges.validation.ts | 69 - .../subscription/list_discounts.validation.ts | 9 - .../subscription/move.validation.ts | 9 - .../override_billing_profile.validation.ts | 9 - .../subscription/pause.validation.ts | 15 - .../subscription/reactivate.validation.ts | 87 - .../regenerate_invoice.validation.ts | 11 - ...ove_advance_invoice_schedule.validation.ts | 13 - .../subscription/remove_coupons.validation.ts | 8 - ...emove_scheduled_cancellation.validation.ts | 20 - .../subscription/resume.validation.ts | 71 - .../subscriptions_for_customer.validation.ts | 9 - .../subscription/update.validation.ts | 440 --- .../update_for_items.validation.ts | 478 --- ...ion_entitlement_availability.validation.ts | 15 - ...ntitlements_for_subscription.validation.ts | 13 - .../time_machine/start_afresh.validation.ts | 8 - .../time_machine/travel_forward.validation.ts | 8 - .../create_authorization.validation.ts | 11 - .../delete_offline_transaction.validation.ts | 8 - .../payments_for_invoice.validation.ts | 9 - .../transaction/reconcile.validation.ts | 10 - .../transaction/record_refund.validation.ts | 22 - .../transaction/refund.validation.ts | 9 - .../transactions_for_customer.validation.ts | 9 - ...ransactions_for_subscription.validation.ts | 9 - .../unbilled_charge/create.validation.ts | 57 - .../create_unbilled_charge.validation.ts | 44 - .../invoice_now_estimate.validation.ts | 9 - .../invoice_unbilled_charges.validation.ts | 9 - src/validation/usage/create.validation.ts | 13 - src/validation/usage/delete.validation.ts | 8 - src/validation/usage/list.validation.ts | 60 - src/validation/usage/pdf.validation.ts | 12 - src/validation/usage/retrieve.validation.ts | 8 - ...age_charges_for_subscription.validation.ts | 14 - .../usage_event/batch_ingest.validation.ts | 15 - .../usage_event/create.validation.ts | 12 - .../usage_file/upload_url.validation.ts | 9 - .../virtual_bank_account/create.validation.ts | 21 - ...create_using_permanent_token.validation.ts | 21 - .../webhook_endpoint/create.validation.ts | 252 -- .../webhook_endpoint/list.validation.ts | 9 - .../webhook_endpoint/update.validation.ts | 249 -- src/validationLoader.ts | 32 +- 366 files changed, 18318 insertions(+), 17792 deletions(-) create mode 100644 src/schema/addon.schema.ts rename src/{validation/address/update.validation.ts => schema/address.schema.ts} (62%) create mode 100644 src/schema/alert.schema.ts create mode 100644 src/schema/attached_item.schema.ts create mode 100644 src/schema/business_entity.schema.ts rename src/{validation/card/update_card_for_customer.validation.ts => schema/card.schema.ts} (50%) create mode 100644 src/schema/comment.schema.ts create mode 100644 src/schema/coupon.schema.ts create mode 100644 src/schema/coupon_code.schema.ts create mode 100644 src/schema/coupon_set.schema.ts create mode 100644 src/schema/credit_note.schema.ts create mode 100644 src/schema/currency.schema.ts create mode 100644 src/schema/customer.schema.ts create mode 100644 src/schema/customer_entitlement.schema.ts create mode 100644 src/schema/differential_price.schema.ts rename src/{validation/entitlement/create.validation.ts => schema/entitlement.schema.ts} (61%) create mode 100644 src/schema/entitlement_override.schema.ts create mode 100644 src/schema/estimate.schema.ts create mode 100644 src/schema/export.schema.ts create mode 100644 src/schema/feature.schema.ts create mode 100644 src/schema/gift.schema.ts create mode 100644 src/schema/hosted_page.schema.ts create mode 100644 src/schema/in_app_subscription.schema.ts create mode 100644 src/schema/index.ts create mode 100644 src/schema/invoice.schema.ts create mode 100644 src/schema/item.schema.ts create mode 100644 src/schema/item_entitlement.schema.ts create mode 100644 src/schema/item_family.schema.ts create mode 100644 src/schema/item_price.schema.ts create mode 100644 src/schema/non_subscription.schema.ts create mode 100644 src/schema/offer_event.schema.ts create mode 100644 src/schema/offer_fulfillment.schema.ts rename src/{validation/omnichannel_one_time_order/list.validation.ts => schema/omnichannel_one_time_order.schema.ts} (51%) create mode 100644 src/schema/omnichannel_subscription.schema.ts create mode 100644 src/schema/omnichannel_subscription_item.schema.ts create mode 100644 src/schema/order.schema.ts create mode 100644 src/schema/payment_intent.schema.ts rename src/{validation/payment_schedule_scheme/create.validation.ts => schema/payment_schedule_scheme.schema.ts} (51%) create mode 100644 src/schema/payment_source.schema.ts create mode 100644 src/schema/payment_voucher.schema.ts rename src/{validation/personalized_offer/personalized_offers.validation.ts => schema/personalized_offer.schema.ts} (53%) create mode 100644 src/schema/plan.schema.ts create mode 100644 src/schema/portal_session.schema.ts create mode 100644 src/schema/price_variant.schema.ts create mode 100644 src/schema/pricing_page_session.schema.ts create mode 100644 src/schema/promotional_credit.schema.ts create mode 100644 src/schema/purchase.schema.ts create mode 100644 src/schema/quote.schema.ts create mode 100644 src/schema/ramp.schema.ts create mode 100644 src/schema/recorded_purchase.schema.ts create mode 100644 src/schema/resource_migration.schema.ts rename src/{validation/site_migration_detail/list.validation.ts => schema/site_migration_detail.schema.ts} (62%) create mode 100644 src/schema/subscription.schema.ts create mode 100644 src/schema/subscription_entitlement.schema.ts create mode 100644 src/schema/time_machine.schema.ts create mode 100644 src/schema/transaction.schema.ts create mode 100644 src/schema/unbilled_charge.schema.ts create mode 100644 src/schema/usage.schema.ts create mode 100644 src/schema/usage_charge.schema.ts create mode 100644 src/schema/usage_event.schema.ts create mode 100644 src/schema/usage_file.schema.ts rename src/{validation/usage_summary/retrieve_usage_summary_for_subscription.validation.ts => schema/usage_summary.schema.ts} (51%) create mode 100644 src/schema/virtual_bank_account.schema.ts create mode 100644 src/schema/webhook_endpoint.schema.ts delete mode 100644 src/validation/addon/copy.validation.ts delete mode 100644 src/validation/addon/create.validation.ts delete mode 100644 src/validation/addon/update.validation.ts delete mode 100644 src/validation/address/retrieve.validation.ts delete mode 100644 src/validation/alert/create.validation.ts delete mode 100644 src/validation/alert/update.validation.ts delete mode 100644 src/validation/attached_item/create.validation.ts delete mode 100644 src/validation/attached_item/delete.validation.ts delete mode 100644 src/validation/attached_item/retrieve.validation.ts delete mode 100644 src/validation/attached_item/update.validation.ts delete mode 100644 src/validation/business_entity/create_transfers.validation.ts delete mode 100644 src/validation/business_entity/get_transfers.validation.ts delete mode 100644 src/validation/card/copy_card_for_customer.validation.ts delete mode 100644 src/validation/card/switch_gateway_for_customer.validation.ts delete mode 100644 src/validation/comment/create.validation.ts delete mode 100644 src/validation/comment/list.validation.ts delete mode 100644 src/validation/coupon/copy.validation.ts delete mode 100644 src/validation/coupon/create.validation.ts delete mode 100644 src/validation/coupon/create_for_items.validation.ts delete mode 100644 src/validation/coupon/update.validation.ts delete mode 100644 src/validation/coupon/update_for_items.validation.ts delete mode 100644 src/validation/coupon_code/create.validation.ts delete mode 100644 src/validation/coupon_set/add_coupon_codes.validation.ts delete mode 100644 src/validation/coupon_set/create.validation.ts delete mode 100644 src/validation/coupon_set/update.validation.ts delete mode 100644 src/validation/credit_note/create.validation.ts delete mode 100644 src/validation/credit_note/credit_notes_for_customer.validation.ts delete mode 100644 src/validation/credit_note/delete.validation.ts delete mode 100644 src/validation/credit_note/import_credit_note.validation.ts delete mode 100644 src/validation/credit_note/pdf.validation.ts delete mode 100644 src/validation/credit_note/record_refund.validation.ts delete mode 100644 src/validation/credit_note/refund.validation.ts delete mode 100644 src/validation/credit_note/remove_tax_withheld_refund.validation.ts delete mode 100644 src/validation/credit_note/retrieve.validation.ts delete mode 100644 src/validation/credit_note/void_credit_note.validation.ts delete mode 100644 src/validation/currency/add_schedule.validation.ts delete mode 100644 src/validation/currency/create.validation.ts delete mode 100644 src/validation/currency/list.validation.ts delete mode 100644 src/validation/currency/update.validation.ts delete mode 100644 src/validation/customer/add_contact.validation.ts delete mode 100644 src/validation/customer/add_promotional_credits.validation.ts delete mode 100644 src/validation/customer/assign_payment_role.validation.ts delete mode 100644 src/validation/customer/change_billing_date.validation.ts delete mode 100644 src/validation/customer/collect_payment.validation.ts delete mode 100644 src/validation/customer/contacts_for_customer.validation.ts delete mode 100644 src/validation/customer/create.validation.ts delete mode 100644 src/validation/customer/deduct_promotional_credits.validation.ts delete mode 100644 src/validation/customer/delete.validation.ts delete mode 100644 src/validation/customer/delete_contact.validation.ts delete mode 100644 src/validation/customer/hierarchy.validation.ts delete mode 100644 src/validation/customer/list_hierarchy_detail.validation.ts delete mode 100644 src/validation/customer/merge.validation.ts delete mode 100644 src/validation/customer/move.validation.ts delete mode 100644 src/validation/customer/record_excess_payment.validation.ts delete mode 100644 src/validation/customer/relationships.validation.ts delete mode 100644 src/validation/customer/set_promotional_credits.validation.ts delete mode 100644 src/validation/customer/update.validation.ts delete mode 100644 src/validation/customer/update_billing_info.validation.ts delete mode 100644 src/validation/customer/update_contact.validation.ts delete mode 100644 src/validation/customer/update_hierarchy_settings.validation.ts delete mode 100644 src/validation/customer/update_payment_method.validation.ts delete mode 100644 src/validation/customer_entitlement/entitlements_for_customer.validation.ts delete mode 100644 src/validation/differential_price/create.validation.ts delete mode 100644 src/validation/differential_price/delete.validation.ts delete mode 100644 src/validation/differential_price/retrieve.validation.ts delete mode 100644 src/validation/differential_price/update.validation.ts delete mode 100644 src/validation/entitlement_override/add_entitlement_override_for_subscription.validation.ts delete mode 100644 src/validation/entitlement_override/list_entitlement_override_for_subscription.validation.ts delete mode 100644 src/validation/estimate/advance_invoice_estimate.validation.ts delete mode 100644 src/validation/estimate/cancel_subscription.validation.ts delete mode 100644 src/validation/estimate/cancel_subscription_for_items.validation.ts delete mode 100644 src/validation/estimate/change_term_end.validation.ts delete mode 100644 src/validation/estimate/create_invoice.validation.ts delete mode 100644 src/validation/estimate/create_invoice_for_items.validation.ts delete mode 100644 src/validation/estimate/create_sub_for_customer_estimate.validation.ts delete mode 100644 src/validation/estimate/create_sub_item_estimate.validation.ts delete mode 100644 src/validation/estimate/create_sub_item_for_customer_estimate.validation.ts delete mode 100644 src/validation/estimate/create_subscription.validation.ts delete mode 100644 src/validation/estimate/gift_subscription.validation.ts delete mode 100644 src/validation/estimate/gift_subscription_for_items.validation.ts delete mode 100644 src/validation/estimate/pause_subscription.validation.ts delete mode 100644 src/validation/estimate/payment_schedules.validation.ts delete mode 100644 src/validation/estimate/regenerate_invoice_estimate.validation.ts delete mode 100644 src/validation/estimate/renewal_estimate.validation.ts delete mode 100644 src/validation/estimate/resume_subscription.validation.ts delete mode 100644 src/validation/estimate/upcoming_invoices_estimate.validation.ts delete mode 100644 src/validation/estimate/update_subscription.validation.ts delete mode 100644 src/validation/estimate/update_subscription_for_items.validation.ts delete mode 100644 src/validation/export/attached_items.validation.ts delete mode 100644 src/validation/export/credit_notes.validation.ts delete mode 100644 src/validation/export/customers.validation.ts delete mode 100644 src/validation/export/item_families.validation.ts delete mode 100644 src/validation/export/items.validation.ts delete mode 100644 src/validation/export/orders.validation.ts delete mode 100644 src/validation/export/price_variants.validation.ts delete mode 100644 src/validation/export/transactions.validation.ts delete mode 100644 src/validation/feature/create.validation.ts delete mode 100644 src/validation/feature/update.validation.ts delete mode 100644 src/validation/gift/create.validation.ts delete mode 100644 src/validation/gift/create_for_items.validation.ts delete mode 100644 src/validation/gift/list.validation.ts delete mode 100644 src/validation/gift/update_gift.validation.ts delete mode 100644 src/validation/hosted_page/accept_quote.validation.ts delete mode 100644 src/validation/hosted_page/checkout_existing.validation.ts delete mode 100644 src/validation/hosted_page/checkout_existing_for_items.validation.ts delete mode 100644 src/validation/hosted_page/checkout_gift.validation.ts delete mode 100644 src/validation/hosted_page/checkout_gift_for_items.validation.ts delete mode 100644 src/validation/hosted_page/checkout_new.validation.ts delete mode 100644 src/validation/hosted_page/checkout_new_for_items.validation.ts delete mode 100644 src/validation/hosted_page/checkout_one_time.validation.ts delete mode 100644 src/validation/hosted_page/checkout_one_time_for_items.validation.ts delete mode 100644 src/validation/hosted_page/claim_gift.validation.ts delete mode 100644 src/validation/hosted_page/collect_now.validation.ts delete mode 100644 src/validation/hosted_page/events.validation.ts delete mode 100644 src/validation/hosted_page/extend_subscription.validation.ts delete mode 100644 src/validation/hosted_page/manage_payment_sources.validation.ts delete mode 100644 src/validation/hosted_page/pre_cancel.validation.ts delete mode 100644 src/validation/hosted_page/retrieve_agreement_pdf.validation.ts delete mode 100644 src/validation/hosted_page/update_card.validation.ts delete mode 100644 src/validation/hosted_page/update_payment_method.validation.ts delete mode 100644 src/validation/hosted_page/view_voucher.validation.ts delete mode 100644 src/validation/in_app_subscription/import_receipt.validation.ts delete mode 100644 src/validation/in_app_subscription/import_subscription.validation.ts delete mode 100644 src/validation/in_app_subscription/process_receipt.validation.ts delete mode 100644 src/validation/in_app_subscription/retrieve_store_subs.validation.ts delete mode 100644 src/validation/index.ts delete mode 100644 src/validation/invoice/add_addon_charge.validation.ts delete mode 100644 src/validation/invoice/add_charge.validation.ts delete mode 100644 src/validation/invoice/add_charge_item.validation.ts delete mode 100644 src/validation/invoice/apply_credits.validation.ts delete mode 100644 src/validation/invoice/apply_payment_schedule_scheme.validation.ts delete mode 100644 src/validation/invoice/apply_payments.validation.ts delete mode 100644 src/validation/invoice/charge.validation.ts delete mode 100644 src/validation/invoice/charge_addon.validation.ts delete mode 100644 src/validation/invoice/close.validation.ts delete mode 100644 src/validation/invoice/collect_payment.validation.ts delete mode 100644 src/validation/invoice/create.validation.ts delete mode 100644 src/validation/invoice/create_for_charge_item.validation.ts delete mode 100644 src/validation/invoice/create_for_charge_items_and_charges.validation.ts delete mode 100644 src/validation/invoice/delete.validation.ts delete mode 100644 src/validation/invoice/delete_line_items.validation.ts delete mode 100644 src/validation/invoice/import_invoice.validation.ts delete mode 100644 src/validation/invoice/invoices_for_customer.validation.ts delete mode 100644 src/validation/invoice/invoices_for_subscription.validation.ts delete mode 100644 src/validation/invoice/pause_dunning.validation.ts delete mode 100644 src/validation/invoice/pdf.validation.ts delete mode 100644 src/validation/invoice/record_payment.validation.ts delete mode 100644 src/validation/invoice/record_refund.validation.ts delete mode 100644 src/validation/invoice/record_tax_withheld.validation.ts delete mode 100644 src/validation/invoice/refund.validation.ts delete mode 100644 src/validation/invoice/remove_credit_note.validation.ts delete mode 100644 src/validation/invoice/remove_payment.validation.ts delete mode 100644 src/validation/invoice/remove_tax_withheld.validation.ts delete mode 100644 src/validation/invoice/resume_dunning.validation.ts delete mode 100644 src/validation/invoice/retrieve.validation.ts delete mode 100644 src/validation/invoice/stop_dunning.validation.ts delete mode 100644 src/validation/invoice/update_details.validation.ts delete mode 100644 src/validation/invoice/void_invoice.validation.ts delete mode 100644 src/validation/invoice/write_off.validation.ts delete mode 100644 src/validation/item/create.validation.ts delete mode 100644 src/validation/item/update.validation.ts delete mode 100644 src/validation/item_entitlement/add_item_entitlements.validation.ts delete mode 100644 src/validation/item_entitlement/item_entitlements_for_feature.validation.ts delete mode 100644 src/validation/item_entitlement/item_entitlements_for_item.validation.ts delete mode 100644 src/validation/item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.ts delete mode 100644 src/validation/item_family/create.validation.ts delete mode 100644 src/validation/item_family/update.validation.ts delete mode 100644 src/validation/item_price/create.validation.ts delete mode 100644 src/validation/item_price/find_applicable_item_prices.validation.ts delete mode 100644 src/validation/item_price/find_applicable_items.validation.ts delete mode 100644 src/validation/item_price/update.validation.ts delete mode 100644 src/validation/non_subscription/process_receipt.validation.ts delete mode 100644 src/validation/offer_event/offer_events.validation.ts delete mode 100644 src/validation/offer_fulfillment/offer_fulfillments.validation.ts delete mode 100644 src/validation/offer_fulfillment/offer_fulfillments_update.validation.ts delete mode 100644 src/validation/omnichannel_subscription/list.validation.ts delete mode 100644 src/validation/omnichannel_subscription/move.validation.ts delete mode 100644 src/validation/omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.ts delete mode 100644 src/validation/omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.ts delete mode 100644 src/validation/order/cancel.validation.ts delete mode 100644 src/validation/order/create.validation.ts delete mode 100644 src/validation/order/create_refundable_credit_note.validation.ts delete mode 100644 src/validation/order/import_order.validation.ts delete mode 100644 src/validation/order/orders_for_invoice.validation.ts delete mode 100644 src/validation/order/reopen.validation.ts delete mode 100644 src/validation/order/resend.validation.ts delete mode 100644 src/validation/order/update.validation.ts delete mode 100644 src/validation/payment_intent/create.validation.ts delete mode 100644 src/validation/payment_intent/update.validation.ts delete mode 100644 src/validation/payment_source/create_bank_account.validation.ts delete mode 100644 src/validation/payment_source/create_card.validation.ts delete mode 100644 src/validation/payment_source/create_using_payment_intent.validation.ts delete mode 100644 src/validation/payment_source/create_using_permanent_token.validation.ts delete mode 100644 src/validation/payment_source/create_using_temp_token.validation.ts delete mode 100644 src/validation/payment_source/create_using_token.validation.ts delete mode 100644 src/validation/payment_source/create_voucher_payment_source.validation.ts delete mode 100644 src/validation/payment_source/export_payment_source.validation.ts delete mode 100644 src/validation/payment_source/switch_gateway_account.validation.ts delete mode 100644 src/validation/payment_source/update_bank_account.validation.ts delete mode 100644 src/validation/payment_source/update_card.validation.ts delete mode 100644 src/validation/payment_source/verify_bank_account.validation.ts delete mode 100644 src/validation/payment_voucher/create.validation.ts delete mode 100644 src/validation/payment_voucher/payment_vouchersforcustomer.validation.ts delete mode 100644 src/validation/payment_voucher/payment_vouchersforinvoice.validation.ts delete mode 100644 src/validation/plan/copy.validation.ts delete mode 100644 src/validation/plan/create.validation.ts delete mode 100644 src/validation/plan/update.validation.ts delete mode 100644 src/validation/portal_session/activate.validation.ts delete mode 100644 src/validation/portal_session/create.validation.ts delete mode 100644 src/validation/price_variant/create.validation.ts delete mode 100644 src/validation/price_variant/update.validation.ts delete mode 100644 src/validation/pricing_page_session/create_for_existing_subscription.validation.ts delete mode 100644 src/validation/pricing_page_session/create_for_new_subscription.validation.ts delete mode 100644 src/validation/promotional_credit/add.validation.ts delete mode 100644 src/validation/promotional_credit/deduct.validation.ts delete mode 100644 src/validation/promotional_credit/list.validation.ts delete mode 100644 src/validation/promotional_credit/set.validation.ts delete mode 100644 src/validation/purchase/create.validation.ts delete mode 100644 src/validation/purchase/estimate.validation.ts delete mode 100644 src/validation/quote/convert.validation.ts delete mode 100644 src/validation/quote/create_for_charge_items_and_charges.validation.ts delete mode 100644 src/validation/quote/create_for_onetime_charges.validation.ts delete mode 100644 src/validation/quote/create_sub_for_customer_quote.validation.ts delete mode 100644 src/validation/quote/create_sub_items_for_customer_quote.validation.ts delete mode 100644 src/validation/quote/delete.validation.ts delete mode 100644 src/validation/quote/edit_create_sub_customer_quote_for_items.validation.ts delete mode 100644 src/validation/quote/edit_create_sub_for_customer_quote.validation.ts delete mode 100644 src/validation/quote/edit_for_charge_items_and_charges.validation.ts delete mode 100644 src/validation/quote/edit_one_time_quote.validation.ts delete mode 100644 src/validation/quote/edit_update_subscription_quote.validation.ts delete mode 100644 src/validation/quote/edit_update_subscription_quote_for_items.validation.ts delete mode 100644 src/validation/quote/extend_expiry_date.validation.ts delete mode 100644 src/validation/quote/pdf.validation.ts delete mode 100644 src/validation/quote/quote_line_groups_for_quote.validation.ts delete mode 100644 src/validation/quote/update_signature_status.validation.ts delete mode 100644 src/validation/quote/update_status.validation.ts delete mode 100644 src/validation/quote/update_subscription_quote.validation.ts delete mode 100644 src/validation/quote/update_subscription_quote_for_items.validation.ts delete mode 100644 src/validation/ramp/create_for_subscription.validation.ts delete mode 100644 src/validation/ramp/update.validation.ts delete mode 100644 src/validation/recorded_purchase/create.validation.ts delete mode 100644 src/validation/resource_migration/retrieve_latest.validation.ts delete mode 100644 src/validation/subscription/add_charge_at_term_end.validation.ts delete mode 100644 src/validation/subscription/cancel.validation.ts delete mode 100644 src/validation/subscription/cancel_for_items.validation.ts delete mode 100644 src/validation/subscription/change_term_end.validation.ts delete mode 100644 src/validation/subscription/charge_addon_at_term_end.validation.ts delete mode 100644 src/validation/subscription/charge_future_renewals.validation.ts delete mode 100644 src/validation/subscription/contract_terms_for_subscription.validation.ts delete mode 100644 src/validation/subscription/create.validation.ts delete mode 100644 src/validation/subscription/create_for_customer.validation.ts delete mode 100644 src/validation/subscription/create_with_items.validation.ts delete mode 100644 src/validation/subscription/edit_advance_invoice_schedule.validation.ts delete mode 100644 src/validation/subscription/import_contract_term.validation.ts delete mode 100644 src/validation/subscription/import_for_customer.validation.ts delete mode 100644 src/validation/subscription/import_for_items.validation.ts delete mode 100644 src/validation/subscription/import_subscription.validation.ts delete mode 100644 src/validation/subscription/import_unbilled_charges.validation.ts delete mode 100644 src/validation/subscription/list_discounts.validation.ts delete mode 100644 src/validation/subscription/move.validation.ts delete mode 100644 src/validation/subscription/override_billing_profile.validation.ts delete mode 100644 src/validation/subscription/pause.validation.ts delete mode 100644 src/validation/subscription/reactivate.validation.ts delete mode 100644 src/validation/subscription/regenerate_invoice.validation.ts delete mode 100644 src/validation/subscription/remove_advance_invoice_schedule.validation.ts delete mode 100644 src/validation/subscription/remove_coupons.validation.ts delete mode 100644 src/validation/subscription/remove_scheduled_cancellation.validation.ts delete mode 100644 src/validation/subscription/resume.validation.ts delete mode 100644 src/validation/subscription/subscriptions_for_customer.validation.ts delete mode 100644 src/validation/subscription/update.validation.ts delete mode 100644 src/validation/subscription/update_for_items.validation.ts delete mode 100644 src/validation/subscription_entitlement/set_subscription_entitlement_availability.validation.ts delete mode 100644 src/validation/subscription_entitlement/subscription_entitlements_for_subscription.validation.ts delete mode 100644 src/validation/time_machine/start_afresh.validation.ts delete mode 100644 src/validation/time_machine/travel_forward.validation.ts delete mode 100644 src/validation/transaction/create_authorization.validation.ts delete mode 100644 src/validation/transaction/delete_offline_transaction.validation.ts delete mode 100644 src/validation/transaction/payments_for_invoice.validation.ts delete mode 100644 src/validation/transaction/reconcile.validation.ts delete mode 100644 src/validation/transaction/record_refund.validation.ts delete mode 100644 src/validation/transaction/refund.validation.ts delete mode 100644 src/validation/transaction/transactions_for_customer.validation.ts delete mode 100644 src/validation/transaction/transactions_for_subscription.validation.ts delete mode 100644 src/validation/unbilled_charge/create.validation.ts delete mode 100644 src/validation/unbilled_charge/create_unbilled_charge.validation.ts delete mode 100644 src/validation/unbilled_charge/invoice_now_estimate.validation.ts delete mode 100644 src/validation/unbilled_charge/invoice_unbilled_charges.validation.ts delete mode 100644 src/validation/usage/create.validation.ts delete mode 100644 src/validation/usage/delete.validation.ts delete mode 100644 src/validation/usage/list.validation.ts delete mode 100644 src/validation/usage/pdf.validation.ts delete mode 100644 src/validation/usage/retrieve.validation.ts delete mode 100644 src/validation/usage_charge/retrieve_usage_charges_for_subscription.validation.ts delete mode 100644 src/validation/usage_event/batch_ingest.validation.ts delete mode 100644 src/validation/usage_event/create.validation.ts delete mode 100644 src/validation/usage_file/upload_url.validation.ts delete mode 100644 src/validation/virtual_bank_account/create.validation.ts delete mode 100644 src/validation/virtual_bank_account/create_using_permanent_token.validation.ts delete mode 100644 src/validation/webhook_endpoint/create.validation.ts delete mode 100644 src/validation/webhook_endpoint/list.validation.ts delete mode 100644 src/validation/webhook_endpoint/update.validation.ts diff --git a/src/schema/addon.schema.ts b/src/schema/addon.schema.ts new file mode 100644 index 0000000..61dcc6c --- /dev/null +++ b/src/schema/addon.schema.ts @@ -0,0 +1,160 @@ +// Generated Zod schemas: Addon +// Actions: create, update, copy +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Addon.create + +const CreateAddonMetaDataSchema = z.looseObject({}); +const CreateAddonTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CreateAddonTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const CreateAddonBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + invoice_name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + charge_type: z.enum(['recurring', 'non_recurring']), + price: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + period: z.number().int().min(1).optional(), + period_unit: z + .enum(['day', 'week', 'month', 'year', 'not_applicable']) + .optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + type: z + .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) + .optional(), + unit: z.string().max(30).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + taxable: z.boolean().default(true).optional(), + tax_profile_id: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: CreateAddonMetaDataSchema.optional(), + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), + is_shippable: z.boolean().default(false).optional(), + shipping_frequency_period: z.number().int().min(1).optional(), + shipping_frequency_period_unit: z + .enum(['year', 'month', 'week', 'day']) + .optional(), + included_in_mrr: z.boolean().optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + price_in_decimal: z.string().max(39).optional(), + proration_type: z + .enum(['site_default', 'partial_term', 'full_term']) + .optional(), + status: z.enum(['active', 'archived']).optional(), + tiers: CreateAddonTiersSchema.optional(), + tax_providers_fields: CreateAddonTaxProvidersFieldsSchema.optional(), +}); +export { CreateAddonBodySchema }; +export type CreateAddonBody = z.infer; + +//Addon.update + +const UpdateAddonMetaDataSchema = z.looseObject({}); +const UpdateAddonTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const UpdateAddonTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const UpdateAddonBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + invoice_name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + charge_type: z.enum(['recurring', 'non_recurring']).optional(), + price: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + period: z.number().int().min(1).optional(), + period_unit: z + .enum(['day', 'week', 'month', 'year', 'not_applicable']) + .optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + type: z + .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) + .optional(), + unit: z.string().max(30).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + taxable: z.boolean().default(true).optional(), + tax_profile_id: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: UpdateAddonMetaDataSchema.optional(), + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), + is_shippable: z.boolean().default(false).optional(), + shipping_frequency_period: z.number().int().min(1).optional(), + shipping_frequency_period_unit: z + .enum(['year', 'month', 'week', 'day']) + .optional(), + included_in_mrr: z.boolean().optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + price_in_decimal: z.string().max(39).optional(), + proration_type: z + .enum(['site_default', 'partial_term', 'full_term']) + .optional(), + tiers: UpdateAddonTiersSchema.optional(), + tax_providers_fields: UpdateAddonTaxProvidersFieldsSchema.optional(), +}); +export { UpdateAddonBodySchema }; +export type UpdateAddonBody = z.infer; + +//Addon.copy + +const CopyAddonBodySchema = z.looseObject({ + from_site: z.string().max(50), + id_at_from_site: z.string().max(100), + id: z.string().max(100).optional(), + for_site_merging: z.boolean().default(false).optional(), +}); +export { CopyAddonBodySchema }; +export type CopyAddonBody = z.infer; diff --git a/src/validation/address/update.validation.ts b/src/schema/address.schema.ts similarity index 62% rename from src/validation/address/update.validation.ts rename to src/schema/address.schema.ts index 20046fa..2640758 100644 --- a/src/validation/address/update.validation.ts +++ b/src/schema/address.schema.ts @@ -1,8 +1,21 @@ -// Generated Zod validator: Address.update +// Generated Zod schemas: Address +// Actions: retrieve, update // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; -const updateAddressBodySchema = z.looseObject({ + +//Address.retrieve + +const RetrieveAddressBodySchema = z.looseObject({ + subscription_id: z.string().max(50), + label: z.string().max(50), +}); +export { RetrieveAddressBodySchema }; +export type RetrieveAddressBody = z.infer; + +//Address.update + +const UpdateAddressBodySchema = z.looseObject({ subscription_id: z.string().max(50), label: z.string().max(50), first_name: z.string().max(150).optional(), @@ -22,4 +35,5 @@ const updateAddressBodySchema = z.looseObject({ .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) .optional(), }); -export { updateAddressBodySchema }; +export { UpdateAddressBodySchema }; +export type UpdateAddressBody = z.infer; diff --git a/src/schema/alert.schema.ts b/src/schema/alert.schema.ts new file mode 100644 index 0000000..f146b48 --- /dev/null +++ b/src/schema/alert.schema.ts @@ -0,0 +1,42 @@ +// Generated Zod schemas: Alert +// Actions: create, update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Alert.create + +const CreateAlertThresholdSchema = z.object({ + mode: z.enum(['absolute', 'percentage']), + value: z.number(), +}); +const CreateAlertFilterConditionsSchema = z.object({ + field: z.array(z.enum(['plan_price_id']).optional()).optional(), + operator: z.array(z.enum(['equals', 'not_equals']).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateAlertBodySchema = z.looseObject({ + type: z.enum(['usage_exceeded']), + name: z.string().max(50), + description: z.string().max(65000).optional(), + metered_feature_id: z.string().max(50), + subscription_id: z.string().max(50).optional(), + meta: z.string().max(65000).optional(), + threshold: CreateAlertThresholdSchema.optional(), + filter_conditions: CreateAlertFilterConditionsSchema.optional(), +}); +export { CreateAlertBodySchema }; +export type CreateAlertBody = z.infer; + +//Alert.update + +const UpdateAlertThresholdSchema = z.object({ + mode: z.enum(['absolute', 'percentage']).optional(), + value: z.number().optional(), +}); +const UpdateAlertBodySchema = z.looseObject({ + status: z.enum(['enabled', 'disabled']).optional(), + threshold: UpdateAlertThresholdSchema.optional(), +}); +export { UpdateAlertBodySchema }; +export type UpdateAlertBody = z.infer; diff --git a/src/schema/attached_item.schema.ts b/src/schema/attached_item.schema.ts new file mode 100644 index 0000000..a0da71f --- /dev/null +++ b/src/schema/attached_item.schema.ts @@ -0,0 +1,76 @@ +// Generated Zod schemas: AttachedItem +// Actions: create, update, retrieve, delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//AttachedItem.create + +const CreateAttachedItemBodySchema = z.looseObject({ + item_id: z.string().max(100), + type: z.enum(['recommended', 'mandatory', 'optional']).optional(), + billing_cycles: z.number().int().min(1).optional(), + quantity: z.number().int().min(1).optional(), + quantity_in_decimal: z.string().max(33).optional(), + charge_on_event: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + charge_once: z.boolean().optional(), + business_entity_id: z.string().max(50).optional(), +}); +export { CreateAttachedItemBodySchema }; +export type CreateAttachedItemBody = z.infer< + typeof CreateAttachedItemBodySchema +>; + +//AttachedItem.update + +const UpdateAttachedItemBodySchema = z.looseObject({ + parent_item_id: z.string().max(100), + type: z.enum(['recommended', 'mandatory', 'optional']).optional(), + billing_cycles: z.number().int().min(1).optional(), + quantity: z.number().int().min(1).optional(), + quantity_in_decimal: z.string().max(33).optional(), + charge_on_event: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + charge_once: z.boolean().optional(), +}); +export { UpdateAttachedItemBodySchema }; +export type UpdateAttachedItemBody = z.infer< + typeof UpdateAttachedItemBodySchema +>; + +//AttachedItem.retrieve + +const RetrieveAttachedItemBodySchema = z.looseObject({ + parent_item_id: z.string().max(100), +}); +export { RetrieveAttachedItemBodySchema }; +export type RetrieveAttachedItemBody = z.infer< + typeof RetrieveAttachedItemBodySchema +>; + +//AttachedItem.delete + +const DeleteAttachedItemBodySchema = z.looseObject({ + parent_item_id: z.string().max(100), +}); +export { DeleteAttachedItemBodySchema }; +export type DeleteAttachedItemBody = z.infer< + typeof DeleteAttachedItemBodySchema +>; diff --git a/src/schema/business_entity.schema.ts b/src/schema/business_entity.schema.ts new file mode 100644 index 0000000..d1b67b1 --- /dev/null +++ b/src/schema/business_entity.schema.ts @@ -0,0 +1,55 @@ +// Generated Zod schemas: BusinessEntity +// Actions: createTransfers, getTransfers +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//BusinessEntity.createTransfers + +const CreateTransfersBusinessEntityBodySchema = z.looseObject({ + active_resource_ids: z.array(z.string().max(50).optional()), + destination_business_entity_ids: z.array(z.string().max(50).optional()), + source_business_entity_ids: z.array(z.string().max(50).optional()).optional(), + resource_types: z.array(z.string().max(50).optional()), + reason_codes: z.array(z.string().max(50).optional()), +}); +export { CreateTransfersBusinessEntityBodySchema }; +export type CreateTransfersBusinessEntityBody = z.infer< + typeof CreateTransfersBusinessEntityBodySchema +>; + +//BusinessEntity.getTransfers + +const GetTransfersBusinessEntityResourceTypeSchema = z.object({ + is: z.string().min(1).optional(), +}); +const GetTransfersBusinessEntityResourceIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const GetTransfersBusinessEntityActiveResourceIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const GetTransfersBusinessEntityCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const GetTransfersBusinessEntitySortBySchema = z.looseObject({ + asc: z.enum(['created_at']).optional(), + desc: z.enum(['created_at']).optional(), +}); +const GetTransfersBusinessEntityBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + resource_type: GetTransfersBusinessEntityResourceTypeSchema.optional(), + resource_id: GetTransfersBusinessEntityResourceIdSchema.optional(), + active_resource_id: + GetTransfersBusinessEntityActiveResourceIdSchema.optional(), + created_at: GetTransfersBusinessEntityCreatedAtSchema.optional(), + sort_by: GetTransfersBusinessEntitySortBySchema.optional(), +}); +export { GetTransfersBusinessEntityBodySchema }; +export type GetTransfersBusinessEntityBody = z.infer< + typeof GetTransfersBusinessEntityBodySchema +>; diff --git a/src/validation/card/update_card_for_customer.validation.ts b/src/schema/card.schema.ts similarity index 50% rename from src/validation/card/update_card_for_customer.validation.ts rename to src/schema/card.schema.ts index 20c07e7..ccfaff7 100644 --- a/src/validation/card/update_card_for_customer.validation.ts +++ b/src/schema/card.schema.ts @@ -1,11 +1,15 @@ -// Generated Zod validator: Card.updateCardForCustomer +// Generated Zod schemas: Card +// Actions: updateCardForCustomer, switchGatewayForCustomer, copyCardForCustomer // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; -const updateCardForCustomerCardCustomerSchema = z.object({ + +//Card.updateCardForCustomer + +const UpdateCardForCustomerCardCustomerSchema = z.object({ vat_number: z.string().max(20).optional(), }); -const updateCardForCustomerCardBodySchema = z.looseObject({ +const UpdateCardForCustomerCardBodySchema = z.looseObject({ gateway: z .enum([ 'chargebee', @@ -88,6 +92,87 @@ const updateCardForCustomerCardBodySchema = z.looseObject({ billing_zip: z.string().max(20).optional(), billing_country: z.string().max(50).optional(), ip_address: z.string().max(50).optional(), - customer: updateCardForCustomerCardCustomerSchema.optional(), + customer: UpdateCardForCustomerCardCustomerSchema.optional(), +}); +export { UpdateCardForCustomerCardBodySchema }; +export type UpdateCardForCustomerCardBody = z.infer< + typeof UpdateCardForCustomerCardBodySchema +>; + +//Card.switchGatewayForCustomer + +const SwitchGatewayForCustomerCardBodySchema = z.looseObject({ + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'wirecard', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50), +}); +export { SwitchGatewayForCustomerCardBodySchema }; +export type SwitchGatewayForCustomerCardBody = z.infer< + typeof SwitchGatewayForCustomerCardBodySchema +>; + +//Card.copyCardForCustomer + +const CopyCardForCustomerCardBodySchema = z.looseObject({ + gateway_account_id: z.string().max(50), }); -export { updateCardForCustomerCardBodySchema }; +export { CopyCardForCustomerCardBodySchema }; +export type CopyCardForCustomerCardBody = z.infer< + typeof CopyCardForCustomerCardBodySchema +>; diff --git a/src/schema/comment.schema.ts b/src/schema/comment.schema.ts new file mode 100644 index 0000000..7d57952 --- /dev/null +++ b/src/schema/comment.schema.ts @@ -0,0 +1,73 @@ +// Generated Zod schemas: Comment +// Actions: create, list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Comment.create + +const CreateCommentBodySchema = z.looseObject({ + entity_type: z.enum([ + 'customer', + 'subscription', + 'invoice', + 'quote', + 'credit_note', + 'transaction', + 'plan', + 'addon', + 'coupon', + 'order', + 'business_entity', + 'item_family', + 'item', + 'item_price', + 'price_variant', + ]), + entity_id: z.string().max(100), + notes: z.string().max(1000), + added_by: z.string().max(100).optional(), +}); +export { CreateCommentBodySchema }; +export type CreateCommentBody = z.infer; + +//Comment.list + +const ListCommentCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ListCommentSortBySchema = z.looseObject({ + asc: z.enum(['created_at']).optional(), + desc: z.enum(['created_at']).optional(), +}); +const ListCommentBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + entity_type: z + .enum([ + 'customer', + 'subscription', + 'invoice', + 'quote', + 'credit_note', + 'transaction', + 'plan', + 'addon', + 'coupon', + 'order', + 'business_entity', + 'item_family', + 'item', + 'item_price', + 'price_variant', + ]) + .optional(), + entity_id: z.string().max(100).optional(), + created_at: ListCommentCreatedAtSchema.optional(), + sort_by: ListCommentSortBySchema.optional(), +}); +export { ListCommentBodySchema }; +export type ListCommentBody = z.infer; diff --git a/src/schema/coupon.schema.ts b/src/schema/coupon.schema.ts new file mode 100644 index 0000000..6afa57e --- /dev/null +++ b/src/schema/coupon.schema.ts @@ -0,0 +1,236 @@ +// Generated Zod schemas: Coupon +// Actions: create, createForItems, updateForItems, update, copy +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Coupon.create + +const CreateCouponMetaDataSchema = z.looseObject({}); +const CreateCouponBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(50), + invoice_name: z.string().max(100).optional(), + discount_type: z + .enum(['fixed_amount', 'percentage', 'offer_quantity']) + .optional(), + discount_amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + discount_percentage: z.number().min(0.01).max(100).optional(), + discount_quantity: z.number().int().min(1).optional(), + apply_on: z.enum([ + 'invoice_amount', + 'specified_items_total', + 'each_specified_item', + 'each_unit_of_specified_items', + ]), + duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), + duration_month: z.number().int().min(1).max(240).optional(), + valid_till: z.number().int().optional(), + max_redemptions: z.number().int().min(1).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: CreateCouponMetaDataSchema.optional(), + included_in_mrr: z.boolean().optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + plan_constraint: z.enum(['none', 'all', 'specific']).optional(), + addon_constraint: z.enum(['none', 'all', 'specific']).optional(), + plan_ids: z.array(z.string().max(100).optional()).optional(), + addon_ids: z.array(z.string().max(100).optional()).optional(), + status: z.enum(['active', 'archived']).optional(), +}); +export { CreateCouponBodySchema }; +export type CreateCouponBody = z.infer; + +//Coupon.createForItems + +const CreateForItemsCouponMetaDataSchema = z.looseObject({}); +const CreateForItemsCouponItemConstraintsSchema = z.object({ + constraint: z.array( + z.enum(['none', 'all', 'specific', 'criteria']).optional(), + ), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()), + item_price_ids: z.array(z.array(z.string().optional()).optional()).optional(), +}); +const CreateForItemsCouponItemConstraintCriteriaSchema = z.object({ + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + item_family_ids: z + .array(z.array(z.string().optional()).optional()) + .optional(), + currencies: z.array(z.array(z.string().optional()).optional()).optional(), + item_price_periods: z + .array(z.array(z.string().optional()).optional()) + .optional(), +}); +const CreateForItemsCouponCouponConstraintsSchema = z.object({ + entity_type: z.array(z.enum(['customer']).optional()), + type: z.array( + z + .enum([ + 'max_redemptions', + 'unique_by', + 'existing_customer', + 'new_customer', + ]) + .optional(), + ), + value: z.array(z.string().max(65000).optional()).optional(), +}); +const CreateForItemsCouponBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(50), + invoice_name: z.string().max(100).optional(), + discount_type: z + .enum(['fixed_amount', 'percentage', 'offer_quantity']) + .optional(), + discount_amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + discount_percentage: z.number().min(0.01).max(100).optional(), + discount_quantity: z.number().int().min(1).optional(), + apply_on: z.enum([ + 'invoice_amount', + 'specified_items_total', + 'each_specified_item', + 'each_unit_of_specified_items', + ]), + duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), + duration_month: z.number().int().min(1).max(240).optional(), + valid_from: z.number().int().optional(), + valid_till: z.number().int().optional(), + max_redemptions: z.number().int().min(1).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: CreateForItemsCouponMetaDataSchema.optional(), + included_in_mrr: z.boolean().optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + status: z.enum(['active', 'archived']).optional(), + item_constraints: CreateForItemsCouponItemConstraintsSchema.optional(), + item_constraint_criteria: + CreateForItemsCouponItemConstraintCriteriaSchema.optional(), + coupon_constraints: CreateForItemsCouponCouponConstraintsSchema.optional(), +}); +export { CreateForItemsCouponBodySchema }; +export type CreateForItemsCouponBody = z.infer< + typeof CreateForItemsCouponBodySchema +>; + +//Coupon.updateForItems + +const UpdateForItemsCouponMetaDataSchema = z.looseObject({}); +const UpdateForItemsCouponItemConstraintsSchema = z.object({ + constraint: z.array( + z.enum(['none', 'all', 'specific', 'criteria']).optional(), + ), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()), + item_price_ids: z.array(z.array(z.string().optional()).optional()).optional(), +}); +const UpdateForItemsCouponItemConstraintCriteriaSchema = z.object({ + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + item_family_ids: z + .array(z.array(z.string().optional()).optional()) + .optional(), + currencies: z.array(z.array(z.string().optional()).optional()).optional(), + item_price_periods: z + .array(z.array(z.string().optional()).optional()) + .optional(), +}); +const UpdateForItemsCouponCouponConstraintsSchema = z.object({ + entity_type: z.array(z.enum(['customer']).optional()), + type: z.array( + z + .enum([ + 'max_redemptions', + 'unique_by', + 'existing_customer', + 'new_customer', + ]) + .optional(), + ), + value: z.array(z.string().max(65000).optional()).optional(), +}); +const UpdateForItemsCouponBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + invoice_name: z.string().max(100).optional(), + discount_type: z + .enum(['fixed_amount', 'percentage', 'offer_quantity']) + .optional(), + discount_amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + discount_percentage: z.number().min(0.01).max(100).optional(), + discount_quantity: z.number().int().min(1).optional(), + apply_on: z + .enum([ + 'invoice_amount', + 'specified_items_total', + 'each_specified_item', + 'each_unit_of_specified_items', + ]) + .optional(), + duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), + duration_month: z.number().int().min(1).max(240).optional(), + valid_from: z.number().int().optional(), + valid_till: z.number().int().optional(), + max_redemptions: z.number().int().min(1).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: UpdateForItemsCouponMetaDataSchema.optional(), + included_in_mrr: z.boolean().optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + item_constraints: UpdateForItemsCouponItemConstraintsSchema.optional(), + item_constraint_criteria: + UpdateForItemsCouponItemConstraintCriteriaSchema.optional(), + coupon_constraints: UpdateForItemsCouponCouponConstraintsSchema.optional(), +}); +export { UpdateForItemsCouponBodySchema }; +export type UpdateForItemsCouponBody = z.infer< + typeof UpdateForItemsCouponBodySchema +>; + +//Coupon.update + +const UpdateCouponMetaDataSchema = z.looseObject({}); +const UpdateCouponBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + invoice_name: z.string().max(100).optional(), + discount_type: z + .enum(['fixed_amount', 'percentage', 'offer_quantity']) + .optional(), + discount_amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + discount_percentage: z.number().min(0.01).max(100).optional(), + discount_quantity: z.number().int().min(1).optional(), + apply_on: z + .enum([ + 'invoice_amount', + 'specified_items_total', + 'each_specified_item', + 'each_unit_of_specified_items', + ]) + .optional(), + duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), + duration_month: z.number().int().min(1).max(240).optional(), + valid_till: z.number().int().optional(), + max_redemptions: z.number().int().min(1).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: UpdateCouponMetaDataSchema.optional(), + included_in_mrr: z.boolean().optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + plan_constraint: z.enum(['none', 'all', 'specific']).optional(), + addon_constraint: z.enum(['none', 'all', 'specific']).optional(), + plan_ids: z.array(z.string().max(100).optional()).optional(), + addon_ids: z.array(z.string().max(100).optional()).optional(), +}); +export { UpdateCouponBodySchema }; +export type UpdateCouponBody = z.infer; + +//Coupon.copy + +const CopyCouponBodySchema = z.looseObject({ + from_site: z.string().max(50), + id_at_from_site: z.string().max(100), + id: z.string().max(100).optional(), + for_site_merging: z.boolean().default(false).optional(), +}); +export { CopyCouponBodySchema }; +export type CopyCouponBody = z.infer; diff --git a/src/schema/coupon_code.schema.ts b/src/schema/coupon_code.schema.ts new file mode 100644 index 0000000..578f591 --- /dev/null +++ b/src/schema/coupon_code.schema.ts @@ -0,0 +1,15 @@ +// Generated Zod schemas: CouponCode +// Actions: create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//CouponCode.create + +const CreateCouponCodeBodySchema = z.looseObject({ + coupon_id: z.string().max(100), + coupon_set_name: z.string().max(50), + code: z.string().max(50), +}); +export { CreateCouponCodeBodySchema }; +export type CreateCouponCodeBody = z.infer; diff --git a/src/schema/coupon_set.schema.ts b/src/schema/coupon_set.schema.ts new file mode 100644 index 0000000..13b259c --- /dev/null +++ b/src/schema/coupon_set.schema.ts @@ -0,0 +1,37 @@ +// Generated Zod schemas: CouponSet +// Actions: create, addCouponCodes, update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//CouponSet.create + +const CreateCouponSetMetaDataSchema = z.looseObject({}); +const CreateCouponSetBodySchema = z.looseObject({ + coupon_id: z.string().max(100), + name: z.string().max(50), + id: z.string().max(50), + meta_data: CreateCouponSetMetaDataSchema.optional(), +}); +export { CreateCouponSetBodySchema }; +export type CreateCouponSetBody = z.infer; + +//CouponSet.addCouponCodes + +const AddCouponCodesCouponSetBodySchema = z.looseObject({ + code: z.array(z.string().max(50).optional()).optional(), +}); +export { AddCouponCodesCouponSetBodySchema }; +export type AddCouponCodesCouponSetBody = z.infer< + typeof AddCouponCodesCouponSetBodySchema +>; + +//CouponSet.update + +const UpdateCouponSetMetaDataSchema = z.looseObject({}); +const UpdateCouponSetBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + meta_data: UpdateCouponSetMetaDataSchema.optional(), +}); +export { UpdateCouponSetBodySchema }; +export type UpdateCouponSetBody = z.infer; diff --git a/src/schema/credit_note.schema.ts b/src/schema/credit_note.schema.ts new file mode 100644 index 0000000..1d52afe --- /dev/null +++ b/src/schema/credit_note.schema.ts @@ -0,0 +1,338 @@ +// Generated Zod schemas: CreditNote +// Actions: create, retrieve, pdf, refund, recordRefund, voidCreditNote, creditNotesForCustomer, delete, removeTaxWithheldRefund, importCreditNote +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//CreditNote.create + +const CreateCreditNoteLineItemsSchema = z.object({ + reference_line_item_id: z.array(z.string().max(40).optional()).optional(), + unit_amount: z.array(z.number().int().optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity: z.array(z.number().int().optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + amount: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + entity_type: z + .array( + z + .enum([ + 'adhoc', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateCreditNoteBodySchema = z.looseObject({ + reference_invoice_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), + total: z.number().int().min(0).optional(), + type: z.enum(['adjustment', 'refundable', 'store']), + reason_code: z + .enum([ + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + ]) + .optional(), + create_reason_code: z.string().max(100).optional(), + date: z.number().int().optional(), + customer_notes: z.string().max(2000).optional(), + currency_code: z.string().max(3).optional(), + comment: z.string().max(300).optional(), + line_items: CreateCreditNoteLineItemsSchema.optional(), +}); +export { CreateCreditNoteBodySchema }; +export type CreateCreditNoteBody = z.infer; + +//CreditNote.retrieve + +const RetrieveCreditNoteSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const RetrieveCreditNoteCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const RetrieveCreditNoteLineItemSchema = z.object({ + subscription_id: RetrieveCreditNoteSubscriptionIdSchema.optional(), + customer_id: RetrieveCreditNoteCustomerIdSchema.optional(), +}); +const RetrieveCreditNoteBodySchema = z.looseObject({ + line_items_limit: z.number().int().min(1).max(300).optional(), + line_items_offset: z.string().max(1000).optional(), + line_item: RetrieveCreditNoteLineItemSchema.optional(), +}); +export { RetrieveCreditNoteBodySchema }; +export type RetrieveCreditNoteBody = z.infer< + typeof RetrieveCreditNoteBodySchema +>; + +//CreditNote.pdf + +const PdfCreditNoteBodySchema = z.looseObject({ + disposition_type: z.enum(['attachment', 'inline']).optional(), +}); +export { PdfCreditNoteBodySchema }; +export type PdfCreditNoteBody = z.infer; + +//CreditNote.refund + +const RefundCreditNoteBodySchema = z.looseObject({ + refund_amount: z.number().int().min(1).optional(), + customer_notes: z.string().max(2000).optional(), + refund_reason_code: z.string().max(100).optional(), +}); +export { RefundCreditNoteBodySchema }; +export type RefundCreditNoteBody = z.infer; + +//CreditNote.recordRefund + +const RecordRefundCreditNoteTransactionSchema = z.object({ + id: z.string().max(40).optional(), + amount: z.number().int().min(0).optional(), + payment_method: z.enum([ + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), + date: z.number().int(), +}); +const RecordRefundCreditNoteBodySchema = z.looseObject({ + refund_reason_code: z.string().max(100).optional(), + comment: z.string().max(300).optional(), + transaction: RecordRefundCreditNoteTransactionSchema.optional(), +}); +export { RecordRefundCreditNoteBodySchema }; +export type RecordRefundCreditNoteBody = z.infer< + typeof RecordRefundCreditNoteBodySchema +>; + +//CreditNote.voidCreditNote + +const VoidCreditNoteCreditNoteBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { VoidCreditNoteCreditNoteBodySchema }; +export type VoidCreditNoteCreditNoteBody = z.infer< + typeof VoidCreditNoteCreditNoteBodySchema +>; + +//CreditNote.creditNotesForCustomer + +const CreditNotesForCustomerCreditNoteBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { CreditNotesForCustomerCreditNoteBodySchema }; +export type CreditNotesForCustomerCreditNoteBody = z.infer< + typeof CreditNotesForCustomerCreditNoteBodySchema +>; + +//CreditNote.delete + +const DeleteCreditNoteBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { DeleteCreditNoteBodySchema }; +export type DeleteCreditNoteBody = z.infer; + +//CreditNote.removeTaxWithheldRefund + +const RemoveTaxWithheldRefundCreditNoteTaxWithheldSchema = z.object({ + id: z.string().max(40), +}); +const RemoveTaxWithheldRefundCreditNoteBodySchema = z.looseObject({ + tax_withheld: RemoveTaxWithheldRefundCreditNoteTaxWithheldSchema.optional(), +}); +export { RemoveTaxWithheldRefundCreditNoteBodySchema }; +export type RemoveTaxWithheldRefundCreditNoteBody = z.infer< + typeof RemoveTaxWithheldRefundCreditNoteBodySchema +>; + +//CreditNote.importCreditNote + +const ImportCreditNoteCreditNoteLineItemsSchema = z.object({ + reference_line_item_id: z.array(z.string().max(40).optional()).optional(), + id: z.array(z.string().max(40).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), + subscription_id: z.array(z.string().max(50).optional()).optional(), + description: z.array(z.string().max(250).optional()), + unit_amount: z.array(z.number().int().optional()).optional(), + quantity: z.array(z.number().int().optional()).optional(), + amount: z.array(z.number().int().optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + entity_type: z + .array( + z + .enum([ + 'adhoc', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan_setup', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), + item_level_discount1_entity_id: z + .array(z.string().max(100).optional()) + .optional(), + item_level_discount1_amount: z + .array(z.number().int().min(0).optional()) + .optional(), + item_level_discount2_entity_id: z + .array(z.string().max(100).optional()) + .optional(), + item_level_discount2_amount: z + .array(z.number().int().min(0).optional()) + .optional(), + tax1_name: z.array(z.string().max(50).optional()).optional(), + tax1_amount: z.array(z.number().int().min(0).optional()).optional(), + tax2_name: z.array(z.string().max(50).optional()).optional(), + tax2_amount: z.array(z.number().int().min(0).optional()).optional(), + tax3_name: z.array(z.string().max(50).optional()).optional(), + tax3_amount: z.array(z.number().int().min(0).optional()).optional(), + tax4_name: z.array(z.string().max(50).optional()).optional(), + tax4_amount: z.array(z.number().int().min(0).optional()).optional(), + tax5_name: z.array(z.string().max(50).optional()).optional(), + tax5_amount: z.array(z.number().int().min(0).optional()).optional(), + tax6_name: z.array(z.string().max(50).optional()).optional(), + tax6_amount: z.array(z.number().int().min(0).optional()).optional(), + tax7_name: z.array(z.string().max(50).optional()).optional(), + tax7_amount: z.array(z.number().int().min(0).optional()).optional(), + tax8_name: z.array(z.string().max(50).optional()).optional(), + tax8_amount: z.array(z.number().int().min(0).optional()).optional(), + tax9_name: z.array(z.string().max(50).optional()).optional(), + tax9_amount: z.array(z.number().int().min(0).optional()).optional(), + tax10_name: z.array(z.string().max(50).optional()).optional(), + tax10_amount: z.array(z.number().int().min(0).optional()).optional(), +}); +const ImportCreditNoteCreditNoteLineItemTiersSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()), + starting_unit: z.array(z.number().int().min(0).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + quantity_used: z.array(z.number().int().min(0).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), +}); +const ImportCreditNoteCreditNoteDiscountsSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()).optional(), + entity_type: z.array( + z + .enum([ + 'item_level_coupon', + 'document_level_coupon', + 'promotional_credits', + 'item_level_discount', + 'document_level_discount', + ]) + .optional(), + ), + entity_id: z.array(z.string().max(100).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()), +}); +const ImportCreditNoteCreditNoteTaxesSchema = z.object({ + name: z.array(z.string().max(100).optional()), + rate: z.array(z.number().min(0).max(100).optional()), + amount: z.array(z.number().int().min(0).optional()).optional(), + description: z.array(z.string().max(50).optional()).optional(), + juris_type: z + .array( + z + .enum([ + 'country', + 'federal', + 'state', + 'county', + 'city', + 'special', + 'unincorporated', + 'other', + ]) + .optional(), + ) + .optional(), + juris_name: z.array(z.string().max(250).optional()).optional(), + juris_code: z.array(z.string().max(250).optional()).optional(), +}); +const ImportCreditNoteCreditNoteAllocationsSchema = z.object({ + invoice_id: z.array(z.string().max(50).optional()), + allocated_amount: z.array(z.number().int().min(1).optional()), + allocated_at: z.array(z.number().int().optional()), +}); +const ImportCreditNoteCreditNoteLinkedRefundsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + amount: z.array(z.number().int().min(1).optional()), + payment_method: z.array( + z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + ), + date: z.array(z.number().int().optional()), + reference_number: z.array(z.string().max(100).min(1).optional()).optional(), +}); +const ImportCreditNoteCreditNoteBodySchema = z.looseObject({ + id: z.string().max(50), + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + reference_invoice_id: z.string().max(50), + type: z.enum(['adjustment', 'refundable', 'store']), + currency_code: z.string().max(3).optional(), + create_reason_code: z.string().max(100), + date: z.number().int(), + status: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), + total: z.number().int().min(0).optional(), + refunded_at: z.number().int().optional(), + voided_at: z.number().int().optional(), + sub_total: z.number().int().min(0).optional(), + round_off_amount: z.number().int().min(-99).max(99).optional(), + fractional_correction: z.number().int().min(-50000).max(50000).optional(), + vat_number_prefix: z.string().max(10).optional(), + line_items: ImportCreditNoteCreditNoteLineItemsSchema.optional(), + line_item_tiers: ImportCreditNoteCreditNoteLineItemTiersSchema.optional(), + discounts: ImportCreditNoteCreditNoteDiscountsSchema.optional(), + taxes: ImportCreditNoteCreditNoteTaxesSchema.optional(), + allocations: ImportCreditNoteCreditNoteAllocationsSchema.optional(), + linked_refunds: ImportCreditNoteCreditNoteLinkedRefundsSchema.optional(), +}); +export { ImportCreditNoteCreditNoteBodySchema }; +export type ImportCreditNoteCreditNoteBody = z.infer< + typeof ImportCreditNoteCreditNoteBodySchema +>; diff --git a/src/schema/currency.schema.ts b/src/schema/currency.schema.ts new file mode 100644 index 0000000..d1de6ed --- /dev/null +++ b/src/schema/currency.schema.ts @@ -0,0 +1,44 @@ +// Generated Zod schemas: Currency +// Actions: list, create, update, addSchedule +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Currency.list + +const ListCurrencyBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { ListCurrencyBodySchema }; +export type ListCurrencyBody = z.infer; + +//Currency.create + +const CreateCurrencyBodySchema = z.looseObject({ + currency_code: z.string().max(3), + forex_type: z.enum(['manual', 'auto']), + manual_exchange_rate: z.string().max(20).optional(), +}); +export { CreateCurrencyBodySchema }; +export type CreateCurrencyBody = z.infer; + +//Currency.update + +const UpdateCurrencyBodySchema = z.looseObject({ + forex_type: z.enum(['manual', 'auto']), + manual_exchange_rate: z.string().max(20).optional(), +}); +export { UpdateCurrencyBodySchema }; +export type UpdateCurrencyBody = z.infer; + +//Currency.addSchedule + +const AddScheduleCurrencyBodySchema = z.looseObject({ + manual_exchange_rate: z.string().max(20), + schedule_at: z.number().int(), +}); +export { AddScheduleCurrencyBodySchema }; +export type AddScheduleCurrencyBody = z.infer< + typeof AddScheduleCurrencyBodySchema +>; diff --git a/src/schema/customer.schema.ts b/src/schema/customer.schema.ts new file mode 100644 index 0000000..34ddc1a --- /dev/null +++ b/src/schema/customer.schema.ts @@ -0,0 +1,1095 @@ +// Generated Zod schemas: Customer +// Actions: create, update, updatePaymentMethod, updateBillingInfo, contactsForCustomer, assignPaymentRole, addContact, updateContact, deleteContact, addPromotionalCredits, deductPromotionalCredits, setPromotionalCredits, recordExcessPayment, collectPayment, delete, move, changeBillingDate, merge, relationships, hierarchy, listHierarchyDetail, updateHierarchySettings +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Customer.create + +const CreateCustomerMetaDataSchema = z.looseObject({}); +const CreateCustomerAdditionalInformationSchema = z.looseObject({}); +const CreateCustomerCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: CreateCustomerAdditionalInformationSchema.optional(), +}); +const CreateCustomerBillingAddressSchema = z.looseObject({}); +const CreateCustomerBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + issuing_country: z.string().max(50).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: CreateCustomerBillingAddressSchema.optional(), +}); +const CreateCustomerPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: CreateCustomerAdditionalInformationSchema.optional(), +}); +const CreateCustomerPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: CreateCustomerAdditionalInformationSchema.optional(), +}); +const CreateCustomerEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const CreateCustomerTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateCustomerBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + preferred_currency_code: z.string().max(3).optional(), + phone: z.string().max(50).optional(), + company: z.string().max(250).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + net_term_days: z.number().int().optional(), + allow_direct_debit: z.boolean().default(false).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + registered_for_gst: z.boolean().optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), + client_profile_id: z.string().max(50).optional(), + taxjar_exemption_category: z + .enum(['wholesale', 'government', 'other']) + .optional(), + business_customer_without_vat_number: z.boolean().optional(), + locale: z.string().max(50).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + meta_data: CreateCustomerMetaDataSchema.optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + auto_close_invoices: z.boolean().optional(), + consolidated_invoicing: z.boolean().optional(), + token_id: z.string().max(40).optional(), + business_entity_id: z.string().max(50).optional(), + created_from_ip: z.string().max(50).optional(), + invoice_notes: z.string().max(2000).optional(), + card: CreateCustomerCardSchema.optional(), + bank_account: CreateCustomerBankAccountSchema.optional(), + payment_method: CreateCustomerPaymentMethodSchema.optional(), + payment_intent: CreateCustomerPaymentIntentSchema.optional(), + billing_address: CreateCustomerBillingAddressSchema.optional(), + entity_identifiers: CreateCustomerEntityIdentifiersSchema.optional(), + tax_providers_fields: CreateCustomerTaxProvidersFieldsSchema.optional(), +}); +export { CreateCustomerBodySchema }; +export type CreateCustomerBody = z.infer; + +//Customer.update + +const UpdateCustomerMetaDataSchema = z.looseObject({}); +const UpdateCustomerTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const UpdateCustomerBodySchema = z.looseObject({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + preferred_currency_code: z.string().max(3).optional(), + phone: z.string().max(50).optional(), + company: z.string().max(250).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + allow_direct_debit: z.boolean().default(false).optional(), + net_term_days: z.number().int().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), + client_profile_id: z.string().max(50).optional(), + taxjar_exemption_category: z + .enum(['wholesale', 'government', 'other']) + .optional(), + locale: z.string().max(50).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + auto_close_invoices: z.boolean().optional(), + meta_data: UpdateCustomerMetaDataSchema.optional(), + fraud_flag: z.enum(['safe', 'fraudulent']).optional(), + consolidated_invoicing: z.boolean().optional(), + tax_providers_fields: UpdateCustomerTaxProvidersFieldsSchema.optional(), +}); +export { UpdateCustomerBodySchema }; +export type UpdateCustomerBody = z.infer; + +//Customer.updatePaymentMethod + +const UpdatePaymentMethodCustomerAdditionalInformationSchema = z.looseObject( + {}, +); +const UpdatePaymentMethodCustomerPaymentMethodSchema = z.object({ + type: z.enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + UpdatePaymentMethodCustomerAdditionalInformationSchema.optional(), +}); +const UpdatePaymentMethodCustomerBodySchema = z.looseObject({ + payment_method: UpdatePaymentMethodCustomerPaymentMethodSchema.optional(), +}); +export { UpdatePaymentMethodCustomerBodySchema }; +export type UpdatePaymentMethodCustomerBody = z.infer< + typeof UpdatePaymentMethodCustomerBodySchema +>; + +//Customer.updateBillingInfo + +const UpdateBillingInfoCustomerBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateBillingInfoCustomerEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + operation: z + .array(z.enum(['create', 'update', 'delete']).optional()) + .optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const UpdateBillingInfoCustomerTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const UpdateBillingInfoCustomerBodySchema = z.looseObject({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + registered_for_gst: z.boolean().optional(), + business_customer_without_vat_number: z.boolean().optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + billing_address: UpdateBillingInfoCustomerBillingAddressSchema.optional(), + entity_identifiers: + UpdateBillingInfoCustomerEntityIdentifiersSchema.optional(), + tax_providers_fields: + UpdateBillingInfoCustomerTaxProvidersFieldsSchema.optional(), +}); +export { UpdateBillingInfoCustomerBodySchema }; +export type UpdateBillingInfoCustomerBody = z.infer< + typeof UpdateBillingInfoCustomerBodySchema +>; + +//Customer.contactsForCustomer + +const ContactsForCustomerCustomerBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { ContactsForCustomerCustomerBodySchema }; +export type ContactsForCustomerCustomerBody = z.infer< + typeof ContactsForCustomerCustomerBodySchema +>; + +//Customer.assignPaymentRole + +const AssignPaymentRoleCustomerBodySchema = z.looseObject({ + payment_source_id: z.string().max(40), + role: z.enum(['primary', 'backup', 'none']), +}); +export { AssignPaymentRoleCustomerBodySchema }; +export type AssignPaymentRoleCustomerBody = z.infer< + typeof AssignPaymentRoleCustomerBodySchema +>; + +//Customer.addContact + +const AddContactCustomerContactSchema = z.object({ + id: z.string().max(150).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70), + phone: z.string().max(50).optional(), + label: z.string().max(50).optional(), + enabled: z.boolean().default(false).optional(), + send_billing_email: z.boolean().default(false).optional(), + send_account_email: z.boolean().default(false).optional(), +}); +const AddContactCustomerBodySchema = z.looseObject({ + contact: AddContactCustomerContactSchema.optional(), +}); +export { AddContactCustomerBodySchema }; +export type AddContactCustomerBody = z.infer< + typeof AddContactCustomerBodySchema +>; + +//Customer.updateContact + +const UpdateContactCustomerContactSchema = z.object({ + id: z.string().max(150), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + label: z.string().max(50).optional(), + enabled: z.boolean().default(false).optional(), + send_billing_email: z.boolean().default(false).optional(), + send_account_email: z.boolean().default(false).optional(), +}); +const UpdateContactCustomerBodySchema = z.looseObject({ + contact: UpdateContactCustomerContactSchema.optional(), +}); +export { UpdateContactCustomerBodySchema }; +export type UpdateContactCustomerBody = z.infer< + typeof UpdateContactCustomerBodySchema +>; + +//Customer.deleteContact + +const DeleteContactCustomerContactSchema = z.object({ + id: z.string().max(150), +}); +const DeleteContactCustomerBodySchema = z.looseObject({ + contact: DeleteContactCustomerContactSchema.optional(), +}); +export { DeleteContactCustomerBodySchema }; +export type DeleteContactCustomerBody = z.infer< + typeof DeleteContactCustomerBodySchema +>; + +//Customer.addPromotionalCredits + +const AddPromotionalCreditsCustomerBodySchema = z.looseObject({ + amount: z.number().int().min(1), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { AddPromotionalCreditsCustomerBodySchema }; +export type AddPromotionalCreditsCustomerBody = z.infer< + typeof AddPromotionalCreditsCustomerBodySchema +>; + +//Customer.deductPromotionalCredits + +const DeductPromotionalCreditsCustomerBodySchema = z.looseObject({ + amount: z.number().int().min(1), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { DeductPromotionalCreditsCustomerBodySchema }; +export type DeductPromotionalCreditsCustomerBody = z.infer< + typeof DeductPromotionalCreditsCustomerBodySchema +>; + +//Customer.setPromotionalCredits + +const SetPromotionalCreditsCustomerBodySchema = z.looseObject({ + amount: z.number().int().min(0), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { SetPromotionalCreditsCustomerBodySchema }; +export type SetPromotionalCreditsCustomerBody = z.infer< + typeof SetPromotionalCreditsCustomerBodySchema +>; + +//Customer.recordExcessPayment + +const RecordExcessPaymentCustomerTransactionSchema = z.object({ + id: z.string().max(40).optional(), + amount: z.number().int().min(0), + currency_code: z.string().max(3).optional(), + date: z.number().int(), + payment_method: z.enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), +}); +const RecordExcessPaymentCustomerBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + transaction: RecordExcessPaymentCustomerTransactionSchema.optional(), +}); +export { RecordExcessPaymentCustomerBodySchema }; +export type RecordExcessPaymentCustomerBody = z.infer< + typeof RecordExcessPaymentCustomerBodySchema +>; + +//Customer.collectPayment + +const CollectPaymentCustomerAdditionalInformationSchema = z.looseObject({}); +const CollectPaymentCustomerPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + additional_information: + CollectPaymentCustomerAdditionalInformationSchema.optional(), +}); +const CollectPaymentCustomerCardSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + additional_information: + CollectPaymentCustomerAdditionalInformationSchema.optional(), +}); +const CollectPaymentCustomerPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gw_payment_method_id: z.string().max(65000).optional(), + reference_id: z.string().max(65000).optional(), + additional_information: + CollectPaymentCustomerAdditionalInformationSchema.optional(), +}); +const CollectPaymentCustomerInvoiceAllocationsSchema = z.object({ + invoice_id: z.array(z.string().max(50).optional()), + allocation_amount: z.array(z.number().int().min(0).optional()).optional(), +}); +const CollectPaymentCustomerBodySchema = z.looseObject({ + amount: z.number().int().min(0).optional(), + payment_source_id: z.string().max(40).optional(), + token_id: z.string().max(40).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + retain_payment_source: z.boolean().default(false).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + payment_method: CollectPaymentCustomerPaymentMethodSchema.optional(), + card: CollectPaymentCustomerCardSchema.optional(), + payment_intent: CollectPaymentCustomerPaymentIntentSchema.optional(), + invoice_allocations: + CollectPaymentCustomerInvoiceAllocationsSchema.optional(), +}); +export { CollectPaymentCustomerBodySchema }; +export type CollectPaymentCustomerBody = z.infer< + typeof CollectPaymentCustomerBodySchema +>; + +//Customer.delete + +const DeleteCustomerBodySchema = z.looseObject({ + delete_payment_method: z.boolean().default(true).optional(), +}); +export { DeleteCustomerBodySchema }; +export type DeleteCustomerBody = z.infer; + +//Customer.move + +const MoveCustomerBodySchema = z.looseObject({ + id_at_from_site: z.string().max(100), + from_site: z.string().max(50), +}); +export { MoveCustomerBodySchema }; +export type MoveCustomerBody = z.infer; + +//Customer.changeBillingDate + +const ChangeBillingDateCustomerBodySchema = z.looseObject({ + billing_date: z.number().int().min(1).max(31).optional(), + billing_month: z.number().int().min(1).max(12).optional(), + billing_date_mode: z.enum(['using_defaults', 'manually_set']).optional(), + billing_day_of_week: z + .enum([ + 'sunday', + 'monday', + 'tuesday', + 'wednesday', + 'thursday', + 'friday', + 'saturday', + ]) + .optional(), + billing_day_of_week_mode: z + .enum(['using_defaults', 'manually_set']) + .optional(), +}); +export { ChangeBillingDateCustomerBodySchema }; +export type ChangeBillingDateCustomerBody = z.infer< + typeof ChangeBillingDateCustomerBodySchema +>; + +//Customer.merge + +const MergeCustomerBodySchema = z.looseObject({ + from_customer_id: z.string().max(50), + to_customer_id: z.string().max(50), +}); +export { MergeCustomerBodySchema }; +export type MergeCustomerBody = z.infer; + +//Customer.relationships + +const RelationshipsCustomerParentAccountAccessSchema = z.object({ + portal_edit_child_subscriptions: z + .enum(['yes', 'view_only', 'no']) + .optional(), + portal_download_child_invoices: z.enum(['yes', 'view_only', 'no']).optional(), + send_subscription_emails: z.boolean().optional(), + send_payment_emails: z.boolean().optional(), + send_invoice_emails: z.boolean().optional(), +}); +const RelationshipsCustomerChildAccountAccessSchema = z.object({ + portal_edit_subscriptions: z.enum(['yes', 'view_only']).optional(), + portal_download_invoices: z.enum(['yes', 'view_only', 'no']).optional(), + send_subscription_emails: z.boolean().optional(), + send_payment_emails: z.boolean().optional(), + send_invoice_emails: z.boolean().optional(), +}); +const RelationshipsCustomerBodySchema = z.looseObject({ + parent_id: z.string().max(50).optional(), + payment_owner_id: z.string().max(50).optional(), + invoice_owner_id: z.string().max(50).optional(), + use_default_hierarchy_settings: z.boolean().default(true).optional(), + parent_account_access: + RelationshipsCustomerParentAccountAccessSchema.optional(), + child_account_access: + RelationshipsCustomerChildAccountAccessSchema.optional(), +}); +export { RelationshipsCustomerBodySchema }; +export type RelationshipsCustomerBody = z.infer< + typeof RelationshipsCustomerBodySchema +>; + +//Customer.hierarchy + +const HierarchyCustomerBodySchema = z.looseObject({ + hierarchy_operation_type: z.enum([ + 'complete_hierarchy', + 'subordinates', + 'path_to_root', + 'subordinates_with_unbilled_charges_payable_by_parent', + 'immediate_children', + ]), +}); +export { HierarchyCustomerBodySchema }; +export type HierarchyCustomerBody = z.infer; + +//Customer.listHierarchyDetail + +const ListHierarchyDetailCustomerBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + hierarchy_operation_type: z.enum([ + 'complete_hierarchy', + 'subordinates', + 'path_to_root', + 'subordinates_with_unbilled_charges_payable_by_parent', + 'immediate_children', + ]), +}); +export { ListHierarchyDetailCustomerBodySchema }; +export type ListHierarchyDetailCustomerBody = z.infer< + typeof ListHierarchyDetailCustomerBodySchema +>; + +//Customer.updateHierarchySettings + +const UpdateHierarchySettingsCustomerParentAccountAccessSchema = z.object({ + portal_edit_child_subscriptions: z + .enum(['yes', 'view_only', 'no']) + .optional(), + portal_download_child_invoices: z.enum(['yes', 'view_only', 'no']).optional(), + send_subscription_emails: z.boolean().optional(), + send_payment_emails: z.boolean().optional(), + send_invoice_emails: z.boolean().optional(), +}); +const UpdateHierarchySettingsCustomerChildAccountAccessSchema = z.object({ + portal_edit_subscriptions: z.enum(['yes', 'view_only']).optional(), + portal_download_invoices: z.enum(['yes', 'view_only', 'no']).optional(), + send_subscription_emails: z.boolean().optional(), + send_payment_emails: z.boolean().optional(), + send_invoice_emails: z.boolean().optional(), +}); +const UpdateHierarchySettingsCustomerBodySchema = z.looseObject({ + use_default_hierarchy_settings: z.boolean().default(true).optional(), + parent_account_access: + UpdateHierarchySettingsCustomerParentAccountAccessSchema.optional(), + child_account_access: + UpdateHierarchySettingsCustomerChildAccountAccessSchema.optional(), +}); +export { UpdateHierarchySettingsCustomerBodySchema }; +export type UpdateHierarchySettingsCustomerBody = z.infer< + typeof UpdateHierarchySettingsCustomerBodySchema +>; diff --git a/src/schema/customer_entitlement.schema.ts b/src/schema/customer_entitlement.schema.ts new file mode 100644 index 0000000..cb9e4c9 --- /dev/null +++ b/src/schema/customer_entitlement.schema.ts @@ -0,0 +1,17 @@ +// Generated Zod schemas: CustomerEntitlement +// Actions: entitlementsForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//CustomerEntitlement.entitlementsForCustomer + +const EntitlementsForCustomerCustomerEntitlementBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + consolidate_entitlements: z.boolean().default(false).optional(), +}); +export { EntitlementsForCustomerCustomerEntitlementBodySchema }; +export type EntitlementsForCustomerCustomerEntitlementBody = z.infer< + typeof EntitlementsForCustomerCustomerEntitlementBodySchema +>; diff --git a/src/schema/differential_price.schema.ts b/src/schema/differential_price.schema.ts new file mode 100644 index 0000000..2a656d8 --- /dev/null +++ b/src/schema/differential_price.schema.ts @@ -0,0 +1,86 @@ +// Generated Zod schemas: DifferentialPrice +// Actions: create, retrieve, update, delete +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//DifferentialPrice.create + +const CreateDifferentialPriceParentPeriodsSchema = z.object({ + period_unit: z.array(z.enum(['day', 'week', 'month', 'year']).optional()), + period: z.array(z.array(z.string().optional()).optional()).optional(), +}); +const CreateDifferentialPriceTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateDifferentialPriceBodySchema = z.looseObject({ + parent_item_id: z.string().max(100), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + business_entity_id: z.string().max(50).optional(), + parent_periods: CreateDifferentialPriceParentPeriodsSchema.optional(), + tiers: CreateDifferentialPriceTiersSchema.optional(), +}); +export { CreateDifferentialPriceBodySchema }; +export type CreateDifferentialPriceBody = z.infer< + typeof CreateDifferentialPriceBodySchema +>; + +//DifferentialPrice.retrieve + +const RetrieveDifferentialPriceBodySchema = z.looseObject({ + item_price_id: z.string().max(100), +}); +export { RetrieveDifferentialPriceBodySchema }; +export type RetrieveDifferentialPriceBody = z.infer< + typeof RetrieveDifferentialPriceBodySchema +>; + +//DifferentialPrice.update + +const UpdateDifferentialPriceParentPeriodsSchema = z.object({ + period_unit: z.array(z.enum(['day', 'week', 'month', 'year']).optional()), + period: z.array(z.array(z.string().optional()).optional()).optional(), +}); +const UpdateDifferentialPriceTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const UpdateDifferentialPriceBodySchema = z.looseObject({ + item_price_id: z.string().max(100), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + parent_periods: UpdateDifferentialPriceParentPeriodsSchema.optional(), + tiers: UpdateDifferentialPriceTiersSchema.optional(), +}); +export { UpdateDifferentialPriceBodySchema }; +export type UpdateDifferentialPriceBody = z.infer< + typeof UpdateDifferentialPriceBodySchema +>; + +//DifferentialPrice.delete + +const DeleteDifferentialPriceBodySchema = z.looseObject({ + item_price_id: z.string().max(100), +}); +export { DeleteDifferentialPriceBodySchema }; +export type DeleteDifferentialPriceBody = z.infer< + typeof DeleteDifferentialPriceBodySchema +>; diff --git a/src/validation/entitlement/create.validation.ts b/src/schema/entitlement.schema.ts similarity index 61% rename from src/validation/entitlement/create.validation.ts rename to src/schema/entitlement.schema.ts index 9beed4b..36da7cb 100644 --- a/src/validation/entitlement/create.validation.ts +++ b/src/schema/entitlement.schema.ts @@ -1,8 +1,12 @@ -// Generated Zod validator: Entitlement.create +// Generated Zod schemas: Entitlement +// Actions: create // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; -const createEntitlementEntitlementsSchema = z.object({ + +//Entitlement.create + +const CreateEntitlementEntitlementsSchema = z.object({ entity_id: z.array(z.string().max(100).optional()), feature_id: z.array(z.string().max(50).optional()), entity_type: z @@ -17,9 +21,10 @@ const createEntitlementEntitlementsSchema = z.object({ .array(z.boolean().default(false).optional()) .optional(), }); -const createEntitlementBodySchema = z.looseObject({ +const CreateEntitlementBodySchema = z.looseObject({ action: z.enum(['upsert', 'remove']), change_reason: z.string().max(100).optional(), - entitlements: createEntitlementEntitlementsSchema.optional(), + entitlements: CreateEntitlementEntitlementsSchema.optional(), }); -export { createEntitlementBodySchema }; +export { CreateEntitlementBodySchema }; +export type CreateEntitlementBody = z.infer; diff --git a/src/schema/entitlement_override.schema.ts b/src/schema/entitlement_override.schema.ts new file mode 100644 index 0000000..47a8c8b --- /dev/null +++ b/src/schema/entitlement_override.schema.ts @@ -0,0 +1,47 @@ +// Generated Zod schemas: EntitlementOverride +// Actions: addEntitlementOverrideForSubscription, listEntitlementOverrideForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//EntitlementOverride.addEntitlementOverrideForSubscription + +const AddEntitlementOverrideForSubscriptionEntitlementOverrideEntitlementOverridesSchema = + z.object({ + feature_id: z.array(z.string().max(50).optional()), + entity_id: z.array(z.string().max(50).optional()).optional(), + entity_type: z + .array(z.enum(['plan_price', 'addon_price', 'charge']).optional()) + .optional(), + value: z.array(z.string().max(50).optional()).optional(), + expires_at: z.array(z.number().int().optional()).optional(), + effective_from: z.array(z.number().int().optional()).optional(), + is_enabled: z.array(z.boolean().optional()).optional(), + }); +const AddEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema = + z.looseObject({ + action: z.enum(['upsert', 'remove']).optional(), + entitlement_overrides: + AddEntitlementOverrideForSubscriptionEntitlementOverrideEntitlementOverridesSchema.optional(), + }); +export { AddEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema }; +export type AddEntitlementOverrideForSubscriptionEntitlementOverrideBody = + z.infer< + typeof AddEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema + >; + +//EntitlementOverride.listEntitlementOverrideForSubscription + +const ListEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema = + z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + embed: z.string().max(1000).optional(), + include_drafts: z.boolean().default(false).optional(), + include_scheduled_overrides: z.boolean().default(false).optional(), + }); +export { ListEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema }; +export type ListEntitlementOverrideForSubscriptionEntitlementOverrideBody = + z.infer< + typeof ListEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema + >; diff --git a/src/schema/estimate.schema.ts b/src/schema/estimate.schema.ts new file mode 100644 index 0000000..88533ae --- /dev/null +++ b/src/schema/estimate.schema.ts @@ -0,0 +1,1682 @@ +// Generated Zod schemas: Estimate +// Actions: createSubscription, createSubItemEstimate, createSubForCustomerEstimate, createSubItemForCustomerEstimate, updateSubscription, updateSubscriptionForItems, renewalEstimate, advanceInvoiceEstimate, regenerateInvoiceEstimate, upcomingInvoicesEstimate, changeTermEnd, cancelSubscription, cancelSubscriptionForItems, pauseSubscription, resumeSubscription, giftSubscription, giftSubscriptionForItems, createInvoice, createInvoiceForItems, paymentSchedules +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Estimate.createSubscription + +const CreateSubscriptionEstimateSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const CreateSubscriptionEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubscriptionEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubscriptionEstimateCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), +}); +const CreateSubscriptionEstimateContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateSubscriptionEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const CreateSubscriptionEstimateEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const CreateSubscriptionEstimateTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateSubscriptionEstimateBodySchema = z.looseObject({ + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + invoice_immediately: z.boolean().optional(), + invoice_date: z.number().int().optional(), + client_profile_id: z.string().max(50).optional(), + subscription: CreateSubscriptionEstimateSubscriptionSchema.optional(), + billing_address: CreateSubscriptionEstimateBillingAddressSchema.optional(), + shipping_address: CreateSubscriptionEstimateShippingAddressSchema.optional(), + customer: CreateSubscriptionEstimateCustomerSchema.optional(), + contract_term: CreateSubscriptionEstimateContractTermSchema.optional(), + addons: CreateSubscriptionEstimateAddonsSchema.optional(), + event_based_addons: + CreateSubscriptionEstimateEventBasedAddonsSchema.optional(), + tax_providers_fields: + CreateSubscriptionEstimateTaxProvidersFieldsSchema.optional(), +}); +export { CreateSubscriptionEstimateBodySchema }; +export type CreateSubscriptionEstimateBody = z.infer< + typeof CreateSubscriptionEstimateBodySchema +>; + +//Estimate.createSubItemEstimate + +const CreateSubItemEstimateEstimateSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const CreateSubItemEstimateEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubItemEstimateEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubItemEstimateEstimateCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), +}); +const CreateSubItemEstimateEstimateContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + contract_start: z.number().int().optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateSubItemEstimateEstimateSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const CreateSubItemEstimateEstimateDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateSubItemEstimateEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateSubItemEstimateEstimateTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateSubItemEstimateEstimateBodySchema = z.looseObject({ + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + invoice_immediately: z.boolean().optional(), + invoice_date: z.number().int().optional(), + client_profile_id: z.string().max(50).optional(), + subscription: CreateSubItemEstimateEstimateSubscriptionSchema.optional(), + billing_address: CreateSubItemEstimateEstimateBillingAddressSchema.optional(), + shipping_address: + CreateSubItemEstimateEstimateShippingAddressSchema.optional(), + customer: CreateSubItemEstimateEstimateCustomerSchema.optional(), + contract_term: CreateSubItemEstimateEstimateContractTermSchema.optional(), + subscription_items: + CreateSubItemEstimateEstimateSubscriptionItemsSchema.optional(), + discounts: CreateSubItemEstimateEstimateDiscountsSchema.optional(), + item_tiers: CreateSubItemEstimateEstimateItemTiersSchema.optional(), + tax_providers_fields: + CreateSubItemEstimateEstimateTaxProvidersFieldsSchema.optional(), +}); +export { CreateSubItemEstimateEstimateBodySchema }; +export type CreateSubItemEstimateEstimateBody = z.infer< + typeof CreateSubItemEstimateEstimateBodySchema +>; + +//Estimate.createSubForCustomerEstimate + +const CreateSubForCustomerEstimateEstimateSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const CreateSubForCustomerEstimateEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubForCustomerEstimateEstimateContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateSubForCustomerEstimateEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const CreateSubForCustomerEstimateEstimateEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const CreateSubForCustomerEstimateEstimateBodySchema = z.looseObject({ + use_existing_balances: z.boolean().default(true).optional(), + invoice_immediately: z.boolean().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + invoice_date: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + subscription: + CreateSubForCustomerEstimateEstimateSubscriptionSchema.optional(), + shipping_address: + CreateSubForCustomerEstimateEstimateShippingAddressSchema.optional(), + contract_term: + CreateSubForCustomerEstimateEstimateContractTermSchema.optional(), + addons: CreateSubForCustomerEstimateEstimateAddonsSchema.optional(), + event_based_addons: + CreateSubForCustomerEstimateEstimateEventBasedAddonsSchema.optional(), +}); +export { CreateSubForCustomerEstimateEstimateBodySchema }; +export type CreateSubForCustomerEstimateEstimateBody = z.infer< + typeof CreateSubForCustomerEstimateEstimateBodySchema +>; + +//Estimate.createSubItemForCustomerEstimate + +const CreateSubItemForCustomerEstimateEstimateSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const CreateSubItemForCustomerEstimateEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubItemForCustomerEstimateEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubItemForCustomerEstimateEstimateContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + contract_start: z.number().int().optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateSubItemForCustomerEstimateEstimateBillingOverrideSchema = z.object({ + max_excess_payment_usage: z.number().int().min(-1).optional(), + max_refundable_credits_usage: z.number().int().min(-1).optional(), +}); +const CreateSubItemForCustomerEstimateEstimateSubscriptionItemsSchema = + z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z + .array(z.enum(['plan', 'addon', 'charge']).optional()) + .optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + }); +const CreateSubItemForCustomerEstimateEstimateDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateSubItemForCustomerEstimateEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateSubItemForCustomerEstimateEstimateBodySchema = z.looseObject({ + use_existing_balances: z.boolean().default(true).optional(), + invoice_immediately: z.boolean().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + invoice_date: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + subscription: + CreateSubItemForCustomerEstimateEstimateSubscriptionSchema.optional(), + shipping_address: + CreateSubItemForCustomerEstimateEstimateShippingAddressSchema.optional(), + billing_address: + CreateSubItemForCustomerEstimateEstimateBillingAddressSchema.optional(), + contract_term: + CreateSubItemForCustomerEstimateEstimateContractTermSchema.optional(), + billing_override: + CreateSubItemForCustomerEstimateEstimateBillingOverrideSchema.optional(), + subscription_items: + CreateSubItemForCustomerEstimateEstimateSubscriptionItemsSchema.optional(), + discounts: CreateSubItemForCustomerEstimateEstimateDiscountsSchema.optional(), + item_tiers: + CreateSubItemForCustomerEstimateEstimateItemTiersSchema.optional(), +}); +export { CreateSubItemForCustomerEstimateEstimateBodySchema }; +export type CreateSubItemForCustomerEstimateEstimateBody = z.infer< + typeof CreateSubItemForCustomerEstimateEstimateBodySchema +>; + +//Estimate.updateSubscription + +const UpdateSubscriptionEstimateSubscriptionSchema = z.object({ + id: z.string().max(50), + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const UpdateSubscriptionEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionEstimateCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), +}); +const UpdateSubscriptionEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + proration_type: z + .array(z.enum(['full_term', 'partial_term', 'none']).optional()) + .optional(), +}); +const UpdateSubscriptionEstimateEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const UpdateSubscriptionEstimateBodySchema = z.looseObject({ + changes_scheduled_at: z.number().int().optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + invoice_date: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + prorate: z.boolean().optional(), + end_of_term: z.boolean().default(false).optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + include_delayed_charges: z.boolean().default(false).optional(), + use_existing_balances: z.boolean().default(true).optional(), + invoice_immediately: z.boolean().optional(), + subscription: UpdateSubscriptionEstimateSubscriptionSchema.optional(), + billing_address: UpdateSubscriptionEstimateBillingAddressSchema.optional(), + shipping_address: UpdateSubscriptionEstimateShippingAddressSchema.optional(), + customer: UpdateSubscriptionEstimateCustomerSchema.optional(), + addons: UpdateSubscriptionEstimateAddonsSchema.optional(), + event_based_addons: + UpdateSubscriptionEstimateEventBasedAddonsSchema.optional(), +}); +export { UpdateSubscriptionEstimateBodySchema }; +export type UpdateSubscriptionEstimateBody = z.infer< + typeof UpdateSubscriptionEstimateBodySchema +>; + +//Estimate.updateSubscriptionForItems + +const UpdateSubscriptionForItemsEstimateSubscriptionSchema = z.object({ + id: z.string().max(50), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), +}); +const UpdateSubscriptionForItemsEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionForItemsEstimateShippingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionForItemsEstimateCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), +}); +const UpdateSubscriptionForItemsEstimateBillingOverrideSchema = z.object({ + max_excess_payment_usage: z.number().int().min(-1).optional(), + max_refundable_credits_usage: z.number().int().min(-1).optional(), +}); +const UpdateSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + proration_type: z + .array(z.enum(['full_term', 'partial_term', 'none']).optional()) + .optional(), +}); +const UpdateSubscriptionForItemsEstimateDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), +}); +const UpdateSubscriptionForItemsEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const UpdateSubscriptionForItemsEstimateBodySchema = z.looseObject({ + changes_scheduled_at: z.number().int().optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + invoice_date: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + prorate: z.boolean().optional(), + end_of_term: z.boolean().default(false).optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + include_delayed_charges: z.boolean().default(false).optional(), + use_existing_balances: z.boolean().default(true).optional(), + invoice_immediately: z.boolean().optional(), + invoice_usages: z.boolean().default(false).optional(), + subscription: UpdateSubscriptionForItemsEstimateSubscriptionSchema.optional(), + billing_address: + UpdateSubscriptionForItemsEstimateBillingAddressSchema.optional(), + shipping_address: + UpdateSubscriptionForItemsEstimateShippingAddressSchema.optional(), + customer: UpdateSubscriptionForItemsEstimateCustomerSchema.optional(), + billing_override: + UpdateSubscriptionForItemsEstimateBillingOverrideSchema.optional(), + subscription_items: + UpdateSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), + discounts: UpdateSubscriptionForItemsEstimateDiscountsSchema.optional(), + item_tiers: UpdateSubscriptionForItemsEstimateItemTiersSchema.optional(), +}); +export { UpdateSubscriptionForItemsEstimateBodySchema }; +export type UpdateSubscriptionForItemsEstimateBody = z.infer< + typeof UpdateSubscriptionForItemsEstimateBodySchema +>; + +//Estimate.renewalEstimate + +const RenewalEstimateEstimateBodySchema = z.looseObject({ + include_delayed_charges: z.boolean().default(true).optional(), + use_existing_balances: z.boolean().default(true).optional(), + ignore_scheduled_cancellation: z.boolean().default(false).optional(), + ignore_scheduled_changes: z.boolean().default(false).optional(), + exclude_tax_type: z.enum(['exclusive', 'none']).optional(), +}); +export { RenewalEstimateEstimateBodySchema }; +export type RenewalEstimateEstimateBody = z.infer< + typeof RenewalEstimateEstimateBodySchema +>; + +//Estimate.advanceInvoiceEstimate + +const AdvanceInvoiceEstimateEstimateFixedIntervalScheduleSchema = z.object({ + number_of_occurrences: z.number().int().min(1).optional(), + days_before_renewal: z.number().int().min(1).optional(), + end_schedule_on: z + .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) + .optional(), + end_date: z.number().int().optional(), +}); +const AdvanceInvoiceEstimateEstimateSpecificDatesScheduleSchema = z.object({ + terms_to_charge: z.array(z.number().int().optional()).optional(), + date: z.array(z.number().int().optional()).optional(), +}); +const AdvanceInvoiceEstimateEstimateBodySchema = z.looseObject({ + terms_to_charge: z.number().int().min(1).optional(), + invoice_immediately: z.boolean().optional(), + schedule_type: z + .enum(['immediate', 'specific_dates', 'fixed_intervals']) + .optional(), + fixed_interval_schedule: + AdvanceInvoiceEstimateEstimateFixedIntervalScheduleSchema.optional(), + specific_dates_schedule: + AdvanceInvoiceEstimateEstimateSpecificDatesScheduleSchema.optional(), +}); +export { AdvanceInvoiceEstimateEstimateBodySchema }; +export type AdvanceInvoiceEstimateEstimateBody = z.infer< + typeof AdvanceInvoiceEstimateEstimateBodySchema +>; + +//Estimate.regenerateInvoiceEstimate + +const RegenerateInvoiceEstimateEstimateBodySchema = z.looseObject({ + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), + prorate: z.boolean().optional(), + invoice_immediately: z.boolean().optional(), +}); +export { RegenerateInvoiceEstimateEstimateBodySchema }; +export type RegenerateInvoiceEstimateEstimateBody = z.infer< + typeof RegenerateInvoiceEstimateEstimateBodySchema +>; + +//Estimate.upcomingInvoicesEstimate + +const UpcomingInvoicesEstimateEstimateBodySchema = z.looseObject({ + include_usage_charges: z.boolean().default(false).optional(), +}); +export { UpcomingInvoicesEstimateEstimateBodySchema }; +export type UpcomingInvoicesEstimateEstimateBody = z.infer< + typeof UpcomingInvoicesEstimateEstimateBodySchema +>; + +//Estimate.changeTermEnd + +const ChangeTermEndEstimateBodySchema = z.looseObject({ + term_ends_at: z.number().int(), + prorate: z.boolean().optional(), + invoice_immediately: z.boolean().optional(), +}); +export { ChangeTermEndEstimateBodySchema }; +export type ChangeTermEndEstimateBody = z.infer< + typeof ChangeTermEndEstimateBodySchema +>; + +//Estimate.cancelSubscription + +const CancelSubscriptionEstimateEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), +}); +const CancelSubscriptionEstimateBodySchema = z.looseObject({ + cancel_option: z + .enum([ + 'immediately', + 'end_of_term', + 'specific_date', + 'end_of_billing_term', + ]) + .optional(), + end_of_term: z.boolean().default(false).optional(), + cancel_at: z.number().int().optional(), + credit_option_for_current_term_charges: z + .enum(['none', 'prorate', 'full']) + .optional(), + unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), + account_receivables_handling: z + .enum(['no_action', 'schedule_payment_collection', 'write_off']) + .optional(), + refundable_credits_handling: z + .enum(['no_action', 'schedule_refund']) + .optional(), + contract_term_cancel_option: z + .enum([ + 'terminate_immediately', + 'end_of_contract_term', + 'specific_date', + 'end_of_subscription_billing_term', + ]) + .optional(), + invoice_date: z.number().int().optional(), + cancel_reason_code: z.string().max(100).optional(), + event_based_addons: + CancelSubscriptionEstimateEventBasedAddonsSchema.optional(), +}); +export { CancelSubscriptionEstimateBodySchema }; +export type CancelSubscriptionEstimateBody = z.infer< + typeof CancelSubscriptionEstimateBodySchema +>; + +//Estimate.cancelSubscriptionForItems + +const CancelSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), +}); +const CancelSubscriptionForItemsEstimateBodySchema = z.looseObject({ + cancel_option: z + .enum([ + 'immediately', + 'end_of_term', + 'specific_date', + 'end_of_billing_term', + ]) + .optional(), + end_of_term: z.boolean().default(false).optional(), + cancel_at: z.number().int().optional(), + credit_option_for_current_term_charges: z + .enum(['none', 'prorate', 'full']) + .optional(), + unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), + account_receivables_handling: z + .enum(['no_action', 'schedule_payment_collection', 'write_off']) + .optional(), + refundable_credits_handling: z + .enum(['no_action', 'schedule_refund']) + .optional(), + contract_term_cancel_option: z + .enum([ + 'terminate_immediately', + 'end_of_contract_term', + 'specific_date', + 'end_of_subscription_billing_term', + ]) + .optional(), + invoice_date: z.number().int().optional(), + cancel_reason_code: z.string().max(100).optional(), + subscription_items: + CancelSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), +}); +export { CancelSubscriptionForItemsEstimateBodySchema }; +export type CancelSubscriptionForItemsEstimateBody = z.infer< + typeof CancelSubscriptionForItemsEstimateBodySchema +>; + +//Estimate.pauseSubscription + +const PauseSubscriptionEstimateSubscriptionSchema = z.object({ + pause_date: z.number().int().optional(), + resume_date: z.number().int().optional(), + skip_billing_cycles: z.number().int().min(1).optional(), +}); +const PauseSubscriptionEstimateBodySchema = z.looseObject({ + pause_option: z + .enum(['immediately', 'end_of_term', 'specific_date', 'billing_cycles']) + .optional(), + unbilled_charges_handling: z.enum(['no_action', 'invoice']).optional(), + subscription: PauseSubscriptionEstimateSubscriptionSchema.optional(), +}); +export { PauseSubscriptionEstimateBodySchema }; +export type PauseSubscriptionEstimateBody = z.infer< + typeof PauseSubscriptionEstimateBodySchema +>; + +//Estimate.resumeSubscription + +const ResumeSubscriptionEstimateSubscriptionSchema = z.object({ + resume_date: z.number().int().optional(), +}); +const ResumeSubscriptionEstimateBodySchema = z.looseObject({ + resume_option: z.enum(['immediately', 'specific_date']).optional(), + charges_handling: z + .enum(['invoice_immediately', 'add_to_unbilled_charges']) + .optional(), + subscription: ResumeSubscriptionEstimateSubscriptionSchema.optional(), +}); +export { ResumeSubscriptionEstimateBodySchema }; +export type ResumeSubscriptionEstimateBody = z.infer< + typeof ResumeSubscriptionEstimateBodySchema +>; + +//Estimate.giftSubscription + +const GiftSubscriptionEstimateGiftSchema = z.object({ + scheduled_at: z.number().int().optional(), + auto_claim: z.boolean().default(false).optional(), + no_expiry: z.boolean().optional(), + claim_expiry_date: z.number().int().optional(), +}); +const GiftSubscriptionEstimateGifterSchema = z.object({ + customer_id: z.string().max(50), + signature: z.string().max(50), + note: z.string().max(500).optional(), + payment_src_id: z.string().max(40).optional(), +}); +const GiftSubscriptionEstimateGiftReceiverSchema = z.object({ + customer_id: z.string().max(50), + first_name: z.string().max(150), + last_name: z.string().max(150), + email: z.string().email().max(70), +}); +const GiftSubscriptionEstimateAdditionalInformationSchema = z.looseObject({}); +const GiftSubscriptionEstimatePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + GiftSubscriptionEstimateAdditionalInformationSchema.optional(), +}); +const GiftSubscriptionEstimateShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const GiftSubscriptionEstimateSubscriptionSchema = z.object({ + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), +}); +const GiftSubscriptionEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const GiftSubscriptionEstimateBodySchema = z.looseObject({ + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gift: GiftSubscriptionEstimateGiftSchema.optional(), + gifter: GiftSubscriptionEstimateGifterSchema.optional(), + gift_receiver: GiftSubscriptionEstimateGiftReceiverSchema.optional(), + payment_intent: GiftSubscriptionEstimatePaymentIntentSchema.optional(), + shipping_address: GiftSubscriptionEstimateShippingAddressSchema.optional(), + subscription: GiftSubscriptionEstimateSubscriptionSchema.optional(), + addons: GiftSubscriptionEstimateAddonsSchema.optional(), +}); +export { GiftSubscriptionEstimateBodySchema }; +export type GiftSubscriptionEstimateBody = z.infer< + typeof GiftSubscriptionEstimateBodySchema +>; + +//Estimate.giftSubscriptionForItems + +const GiftSubscriptionForItemsEstimateGiftSchema = z.object({ + scheduled_at: z.number().int().optional(), + auto_claim: z.boolean().default(false).optional(), + no_expiry: z.boolean().optional(), + claim_expiry_date: z.number().int().optional(), +}); +const GiftSubscriptionForItemsEstimateGifterSchema = z.object({ + customer_id: z.string().max(50), + signature: z.string().max(50), + note: z.string().max(500).optional(), + payment_src_id: z.string().max(40).optional(), +}); +const GiftSubscriptionForItemsEstimateGiftReceiverSchema = z.object({ + customer_id: z.string().max(50), + first_name: z.string().max(150), + last_name: z.string().max(150), + email: z.string().email().max(70), +}); +const GiftSubscriptionForItemsEstimateAdditionalInformationSchema = + z.looseObject({}); +const GiftSubscriptionForItemsEstimatePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + GiftSubscriptionForItemsEstimateAdditionalInformationSchema.optional(), +}); +const GiftSubscriptionForItemsEstimateShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const GiftSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const GiftSubscriptionForItemsEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const GiftSubscriptionForItemsEstimateBodySchema = z.looseObject({ + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gift: GiftSubscriptionForItemsEstimateGiftSchema.optional(), + gifter: GiftSubscriptionForItemsEstimateGifterSchema.optional(), + gift_receiver: GiftSubscriptionForItemsEstimateGiftReceiverSchema.optional(), + payment_intent: + GiftSubscriptionForItemsEstimatePaymentIntentSchema.optional(), + shipping_address: + GiftSubscriptionForItemsEstimateShippingAddressSchema.optional(), + subscription_items: + GiftSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), + item_tiers: GiftSubscriptionForItemsEstimateItemTiersSchema.optional(), +}); +export { GiftSubscriptionForItemsEstimateBodySchema }; +export type GiftSubscriptionForItemsEstimateBody = z.infer< + typeof GiftSubscriptionForItemsEstimateBodySchema +>; + +//Estimate.createInvoice + +const CreateInvoiceEstimateInvoiceSchema = z.object({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), +}); +const CreateInvoiceEstimateShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateInvoiceEstimateAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateInvoiceEstimateChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateInvoiceEstimateNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum(['plan', 'addon', 'customer', 'subscription', 'coupon']) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateInvoiceEstimateTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateInvoiceEstimateBodySchema = z.looseObject({ + currency_code: z.string().max(3).optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + invoice_date: z.number().int().optional(), + invoice: CreateInvoiceEstimateInvoiceSchema.optional(), + shipping_address: CreateInvoiceEstimateShippingAddressSchema.optional(), + addons: CreateInvoiceEstimateAddonsSchema.optional(), + charges: CreateInvoiceEstimateChargesSchema.optional(), + notes_to_remove: CreateInvoiceEstimateNotesToRemoveSchema.optional(), + tax_providers_fields: + CreateInvoiceEstimateTaxProvidersFieldsSchema.optional(), +}); +export { CreateInvoiceEstimateBodySchema }; +export type CreateInvoiceEstimateBody = z.infer< + typeof CreateInvoiceEstimateBodySchema +>; + +//Estimate.createInvoiceForItems + +const CreateInvoiceForItemsEstimateInvoiceSchema = z.object({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), +}); +const CreateInvoiceForItemsEstimateShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateInvoiceForItemsEstimateBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateInvoiceForItemsEstimateItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateInvoiceForItemsEstimateItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateInvoiceForItemsEstimateChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateInvoiceForItemsEstimateNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum([ + 'customer', + 'subscription', + 'coupon', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateInvoiceForItemsEstimateDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateInvoiceForItemsEstimateTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateInvoiceForItemsEstimateBodySchema = z.looseObject({ + currency_code: z.string().max(3).optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + invoice_date: z.number().int().optional(), + invoice: CreateInvoiceForItemsEstimateInvoiceSchema.optional(), + shipping_address: + CreateInvoiceForItemsEstimateShippingAddressSchema.optional(), + billing_address: CreateInvoiceForItemsEstimateBillingAddressSchema.optional(), + item_prices: CreateInvoiceForItemsEstimateItemPricesSchema.optional(), + item_tiers: CreateInvoiceForItemsEstimateItemTiersSchema.optional(), + charges: CreateInvoiceForItemsEstimateChargesSchema.optional(), + notes_to_remove: CreateInvoiceForItemsEstimateNotesToRemoveSchema.optional(), + discounts: CreateInvoiceForItemsEstimateDiscountsSchema.optional(), + tax_providers_fields: + CreateInvoiceForItemsEstimateTaxProvidersFieldsSchema.optional(), +}); +export { CreateInvoiceForItemsEstimateBodySchema }; +export type CreateInvoiceForItemsEstimateBody = z.infer< + typeof CreateInvoiceForItemsEstimateBodySchema +>; + +//Estimate.paymentSchedules + +const PaymentSchedulesEstimateBodySchema = z.looseObject({ + scheme_id: z.string(), + amount: z.number().int().min(0).optional(), + invoice_id: z.string().optional(), + payment_schedule_start_date: z.number().int().optional(), +}); +export { PaymentSchedulesEstimateBodySchema }; +export type PaymentSchedulesEstimateBody = z.infer< + typeof PaymentSchedulesEstimateBodySchema +>; diff --git a/src/schema/export.schema.ts b/src/schema/export.schema.ts new file mode 100644 index 0000000..8ce0b8f --- /dev/null +++ b/src/schema/export.schema.ts @@ -0,0 +1,1579 @@ +// Generated Zod schemas: Export +// Actions: customers, creditNotes, transactions, orders, itemFamilies, items, attachedItems, priceVariants +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Export.customers + +const CustomersExportBusinessEntityIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const CustomersExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const CustomersExportFirstNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const CustomersExportLastNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const CustomersExportEmailSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const CustomersExportCompanySchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const CustomersExportPhoneSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const CustomersExportAutoCollectionSchema = z.object({ + is: z.enum(['on', 'off']).optional(), + is_not: z.enum(['on', 'off']).optional(), + in: z.enum(['on', 'off']).optional(), + not_in: z.enum(['on', 'off']).optional(), +}); +const CustomersExportTaxabilitySchema = z.object({ + is: z.enum(['taxable', 'exempt']).optional(), + is_not: z.enum(['taxable', 'exempt']).optional(), + in: z.enum(['taxable', 'exempt']).optional(), + not_in: z.enum(['taxable', 'exempt']).optional(), +}); +const CustomersExportCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const CustomersExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const CustomersExportOfflinePaymentMethodSchema = z.object({ + is: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + is_not: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + in: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + not_in: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), +}); +const CustomersExportAutoCloseInvoicesSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const CustomersExportChannelSchema = z.object({ + is: z.enum(['web', 'app_store', 'play_store']).optional(), + is_not: z.enum(['web', 'app_store', 'play_store']).optional(), + in: z.enum(['web', 'app_store', 'play_store']).optional(), + not_in: z.enum(['web', 'app_store', 'play_store']).optional(), +}); +const CustomersExportCustomerItemSchema = z.object({ + id: CustomersExportIdSchema.optional(), + first_name: CustomersExportFirstNameSchema.optional(), + last_name: CustomersExportLastNameSchema.optional(), + email: CustomersExportEmailSchema.optional(), + company: CustomersExportCompanySchema.optional(), + phone: CustomersExportPhoneSchema.optional(), + auto_collection: CustomersExportAutoCollectionSchema.optional(), + taxability: CustomersExportTaxabilitySchema.optional(), + created_at: CustomersExportCreatedAtSchema.optional(), + updated_at: CustomersExportUpdatedAtSchema.optional(), + offline_payment_method: CustomersExportOfflinePaymentMethodSchema.optional(), + auto_close_invoices: CustomersExportAutoCloseInvoicesSchema.optional(), + channel: CustomersExportChannelSchema.optional(), +}); +const CustomersExportParentIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const CustomersExportPaymentOwnerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const CustomersExportInvoiceOwnerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const CustomersExportRelationshipSchema = z.object({ + parent_id: CustomersExportParentIdSchema.optional(), + payment_owner_id: CustomersExportPaymentOwnerIdSchema.optional(), + invoice_owner_id: CustomersExportInvoiceOwnerIdSchema.optional(), +}); +const CustomersExportBodySchema = z.looseObject({ + export_type: z.enum(['data', 'import_friendly_data']).optional(), + business_entity_id: CustomersExportBusinessEntityIdSchema.optional(), + customer: z.array(CustomersExportCustomerItemSchema.optional()).optional(), + relationship: CustomersExportRelationshipSchema.optional(), +}); +export { CustomersExportBodySchema }; +export type CustomersExportBody = z.infer; + +//Export.creditNotes + +const CreditNotesExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const CreditNotesExportCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const CreditNotesExportSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const CreditNotesExportReferenceInvoiceIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const CreditNotesExportTypeSchema = z.object({ + is: z.enum(['adjustment', 'refundable', 'store']).optional(), + is_not: z.enum(['adjustment', 'refundable', 'store']).optional(), + in: z.enum(['adjustment', 'refundable', 'store']).optional(), + not_in: z.enum(['adjustment', 'refundable', 'store']).optional(), +}); +const CreditNotesExportReasonCodeSchema = z.object({ + is: z + .enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]) + .optional(), + is_not: z + .enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]) + .optional(), + in: z + .enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]) + .optional(), + not_in: z + .enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]) + .optional(), +}); +const CreditNotesExportCreateReasonCodeSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const CreditNotesExportStatusSchema = z.object({ + is: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), + is_not: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), + in: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), + not_in: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), +}); +const CreditNotesExportDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const CreditNotesExportTotalSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const CreditNotesExportPriceTypeSchema = z.object({ + is: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + is_not: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + not_in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), +}); +const CreditNotesExportAmountAllocatedSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const CreditNotesExportAmountRefundedSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const CreditNotesExportAmountAvailableSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const CreditNotesExportVoidedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const CreditNotesExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const CreditNotesExportChannelSchema = z.object({ + is: z.enum(['web', 'app_store', 'play_store']).optional(), + is_not: z.enum(['web', 'app_store', 'play_store']).optional(), + in: z.enum(['web', 'app_store', 'play_store']).optional(), + not_in: z.enum(['web', 'app_store', 'play_store']).optional(), +}); +const CreditNotesExportCreditNoteItemSchema = z.object({ + id: CreditNotesExportIdSchema.optional(), + customer_id: CreditNotesExportCustomerIdSchema.optional(), + subscription_id: CreditNotesExportSubscriptionIdSchema.optional(), + reference_invoice_id: CreditNotesExportReferenceInvoiceIdSchema.optional(), + type: CreditNotesExportTypeSchema.optional(), + reason_code: CreditNotesExportReasonCodeSchema.optional(), + create_reason_code: CreditNotesExportCreateReasonCodeSchema.optional(), + status: CreditNotesExportStatusSchema.optional(), + date: CreditNotesExportDateSchema.optional(), + total: CreditNotesExportTotalSchema.optional(), + price_type: CreditNotesExportPriceTypeSchema.optional(), + amount_allocated: CreditNotesExportAmountAllocatedSchema.optional(), + amount_refunded: CreditNotesExportAmountRefundedSchema.optional(), + amount_available: CreditNotesExportAmountAvailableSchema.optional(), + voided_at: CreditNotesExportVoidedAtSchema.optional(), + updated_at: CreditNotesExportUpdatedAtSchema.optional(), + channel: CreditNotesExportChannelSchema.optional(), +}); +const CreditNotesExportBodySchema = z.looseObject({ + credit_note: z + .array(CreditNotesExportCreditNoteItemSchema.optional()) + .optional(), +}); +export { CreditNotesExportBodySchema }; +export type CreditNotesExportBody = z.infer; + +//Export.transactions + +const TransactionsExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const TransactionsExportCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const TransactionsExportSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const TransactionsExportPaymentSourceIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const TransactionsExportPaymentMethodSchema = z.object({ + is: z + .enum([ + 'card', + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'amazon_payments', + 'paypal_express_checkout', + 'direct_debit', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ach_credit', + 'sepa_credit', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'other', + 'app_store', + 'upi', + 'netbanking_emandates', + 'play_store', + 'custom', + 'boleto', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + is_not: z + .enum([ + 'card', + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'amazon_payments', + 'paypal_express_checkout', + 'direct_debit', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ach_credit', + 'sepa_credit', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'other', + 'app_store', + 'upi', + 'netbanking_emandates', + 'play_store', + 'custom', + 'boleto', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + in: z + .enum([ + 'card', + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'amazon_payments', + 'paypal_express_checkout', + 'direct_debit', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ach_credit', + 'sepa_credit', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'other', + 'app_store', + 'upi', + 'netbanking_emandates', + 'play_store', + 'custom', + 'boleto', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + not_in: z + .enum([ + 'card', + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'amazon_payments', + 'paypal_express_checkout', + 'direct_debit', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ach_credit', + 'sepa_credit', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'other', + 'app_store', + 'upi', + 'netbanking_emandates', + 'play_store', + 'custom', + 'boleto', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), +}); +const TransactionsExportGatewaySchema = z.object({ + is: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + 'not_applicable', + ]) + .optional(), + is_not: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + 'not_applicable', + ]) + .optional(), + in: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + 'not_applicable', + ]) + .optional(), + not_in: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + 'not_applicable', + ]) + .optional(), +}); +const TransactionsExportGatewayAccountIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const TransactionsExportIdAtGatewaySchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const TransactionsExportReferenceNumberSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const TransactionsExportTypeSchema = z.object({ + is: z + .enum(['authorization', 'payment', 'refund', 'payment_reversal']) + .optional(), + is_not: z + .enum(['authorization', 'payment', 'refund', 'payment_reversal']) + .optional(), + in: z + .enum(['authorization', 'payment', 'refund', 'payment_reversal']) + .optional(), + not_in: z + .enum(['authorization', 'payment', 'refund', 'payment_reversal']) + .optional(), +}); +const TransactionsExportDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const TransactionsExportAmountSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const TransactionsExportAmountCapturableSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const TransactionsExportStatusSchema = z.object({ + is: z + .enum([ + 'in_progress', + 'success', + 'voided', + 'failure', + 'timeout', + 'needs_attention', + 'late_failure', + ]) + .optional(), + is_not: z + .enum([ + 'in_progress', + 'success', + 'voided', + 'failure', + 'timeout', + 'needs_attention', + 'late_failure', + ]) + .optional(), + in: z + .enum([ + 'in_progress', + 'success', + 'voided', + 'failure', + 'timeout', + 'needs_attention', + 'late_failure', + ]) + .optional(), + not_in: z + .enum([ + 'in_progress', + 'success', + 'voided', + 'failure', + 'timeout', + 'needs_attention', + 'late_failure', + ]) + .optional(), +}); +const TransactionsExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const TransactionsExportTransactionItemSchema = z.object({ + id: TransactionsExportIdSchema.optional(), + customer_id: TransactionsExportCustomerIdSchema.optional(), + subscription_id: TransactionsExportSubscriptionIdSchema.optional(), + payment_source_id: TransactionsExportPaymentSourceIdSchema.optional(), + payment_method: TransactionsExportPaymentMethodSchema.optional(), + gateway: TransactionsExportGatewaySchema.optional(), + gateway_account_id: TransactionsExportGatewayAccountIdSchema.optional(), + id_at_gateway: TransactionsExportIdAtGatewaySchema.optional(), + reference_number: TransactionsExportReferenceNumberSchema.optional(), + type: TransactionsExportTypeSchema.optional(), + date: TransactionsExportDateSchema.optional(), + amount: TransactionsExportAmountSchema.optional(), + amount_capturable: TransactionsExportAmountCapturableSchema.optional(), + status: TransactionsExportStatusSchema.optional(), + updated_at: TransactionsExportUpdatedAtSchema.optional(), +}); +const TransactionsExportBodySchema = z.looseObject({ + transaction: z + .array(TransactionsExportTransactionItemSchema.optional()) + .optional(), +}); +export { TransactionsExportBodySchema }; +export type TransactionsExportBody = z.infer< + typeof TransactionsExportBodySchema +>; + +//Export.orders + +const OrdersExportTotalSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const OrdersExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const OrdersExportSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const OrdersExportCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const OrdersExportStatusSchema = z.object({ + is: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), + is_not: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), + in: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), + not_in: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), +}); +const OrdersExportPriceTypeSchema = z.object({ + is: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + is_not: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + not_in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), +}); +const OrdersExportOrderDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const OrdersExportShippingDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const OrdersExportShippedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const OrdersExportDeliveredAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const OrdersExportCancelledAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const OrdersExportAmountPaidSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const OrdersExportRefundableCreditsSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const OrdersExportRefundableCreditsIssuedSchema = z.object({ + is: z.string().regex(RegExp('^-?d+$')).optional(), + is_not: z.string().regex(RegExp('^-?d+$')).optional(), + lt: z.string().regex(RegExp('^-?d+$')).optional(), + lte: z.string().regex(RegExp('^-?d+$')).optional(), + gt: z.string().regex(RegExp('^-?d+$')).optional(), + gte: z.string().regex(RegExp('^-?d+$')).optional(), + between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), +}); +const OrdersExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const OrdersExportResentStatusSchema = z.object({ + is: z.enum(['fully_resent', 'partially_resent']).optional(), + is_not: z.enum(['fully_resent', 'partially_resent']).optional(), + in: z.enum(['fully_resent', 'partially_resent']).optional(), + not_in: z.enum(['fully_resent', 'partially_resent']).optional(), +}); +const OrdersExportIsResentSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const OrdersExportOriginalOrderIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const OrdersExportOrderItemSchema = z.object({ + id: OrdersExportIdSchema.optional(), + subscription_id: OrdersExportSubscriptionIdSchema.optional(), + customer_id: OrdersExportCustomerIdSchema.optional(), + status: OrdersExportStatusSchema.optional(), + price_type: OrdersExportPriceTypeSchema.optional(), + order_date: OrdersExportOrderDateSchema.optional(), + shipping_date: OrdersExportShippingDateSchema.optional(), + shipped_at: OrdersExportShippedAtSchema.optional(), + delivered_at: OrdersExportDeliveredAtSchema.optional(), + cancelled_at: OrdersExportCancelledAtSchema.optional(), + amount_paid: OrdersExportAmountPaidSchema.optional(), + refundable_credits: OrdersExportRefundableCreditsSchema.optional(), + refundable_credits_issued: + OrdersExportRefundableCreditsIssuedSchema.optional(), + updated_at: OrdersExportUpdatedAtSchema.optional(), + resent_status: OrdersExportResentStatusSchema.optional(), + is_resent: OrdersExportIsResentSchema.optional(), + original_order_id: OrdersExportOriginalOrderIdSchema.optional(), +}); +const OrdersExportBodySchema = z.looseObject({ + total: OrdersExportTotalSchema.optional(), + order: z.array(OrdersExportOrderItemSchema.optional()).optional(), +}); +export { OrdersExportBodySchema }; +export type OrdersExportBody = z.infer; + +//Export.itemFamilies + +const ItemFamiliesExportBusinessEntityIdSchema = z.object({ + is_present: z.enum(['true', 'false']).optional(), + is: z.string().min(1).optional(), +}); +const ItemFamiliesExportIncludeSiteLevelResourcesSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const ItemFamiliesExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const ItemFamiliesExportNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ItemFamiliesExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ItemFamiliesExportItemFamilyItemSchema = z.object({ + id: ItemFamiliesExportIdSchema.optional(), + name: ItemFamiliesExportNameSchema.optional(), + updated_at: ItemFamiliesExportUpdatedAtSchema.optional(), +}); +const ItemFamiliesExportBodySchema = z.looseObject({ + business_entity_id: ItemFamiliesExportBusinessEntityIdSchema.optional(), + include_site_level_resources: + ItemFamiliesExportIncludeSiteLevelResourcesSchema.optional(), + item_family: z + .array(ItemFamiliesExportItemFamilyItemSchema.optional()) + .optional(), +}); +export { ItemFamiliesExportBodySchema }; +export type ItemFamiliesExportBody = z.infer< + typeof ItemFamiliesExportBodySchema +>; + +//Export.items + +const ItemsExportBusinessEntityIdSchema = z.object({ + is_present: z.enum(['true', 'false']).optional(), + is: z.string().min(1).optional(), +}); +const ItemsExportIncludeSiteLevelResourcesSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const ItemsExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const ItemsExportItemFamilyIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const ItemsExportTypeSchema = z.object({ + is: z.enum(['plan', 'addon', 'charge']).optional(), + is_not: z.enum(['plan', 'addon', 'charge']).optional(), + in: z.enum(['plan', 'addon', 'charge']).optional(), + not_in: z.enum(['plan', 'addon', 'charge']).optional(), +}); +const ItemsExportNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ItemsExportItemApplicabilitySchema = z.object({ + is: z.enum(['all', 'restricted']).optional(), + is_not: z.enum(['all', 'restricted']).optional(), + in: z.enum(['all', 'restricted']).optional(), + not_in: z.enum(['all', 'restricted']).optional(), +}); +const ItemsExportStatusSchema = z.object({ + is: z.enum(['active', 'archived', 'deleted']).optional(), + is_not: z.enum(['active', 'archived', 'deleted']).optional(), + in: z.enum(['active', 'archived', 'deleted']).optional(), + not_in: z.enum(['active', 'archived', 'deleted']).optional(), +}); +const ItemsExportIsGiftableSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const ItemsExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ItemsExportEnabledForCheckoutSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const ItemsExportEnabledInPortalSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const ItemsExportMeteredSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const ItemsExportUsageCalculationSchema = z.object({ + is: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), + is_not: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), + in: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), + not_in: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), +}); +const ItemsExportChannelSchema = z.object({ + is: z.enum(['web', 'app_store', 'play_store']).optional(), + is_not: z.enum(['web', 'app_store', 'play_store']).optional(), + in: z.enum(['web', 'app_store', 'play_store']).optional(), + not_in: z.enum(['web', 'app_store', 'play_store']).optional(), +}); +const ItemsExportItemItemSchema = z.object({ + id: ItemsExportIdSchema.optional(), + item_family_id: ItemsExportItemFamilyIdSchema.optional(), + type: ItemsExportTypeSchema.optional(), + name: ItemsExportNameSchema.optional(), + item_applicability: ItemsExportItemApplicabilitySchema.optional(), + status: ItemsExportStatusSchema.optional(), + is_giftable: ItemsExportIsGiftableSchema.optional(), + updated_at: ItemsExportUpdatedAtSchema.optional(), + enabled_for_checkout: ItemsExportEnabledForCheckoutSchema.optional(), + enabled_in_portal: ItemsExportEnabledInPortalSchema.optional(), + metered: ItemsExportMeteredSchema.optional(), + usage_calculation: ItemsExportUsageCalculationSchema.optional(), + channel: ItemsExportChannelSchema.optional(), +}); +const ItemsExportBodySchema = z.looseObject({ + business_entity_id: ItemsExportBusinessEntityIdSchema.optional(), + include_site_level_resources: + ItemsExportIncludeSiteLevelResourcesSchema.optional(), + item: z.array(ItemsExportItemItemSchema.optional()).optional(), +}); +export { ItemsExportBodySchema }; +export type ItemsExportBody = z.infer; + +//Export.attachedItems + +const AttachedItemsExportItemTypeSchema = z.object({ + is: z.enum(['plan', 'addon', 'charge']).optional(), + is_not: z.enum(['plan', 'addon', 'charge']).optional(), + in: z.enum(['plan', 'addon', 'charge']).optional(), + not_in: z.enum(['plan', 'addon', 'charge']).optional(), +}); +const AttachedItemsExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const AttachedItemsExportItemIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const AttachedItemsExportTypeSchema = z.object({ + is: z.enum(['recommended', 'mandatory', 'optional']).optional(), + is_not: z.enum(['recommended', 'mandatory', 'optional']).optional(), + in: z.enum(['recommended', 'mandatory', 'optional']).optional(), + not_in: z.enum(['recommended', 'mandatory', 'optional']).optional(), +}); +const AttachedItemsExportChargeOnEventSchema = z.object({ + is: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + is_not: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + in: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), + not_in: z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + 'on_demand', + ]) + .optional(), +}); +const AttachedItemsExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const AttachedItemsExportParentItemIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const AttachedItemsExportAttachedItemItemSchema = z.object({ + id: AttachedItemsExportIdSchema.optional(), + item_id: AttachedItemsExportItemIdSchema.optional(), + type: AttachedItemsExportTypeSchema.optional(), + charge_on_event: AttachedItemsExportChargeOnEventSchema.optional(), + updated_at: AttachedItemsExportUpdatedAtSchema.optional(), + parent_item_id: AttachedItemsExportParentItemIdSchema.optional(), +}); +const AttachedItemsExportBodySchema = z.looseObject({ + item_type: AttachedItemsExportItemTypeSchema.optional(), + attached_item: z + .array(AttachedItemsExportAttachedItemItemSchema.optional()) + .optional(), +}); +export { AttachedItemsExportBodySchema }; +export type AttachedItemsExportBody = z.infer< + typeof AttachedItemsExportBodySchema +>; + +//Export.priceVariants + +const PriceVariantsExportBusinessEntityIdSchema = z.object({ + is_present: z.enum(['true', 'false']).optional(), + is: z.string().min(1).optional(), +}); +const PriceVariantsExportIncludeSiteLevelResourcesSchema = z.object({ + is: z.enum(['true', 'false']).optional(), +}); +const PriceVariantsExportIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const PriceVariantsExportNameSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), + not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), +}); +const PriceVariantsExportStatusSchema = z.object({ + is: z.enum(['active', 'archived']).optional(), + is_not: z.enum(['active', 'archived']).optional(), + in: z.enum(['active', 'archived']).optional(), + not_in: z.enum(['active', 'archived']).optional(), +}); +const PriceVariantsExportUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const PriceVariantsExportCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const PriceVariantsExportPriceVariantItemSchema = z.object({ + id: PriceVariantsExportIdSchema.optional(), + name: PriceVariantsExportNameSchema.optional(), + status: PriceVariantsExportStatusSchema.optional(), + updated_at: PriceVariantsExportUpdatedAtSchema.optional(), + created_at: PriceVariantsExportCreatedAtSchema.optional(), +}); +const PriceVariantsExportBodySchema = z.looseObject({ + business_entity_id: PriceVariantsExportBusinessEntityIdSchema.optional(), + include_site_level_resources: + PriceVariantsExportIncludeSiteLevelResourcesSchema.optional(), + price_variant: z + .array(PriceVariantsExportPriceVariantItemSchema.optional()) + .optional(), +}); +export { PriceVariantsExportBodySchema }; +export type PriceVariantsExportBody = z.infer< + typeof PriceVariantsExportBodySchema +>; diff --git a/src/schema/feature.schema.ts b/src/schema/feature.schema.ts new file mode 100644 index 0000000..03da765 --- /dev/null +++ b/src/schema/feature.schema.ts @@ -0,0 +1,41 @@ +// Generated Zod schemas: Feature +// Actions: create, update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Feature.create + +const CreateFeatureLevelsSchema = z.object({ + name: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + is_unlimited: z.array(z.boolean().optional()).optional(), + level: z.array(z.number().int().optional()).optional(), +}); +const CreateFeatureBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + name: z.string().max(50), + description: z.string().max(500).optional(), + type: z.enum(['switch', 'custom', 'quantity', 'range']).optional(), + unit: z.string().max(50).optional(), + levels: CreateFeatureLevelsSchema.optional(), +}); +export { CreateFeatureBodySchema }; +export type CreateFeatureBody = z.infer; + +//Feature.update + +const UpdateFeatureLevelsSchema = z.object({ + name: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + is_unlimited: z.array(z.boolean().optional()).optional(), + level: z.array(z.number().int().optional()).optional(), +}); +const UpdateFeatureBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + description: z.string().max(500).optional(), + unit: z.string().max(50).optional(), + levels: UpdateFeatureLevelsSchema.optional(), +}); +export { UpdateFeatureBodySchema }; +export type UpdateFeatureBody = z.infer; diff --git a/src/schema/gift.schema.ts b/src/schema/gift.schema.ts new file mode 100644 index 0000000..fa87617 --- /dev/null +++ b/src/schema/gift.schema.ts @@ -0,0 +1,290 @@ +// Generated Zod schemas: Gift +// Actions: create, createForItems, list, updateGift +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Gift.create + +const CreateGiftGifterSchema = z.object({ + customer_id: z.string().max(50), + signature: z.string().max(50), + note: z.string().max(500).optional(), + payment_src_id: z.string().max(40).optional(), +}); +const CreateGiftGiftReceiverSchema = z.object({ + customer_id: z.string().max(50), + first_name: z.string().max(150), + last_name: z.string().max(150), + email: z.string().email().max(70), +}); +const CreateGiftAdditionalInformationSchema = z.looseObject({}); +const CreateGiftPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: CreateGiftAdditionalInformationSchema.optional(), +}); +const CreateGiftShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateGiftSubscriptionSchema = z.looseObject({ + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), +}); +const CreateGiftAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const CreateGiftBodySchema = z.looseObject({ + scheduled_at: z.number().int().optional(), + auto_claim: z.boolean().default(false).optional(), + no_expiry: z.boolean().optional(), + claim_expiry_date: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gifter: CreateGiftGifterSchema.optional(), + gift_receiver: CreateGiftGiftReceiverSchema.optional(), + payment_intent: CreateGiftPaymentIntentSchema.optional(), + shipping_address: CreateGiftShippingAddressSchema.optional(), + subscription: CreateGiftSubscriptionSchema.optional(), + addons: CreateGiftAddonsSchema.optional(), +}); +export { CreateGiftBodySchema }; +export type CreateGiftBody = z.infer; + +//Gift.createForItems + +const CreateForItemsGiftMetaDataSchema = z.looseObject({}); +const CreateForItemsGiftGifterSchema = z.object({ + customer_id: z.string().max(50), + signature: z.string().max(50), + note: z.string().max(500).optional(), + payment_src_id: z.string().max(40).optional(), +}); +const CreateForItemsGiftGiftReceiverSchema = z.object({ + customer_id: z.string().max(50), + first_name: z.string().max(150), + last_name: z.string().max(150), + email: z.string().email().max(70), +}); +const CreateForItemsGiftAdditionalInformationSchema = z.looseObject({}); +const CreateForItemsGiftPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + CreateForItemsGiftAdditionalInformationSchema.optional(), +}); +const CreateForItemsGiftShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateForItemsGiftSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CreateForItemsGiftItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CreateForItemsGiftBodySchema = z.looseObject({ + scheduled_at: z.number().int().optional(), + auto_claim: z.boolean().default(false).optional(), + no_expiry: z.boolean().optional(), + claim_expiry_date: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + meta_data: CreateForItemsGiftMetaDataSchema.optional(), + gifter: CreateForItemsGiftGifterSchema.optional(), + gift_receiver: CreateForItemsGiftGiftReceiverSchema.optional(), + payment_intent: CreateForItemsGiftPaymentIntentSchema.optional(), + shipping_address: CreateForItemsGiftShippingAddressSchema.optional(), + subscription_items: CreateForItemsGiftSubscriptionItemsSchema.optional(), + item_tiers: CreateForItemsGiftItemTiersSchema.optional(), +}); +export { CreateForItemsGiftBodySchema }; +export type CreateForItemsGiftBody = z.infer< + typeof CreateForItemsGiftBodySchema +>; + +//Gift.list + +const ListGiftStatusSchema = z.object({ + is: z + .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) + .optional(), + is_not: z + .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) + .optional(), + in: z + .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) + .optional(), + not_in: z + .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) + .optional(), +}); +const ListGiftEmailSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListGiftCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListGiftGiftReceiverSchema = z.object({ + email: ListGiftEmailSchema.optional(), + customer_id: ListGiftCustomerIdSchema.optional(), +}); +const ListGiftGifterSchema = z.object({ + customer_id: ListGiftCustomerIdSchema.optional(), +}); +const ListGiftBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + status: ListGiftStatusSchema.optional(), + gift_receiver: ListGiftGiftReceiverSchema.optional(), + gifter: ListGiftGifterSchema.optional(), +}); +export { ListGiftBodySchema }; +export type ListGiftBody = z.infer; + +//Gift.updateGift + +const UpdateGiftGiftBodySchema = z.looseObject({ + scheduled_at: z.number().int(), + comment: z.string().max(250).optional(), +}); +export { UpdateGiftGiftBodySchema }; +export type UpdateGiftGiftBody = z.infer; diff --git a/src/schema/hosted_page.schema.ts b/src/schema/hosted_page.schema.ts new file mode 100644 index 0000000..a8fa0c6 --- /dev/null +++ b/src/schema/hosted_page.schema.ts @@ -0,0 +1,1765 @@ +// Generated Zod schemas: HostedPage +// Actions: checkoutNew, checkoutOneTime, checkoutOneTimeForItems, checkoutNewForItems, checkoutExisting, checkoutExistingForItems, updateCard, updatePaymentMethod, managePaymentSources, collectNow, acceptQuote, extendSubscription, checkoutGift, checkoutGiftForItems, claimGift, retrieveAgreementPdf, preCancel, events, viewVoucher +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//HostedPage.checkoutNew + +const CheckoutNewHostedPageSubscriptionSchema = z.looseObject({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + affiliate_token: z.string().max(250).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const CheckoutNewHostedPageCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + consolidated_invoicing: z.boolean().optional(), +}); +const CheckoutNewHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const CheckoutNewHostedPageBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CheckoutNewHostedPageShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CheckoutNewHostedPageContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CheckoutNewHostedPageAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), +}); +const CheckoutNewHostedPageEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const CheckoutNewHostedPageBodySchema = z.looseObject({ + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + embed: z.boolean().default(true).optional(), + iframe_messaging: z.boolean().default(false).optional(), + allow_offline_payment_methods: z.boolean().optional(), + subscription: CheckoutNewHostedPageSubscriptionSchema.optional(), + customer: CheckoutNewHostedPageCustomerSchema.optional(), + card: CheckoutNewHostedPageCardSchema.optional(), + billing_address: CheckoutNewHostedPageBillingAddressSchema.optional(), + shipping_address: CheckoutNewHostedPageShippingAddressSchema.optional(), + contract_term: CheckoutNewHostedPageContractTermSchema.optional(), + addons: CheckoutNewHostedPageAddonsSchema.optional(), + event_based_addons: CheckoutNewHostedPageEventBasedAddonsSchema.optional(), +}); +export { CheckoutNewHostedPageBodySchema }; +export type CheckoutNewHostedPageBody = z.infer< + typeof CheckoutNewHostedPageBodySchema +>; + +//HostedPage.checkoutOneTime + +const CheckoutOneTimeHostedPageCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + consolidated_invoicing: z.boolean().optional(), +}); +const CheckoutOneTimeHostedPageInvoiceSchema = z.object({ + po_number: z.string().max(100).optional(), +}); +const CheckoutOneTimeHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const CheckoutOneTimeHostedPageBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CheckoutOneTimeHostedPageShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CheckoutOneTimeHostedPageAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CheckoutOneTimeHostedPageChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CheckoutOneTimeHostedPageBodySchema = z.looseObject({ + currency_code: z.string().max(3).optional(), + invoice_note: z.string().max(2000).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + embed: z.boolean().default(true).optional(), + iframe_messaging: z.boolean().default(false).optional(), + customer: CheckoutOneTimeHostedPageCustomerSchema.optional(), + invoice: CheckoutOneTimeHostedPageInvoiceSchema.optional(), + card: CheckoutOneTimeHostedPageCardSchema.optional(), + billing_address: CheckoutOneTimeHostedPageBillingAddressSchema.optional(), + shipping_address: CheckoutOneTimeHostedPageShippingAddressSchema.optional(), + addons: CheckoutOneTimeHostedPageAddonsSchema.optional(), + charges: CheckoutOneTimeHostedPageChargesSchema.optional(), +}); +export { CheckoutOneTimeHostedPageBodySchema }; +export type CheckoutOneTimeHostedPageBody = z.infer< + typeof CheckoutOneTimeHostedPageBodySchema +>; + +//HostedPage.checkoutOneTimeForItems + +const CheckoutOneTimeForItemsHostedPageCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + is_einvoice_enabled: z.boolean().optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + consolidated_invoicing: z.boolean().optional(), +}); +const CheckoutOneTimeForItemsHostedPageInvoiceSchema = z.object({ + po_number: z.string().max(100).optional(), +}); +const CheckoutOneTimeForItemsHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const CheckoutOneTimeForItemsHostedPageBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CheckoutOneTimeForItemsHostedPageShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CheckoutOneTimeForItemsHostedPageItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CheckoutOneTimeForItemsHostedPageItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CheckoutOneTimeForItemsHostedPageChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CheckoutOneTimeForItemsHostedPageDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const CheckoutOneTimeForItemsHostedPageEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + operation: z + .array(z.enum(['create', 'update', 'delete']).optional()) + .optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const CheckoutOneTimeForItemsHostedPageBodySchema = z.looseObject({ + business_entity_id: z.string().max(50).optional(), + layout: z.enum(['in_app', 'full_page']).optional(), + invoice_note: z.string().max(2000).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + currency_code: z.string().max(3).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + customer: CheckoutOneTimeForItemsHostedPageCustomerSchema.optional(), + invoice: CheckoutOneTimeForItemsHostedPageInvoiceSchema.optional(), + card: CheckoutOneTimeForItemsHostedPageCardSchema.optional(), + billing_address: + CheckoutOneTimeForItemsHostedPageBillingAddressSchema.optional(), + shipping_address: + CheckoutOneTimeForItemsHostedPageShippingAddressSchema.optional(), + item_prices: CheckoutOneTimeForItemsHostedPageItemPricesSchema.optional(), + item_tiers: CheckoutOneTimeForItemsHostedPageItemTiersSchema.optional(), + charges: CheckoutOneTimeForItemsHostedPageChargesSchema.optional(), + discounts: CheckoutOneTimeForItemsHostedPageDiscountsSchema.optional(), + entity_identifiers: + CheckoutOneTimeForItemsHostedPageEntityIdentifiersSchema.optional(), +}); +export { CheckoutOneTimeForItemsHostedPageBodySchema }; +export type CheckoutOneTimeForItemsHostedPageBody = z.infer< + typeof CheckoutOneTimeForItemsHostedPageBodySchema +>; + +//HostedPage.checkoutNewForItems + +const CheckoutNewForItemsHostedPageSubscriptionSchema = z.looseObject({ + id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + po_number: z.string().max(100).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const CheckoutNewForItemsHostedPageCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + is_einvoice_enabled: z.boolean().optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), +}); +const CheckoutNewForItemsHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const CheckoutNewForItemsHostedPageBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CheckoutNewForItemsHostedPageShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CheckoutNewForItemsHostedPageContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CheckoutNewForItemsHostedPageSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const CheckoutNewForItemsHostedPageDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const CheckoutNewForItemsHostedPageItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CheckoutNewForItemsHostedPageEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + operation: z + .array(z.enum(['create', 'update', 'delete']).optional()) + .optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const CheckoutNewForItemsHostedPageBodySchema = z.looseObject({ + layout: z.enum(['in_app', 'full_page']).optional(), + business_entity_id: z.string().max(50).optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + allow_offline_payment_methods: z.boolean().optional(), + subscription: CheckoutNewForItemsHostedPageSubscriptionSchema.optional(), + customer: CheckoutNewForItemsHostedPageCustomerSchema.optional(), + card: CheckoutNewForItemsHostedPageCardSchema.optional(), + billing_address: CheckoutNewForItemsHostedPageBillingAddressSchema.optional(), + shipping_address: + CheckoutNewForItemsHostedPageShippingAddressSchema.optional(), + contract_term: CheckoutNewForItemsHostedPageContractTermSchema.optional(), + subscription_items: + CheckoutNewForItemsHostedPageSubscriptionItemsSchema.optional(), + discounts: CheckoutNewForItemsHostedPageDiscountsSchema.optional(), + item_tiers: CheckoutNewForItemsHostedPageItemTiersSchema.optional(), + entity_identifiers: + CheckoutNewForItemsHostedPageEntityIdentifiersSchema.optional(), +}); +export { CheckoutNewForItemsHostedPageBodySchema }; +export type CheckoutNewForItemsHostedPageBody = z.infer< + typeof CheckoutNewForItemsHostedPageBodySchema +>; + +//HostedPage.checkoutExisting + +const CheckoutExistingHostedPageSubscriptionSchema = z.looseObject({ + id: z.string().max(50), + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const CheckoutExistingHostedPageCustomerSchema = z.looseObject({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), +}); +const CheckoutExistingHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const CheckoutExistingHostedPageContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CheckoutExistingHostedPageAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CheckoutExistingHostedPageEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CheckoutExistingHostedPageBodySchema = z.looseObject({ + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + invoice_date: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + force_term_reset: z.boolean().default(false).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + embed: z.boolean().default(true).optional(), + iframe_messaging: z.boolean().default(false).optional(), + allow_offline_payment_methods: z.boolean().optional(), + subscription: CheckoutExistingHostedPageSubscriptionSchema.optional(), + customer: CheckoutExistingHostedPageCustomerSchema.optional(), + card: CheckoutExistingHostedPageCardSchema.optional(), + contract_term: CheckoutExistingHostedPageContractTermSchema.optional(), + addons: CheckoutExistingHostedPageAddonsSchema.optional(), + event_based_addons: + CheckoutExistingHostedPageEventBasedAddonsSchema.optional(), +}); +export { CheckoutExistingHostedPageBodySchema }; +export type CheckoutExistingHostedPageBody = z.infer< + typeof CheckoutExistingHostedPageBodySchema +>; + +//HostedPage.checkoutExistingForItems + +const CheckoutExistingForItemsHostedPageSubscriptionSchema = z.looseObject({ + id: z.string().max(50), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + invoice_notes: z.string().max(2000).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const CheckoutExistingForItemsHostedPageCustomerSchema = z.looseObject({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + is_einvoice_enabled: z.boolean().optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), +}); +const CheckoutExistingForItemsHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const CheckoutExistingForItemsHostedPageContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CheckoutExistingForItemsHostedPageSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), +}); +const CheckoutExistingForItemsHostedPageDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), +}); +const CheckoutExistingForItemsHostedPageItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CheckoutExistingForItemsHostedPageEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + operation: z + .array(z.enum(['create', 'update', 'delete']).optional()) + .optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const CheckoutExistingForItemsHostedPageBodySchema = z.looseObject({ + layout: z.enum(['in_app', 'full_page']).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + invoice_date: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + force_term_reset: z.boolean().default(false).optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + changes_scheduled_at: z.number().int().optional(), + invoice_usages: z.boolean().default(false).optional(), + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + allow_offline_payment_methods: z.boolean().optional(), + subscription: CheckoutExistingForItemsHostedPageSubscriptionSchema.optional(), + customer: CheckoutExistingForItemsHostedPageCustomerSchema.optional(), + card: CheckoutExistingForItemsHostedPageCardSchema.optional(), + contract_term: + CheckoutExistingForItemsHostedPageContractTermSchema.optional(), + subscription_items: + CheckoutExistingForItemsHostedPageSubscriptionItemsSchema.optional(), + discounts: CheckoutExistingForItemsHostedPageDiscountsSchema.optional(), + item_tiers: CheckoutExistingForItemsHostedPageItemTiersSchema.optional(), + entity_identifiers: + CheckoutExistingForItemsHostedPageEntityIdentifiersSchema.optional(), +}); +export { CheckoutExistingForItemsHostedPageBodySchema }; +export type CheckoutExistingForItemsHostedPageBody = z.infer< + typeof CheckoutExistingForItemsHostedPageBodySchema +>; + +//HostedPage.updateCard + +const UpdateCardHostedPageCustomerSchema = z.object({ + id: z.string().max(50), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), +}); +const UpdateCardHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const UpdateCardHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + iframe_messaging: z.boolean().default(false).optional(), + customer: UpdateCardHostedPageCustomerSchema.optional(), + card: UpdateCardHostedPageCardSchema.optional(), + embed: z.boolean().default(true).optional(), +}); +export { UpdateCardHostedPageBodySchema }; +export type UpdateCardHostedPageBody = z.infer< + typeof UpdateCardHostedPageBodySchema +>; + +//HostedPage.updatePaymentMethod + +const UpdatePaymentMethodHostedPageCustomerSchema = z.object({ + id: z.string().max(50), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), +}); +const UpdatePaymentMethodHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const UpdatePaymentMethodHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + cancel_url: z.string().max(250).optional(), + pass_thru_content: z.string().max(2048).optional(), + iframe_messaging: z.boolean().default(false).optional(), + customer: UpdatePaymentMethodHostedPageCustomerSchema.optional(), + card: UpdatePaymentMethodHostedPageCardSchema.optional(), + embed: z.boolean().default(true).optional(), +}); +export { UpdatePaymentMethodHostedPageBodySchema }; +export type UpdatePaymentMethodHostedPageBody = z.infer< + typeof UpdatePaymentMethodHostedPageBodySchema +>; + +//HostedPage.managePaymentSources + +const ManagePaymentSourcesHostedPageCustomerSchema = z.object({ + id: z.string().max(50), +}); +const ManagePaymentSourcesHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const ManagePaymentSourcesHostedPageBodySchema = z.looseObject({ + business_entity_id: z.string().max(50).optional(), + redirect_url: z.string().max(250).optional(), + customer: ManagePaymentSourcesHostedPageCustomerSchema.optional(), + card: ManagePaymentSourcesHostedPageCardSchema.optional(), +}); +export { ManagePaymentSourcesHostedPageBodySchema }; +export type ManagePaymentSourcesHostedPageBody = z.infer< + typeof ManagePaymentSourcesHostedPageBodySchema +>; + +//HostedPage.collectNow + +const CollectNowHostedPageCustomerSchema = z.object({ + id: z.string().max(50), +}); +const CollectNowHostedPageCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), +}); +const CollectNowHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + currency_code: z.string().max(3).optional(), + payment_method_save_policy: z.enum(['always', 'ask', 'never']).optional(), + customer: CollectNowHostedPageCustomerSchema.optional(), + card: CollectNowHostedPageCardSchema.optional(), +}); +export { CollectNowHostedPageBodySchema }; +export type CollectNowHostedPageBody = z.infer< + typeof CollectNowHostedPageBodySchema +>; + +//HostedPage.acceptQuote + +const AcceptQuoteHostedPageQuoteSchema = z.object({ + id: z.string().max(50), +}); +const AcceptQuoteHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + layout: z.enum(['in_app', 'full_page']).optional(), + quote: AcceptQuoteHostedPageQuoteSchema.optional(), +}); +export { AcceptQuoteHostedPageBodySchema }; +export type AcceptQuoteHostedPageBody = z.infer< + typeof AcceptQuoteHostedPageBodySchema +>; + +//HostedPage.extendSubscription + +const ExtendSubscriptionHostedPageSubscriptionSchema = z.object({ + id: z.string().max(50), +}); +const ExtendSubscriptionHostedPageBodySchema = z.looseObject({ + expiry: z.number().int().min(1).max(500).optional(), + billing_cycle: z.number().int().min(1).optional(), + subscription: ExtendSubscriptionHostedPageSubscriptionSchema.optional(), +}); +export { ExtendSubscriptionHostedPageBodySchema }; +export type ExtendSubscriptionHostedPageBody = z.infer< + typeof ExtendSubscriptionHostedPageBodySchema +>; + +//HostedPage.checkoutGift + +const CheckoutGiftHostedPageGifterSchema = z.object({ + customer_id: z.string().max(50).optional(), +}); +const CheckoutGiftHostedPageSubscriptionSchema = z.looseObject({ + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + coupon: z.string().max(100).optional(), +}); +const CheckoutGiftHostedPageAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const CheckoutGiftHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gifter: CheckoutGiftHostedPageGifterSchema.optional(), + subscription: CheckoutGiftHostedPageSubscriptionSchema.optional(), + addons: CheckoutGiftHostedPageAddonsSchema.optional(), +}); +export { CheckoutGiftHostedPageBodySchema }; +export type CheckoutGiftHostedPageBody = z.infer< + typeof CheckoutGiftHostedPageBodySchema +>; + +//HostedPage.checkoutGiftForItems + +const CheckoutGiftForItemsHostedPageGifterSchema = z.object({ + customer_id: z.string().max(50).optional(), +}); +const CheckoutGiftForItemsHostedPageSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CheckoutGiftForItemsHostedPageItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CheckoutGiftForItemsHostedPageBodySchema = z.looseObject({ + business_entity_id: z.string().max(50).optional(), + redirect_url: z.string().max(250).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + gifter: CheckoutGiftForItemsHostedPageGifterSchema.optional(), + subscription_items: + CheckoutGiftForItemsHostedPageSubscriptionItemsSchema.optional(), + item_tiers: CheckoutGiftForItemsHostedPageItemTiersSchema.optional(), +}); +export { CheckoutGiftForItemsHostedPageBodySchema }; +export type CheckoutGiftForItemsHostedPageBody = z.infer< + typeof CheckoutGiftForItemsHostedPageBodySchema +>; + +//HostedPage.claimGift + +const ClaimGiftHostedPageGiftSchema = z.object({ + id: z.string().max(150), +}); +const ClaimGiftHostedPageCustomerSchema = z.object({ + locale: z.string().max(50).optional(), +}); +const ClaimGiftHostedPageBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + gift: ClaimGiftHostedPageGiftSchema.optional(), + customer: ClaimGiftHostedPageCustomerSchema.optional(), +}); +export { ClaimGiftHostedPageBodySchema }; +export type ClaimGiftHostedPageBody = z.infer< + typeof ClaimGiftHostedPageBodySchema +>; + +//HostedPage.retrieveAgreementPdf + +const RetrieveAgreementPdfHostedPageBodySchema = z.looseObject({ + payment_source_id: z.string().max(40), +}); +export { RetrieveAgreementPdfHostedPageBodySchema }; +export type RetrieveAgreementPdfHostedPageBody = z.infer< + typeof RetrieveAgreementPdfHostedPageBodySchema +>; + +//HostedPage.preCancel + +const PreCancelHostedPageSubscriptionSchema = z.object({ + id: z.string().max(50), +}); +const PreCancelHostedPageBodySchema = z.looseObject({ + pass_thru_content: z.string().max(2048).optional(), + cancel_url: z.string().max(250).optional(), + redirect_url: z.string().max(250).optional(), + subscription: PreCancelHostedPageSubscriptionSchema.optional(), +}); +export { PreCancelHostedPageBodySchema }; +export type PreCancelHostedPageBody = z.infer< + typeof PreCancelHostedPageBodySchema +>; + +//HostedPage.events + +const EventsHostedPageEventDataSchema = z.looseObject({}); +const EventsHostedPageBodySchema = z.looseObject({ + event_name: z.enum(['cancellation_page_loaded']), + occurred_at: z.number().int().optional(), + event_data: EventsHostedPageEventDataSchema, +}); +export { EventsHostedPageBodySchema }; +export type EventsHostedPageBody = z.infer; + +//HostedPage.viewVoucher + +const ViewVoucherHostedPagePaymentVoucherSchema = z.object({ + id: z.string().max(40), +}); +const ViewVoucherHostedPageCustomerSchema = z.object({ + locale: z.string().max(50).optional(), +}); +const ViewVoucherHostedPageBodySchema = z.looseObject({ + payment_voucher: ViewVoucherHostedPagePaymentVoucherSchema.optional(), + customer: ViewVoucherHostedPageCustomerSchema.optional(), +}); +export { ViewVoucherHostedPageBodySchema }; +export type ViewVoucherHostedPageBody = z.infer< + typeof ViewVoucherHostedPageBodySchema +>; diff --git a/src/schema/in_app_subscription.schema.ts b/src/schema/in_app_subscription.schema.ts new file mode 100644 index 0000000..c248234 --- /dev/null +++ b/src/schema/in_app_subscription.schema.ts @@ -0,0 +1,87 @@ +// Generated Zod schemas: InAppSubscription +// Actions: processReceipt, importReceipt, importSubscription, retrieveStoreSubs +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//InAppSubscription.processReceipt + +const ProcessReceiptInAppSubscriptionProductSchema = z.object({ + id: z.string().max(96), + currency_code: z.string().max(3), + price: z.number().int().min(0), + name: z.string().max(46).optional(), + price_in_decimal: z.string().max(39).optional(), + period: z.string().max(3).optional(), + period_unit: z.string().max(3).optional(), +}); +const ProcessReceiptInAppSubscriptionCustomerSchema = z.object({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), +}); +const ProcessReceiptInAppSubscriptionBodySchema = z.looseObject({ + receipt: z.string().max(65000), + product: ProcessReceiptInAppSubscriptionProductSchema.optional(), + customer: ProcessReceiptInAppSubscriptionCustomerSchema.optional(), +}); +export { ProcessReceiptInAppSubscriptionBodySchema }; +export type ProcessReceiptInAppSubscriptionBody = z.infer< + typeof ProcessReceiptInAppSubscriptionBodySchema +>; + +//InAppSubscription.importReceipt + +const ImportReceiptInAppSubscriptionProductSchema = z.object({ + currency_code: z.string().max(3), +}); +const ImportReceiptInAppSubscriptionCustomerSchema = z.object({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), +}); +const ImportReceiptInAppSubscriptionBodySchema = z.looseObject({ + receipt: z.string().max(65000), + product: ImportReceiptInAppSubscriptionProductSchema.optional(), + customer: ImportReceiptInAppSubscriptionCustomerSchema.optional(), +}); +export { ImportReceiptInAppSubscriptionBodySchema }; +export type ImportReceiptInAppSubscriptionBody = z.infer< + typeof ImportReceiptInAppSubscriptionBodySchema +>; + +//InAppSubscription.importSubscription + +const ImportSubscriptionInAppSubscriptionSubscriptionSchema = z.object({ + id: z.string().max(50), + started_at: z.number().int(), + term_start: z.number().int(), + term_end: z.number().int(), + product_id: z.string().max(96), + currency_code: z.string().max(3), + transaction_id: z.string().max(43), + is_trial: z.boolean().default(false).optional(), +}); +const ImportSubscriptionInAppSubscriptionCustomerSchema = z.object({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), +}); +const ImportSubscriptionInAppSubscriptionBodySchema = z.looseObject({ + subscription: + ImportSubscriptionInAppSubscriptionSubscriptionSchema.optional(), + customer: ImportSubscriptionInAppSubscriptionCustomerSchema.optional(), +}); +export { ImportSubscriptionInAppSubscriptionBodySchema }; +export type ImportSubscriptionInAppSubscriptionBody = z.infer< + typeof ImportSubscriptionInAppSubscriptionBodySchema +>; + +//InAppSubscription.retrieveStoreSubs + +const RetrieveStoreSubsInAppSubscriptionBodySchema = z.looseObject({ + receipt: z.string().max(65000), +}); +export { RetrieveStoreSubsInAppSubscriptionBodySchema }; +export type RetrieveStoreSubsInAppSubscriptionBody = z.infer< + typeof RetrieveStoreSubsInAppSubscriptionBodySchema +>; diff --git a/src/schema/index.ts b/src/schema/index.ts new file mode 100644 index 0000000..3938ec0 --- /dev/null +++ b/src/schema/index.ts @@ -0,0 +1,64 @@ +// Auto-generated barrel export for Zod validators +export * from './addon.schema.js'; +export * from './address.schema.js'; +export * from './alert.schema.js'; +export * from './attached_item.schema.js'; +export * from './business_entity.schema.js'; +export * from './card.schema.js'; +export * from './comment.schema.js'; +export * from './coupon.schema.js'; +export * from './coupon_code.schema.js'; +export * from './coupon_set.schema.js'; +export * from './credit_note.schema.js'; +export * from './currency.schema.js'; +export * from './customer.schema.js'; +export * from './customer_entitlement.schema.js'; +export * from './differential_price.schema.js'; +export * from './entitlement.schema.js'; +export * from './entitlement_override.schema.js'; +export * from './estimate.schema.js'; +export * from './export.schema.js'; +export * from './feature.schema.js'; +export * from './gift.schema.js'; +export * from './hosted_page.schema.js'; +export * from './in_app_subscription.schema.js'; +export * from './invoice.schema.js'; +export * from './item.schema.js'; +export * from './item_entitlement.schema.js'; +export * from './item_family.schema.js'; +export * from './item_price.schema.js'; +export * from './non_subscription.schema.js'; +export * from './offer_event.schema.js'; +export * from './offer_fulfillment.schema.js'; +export * from './omnichannel_one_time_order.schema.js'; +export * from './omnichannel_subscription.schema.js'; +export * from './omnichannel_subscription_item.schema.js'; +export * from './order.schema.js'; +export * from './payment_intent.schema.js'; +export * from './payment_schedule_scheme.schema.js'; +export * from './payment_source.schema.js'; +export * from './payment_voucher.schema.js'; +export * from './personalized_offer.schema.js'; +export * from './plan.schema.js'; +export * from './portal_session.schema.js'; +export * from './price_variant.schema.js'; +export * from './pricing_page_session.schema.js'; +export * from './promotional_credit.schema.js'; +export * from './purchase.schema.js'; +export * from './quote.schema.js'; +export * from './ramp.schema.js'; +export * from './recorded_purchase.schema.js'; +export * from './resource_migration.schema.js'; +export * from './site_migration_detail.schema.js'; +export * from './subscription.schema.js'; +export * from './subscription_entitlement.schema.js'; +export * from './time_machine.schema.js'; +export * from './transaction.schema.js'; +export * from './unbilled_charge.schema.js'; +export * from './usage.schema.js'; +export * from './usage_charge.schema.js'; +export * from './usage_event.schema.js'; +export * from './usage_file.schema.js'; +export * from './usage_summary.schema.js'; +export * from './virtual_bank_account.schema.js'; +export * from './webhook_endpoint.schema.js'; diff --git a/src/schema/invoice.schema.ts b/src/schema/invoice.schema.ts new file mode 100644 index 0000000..7c57682 --- /dev/null +++ b/src/schema/invoice.schema.ts @@ -0,0 +1,1652 @@ +// Generated Zod schemas: Invoice +// Actions: create, createForChargeItemsAndCharges, charge, chargeAddon, createForChargeItem, stopDunning, pauseDunning, resumeDunning, importInvoice, applyPayments, deleteLineItems, applyCredits, invoicesForCustomer, invoicesForSubscription, retrieve, pdf, addCharge, addAddonCharge, addChargeItem, close, collectPayment, recordPayment, recordTaxWithheld, removeTaxWithheld, refund, recordRefund, removePayment, removeCreditNote, voidInvoice, writeOff, delete, updateDetails, applyPaymentScheduleScheme +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Invoice.create + +const CreateInvoiceShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateInvoiceStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const CreateInvoiceAdditionalInformationSchema = z.looseObject({}); +const CreateInvoiceCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: CreateInvoiceAdditionalInformationSchema.optional(), +}); +const CreateInvoiceBillingAddressSchema = z.looseObject({}); +const CreateInvoiceBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + issuing_country: z.string().max(50).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: CreateInvoiceBillingAddressSchema.optional(), +}); +const CreateInvoicePaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: CreateInvoiceAdditionalInformationSchema.optional(), +}); +const CreateInvoicePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: CreateInvoiceAdditionalInformationSchema.optional(), +}); +const CreateInvoiceAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateInvoiceChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateInvoiceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateInvoiceNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum(['plan', 'addon', 'customer', 'subscription', 'coupon']) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + currency_code: z.string().max(3).optional(), + invoice_date: z.number().int().optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + po_number: z.string().max(100).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + token_id: z.string().max(40).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + retain_payment_source: z.boolean().default(true).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + shipping_address: CreateInvoiceShippingAddressSchema.optional(), + statement_descriptor: CreateInvoiceStatementDescriptorSchema.optional(), + card: CreateInvoiceCardSchema.optional(), + bank_account: CreateInvoiceBankAccountSchema.optional(), + payment_method: CreateInvoicePaymentMethodSchema.optional(), + payment_intent: CreateInvoicePaymentIntentSchema.optional(), + addons: CreateInvoiceAddonsSchema.optional(), + charges: CreateInvoiceChargesSchema.optional(), + tax_providers_fields: CreateInvoiceTaxProvidersFieldsSchema.optional(), + notes_to_remove: CreateInvoiceNotesToRemoveSchema.optional(), +}); +export { CreateInvoiceBodySchema }; +export type CreateInvoiceBody = z.infer; + +//Invoice.createForChargeItemsAndCharges + +const CreateForChargeItemsAndChargesInvoiceShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateForChargeItemsAndChargesInvoiceStatementDescriptorSchema = z.object( + { + descriptor: z.string().max(65000).optional(), + }, +); +const CreateForChargeItemsAndChargesInvoiceAdditionalInformationSchema = + z.looseObject({}); +const CreateForChargeItemsAndChargesInvoiceCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: + CreateForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), +}); +const CreateForChargeItemsAndChargesInvoiceBillingAddressSchema = z.looseObject( + {}, +); +const CreateForChargeItemsAndChargesInvoiceBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + issuing_country: z.string().max(50).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: + CreateForChargeItemsAndChargesInvoiceBillingAddressSchema.optional(), +}); +const CreateForChargeItemsAndChargesInvoicePaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + CreateForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), +}); +const CreateForChargeItemsAndChargesInvoicePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + CreateForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), +}); +const CreateForChargeItemsAndChargesInvoiceItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateForChargeItemsAndChargesInvoiceItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateForChargeItemsAndChargesInvoiceChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateForChargeItemsAndChargesInvoiceNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum([ + 'customer', + 'subscription', + 'coupon', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateForChargeItemsAndChargesInvoiceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateForChargeItemsAndChargesInvoiceDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateForChargeItemsAndChargesInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + currency_code: z.string().max(3).optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + po_number: z.string().max(100).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + net_term_days: z.number().int().optional(), + invoice_date: z.number().int().optional(), + token_id: z.string().max(40).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + retain_payment_source: z.boolean().default(true).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + shipping_address: + CreateForChargeItemsAndChargesInvoiceShippingAddressSchema.optional(), + statement_descriptor: + CreateForChargeItemsAndChargesInvoiceStatementDescriptorSchema.optional(), + card: CreateForChargeItemsAndChargesInvoiceCardSchema.optional(), + bank_account: + CreateForChargeItemsAndChargesInvoiceBankAccountSchema.optional(), + payment_method: + CreateForChargeItemsAndChargesInvoicePaymentMethodSchema.optional(), + payment_intent: + CreateForChargeItemsAndChargesInvoicePaymentIntentSchema.optional(), + item_prices: CreateForChargeItemsAndChargesInvoiceItemPricesSchema.optional(), + item_tiers: CreateForChargeItemsAndChargesInvoiceItemTiersSchema.optional(), + charges: CreateForChargeItemsAndChargesInvoiceChargesSchema.optional(), + notes_to_remove: + CreateForChargeItemsAndChargesInvoiceNotesToRemoveSchema.optional(), + tax_providers_fields: + CreateForChargeItemsAndChargesInvoiceTaxProvidersFieldsSchema.optional(), + discounts: CreateForChargeItemsAndChargesInvoiceDiscountsSchema.optional(), +}); +export { CreateForChargeItemsAndChargesInvoiceBodySchema }; +export type CreateForChargeItemsAndChargesInvoiceBody = z.infer< + typeof CreateForChargeItemsAndChargesInvoiceBodySchema +>; + +//Invoice.charge + +const ChargeInvoiceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const ChargeInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + currency_code: z.string().max(3).optional(), + amount: z.number().int().min(1).optional(), + amount_in_decimal: z.string().max(39).optional(), + description: z.string().max(250), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + coupon: z.string().max(100).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + po_number: z.string().max(100).optional(), + invoice_date: z.number().int().optional(), + payment_source_id: z.string().max(40).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + tax_providers_fields: ChargeInvoiceTaxProvidersFieldsSchema.optional(), +}); +export { ChargeInvoiceBodySchema }; +export type ChargeInvoiceBody = z.infer; + +//Invoice.chargeAddon + +const ChargeAddonInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + addon_id: z.string().max(100), + addon_quantity: z.number().int().min(1).optional(), + addon_unit_price: z.number().int().min(0).optional(), + addon_quantity_in_decimal: z.string().max(33).optional(), + addon_unit_price_in_decimal: z.string().max(39).optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + coupon: z.string().max(100).optional(), + po_number: z.string().max(100).optional(), + invoice_date: z.number().int().optional(), + payment_source_id: z.string().max(40).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), +}); +export { ChargeAddonInvoiceBodySchema }; +export type ChargeAddonInvoiceBody = z.infer< + typeof ChargeAddonInvoiceBodySchema +>; + +//Invoice.createForChargeItem + +const CreateForChargeItemInvoiceItemPriceSchema = z.object({ + item_price_id: z.string().max(100), + quantity: z.number().int().min(1).optional(), + quantity_in_decimal: z.string().max(33).optional(), + unit_price: z.number().int().min(0).optional(), + unit_price_in_decimal: z.string().max(39).optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +const CreateForChargeItemInvoiceItemTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateForChargeItemInvoiceBodySchema = z.looseObject({ + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + coupon: z.string().max(100).optional(), + payment_source_id: z.string().max(40).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + invoice_date: z.number().int().optional(), + item_price: CreateForChargeItemInvoiceItemPriceSchema.optional(), + item_tiers: CreateForChargeItemInvoiceItemTiersSchema.optional(), +}); +export { CreateForChargeItemInvoiceBodySchema }; +export type CreateForChargeItemInvoiceBody = z.infer< + typeof CreateForChargeItemInvoiceBodySchema +>; + +//Invoice.stopDunning + +const StopDunningInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { StopDunningInvoiceBodySchema }; +export type StopDunningInvoiceBody = z.infer< + typeof StopDunningInvoiceBodySchema +>; + +//Invoice.pauseDunning + +const PauseDunningInvoiceBodySchema = z.looseObject({ + expected_payment_date: z.number().int(), + comment: z.string().max(300).optional(), +}); +export { PauseDunningInvoiceBodySchema }; +export type PauseDunningInvoiceBody = z.infer< + typeof PauseDunningInvoiceBodySchema +>; + +//Invoice.resumeDunning + +const ResumeDunningInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { ResumeDunningInvoiceBodySchema }; +export type ResumeDunningInvoiceBody = z.infer< + typeof ResumeDunningInvoiceBodySchema +>; + +//Invoice.importInvoice + +const ImportInvoiceInvoiceCreditNoteSchema = z.object({ + id: z.string().max(50).optional(), +}); +const ImportInvoiceInvoiceBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const ImportInvoiceInvoiceShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const ImportInvoiceInvoiceLineItemsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), + subscription_id: z.array(z.string().max(50).optional()).optional(), + description: z.array(z.string().max(250).optional()), + unit_amount: z.array(z.number().int().optional()).optional(), + quantity: z.array(z.number().int().optional()).optional(), + amount: z.array(z.number().int().optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + entity_type: z + .array( + z + .enum([ + 'adhoc', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan_setup', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), + item_level_discount1_entity_id: z + .array(z.string().max(100).optional()) + .optional(), + item_level_discount1_amount: z + .array(z.number().int().min(0).optional()) + .optional(), + item_level_discount2_entity_id: z + .array(z.string().max(100).optional()) + .optional(), + item_level_discount2_amount: z + .array(z.number().int().min(0).optional()) + .optional(), + tax1_name: z.array(z.string().max(50).optional()).optional(), + tax1_amount: z.array(z.number().int().min(0).optional()).optional(), + tax2_name: z.array(z.string().max(50).optional()).optional(), + tax2_amount: z.array(z.number().int().min(0).optional()).optional(), + tax3_name: z.array(z.string().max(50).optional()).optional(), + tax3_amount: z.array(z.number().int().min(0).optional()).optional(), + tax4_name: z.array(z.string().max(50).optional()).optional(), + tax4_amount: z.array(z.number().int().min(0).optional()).optional(), + tax5_name: z.array(z.string().max(50).optional()).optional(), + tax5_amount: z.array(z.number().int().min(0).optional()).optional(), + tax6_name: z.array(z.string().max(50).optional()).optional(), + tax6_amount: z.array(z.number().int().min(0).optional()).optional(), + tax7_name: z.array(z.string().max(50).optional()).optional(), + tax7_amount: z.array(z.number().int().min(0).optional()).optional(), + tax8_name: z.array(z.string().max(50).optional()).optional(), + tax8_amount: z.array(z.number().int().min(0).optional()).optional(), + tax9_name: z.array(z.string().max(50).optional()).optional(), + tax9_amount: z.array(z.number().int().min(0).optional()).optional(), + tax10_name: z.array(z.string().max(50).optional()).optional(), + tax10_amount: z.array(z.number().int().min(0).optional()).optional(), + created_at: z.array(z.number().int().optional()).optional(), +}); +const ImportInvoiceInvoicePaymentReferenceNumbersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + type: z.array( + z.enum(['kid', 'ocr', 'frn', 'fik', 'swiss_reference']).optional(), + ), + number: z.array(z.string().max(100).optional()), +}); +const ImportInvoiceInvoiceLineItemTiersSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()), + starting_unit: z.array(z.number().int().min(0).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + quantity_used: z.array(z.number().int().min(0).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), +}); +const ImportInvoiceInvoiceDiscountsSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()).optional(), + entity_type: z.array( + z + .enum([ + 'item_level_coupon', + 'document_level_coupon', + 'promotional_credits', + 'item_level_discount', + 'document_level_discount', + ]) + .optional(), + ), + entity_id: z.array(z.string().max(100).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()), +}); +const ImportInvoiceInvoiceTaxesSchema = z.object({ + name: z.array(z.string().max(100).optional()), + rate: z.array(z.number().min(0).max(100).optional()), + amount: z.array(z.number().int().min(0).optional()).optional(), + description: z.array(z.string().max(50).optional()).optional(), + juris_type: z + .array( + z + .enum([ + 'country', + 'federal', + 'state', + 'county', + 'city', + 'special', + 'unincorporated', + 'other', + ]) + .optional(), + ) + .optional(), + juris_name: z.array(z.string().max(250).optional()).optional(), + juris_code: z.array(z.string().max(250).optional()).optional(), +}); +const ImportInvoiceInvoicePaymentsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + amount: z.array(z.number().int().min(1).optional()), + payment_method: z.array( + z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + ), + date: z.array(z.number().int().optional()).optional(), + reference_number: z.array(z.string().max(100).min(1).optional()).optional(), +}); +const ImportInvoiceInvoiceNotesSchema = z.object({ + entity_type: z + .array( + z + .enum([ + 'coupon', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(50).optional()).optional(), + note: z.array(z.string().max(65000).optional()).optional(), +}); +const ImportInvoiceInvoiceLineItemAddressesSchema = z.object({ + line_item_id: z.array(z.string().max(40).optional()).optional(), + first_name: z.array(z.string().max(150).optional()).optional(), + last_name: z.array(z.string().max(150).optional()).optional(), + email: z.array(z.string().email().max(70).optional()).optional(), + company: z.array(z.string().max(250).optional()).optional(), + phone: z.array(z.string().max(50).optional()).optional(), + line1: z.array(z.string().max(150).optional()).optional(), + line2: z.array(z.string().max(150).optional()).optional(), + line3: z.array(z.string().max(150).optional()).optional(), + city: z.array(z.string().max(50).optional()).optional(), + state_code: z.array(z.string().max(50).optional()).optional(), + state: z.array(z.string().max(50).optional()).optional(), + zip: z.array(z.string().max(20).optional()).optional(), + country: z.array(z.string().max(50).optional()).optional(), + validation_status: z + .array( + z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + ) + .optional(), +}); +const ImportInvoiceInvoiceBodySchema = z.looseObject({ + id: z.string().max(50), + currency_code: z.string().max(3).optional(), + customer_id: z.string().max(50).optional(), + subscription_id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + price_type: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), + tax_override_reason: z + .enum(['id_exempt', 'customer_exempt', 'export']) + .optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + date: z.number().int(), + total: z.number().int().min(0), + round_off: z.number().int().min(-99).max(99).optional(), + status: z + .enum(['paid', 'posted', 'payment_due', 'not_paid', 'voided', 'pending']) + .optional(), + voided_at: z.number().int().optional(), + void_reason_code: z.string().max(100).optional(), + is_written_off: z.boolean().default(false).optional(), + write_off_amount: z.number().int().min(0).optional(), + write_off_date: z.number().int().optional(), + due_date: z.number().int().optional(), + net_term_days: z.number().int().optional(), + has_advance_charges: z.boolean().default(false).optional(), + use_for_proration: z.boolean().default(false).optional(), + credit_note: ImportInvoiceInvoiceCreditNoteSchema.optional(), + billing_address: ImportInvoiceInvoiceBillingAddressSchema.optional(), + shipping_address: ImportInvoiceInvoiceShippingAddressSchema.optional(), + line_items: ImportInvoiceInvoiceLineItemsSchema.optional(), + payment_reference_numbers: + ImportInvoiceInvoicePaymentReferenceNumbersSchema.optional(), + line_item_tiers: ImportInvoiceInvoiceLineItemTiersSchema.optional(), + discounts: ImportInvoiceInvoiceDiscountsSchema.optional(), + taxes: ImportInvoiceInvoiceTaxesSchema.optional(), + payments: ImportInvoiceInvoicePaymentsSchema.optional(), + notes: ImportInvoiceInvoiceNotesSchema.optional(), + line_item_addresses: ImportInvoiceInvoiceLineItemAddressesSchema.optional(), +}); +export { ImportInvoiceInvoiceBodySchema }; +export type ImportInvoiceInvoiceBody = z.infer< + typeof ImportInvoiceInvoiceBodySchema +>; + +//Invoice.applyPayments + +const ApplyPaymentsInvoiceTransactionsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), +}); +const ApplyPaymentsInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + transactions: ApplyPaymentsInvoiceTransactionsSchema.optional(), +}); +export { ApplyPaymentsInvoiceBodySchema }; +export type ApplyPaymentsInvoiceBody = z.infer< + typeof ApplyPaymentsInvoiceBodySchema +>; + +//Invoice.deleteLineItems + +const DeleteLineItemsInvoiceLineItemsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), +}); +const DeleteLineItemsInvoiceBodySchema = z.looseObject({ + line_items: DeleteLineItemsInvoiceLineItemsSchema.optional(), +}); +export { DeleteLineItemsInvoiceBodySchema }; +export type DeleteLineItemsInvoiceBody = z.infer< + typeof DeleteLineItemsInvoiceBodySchema +>; + +//Invoice.applyCredits + +const ApplyCreditsInvoiceCreditNotesSchema = z.object({ + id: z.array(z.string().max(50).optional()).optional(), +}); +const ApplyCreditsInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + credit_notes: ApplyCreditsInvoiceCreditNotesSchema.optional(), +}); +export { ApplyCreditsInvoiceBodySchema }; +export type ApplyCreditsInvoiceBody = z.infer< + typeof ApplyCreditsInvoiceBodySchema +>; + +//Invoice.invoicesForCustomer + +const InvoicesForCustomerInvoiceBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { InvoicesForCustomerInvoiceBodySchema }; +export type InvoicesForCustomerInvoiceBody = z.infer< + typeof InvoicesForCustomerInvoiceBodySchema +>; + +//Invoice.invoicesForSubscription + +const InvoicesForSubscriptionInvoiceBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { InvoicesForSubscriptionInvoiceBodySchema }; +export type InvoicesForSubscriptionInvoiceBody = z.infer< + typeof InvoicesForSubscriptionInvoiceBodySchema +>; + +//Invoice.retrieve + +const RetrieveInvoiceSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const RetrieveInvoiceCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const RetrieveInvoiceLineItemSchema = z.object({ + subscription_id: RetrieveInvoiceSubscriptionIdSchema.optional(), + customer_id: RetrieveInvoiceCustomerIdSchema.optional(), +}); +const RetrieveInvoiceBodySchema = z.looseObject({ + line_items_limit: z.number().int().min(1).max(300).optional(), + line_items_offset: z.string().max(1000).optional(), + line_item: RetrieveInvoiceLineItemSchema.optional(), +}); +export { RetrieveInvoiceBodySchema }; +export type RetrieveInvoiceBody = z.infer; + +//Invoice.pdf + +const PdfInvoiceBodySchema = z.looseObject({ + disposition_type: z.enum(['attachment', 'inline']).optional(), +}); +export { PdfInvoiceBodySchema }; +export type PdfInvoiceBody = z.infer; + +//Invoice.addCharge + +const AddChargeInvoiceLineItemSchema = z.object({ + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +const AddChargeInvoiceBodySchema = z.looseObject({ + amount: z.number().int().min(1), + description: z.string().max(250), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + avalara_tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + comment: z.string().max(300).optional(), + subscription_id: z.string().max(50).optional(), + line_item: AddChargeInvoiceLineItemSchema.optional(), +}); +export { AddChargeInvoiceBodySchema }; +export type AddChargeInvoiceBody = z.infer; + +//Invoice.addAddonCharge + +const AddAddonChargeInvoiceLineItemSchema = z.object({ + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +const AddAddonChargeInvoiceBodySchema = z.looseObject({ + addon_id: z.string().max(100), + addon_quantity: z.number().int().min(1).optional(), + addon_unit_price: z.number().int().min(0).optional(), + addon_quantity_in_decimal: z.string().max(33).optional(), + addon_unit_price_in_decimal: z.string().max(39).optional(), + comment: z.string().max(300).optional(), + subscription_id: z.string().max(50).optional(), + line_item: AddAddonChargeInvoiceLineItemSchema.optional(), +}); +export { AddAddonChargeInvoiceBodySchema }; +export type AddAddonChargeInvoiceBody = z.infer< + typeof AddAddonChargeInvoiceBodySchema +>; + +//Invoice.addChargeItem + +const AddChargeItemInvoiceItemPriceSchema = z.object({ + item_price_id: z.string().max(100), + quantity: z.number().int().min(1).optional(), + quantity_in_decimal: z.string().max(33).optional(), + unit_price: z.number().int().min(0).optional(), + unit_price_in_decimal: z.string().max(39).optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +const AddChargeItemInvoiceItemTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const AddChargeItemInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + subscription_id: z.string().max(50).optional(), + item_price: AddChargeItemInvoiceItemPriceSchema.optional(), + item_tiers: AddChargeItemInvoiceItemTiersSchema.optional(), +}); +export { AddChargeItemInvoiceBodySchema }; +export type AddChargeItemInvoiceBody = z.infer< + typeof AddChargeItemInvoiceBodySchema +>; + +//Invoice.close + +const CloseInvoiceNotesToRemoveSchema = z.object({ + entity_type: z + .array( + z + .enum([ + 'customer', + 'subscription', + 'coupon', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan', + 'addon', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), +}); +const CloseInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + invoice_note: z.string().max(2000).optional(), + remove_general_note: z.boolean().default(false).optional(), + invoice_date: z.number().int().optional(), + notes_to_remove: CloseInvoiceNotesToRemoveSchema.optional(), +}); +export { CloseInvoiceBodySchema }; +export type CloseInvoiceBody = z.infer; + +//Invoice.collectPayment + +const CollectPaymentInvoiceBodySchema = z.looseObject({ + amount: z.number().int().min(1).optional(), + authorization_transaction_id: z.string().max(40).optional(), + payment_source_id: z.string().max(40).optional(), + comment: z.string().max(300).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), +}); +export { CollectPaymentInvoiceBodySchema }; +export type CollectPaymentInvoiceBody = z.infer< + typeof CollectPaymentInvoiceBodySchema +>; + +//Invoice.recordPayment + +const RecordPaymentInvoiceTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z.enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), + id_at_gateway: z.string().max(100).optional(), + status: z.enum(['success', 'failure', 'late_failure']).optional(), + date: z.number().int().optional(), + error_code: z.string().max(100).optional(), + error_text: z.string().max(65000).optional(), +}); +const RecordPaymentInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + transaction: RecordPaymentInvoiceTransactionSchema.optional(), +}); +export { RecordPaymentInvoiceBodySchema }; +export type RecordPaymentInvoiceBody = z.infer< + typeof RecordPaymentInvoiceBodySchema +>; + +//Invoice.recordTaxWithheld + +const RecordTaxWithheldInvoiceTaxWithheldSchema = z.object({ + amount: z.number().int().min(1), + reference_number: z.string().max(100).optional(), + date: z.number().int().optional(), + description: z.string().max(65000).optional(), +}); +const RecordTaxWithheldInvoiceBodySchema = z.looseObject({ + tax_withheld: RecordTaxWithheldInvoiceTaxWithheldSchema.optional(), +}); +export { RecordTaxWithheldInvoiceBodySchema }; +export type RecordTaxWithheldInvoiceBody = z.infer< + typeof RecordTaxWithheldInvoiceBodySchema +>; + +//Invoice.removeTaxWithheld + +const RemoveTaxWithheldInvoiceTaxWithheldSchema = z.object({ + id: z.string().max(40), +}); +const RemoveTaxWithheldInvoiceBodySchema = z.looseObject({ + tax_withheld: RemoveTaxWithheldInvoiceTaxWithheldSchema.optional(), +}); +export { RemoveTaxWithheldInvoiceBodySchema }; +export type RemoveTaxWithheldInvoiceBody = z.infer< + typeof RemoveTaxWithheldInvoiceBodySchema +>; + +//Invoice.refund + +const RefundInvoiceCreditNoteSchema = z.object({ + reason_code: z + .enum([ + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + ]) + .optional(), + create_reason_code: z.string().max(100).optional(), +}); +const RefundInvoiceBodySchema = z.looseObject({ + refund_amount: z.number().int().min(1).optional(), + comment: z.string().max(300).optional(), + customer_notes: z.string().max(2000).optional(), + credit_note: RefundInvoiceCreditNoteSchema.optional(), +}); +export { RefundInvoiceBodySchema }; +export type RefundInvoiceBody = z.infer; + +//Invoice.recordRefund + +const RecordRefundInvoiceTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z.enum([ + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), + date: z.number().int(), +}); +const RecordRefundInvoiceCreditNoteSchema = z.object({ + reason_code: z + .enum([ + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + ]) + .optional(), + create_reason_code: z.string().max(100).optional(), +}); +const RecordRefundInvoiceBodySchema = z.looseObject({ + comment: z.string().max(65000).optional(), + customer_notes: z.string().max(2000).optional(), + transaction: RecordRefundInvoiceTransactionSchema.optional(), + credit_note: RecordRefundInvoiceCreditNoteSchema.optional(), +}); +export { RecordRefundInvoiceBodySchema }; +export type RecordRefundInvoiceBody = z.infer< + typeof RecordRefundInvoiceBodySchema +>; + +//Invoice.removePayment + +const RemovePaymentInvoiceTransactionSchema = z.object({ + id: z.string().max(40), +}); +const RemovePaymentInvoiceBodySchema = z.looseObject({ + transaction: RemovePaymentInvoiceTransactionSchema.optional(), +}); +export { RemovePaymentInvoiceBodySchema }; +export type RemovePaymentInvoiceBody = z.infer< + typeof RemovePaymentInvoiceBodySchema +>; + +//Invoice.removeCreditNote + +const RemoveCreditNoteInvoiceCreditNoteSchema = z.object({ + id: z.string().max(50), +}); +const RemoveCreditNoteInvoiceBodySchema = z.looseObject({ + credit_note: RemoveCreditNoteInvoiceCreditNoteSchema.optional(), +}); +export { RemoveCreditNoteInvoiceBodySchema }; +export type RemoveCreditNoteInvoiceBody = z.infer< + typeof RemoveCreditNoteInvoiceBodySchema +>; + +//Invoice.voidInvoice + +const VoidInvoiceInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), + void_reason_code: z.string().max(100).optional(), +}); +export { VoidInvoiceInvoiceBodySchema }; +export type VoidInvoiceInvoiceBody = z.infer< + typeof VoidInvoiceInvoiceBodySchema +>; + +//Invoice.writeOff + +const WriteOffInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { WriteOffInvoiceBodySchema }; +export type WriteOffInvoiceBody = z.infer; + +//Invoice.delete + +const DeleteInvoiceBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { DeleteInvoiceBodySchema }; +export type DeleteInvoiceBody = z.infer; + +//Invoice.updateDetails + +const UpdateDetailsInvoiceBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateDetailsInvoiceShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateDetailsInvoiceStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const UpdateDetailsInvoiceBodySchema = z.looseObject({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + po_number: z.string().max(100).optional(), + comment: z.string().max(300).optional(), + billing_address: UpdateDetailsInvoiceBillingAddressSchema.optional(), + shipping_address: UpdateDetailsInvoiceShippingAddressSchema.optional(), + statement_descriptor: + UpdateDetailsInvoiceStatementDescriptorSchema.optional(), +}); +export { UpdateDetailsInvoiceBodySchema }; +export type UpdateDetailsInvoiceBody = z.infer< + typeof UpdateDetailsInvoiceBodySchema +>; + +//Invoice.applyPaymentScheduleScheme + +const ApplyPaymentScheduleSchemeInvoiceBodySchema = z.looseObject({ + scheme_id: z.string(), + amount: z.number().int().min(0).optional(), +}); +export { ApplyPaymentScheduleSchemeInvoiceBodySchema }; +export type ApplyPaymentScheduleSchemeInvoiceBody = z.infer< + typeof ApplyPaymentScheduleSchemeInvoiceBodySchema +>; diff --git a/src/schema/item.schema.ts b/src/schema/item.schema.ts new file mode 100644 index 0000000..f0ec74a --- /dev/null +++ b/src/schema/item.schema.ts @@ -0,0 +1,95 @@ +// Generated Zod schemas: Item +// Actions: create, update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Item.create + +const CreateItemMetadataSchema = z.looseObject({}); +const CreateItemBundleConfigurationSchema = z.object({ + type: z.enum(['fixed']).optional(), +}); +const CreateItemBundleItemsToAddSchema = z.object({ + item_id: z.array(z.string().max(100).optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), +}); +const CreateItemBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + type: z.enum(['plan', 'addon', 'charge']), + description: z.string().max(2000).optional(), + item_family_id: z.string().max(100), + is_giftable: z.boolean().default(false).optional(), + is_shippable: z.boolean().default(false).optional(), + external_name: z.string().max(100).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + redirect_url: z.string().max(500).optional(), + enabled_for_checkout: z.boolean().default(true).optional(), + item_applicability: z.enum(['all', 'restricted']).optional(), + applicable_items: z.array(z.string().max(100).optional()).optional(), + unit: z.string().max(30).optional(), + gift_claim_redirect_url: z.string().max(500).optional(), + included_in_mrr: z.boolean().optional(), + metered: z.boolean().default(false).optional(), + usage_calculation: z + .enum(['sum_of_usages', 'last_usage', 'max_usage']) + .optional(), + is_percentage_pricing: z.boolean().default(false).optional(), + metadata: CreateItemMetadataSchema.optional(), + business_entity_id: z.string().max(50).optional(), + bundle_configuration: CreateItemBundleConfigurationSchema.optional(), + bundle_items_to_add: CreateItemBundleItemsToAddSchema.optional(), +}); +export { CreateItemBodySchema }; +export type CreateItemBody = z.infer; + +//Item.update + +const UpdateItemMetadataSchema = z.looseObject({}); +const UpdateItemBundleConfigurationSchema = z.object({ + type: z.enum(['fixed']).optional(), +}); +const UpdateItemBundleItemsToAddSchema = z.object({ + item_id: z.array(z.string().max(100).optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), +}); +const UpdateItemBundleItemsToUpdateSchema = z.object({ + item_id: z.array(z.string().max(100).optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), +}); +const UpdateItemBundleItemsToRemoveSchema = z.object({ + item_id: z.array(z.string().max(100).optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), +}); +const UpdateItemBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + is_shippable: z.boolean().default(false).optional(), + external_name: z.string().max(100).optional(), + item_family_id: z.string().max(100).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + redirect_url: z.string().max(500).optional(), + enabled_for_checkout: z.boolean().default(true).optional(), + item_applicability: z.enum(['all', 'restricted']).optional(), + clear_applicable_items: z.boolean().default(false).optional(), + applicable_items: z.array(z.string().max(100).optional()).optional(), + unit: z.string().max(30).optional(), + gift_claim_redirect_url: z.string().max(500).optional(), + metadata: UpdateItemMetadataSchema.optional(), + included_in_mrr: z.boolean().optional(), + status: z.enum(['active', 'archived']).optional(), + is_percentage_pricing: z.boolean().default(false).optional(), + bundle_configuration: UpdateItemBundleConfigurationSchema.optional(), + bundle_items_to_add: UpdateItemBundleItemsToAddSchema.optional(), + bundle_items_to_update: UpdateItemBundleItemsToUpdateSchema.optional(), + bundle_items_to_remove: UpdateItemBundleItemsToRemoveSchema.optional(), +}); +export { UpdateItemBodySchema }; +export type UpdateItemBody = z.infer; diff --git a/src/schema/item_entitlement.schema.ts b/src/schema/item_entitlement.schema.ts new file mode 100644 index 0000000..5471a86 --- /dev/null +++ b/src/schema/item_entitlement.schema.ts @@ -0,0 +1,69 @@ +// Generated Zod schemas: ItemEntitlement +// Actions: itemEntitlementsForItem, itemEntitlementsForFeature, addItemEntitlements, upsertOrRemoveItemEntitlementsForItem +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//ItemEntitlement.itemEntitlementsForItem + +const ItemEntitlementsForItemItemEntitlementBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + include_drafts: z.boolean().default(false).optional(), + embed: z.string().max(1000).optional(), +}); +export { ItemEntitlementsForItemItemEntitlementBodySchema }; +export type ItemEntitlementsForItemItemEntitlementBody = z.infer< + typeof ItemEntitlementsForItemItemEntitlementBodySchema +>; + +//ItemEntitlement.itemEntitlementsForFeature + +const ItemEntitlementsForFeatureItemEntitlementBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + include_drafts: z.boolean().default(false).optional(), +}); +export { ItemEntitlementsForFeatureItemEntitlementBodySchema }; +export type ItemEntitlementsForFeatureItemEntitlementBody = z.infer< + typeof ItemEntitlementsForFeatureItemEntitlementBodySchema +>; + +//ItemEntitlement.addItemEntitlements + +const AddItemEntitlementsItemEntitlementItemEntitlementsSchema = z.object({ + item_id: z.array(z.string().max(100).optional()), + item_type: z + .array( + z.enum(['plan', 'addon', 'charge', 'subscription', 'item']).optional(), + ) + .optional(), + value: z.array(z.string().max(50).optional()).optional(), +}); +const AddItemEntitlementsItemEntitlementBodySchema = z.looseObject({ + action: z.enum(['upsert', 'remove']), + item_entitlements: + AddItemEntitlementsItemEntitlementItemEntitlementsSchema.optional(), +}); +export { AddItemEntitlementsItemEntitlementBodySchema }; +export type AddItemEntitlementsItemEntitlementBody = z.infer< + typeof AddItemEntitlementsItemEntitlementBodySchema +>; + +//ItemEntitlement.upsertOrRemoveItemEntitlementsForItem + +const UpsertOrRemoveItemEntitlementsForItemItemEntitlementItemEntitlementsSchema = + z.object({ + feature_id: z.array(z.string().max(50).optional()), + value: z.array(z.string().max(50).optional()).optional(), + }); +const UpsertOrRemoveItemEntitlementsForItemItemEntitlementBodySchema = + z.looseObject({ + action: z.enum(['upsert', 'remove']), + item_entitlements: + UpsertOrRemoveItemEntitlementsForItemItemEntitlementItemEntitlementsSchema.optional(), + }); +export { UpsertOrRemoveItemEntitlementsForItemItemEntitlementBodySchema }; +export type UpsertOrRemoveItemEntitlementsForItemItemEntitlementBody = z.infer< + typeof UpsertOrRemoveItemEntitlementsForItemItemEntitlementBodySchema +>; diff --git a/src/schema/item_family.schema.ts b/src/schema/item_family.schema.ts new file mode 100644 index 0000000..7b2ee15 --- /dev/null +++ b/src/schema/item_family.schema.ts @@ -0,0 +1,25 @@ +// Generated Zod schemas: ItemFamily +// Actions: create, update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//ItemFamily.create + +const CreateItemFamilyBodySchema = z.looseObject({ + id: z.string().max(50), + name: z.string().max(50), + description: z.string().max(500).optional(), + business_entity_id: z.string().max(50).optional(), +}); +export { CreateItemFamilyBodySchema }; +export type CreateItemFamilyBody = z.infer; + +//ItemFamily.update + +const UpdateItemFamilyBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + description: z.string().max(500).optional(), +}); +export { UpdateItemFamilyBodySchema }; +export type UpdateItemFamilyBody = z.infer; diff --git a/src/schema/item_price.schema.ts b/src/schema/item_price.schema.ts new file mode 100644 index 0000000..7910a11 --- /dev/null +++ b/src/schema/item_price.schema.ts @@ -0,0 +1,204 @@ +// Generated Zod schemas: ItemPrice +// Actions: create, update, findApplicableItems, findApplicableItemPrices +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//ItemPrice.create + +const CreateItemPriceMetadataSchema = z.looseObject({}); +const CreateItemPriceTaxDetailSchema = z.object({ + tax_profile_id: z.string().max(50).optional(), + avalara_tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + taxjar_product_code: z.string().max(50).optional(), +}); +const CreateItemPriceAccountingDetailSchema = z.object({ + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), +}); +const CreateItemPriceTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateItemPriceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const CreateItemPriceBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + description: z.string().max(2000).optional(), + item_id: z.string().max(100), + invoice_notes: z.string().max(2000).optional(), + proration_type: z + .enum(['site_default', 'partial_term', 'full_term']) + .optional(), + external_name: z.string().max(100).optional(), + currency_code: z.string().max(3).optional(), + price_variant_id: z.string().max(100).optional(), + is_taxable: z.boolean().default(true).optional(), + free_quantity: z.number().int().min(0).optional(), + free_quantity_in_decimal: z.string().max(33).optional(), + metadata: CreateItemPriceMetadataSchema.optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + usage_accumulation_reset_frequency: z + .enum(['never', 'subscription_billing_frequency']) + .optional(), + business_entity_id: z.string().max(50).optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + period: z.number().int().min(1).optional(), + trial_period_unit: z.enum(['day', 'month']).optional(), + trial_period: z.number().int().min(0).optional(), + shipping_period: z.number().int().min(1).optional(), + shipping_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + billing_cycles: z.number().int().min(1).optional(), + trial_end_action: z + .enum(['site_default', 'activate_subscription', 'cancel_subscription']) + .optional(), + tax_detail: CreateItemPriceTaxDetailSchema.optional(), + accounting_detail: CreateItemPriceAccountingDetailSchema.optional(), + tiers: CreateItemPriceTiersSchema.optional(), + tax_providers_fields: CreateItemPriceTaxProvidersFieldsSchema.optional(), +}); +export { CreateItemPriceBodySchema }; +export type CreateItemPriceBody = z.infer; + +//ItemPrice.update + +const UpdateItemPriceMetadataSchema = z.looseObject({}); +const UpdateItemPriceTaxDetailSchema = z.object({ + tax_profile_id: z.string().max(50).optional(), + avalara_tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + taxjar_product_code: z.string().max(50).optional(), +}); +const UpdateItemPriceAccountingDetailSchema = z.object({ + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), +}); +const UpdateItemPriceTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const UpdateItemPriceTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const UpdateItemPriceBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + proration_type: z + .enum(['site_default', 'partial_term', 'full_term']) + .optional(), + price_variant_id: z.string().max(100).optional(), + status: z.enum(['active', 'archived']).optional(), + external_name: z.string().max(100).optional(), + usage_accumulation_reset_frequency: z + .enum(['never', 'subscription_billing_frequency']) + .optional(), + currency_code: z.string().max(3).optional(), + invoice_notes: z.string().max(2000).optional(), + is_taxable: z.boolean().default(true).optional(), + free_quantity: z.number().int().min(0).optional(), + free_quantity_in_decimal: z.string().max(33).optional(), + metadata: UpdateItemPriceMetadataSchema.optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + period: z.number().int().min(1).optional(), + trial_period_unit: z.enum(['day', 'month']).optional(), + trial_period: z.number().int().min(0).optional(), + shipping_period: z.number().int().min(1).optional(), + shipping_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + billing_cycles: z.number().int().min(1).optional(), + trial_end_action: z + .enum(['site_default', 'activate_subscription', 'cancel_subscription']) + .optional(), + show_description_in_invoices: z.boolean().optional(), + show_description_in_quotes: z.boolean().optional(), + tax_detail: UpdateItemPriceTaxDetailSchema.optional(), + accounting_detail: UpdateItemPriceAccountingDetailSchema.optional(), + tiers: UpdateItemPriceTiersSchema.optional(), + tax_providers_fields: UpdateItemPriceTaxProvidersFieldsSchema.optional(), +}); +export { UpdateItemPriceBodySchema }; +export type UpdateItemPriceBody = z.infer; + +//ItemPrice.findApplicableItems + +const FindApplicableItemsItemPriceSortBySchema = z.looseObject({ + asc: z.enum(['name', 'id', 'updated_at']).optional(), + desc: z.enum(['name', 'id', 'updated_at']).optional(), +}); +const FindApplicableItemsItemPriceBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + sort_by: FindApplicableItemsItemPriceSortBySchema.optional(), +}); +export { FindApplicableItemsItemPriceBodySchema }; +export type FindApplicableItemsItemPriceBody = z.infer< + typeof FindApplicableItemsItemPriceBodySchema +>; + +//ItemPrice.findApplicableItemPrices + +const FindApplicableItemPricesItemPriceSortBySchema = z.looseObject({ + asc: z.enum(['name', 'id', 'updated_at']).optional(), + desc: z.enum(['name', 'id', 'updated_at']).optional(), +}); +const FindApplicableItemPricesItemPriceBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + item_id: z.string().max(100).optional(), + sort_by: FindApplicableItemPricesItemPriceSortBySchema.optional(), +}); +export { FindApplicableItemPricesItemPriceBodySchema }; +export type FindApplicableItemPricesItemPriceBody = z.infer< + typeof FindApplicableItemPricesItemPriceBodySchema +>; diff --git a/src/schema/non_subscription.schema.ts b/src/schema/non_subscription.schema.ts new file mode 100644 index 0000000..56c7aed --- /dev/null +++ b/src/schema/non_subscription.schema.ts @@ -0,0 +1,31 @@ +// Generated Zod schemas: NonSubscription +// Actions: processReceipt +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//NonSubscription.processReceipt + +const ProcessReceiptNonSubscriptionProductSchema = z.object({ + id: z.string().max(96), + currency_code: z.string().max(3), + price: z.number().int().min(0), + type: z.enum(['consumable', 'non_consumable', 'non_renewing_subscription']), + name: z.string().max(96).optional(), + price_in_decimal: z.string().max(39).optional(), +}); +const ProcessReceiptNonSubscriptionCustomerSchema = z.object({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), +}); +const ProcessReceiptNonSubscriptionBodySchema = z.looseObject({ + receipt: z.string().max(65000), + product: ProcessReceiptNonSubscriptionProductSchema.optional(), + customer: ProcessReceiptNonSubscriptionCustomerSchema.optional(), +}); +export { ProcessReceiptNonSubscriptionBodySchema }; +export type ProcessReceiptNonSubscriptionBody = z.infer< + typeof ProcessReceiptNonSubscriptionBodySchema +>; diff --git a/src/schema/offer_event.schema.ts b/src/schema/offer_event.schema.ts new file mode 100644 index 0000000..9577576 --- /dev/null +++ b/src/schema/offer_event.schema.ts @@ -0,0 +1,16 @@ +// Generated Zod schemas: OfferEvent +// Actions: offerEvents +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//OfferEvent.offerEvents + +const OfferEventsOfferEventBodySchema = z.looseObject({ + personalized_offer_id: z.string().max(50), + type: z.enum(['viewed', 'dismissed']), +}); +export { OfferEventsOfferEventBodySchema }; +export type OfferEventsOfferEventBody = z.infer< + typeof OfferEventsOfferEventBodySchema +>; diff --git a/src/schema/offer_fulfillment.schema.ts b/src/schema/offer_fulfillment.schema.ts new file mode 100644 index 0000000..aa30395 --- /dev/null +++ b/src/schema/offer_fulfillment.schema.ts @@ -0,0 +1,28 @@ +// Generated Zod schemas: OfferFulfillment +// Actions: offerFulfillments, offerFulfillmentsUpdate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//OfferFulfillment.offerFulfillments + +const OfferFulfillmentsOfferFulfillmentBodySchema = z.looseObject({ + personalized_offer_id: z.string().max(50), + option_id: z.string().max(50), +}); +export { OfferFulfillmentsOfferFulfillmentBodySchema }; +export type OfferFulfillmentsOfferFulfillmentBody = z.infer< + typeof OfferFulfillmentsOfferFulfillmentBodySchema +>; + +//OfferFulfillment.offerFulfillmentsUpdate + +const OfferFulfillmentsUpdateOfferFulfillmentBodySchema = z.looseObject({ + id: z.string().max(50), + status: z.enum(['completed', 'failed']), + failure_reason: z.string().max(100).optional(), +}); +export { OfferFulfillmentsUpdateOfferFulfillmentBodySchema }; +export type OfferFulfillmentsUpdateOfferFulfillmentBody = z.infer< + typeof OfferFulfillmentsUpdateOfferFulfillmentBodySchema +>; diff --git a/src/validation/omnichannel_one_time_order/list.validation.ts b/src/schema/omnichannel_one_time_order.schema.ts similarity index 51% rename from src/validation/omnichannel_one_time_order/list.validation.ts rename to src/schema/omnichannel_one_time_order.schema.ts index 4e22c1b..77908da 100644 --- a/src/validation/omnichannel_one_time_order/list.validation.ts +++ b/src/schema/omnichannel_one_time_order.schema.ts @@ -1,22 +1,29 @@ -// Generated Zod validator: OmnichannelOneTimeOrder.list +// Generated Zod schemas: OmnichannelOneTimeOrder +// Actions: list // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; -const listOmnichannelOneTimeOrderSourceSchema = z.object({ + +//OmnichannelOneTimeOrder.list + +const ListOmnichannelOneTimeOrderSourceSchema = z.object({ is: z.enum(['apple_app_store', 'google_play_store']).optional(), is_not: z.enum(['apple_app_store', 'google_play_store']).optional(), in: z.enum(['apple_app_store', 'google_play_store']).optional(), not_in: z.enum(['apple_app_store', 'google_play_store']).optional(), }); -const listOmnichannelOneTimeOrderCustomerIdSchema = z.object({ +const ListOmnichannelOneTimeOrderCustomerIdSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), }); -const listOmnichannelOneTimeOrderBodySchema = z.looseObject({ +const ListOmnichannelOneTimeOrderBodySchema = z.looseObject({ limit: z.number().int().min(1).max(100).optional(), offset: z.string().max(1000).optional(), - source: listOmnichannelOneTimeOrderSourceSchema.optional(), - customer_id: listOmnichannelOneTimeOrderCustomerIdSchema.optional(), + source: ListOmnichannelOneTimeOrderSourceSchema.optional(), + customer_id: ListOmnichannelOneTimeOrderCustomerIdSchema.optional(), }); -export { listOmnichannelOneTimeOrderBodySchema }; +export { ListOmnichannelOneTimeOrderBodySchema }; +export type ListOmnichannelOneTimeOrderBody = z.infer< + typeof ListOmnichannelOneTimeOrderBodySchema +>; diff --git a/src/schema/omnichannel_subscription.schema.ts b/src/schema/omnichannel_subscription.schema.ts new file mode 100644 index 0000000..91d817a --- /dev/null +++ b/src/schema/omnichannel_subscription.schema.ts @@ -0,0 +1,105 @@ +// Generated Zod schemas: OmnichannelSubscription +// Actions: list, omnichannel_transactionsForOmnichannelSubscription, move +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//OmnichannelSubscription.list + +const ListOmnichannelSubscriptionSourceSchema = z.object({ + is: z.enum(['apple_app_store', 'google_play_store']).optional(), + is_not: z.enum(['apple_app_store', 'google_play_store']).optional(), + in: z.enum(['apple_app_store', 'google_play_store']).optional(), + not_in: z.enum(['apple_app_store', 'google_play_store']).optional(), +}); +const ListOmnichannelSubscriptionCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListOmnichannelSubscriptionStatusSchema = z.object({ + is: z + .enum([ + 'active', + 'expired', + 'cancelled', + 'in_dunning', + 'in_grace_period', + 'paused', + ]) + .optional(), + is_not: z + .enum([ + 'active', + 'expired', + 'cancelled', + 'in_dunning', + 'in_grace_period', + 'paused', + ]) + .optional(), + in: z + .enum([ + 'active', + 'expired', + 'cancelled', + 'in_dunning', + 'in_grace_period', + 'paused', + ]) + .optional(), + not_in: z + .enum([ + 'active', + 'expired', + 'cancelled', + 'in_dunning', + 'in_grace_period', + 'paused', + ]) + .optional(), +}); +const ListOmnichannelSubscriptionItemIdAtSourceSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListOmnichannelSubscriptionOmnichannelSubscriptionItemSchema = z.object({ + status: ListOmnichannelSubscriptionStatusSchema.optional(), + item_id_at_source: ListOmnichannelSubscriptionItemIdAtSourceSchema.optional(), +}); +const ListOmnichannelSubscriptionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + source: ListOmnichannelSubscriptionSourceSchema.optional(), + customer_id: ListOmnichannelSubscriptionCustomerIdSchema.optional(), + omnichannel_subscription_item: + ListOmnichannelSubscriptionOmnichannelSubscriptionItemSchema.optional(), +}); +export { ListOmnichannelSubscriptionBodySchema }; +export type ListOmnichannelSubscriptionBody = z.infer< + typeof ListOmnichannelSubscriptionBodySchema +>; + +//OmnichannelSubscription.omnichannel_transactionsForOmnichannelSubscription + +const OmnichannelTransactionsforomnichannelsubscriptionOmnichannelSubscriptionBodySchema = + z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + }); +export { OmnichannelTransactionsforomnichannelsubscriptionOmnichannelSubscriptionBodySchema }; +export type OmnichannelTransactionsforomnichannelsubscriptionOmnichannelSubscriptionBody = + z.infer< + typeof OmnichannelTransactionsforomnichannelsubscriptionOmnichannelSubscriptionBodySchema + >; + +//OmnichannelSubscription.move + +const MoveOmnichannelSubscriptionBodySchema = z.looseObject({ + to_customer_id: z.string().max(50), +}); +export { MoveOmnichannelSubscriptionBodySchema }; +export type MoveOmnichannelSubscriptionBody = z.infer< + typeof MoveOmnichannelSubscriptionBodySchema +>; diff --git a/src/schema/omnichannel_subscription_item.schema.ts b/src/schema/omnichannel_subscription_item.schema.ts new file mode 100644 index 0000000..d63087f --- /dev/null +++ b/src/schema/omnichannel_subscription_item.schema.ts @@ -0,0 +1,18 @@ +// Generated Zod schemas: OmnichannelSubscriptionItem +// Actions: listOmniSubItemScheduleChanges +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//OmnichannelSubscriptionItem.listOmniSubItemScheduleChanges + +const ListOmniSubItemScheduleChangesOmnichannelSubscriptionItemBodySchema = + z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + }); +export { ListOmniSubItemScheduleChangesOmnichannelSubscriptionItemBodySchema }; +export type ListOmniSubItemScheduleChangesOmnichannelSubscriptionItemBody = + z.infer< + typeof ListOmniSubItemScheduleChangesOmnichannelSubscriptionItemBodySchema + >; diff --git a/src/schema/order.schema.ts b/src/schema/order.schema.ts new file mode 100644 index 0000000..ca4c564 --- /dev/null +++ b/src/schema/order.schema.ts @@ -0,0 +1,301 @@ +// Generated Zod schemas: Order +// Actions: create, update, importOrder, cancel, createRefundableCreditNote, reopen, ordersForInvoice, resend +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Order.create + +const CreateOrderBodySchema = z.looseObject({ + id: z.string().max(40).optional(), + invoice_id: z.string().max(50), + status: z + .enum(['new', 'processing', 'complete', 'cancelled', 'voided']) + .optional(), + reference_id: z.string().max(50).optional(), + fulfillment_status: z.string().max(50).optional(), + note: z.string().max(600).optional(), + tracking_id: z.string().max(50).optional(), + tracking_url: z.string().max(255).optional(), + batch_id: z.string().max(50).optional(), +}); +export { CreateOrderBodySchema }; +export type CreateOrderBody = z.infer; + +//Order.update + +const UpdateOrderShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateOrderOrderLineItemsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + status: z + .array( + z + .enum([ + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + 'cancelled', + ]) + .optional(), + ) + .optional(), + sku: z.array(z.string().max(250).optional()).optional(), +}); +const UpdateOrderBodySchema = z.looseObject({ + reference_id: z.string().max(50).optional(), + batch_id: z.string().max(50).optional(), + note: z.string().max(600).optional(), + shipping_date: z.number().int().optional(), + order_date: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + cancellation_reason: z + .enum([ + 'shipping_cut_off_passed', + 'product_unsatisfactory', + 'third_party_cancellation', + 'product_not_required', + 'delivery_date_missed', + 'alternative_found', + 'invoice_written_off', + 'invoice_voided', + 'fraudulent_transaction', + 'payment_declined', + 'subscription_cancelled', + 'product_not_available', + 'others', + 'order_resent', + ]) + .optional(), + shipped_at: z.number().int().optional(), + delivered_at: z.number().int().optional(), + tracking_url: z.string().max(255).optional(), + tracking_id: z.string().max(50).optional(), + shipment_carrier: z.string().max(50).optional(), + fulfillment_status: z.string().max(50).optional(), + status: z + .enum([ + 'new', + 'processing', + 'complete', + 'cancelled', + 'voided', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]) + .optional(), + shipping_address: UpdateOrderShippingAddressSchema.optional(), + order_line_items: UpdateOrderOrderLineItemsSchema.optional(), +}); +export { UpdateOrderBodySchema }; +export type UpdateOrderBody = z.infer; + +//Order.importOrder + +const ImportOrderOrderShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const ImportOrderOrderBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const ImportOrderOrderBodySchema = z.looseObject({ + id: z.string().max(40).optional(), + document_number: z.string().max(50).optional(), + invoice_id: z.string().max(50), + status: z.enum([ + 'cancelled', + 'queued', + 'awaiting_shipment', + 'on_hold', + 'delivered', + 'shipped', + 'partially_delivered', + 'returned', + ]), + subscription_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), + created_at: z.number().int(), + order_date: z.number().int(), + shipping_date: z.number().int(), + reference_id: z.string().max(50).optional(), + fulfillment_status: z.string().max(50).optional(), + note: z.string().max(600).optional(), + tracking_id: z.string().max(50).optional(), + tracking_url: z.string().max(255).optional(), + batch_id: z.string().max(50).optional(), + shipment_carrier: z.string().max(50).optional(), + shipping_cut_off_date: z.number().int().optional(), + delivered_at: z.number().int().optional(), + shipped_at: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + cancellation_reason: z + .enum([ + 'shipping_cut_off_passed', + 'product_unsatisfactory', + 'third_party_cancellation', + 'product_not_required', + 'delivery_date_missed', + 'alternative_found', + 'invoice_written_off', + 'invoice_voided', + 'fraudulent_transaction', + 'payment_declined', + 'subscription_cancelled', + 'product_not_available', + 'others', + 'order_resent', + ]) + .optional(), + refundable_credits_issued: z.number().int().min(0).optional(), + shipping_address: ImportOrderOrderShippingAddressSchema.optional(), + billing_address: ImportOrderOrderBillingAddressSchema.optional(), +}); +export { ImportOrderOrderBodySchema }; +export type ImportOrderOrderBody = z.infer; + +//Order.cancel + +const CancelOrderCreditNoteSchema = z.object({ + total: z.number().int().min(0).optional(), +}); +const CancelOrderBodySchema = z.looseObject({ + cancellation_reason: z.enum([ + 'shipping_cut_off_passed', + 'product_unsatisfactory', + 'third_party_cancellation', + 'product_not_required', + 'delivery_date_missed', + 'alternative_found', + 'invoice_written_off', + 'invoice_voided', + 'fraudulent_transaction', + 'payment_declined', + 'subscription_cancelled', + 'product_not_available', + 'others', + 'order_resent', + ]), + customer_notes: z.string().max(2000).optional(), + comment: z.string().max(300).optional(), + cancelled_at: z.number().int().optional(), + credit_note: CancelOrderCreditNoteSchema.optional(), +}); +export { CancelOrderBodySchema }; +export type CancelOrderBody = z.infer; + +//Order.createRefundableCreditNote + +const CreateRefundableCreditNoteOrderCreditNoteSchema = z.object({ + reason_code: z.enum([ + 'write_off', + 'subscription_change', + 'subscription_cancellation', + 'subscription_pause', + 'chargeback', + 'product_unsatisfactory', + 'service_unsatisfactory', + 'order_change', + 'order_cancellation', + 'waiver', + 'other', + 'fraudulent', + ]), + total: z.number().int().min(0), +}); +const CreateRefundableCreditNoteOrderBodySchema = z.looseObject({ + customer_notes: z.string().max(2000).optional(), + comment: z.string().max(300).optional(), + credit_note: CreateRefundableCreditNoteOrderCreditNoteSchema.optional(), +}); +export { CreateRefundableCreditNoteOrderBodySchema }; +export type CreateRefundableCreditNoteOrderBody = z.infer< + typeof CreateRefundableCreditNoteOrderBodySchema +>; + +//Order.reopen + +const ReopenOrderBodySchema = z.looseObject({ + void_cancellation_credit_notes: z.boolean().optional(), +}); +export { ReopenOrderBodySchema }; +export type ReopenOrderBody = z.infer; + +//Order.ordersForInvoice + +const OrdersForInvoiceOrderBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { OrdersForInvoiceOrderBodySchema }; +export type OrdersForInvoiceOrderBody = z.infer< + typeof OrdersForInvoiceOrderBodySchema +>; + +//Order.resend + +const ResendOrderOrderLineItemsSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + fulfillment_quantity: z.array(z.number().int().min(0).optional()).optional(), +}); +const ResendOrderBodySchema = z.looseObject({ + shipping_date: z.number().int().optional(), + resend_reason: z.string().max(100).optional(), + order_line_items: ResendOrderOrderLineItemsSchema.optional(), +}); +export { ResendOrderBodySchema }; +export type ResendOrderBody = z.infer; diff --git a/src/schema/payment_intent.schema.ts b/src/schema/payment_intent.schema.ts new file mode 100644 index 0000000..0d31854 --- /dev/null +++ b/src/schema/payment_intent.schema.ts @@ -0,0 +1,125 @@ +// Generated Zod schemas: PaymentIntent +// Actions: create, update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//PaymentIntent.create + +const CreatePaymentIntentBodySchema = z.looseObject({ + business_entity_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), + amount: z.number().int().min(0), + currency_code: z.string().max(3), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + defer_payment_method_type: z.boolean().default(false).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + success_url: z.string().max(250).optional(), + failure_url: z.string().max(250).optional(), +}); +export { CreatePaymentIntentBodySchema }; +export type CreatePaymentIntentBody = z.infer< + typeof CreatePaymentIntentBodySchema +>; + +//PaymentIntent.update + +const UpdatePaymentIntentBodySchema = z.looseObject({ + amount: z.number().int().min(0).optional(), + currency_code: z.string().max(3).optional(), + gateway_account_id: z.string().max(50).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + success_url: z.string().max(250).optional(), + failure_url: z.string().max(250).optional(), +}); +export { UpdatePaymentIntentBodySchema }; +export type UpdatePaymentIntentBody = z.infer< + typeof UpdatePaymentIntentBodySchema +>; diff --git a/src/validation/payment_schedule_scheme/create.validation.ts b/src/schema/payment_schedule_scheme.schema.ts similarity index 51% rename from src/validation/payment_schedule_scheme/create.validation.ts rename to src/schema/payment_schedule_scheme.schema.ts index ab93395..aafc73c 100644 --- a/src/validation/payment_schedule_scheme/create.validation.ts +++ b/src/schema/payment_schedule_scheme.schema.ts @@ -1,17 +1,24 @@ -// Generated Zod validator: PaymentScheduleScheme.create +// Generated Zod schemas: PaymentScheduleScheme +// Actions: create // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; -const createPaymentScheduleSchemeFlexibleSchedulesSchema = z.object({ + +//PaymentScheduleScheme.create + +const CreatePaymentScheduleSchemeFlexibleSchedulesSchema = z.object({ period: z.array(z.number().int().min(0).max(52).optional()).optional(), amount_percentage: z.array(z.number().min(1).max(100).optional()).optional(), }); -const createPaymentScheduleSchemeBodySchema = z.looseObject({ +const CreatePaymentScheduleSchemeBodySchema = z.looseObject({ number_of_schedules: z.number().int().min(1).max(52), period_unit: z.enum(['day', 'week', 'month']), period: z.number().int().min(1).max(30).optional(), name: z.string().max(100), flexible_schedules: - createPaymentScheduleSchemeFlexibleSchedulesSchema.optional(), + CreatePaymentScheduleSchemeFlexibleSchedulesSchema.optional(), }); -export { createPaymentScheduleSchemeBodySchema }; +export { CreatePaymentScheduleSchemeBodySchema }; +export type CreatePaymentScheduleSchemeBody = z.infer< + typeof CreatePaymentScheduleSchemeBodySchema +>; diff --git a/src/schema/payment_source.schema.ts b/src/schema/payment_source.schema.ts new file mode 100644 index 0000000..ef514ab --- /dev/null +++ b/src/schema/payment_source.schema.ts @@ -0,0 +1,434 @@ +// Generated Zod schemas: PaymentSource +// Actions: createUsingTempToken, createUsingPermanentToken, createUsingToken, createUsingPaymentIntent, createVoucherPaymentSource, createCard, createBankAccount, updateCard, updateBankAccount, verifyBankAccount, switchGatewayAccount, exportPaymentSource +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//PaymentSource.createUsingTempToken + +const CreateUsingTempTokenPaymentSourceAdditionalInformationSchema = + z.looseObject({}); +const CreateUsingTempTokenPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + gateway_account_id: z.string().max(50).optional(), + type: z.enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]), + tmp_token: z.string().max(65000), + issuing_country: z.string().max(50).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + additional_information: + CreateUsingTempTokenPaymentSourceAdditionalInformationSchema.optional(), +}); +export { CreateUsingTempTokenPaymentSourceBodySchema }; +export type CreateUsingTempTokenPaymentSourceBody = z.infer< + typeof CreateUsingTempTokenPaymentSourceBodySchema +>; + +//PaymentSource.createUsingPermanentToken + +const CreateUsingPermanentTokenPaymentSourceAdditionalInformationSchema = + z.looseObject({}); +const CreateUsingPermanentTokenPaymentSourceCardSchema = z.object({ + last4: z.string().max(4).min(4).optional(), + iin: z.string().max(6).min(6).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + brand: z + .enum([ + 'visa', + 'mastercard', + 'american_express', + 'discover', + 'jcb', + 'diners_club', + 'other', + 'bancontact', + 'cmr_falabella', + 'tarjeta_naranja', + 'nativa', + 'cencosud', + 'cabal', + 'argencard', + 'elo', + 'hipercard', + 'carnet', + 'rupay', + 'maestro', + 'dankort', + 'cartes_bancaires', + 'mada', + ]) + .optional(), + funding_type: z.enum(['credit', 'debit', 'prepaid', 'not_known']).optional(), +}); +const CreateUsingPermanentTokenPaymentSourceBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), +}); +const CreateUsingPermanentTokenPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + type: z.enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + issuing_country: z.string().max(50).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + payment_method_token: z.string().max(100).optional(), + customer_profile_token: z.string().max(100).optional(), + network_transaction_id: z.string().max(100).optional(), + mandate_id: z.string().max(100).optional(), + skip_retrieval: z.boolean().default(false).optional(), + additional_information: + CreateUsingPermanentTokenPaymentSourceAdditionalInformationSchema.optional(), + card: CreateUsingPermanentTokenPaymentSourceCardSchema.optional(), + billing_address: + CreateUsingPermanentTokenPaymentSourceBillingAddressSchema.optional(), +}); +export { CreateUsingPermanentTokenPaymentSourceBodySchema }; +export type CreateUsingPermanentTokenPaymentSourceBody = z.infer< + typeof CreateUsingPermanentTokenPaymentSourceBodySchema +>; + +//PaymentSource.createUsingToken + +const CreateUsingTokenPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + replace_primary_payment_source: z.boolean().default(false).optional(), + token_id: z.string().max(40), +}); +export { CreateUsingTokenPaymentSourceBodySchema }; +export type CreateUsingTokenPaymentSourceBody = z.infer< + typeof CreateUsingTokenPaymentSourceBodySchema +>; + +//PaymentSource.createUsingPaymentIntent + +const CreateUsingPaymentIntentPaymentSourceAdditionalInfoSchema = z.looseObject( + {}, +); +const CreateUsingPaymentIntentPaymentSourceAdditionalInformationSchema = + z.looseObject({}); +const CreateUsingPaymentIntentPaymentSourcePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_info: + CreateUsingPaymentIntentPaymentSourceAdditionalInfoSchema.optional(), + additional_information: + CreateUsingPaymentIntentPaymentSourceAdditionalInformationSchema.optional(), +}); +const CreateUsingPaymentIntentPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + replace_primary_payment_source: z.boolean().default(false).optional(), + payment_intent: + CreateUsingPaymentIntentPaymentSourcePaymentIntentSchema.optional(), +}); +export { CreateUsingPaymentIntentPaymentSourceBodySchema }; +export type CreateUsingPaymentIntentPaymentSourceBody = z.infer< + typeof CreateUsingPaymentIntentPaymentSourceBodySchema +>; + +//PaymentSource.createVoucherPaymentSource + +const CreateVoucherPaymentSourcePaymentSourceBillingAddressSchema = + z.looseObject({}); +const CreateVoucherPaymentSourcePaymentSourceVoucherPaymentSourceSchema = + z.object({ + voucher_type: z.enum(['boleto']), + gateway_account_id: z.string().max(50).optional(), + tax_id: z.string().max(20).optional(), + billing_address: + CreateVoucherPaymentSourcePaymentSourceBillingAddressSchema.optional(), + }); +const CreateVoucherPaymentSourcePaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + voucher_payment_source: + CreateVoucherPaymentSourcePaymentSourceVoucherPaymentSourceSchema.optional(), +}); +export { CreateVoucherPaymentSourcePaymentSourceBodySchema }; +export type CreateVoucherPaymentSourcePaymentSourceBody = z.infer< + typeof CreateVoucherPaymentSourcePaymentSourceBodySchema +>; + +//PaymentSource.createCard + +const CreateCardPaymentSourceAdditionalInformationSchema = z.looseObject({}); +const CreateCardPaymentSourceCardSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500), + expiry_month: z.number().int().min(1).max(12), + expiry_year: z.number().int(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + additional_information: + CreateCardPaymentSourceAdditionalInformationSchema.optional(), +}); +const CreateCardPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + replace_primary_payment_source: z.boolean().default(false).optional(), + card: CreateCardPaymentSourceCardSchema.optional(), +}); +export { CreateCardPaymentSourceBodySchema }; +export type CreateCardPaymentSourceBody = z.infer< + typeof CreateCardPaymentSourceBodySchema +>; + +//PaymentSource.createBankAccount + +const CreateBankAccountPaymentSourceBillingAddressSchema = z.looseObject({}); +const CreateBankAccountPaymentSourceBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: + CreateBankAccountPaymentSourceBillingAddressSchema.optional(), +}); +const CreateBankAccountPaymentSourceBodySchema = z.looseObject({ + customer_id: z.string().max(50), + issuing_country: z.string().max(50).optional(), + replace_primary_payment_source: z.boolean().default(false).optional(), + bank_account: CreateBankAccountPaymentSourceBankAccountSchema.optional(), +}); +export { CreateBankAccountPaymentSourceBodySchema }; +export type CreateBankAccountPaymentSourceBody = z.infer< + typeof CreateBankAccountPaymentSourceBodySchema +>; + +//PaymentSource.updateCard + +const UpdateCardPaymentSourceGatewayMetaDataSchema = z.looseObject({}); +const UpdateCardPaymentSourceAdditionalInformationSchema = z.looseObject({}); +const UpdateCardPaymentSourceCardSchema = z.object({ + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_country: z.string().max(50).optional(), + additional_information: + UpdateCardPaymentSourceAdditionalInformationSchema.optional(), +}); +const UpdateCardPaymentSourceBodySchema = z.looseObject({ + gateway_meta_data: UpdateCardPaymentSourceGatewayMetaDataSchema.optional(), + reference_transaction: z.string().max(50).optional(), + card: UpdateCardPaymentSourceCardSchema.optional(), +}); +export { UpdateCardPaymentSourceBodySchema }; +export type UpdateCardPaymentSourceBody = z.infer< + typeof UpdateCardPaymentSourceBodySchema +>; + +//PaymentSource.updateBankAccount + +const UpdateBankAccountPaymentSourceBankAccountSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), +}); +const UpdateBankAccountPaymentSourceBodySchema = z.looseObject({ + bank_account: UpdateBankAccountPaymentSourceBankAccountSchema.optional(), +}); +export { UpdateBankAccountPaymentSourceBodySchema }; +export type UpdateBankAccountPaymentSourceBody = z.infer< + typeof UpdateBankAccountPaymentSourceBodySchema +>; + +//PaymentSource.verifyBankAccount + +const VerifyBankAccountPaymentSourceBodySchema = z.looseObject({ + amount1: z.number().int().min(0), + amount2: z.number().int().min(0), +}); +export { VerifyBankAccountPaymentSourceBodySchema }; +export type VerifyBankAccountPaymentSourceBody = z.infer< + typeof VerifyBankAccountPaymentSourceBodySchema +>; + +//PaymentSource.switchGatewayAccount + +const SwitchGatewayAccountPaymentSourceBodySchema = z.looseObject({ + gateway_account_id: z.string().max(50), +}); +export { SwitchGatewayAccountPaymentSourceBodySchema }; +export type SwitchGatewayAccountPaymentSourceBody = z.infer< + typeof SwitchGatewayAccountPaymentSourceBodySchema +>; + +//PaymentSource.exportPaymentSource + +const ExportPaymentSourcePaymentSourceBodySchema = z.looseObject({ + gateway_account_id: z.string().max(50), +}); +export { ExportPaymentSourcePaymentSourceBodySchema }; +export type ExportPaymentSourcePaymentSourceBody = z.infer< + typeof ExportPaymentSourcePaymentSourceBodySchema +>; diff --git a/src/schema/payment_voucher.schema.ts b/src/schema/payment_voucher.schema.ts new file mode 100644 index 0000000..c378c16 --- /dev/null +++ b/src/schema/payment_voucher.schema.ts @@ -0,0 +1,71 @@ +// Generated Zod schemas: PaymentVoucher +// Actions: create, payment_vouchersForInvoice, payment_vouchersForCustomer +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//PaymentVoucher.create + +const CreatePaymentVoucherVoucherPaymentSourceSchema = z.object({ + voucher_type: z.enum(['boleto']), +}); +const CreatePaymentVoucherInvoiceAllocationsSchema = z.object({ + invoice_id: z.array(z.string().max(50).optional()), +}); +const CreatePaymentVoucherBodySchema = z.looseObject({ + customer_id: z.string().max(50), + payment_source_id: z.string().max(40).optional(), + voucher_payment_source: + CreatePaymentVoucherVoucherPaymentSourceSchema.optional(), + invoice_allocations: CreatePaymentVoucherInvoiceAllocationsSchema.optional(), +}); +export { CreatePaymentVoucherBodySchema }; +export type CreatePaymentVoucherBody = z.infer< + typeof CreatePaymentVoucherBodySchema +>; + +//PaymentVoucher.payment_vouchersForInvoice + +const PaymentVouchersforinvoicePaymentVoucherStatusSchema = z.object({ + is: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + is_not: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + not_in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), +}); +const PaymentVouchersforinvoicePaymentVoucherSortBySchema = z.looseObject({ + asc: z.enum(['date', 'updated_at']).optional(), + desc: z.enum(['date', 'updated_at']).optional(), +}); +const PaymentVouchersforinvoicePaymentVoucherBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + status: PaymentVouchersforinvoicePaymentVoucherStatusSchema.optional(), + sort_by: PaymentVouchersforinvoicePaymentVoucherSortBySchema.optional(), +}); +export { PaymentVouchersforinvoicePaymentVoucherBodySchema }; +export type PaymentVouchersforinvoicePaymentVoucherBody = z.infer< + typeof PaymentVouchersforinvoicePaymentVoucherBodySchema +>; + +//PaymentVoucher.payment_vouchersForCustomer + +const PaymentVouchersforcustomerPaymentVoucherStatusSchema = z.object({ + is: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + is_not: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), + not_in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), +}); +const PaymentVouchersforcustomerPaymentVoucherSortBySchema = z.looseObject({ + asc: z.enum(['date', 'updated_at']).optional(), + desc: z.enum(['date', 'updated_at']).optional(), +}); +const PaymentVouchersforcustomerPaymentVoucherBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + status: PaymentVouchersforcustomerPaymentVoucherStatusSchema.optional(), + sort_by: PaymentVouchersforcustomerPaymentVoucherSortBySchema.optional(), +}); +export { PaymentVouchersforcustomerPaymentVoucherBodySchema }; +export type PaymentVouchersforcustomerPaymentVoucherBody = z.infer< + typeof PaymentVouchersforcustomerPaymentVoucherBodySchema +>; diff --git a/src/validation/personalized_offer/personalized_offers.validation.ts b/src/schema/personalized_offer.schema.ts similarity index 53% rename from src/validation/personalized_offer/personalized_offers.validation.ts rename to src/schema/personalized_offer.schema.ts index f84f344..200c282 100644 --- a/src/validation/personalized_offer/personalized_offers.validation.ts +++ b/src/schema/personalized_offer.schema.ts @@ -1,16 +1,20 @@ -// Generated Zod validator: PersonalizedOffer.personalizedOffers +// Generated Zod schemas: PersonalizedOffer +// Actions: personalizedOffers // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; -const personalizedOffersPersonalizedOfferCustomSchema = z.looseObject({}); -const personalizedOffersPersonalizedOfferRequestContextSchema = z.object({ + +//PersonalizedOffer.personalizedOffers + +const PersonalizedOffersPersonalizedOfferCustomSchema = z.looseObject({}); +const PersonalizedOffersPersonalizedOfferRequestContextSchema = z.object({ user_agent: z.string().max(255).optional(), locale: z.string().max(50).optional(), timezone: z.string().max(64).optional(), url: z.string().max(250).optional(), referrer_url: z.string().max(250).optional(), }); -const personalizedOffersPersonalizedOfferBodySchema = z.looseObject({ +const PersonalizedOffersPersonalizedOfferBodySchema = z.looseObject({ first_name: z.string().max(150).optional(), last_name: z.string().max(150).optional(), email: z.string().email().max(70).optional(), @@ -18,8 +22,11 @@ const personalizedOffersPersonalizedOfferBodySchema = z.looseObject({ external_user_id: z.string().max(50).optional(), subscription_id: z.string().max(50).optional(), customer_id: z.string().max(50), - custom: personalizedOffersPersonalizedOfferCustomSchema.optional(), + custom: PersonalizedOffersPersonalizedOfferCustomSchema.optional(), request_context: - personalizedOffersPersonalizedOfferRequestContextSchema.optional(), + PersonalizedOffersPersonalizedOfferRequestContextSchema.optional(), }); -export { personalizedOffersPersonalizedOfferBodySchema }; +export { PersonalizedOffersPersonalizedOfferBodySchema }; +export type PersonalizedOffersPersonalizedOfferBody = z.infer< + typeof PersonalizedOffersPersonalizedOfferBodySchema +>; diff --git a/src/schema/plan.schema.ts b/src/schema/plan.schema.ts new file mode 100644 index 0000000..e7df77c --- /dev/null +++ b/src/schema/plan.schema.ts @@ -0,0 +1,236 @@ +// Generated Zod schemas: Plan +// Actions: create, update, copy +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Plan.create + +const CreatePlanMetaDataSchema = z.looseObject({}); +const CreatePlanTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CreatePlanTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const CreatePlanApplicableAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), +}); +const CreatePlanEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), +}); +const CreatePlanAttachedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + billing_cycles: z.array(z.number().int().min(1).optional()).optional(), + type: z.array(z.enum(['recommended', 'mandatory']).optional()).optional(), +}); +const CreatePlanBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + invoice_name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + trial_period: z.number().int().min(1).optional(), + trial_period_unit: z.enum(['day', 'month']).optional(), + trial_end_action: z + .enum(['site_default', 'activate_subscription', 'cancel_subscription']) + .optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + setup_cost: z.number().int().min(1).optional(), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + currency_code: z.string().max(3).optional(), + billing_cycles: z.number().int().min(1).optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + charge_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + free_quantity: z.number().int().min(0).optional(), + free_quantity_in_decimal: z.string().max(33).optional(), + addon_applicability: z.enum(['all', 'restricted']).optional(), + downgrade_penalty: z.number().min(0.01).max(100).optional(), + redirect_url: z.string().max(500).optional(), + enabled_in_hosted_pages: z.boolean().default(true).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + taxable: z.boolean().default(true).optional(), + tax_profile_id: z.string().max(50).optional(), + tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), + is_shippable: z.boolean().default(false).optional(), + shipping_frequency_period: z.number().int().min(1).optional(), + shipping_frequency_period_unit: z + .enum(['year', 'month', 'week', 'day']) + .optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: CreatePlanMetaDataSchema.optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + giftable: z.boolean().default(false).optional(), + status: z.enum(['active', 'archived']).optional(), + claim_url: z.string().max(500).optional(), + tiers: CreatePlanTiersSchema.optional(), + tax_providers_fields: CreatePlanTaxProvidersFieldsSchema.optional(), + applicable_addons: CreatePlanApplicableAddonsSchema.optional(), + event_based_addons: CreatePlanEventBasedAddonsSchema.optional(), + attached_addons: CreatePlanAttachedAddonsSchema.optional(), +}); +export { CreatePlanBodySchema }; +export type CreatePlanBody = z.infer; + +//Plan.update + +const UpdatePlanMetaDataSchema = z.looseObject({}); +const UpdatePlanTiersSchema = z.object({ + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const UpdatePlanTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()), + field_id: z.array(z.string().max(50).optional()), + field_value: z.array(z.string().max(50).optional()), +}); +const UpdatePlanApplicableAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), +}); +const UpdatePlanEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), +}); +const UpdatePlanAttachedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + billing_cycles: z.array(z.number().int().min(1).optional()).optional(), + type: z.array(z.enum(['recommended', 'mandatory']).optional()).optional(), +}); +const UpdatePlanBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + invoice_name: z.string().max(100).optional(), + description: z.string().max(2000).optional(), + trial_period: z.number().int().min(0).optional(), + trial_period_unit: z.enum(['day', 'month']).optional(), + trial_end_action: z + .enum(['site_default', 'activate_subscription', 'cancel_subscription']) + .optional(), + period: z.number().int().min(1).optional(), + period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + setup_cost: z.number().int().min(1).optional(), + price: z.number().int().min(0).optional(), + price_in_decimal: z.string().max(39).optional(), + currency_code: z.string().max(3).optional(), + billing_cycles: z.number().int().min(1).optional(), + pricing_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + charge_model: z + .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) + .optional(), + free_quantity: z.number().int().min(0).optional(), + free_quantity_in_decimal: z.string().max(33).optional(), + addon_applicability: z.enum(['all', 'restricted']).optional(), + downgrade_penalty: z.number().min(0.01).max(100).optional(), + redirect_url: z.string().max(500).optional(), + enabled_in_hosted_pages: z.boolean().default(true).optional(), + enabled_in_portal: z.boolean().default(true).optional(), + taxable: z.boolean().default(true).optional(), + tax_profile_id: z.string().max(50).optional(), + tax_code: z.string().max(50).optional(), + hsn_code: z.string().max(50).optional(), + taxjar_product_code: z.string().max(50).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + sku: z.string().max(100).optional(), + accounting_code: z.string().max(100).optional(), + accounting_category1: z.string().max(100).optional(), + accounting_category2: z.string().max(100).optional(), + accounting_category3: z.string().max(100).optional(), + accounting_category4: z.string().max(100).optional(), + is_shippable: z.boolean().default(false).optional(), + shipping_frequency_period: z.number().int().min(1).optional(), + shipping_frequency_period_unit: z + .enum(['year', 'month', 'week', 'day']) + .optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: UpdatePlanMetaDataSchema.optional(), + show_description_in_invoices: z.boolean().default(false).optional(), + show_description_in_quotes: z.boolean().default(false).optional(), + tiers: UpdatePlanTiersSchema.optional(), + tax_providers_fields: UpdatePlanTaxProvidersFieldsSchema.optional(), + applicable_addons: UpdatePlanApplicableAddonsSchema.optional(), + event_based_addons: UpdatePlanEventBasedAddonsSchema.optional(), + attached_addons: UpdatePlanAttachedAddonsSchema.optional(), +}); +export { UpdatePlanBodySchema }; +export type UpdatePlanBody = z.infer; + +//Plan.copy + +const CopyPlanBodySchema = z.looseObject({ + from_site: z.string().max(50), + id_at_from_site: z.string().max(100), + id: z.string().max(100).optional(), + for_site_merging: z.boolean().default(false).optional(), +}); +export { CopyPlanBodySchema }; +export type CopyPlanBody = z.infer; diff --git a/src/schema/portal_session.schema.ts b/src/schema/portal_session.schema.ts new file mode 100644 index 0000000..21049c1 --- /dev/null +++ b/src/schema/portal_session.schema.ts @@ -0,0 +1,30 @@ +// Generated Zod schemas: PortalSession +// Actions: create, activate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//PortalSession.create + +const CreatePortalSessionCustomerSchema = z.object({ + id: z.string().max(50), +}); +const CreatePortalSessionBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + forward_url: z.string().max(250).optional(), + customer: CreatePortalSessionCustomerSchema.optional(), +}); +export { CreatePortalSessionBodySchema }; +export type CreatePortalSessionBody = z.infer< + typeof CreatePortalSessionBodySchema +>; + +//PortalSession.activate + +const ActivatePortalSessionBodySchema = z.looseObject({ + token: z.string().max(70), +}); +export { ActivatePortalSessionBodySchema }; +export type ActivatePortalSessionBody = z.infer< + typeof ActivatePortalSessionBodySchema +>; diff --git a/src/schema/price_variant.schema.ts b/src/schema/price_variant.schema.ts new file mode 100644 index 0000000..8f03b67 --- /dev/null +++ b/src/schema/price_variant.schema.ts @@ -0,0 +1,44 @@ +// Generated Zod schemas: PriceVariant +// Actions: create, update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//PriceVariant.create + +const CreatePriceVariantAttributesSchema = z.object({ + name: z.array(z.string().max(100).optional()), + value: z.array(z.string().max(100).optional()), +}); +const CreatePriceVariantBodySchema = z.looseObject({ + id: z.string().max(100), + name: z.string().max(100), + external_name: z.string().max(100).optional(), + description: z.string().max(500).optional(), + variant_group: z.string().max(100).optional(), + business_entity_id: z.string().max(50).optional(), + attributes: CreatePriceVariantAttributesSchema.optional(), +}); +export { CreatePriceVariantBodySchema }; +export type CreatePriceVariantBody = z.infer< + typeof CreatePriceVariantBodySchema +>; + +//PriceVariant.update + +const UpdatePriceVariantAttributesSchema = z.object({ + name: z.array(z.string().max(100).optional()), + value: z.array(z.string().max(100).optional()), +}); +const UpdatePriceVariantBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + external_name: z.string().max(100).optional(), + description: z.string().max(500).optional(), + variant_group: z.string().max(100).optional(), + status: z.enum(['active', 'archived']).optional(), + attributes: UpdatePriceVariantAttributesSchema.optional(), +}); +export { UpdatePriceVariantBodySchema }; +export type UpdatePriceVariantBody = z.infer< + typeof UpdatePriceVariantBodySchema +>; diff --git a/src/schema/pricing_page_session.schema.ts b/src/schema/pricing_page_session.schema.ts new file mode 100644 index 0000000..02b04f1 --- /dev/null +++ b/src/schema/pricing_page_session.schema.ts @@ -0,0 +1,172 @@ +// Generated Zod schemas: PricingPageSession +// Actions: createForNewSubscription, createForExistingSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//PricingPageSession.createForNewSubscription + +const CreateForNewSubscriptionPricingPageSessionCustomSchema = z.looseObject( + {}, +); +const CreateForNewSubscriptionPricingPageSessionPricingPageSchema = z.object({ + id: z.string().max(50), +}); +const CreateForNewSubscriptionPricingPageSessionSubscriptionSchema = + z.looseObject({ + id: z.string().max(50).optional(), + }); +const CreateForNewSubscriptionPricingPageSessionCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), +}); +const CreateForNewSubscriptionPricingPageSessionBillingAddressSchema = z.object( + { + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + }, +); +const CreateForNewSubscriptionPricingPageSessionShippingAddressSchema = + z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + }); +const CreateForNewSubscriptionPricingPageSessionContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateForNewSubscriptionPricingPageSessionDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + label: z.array(z.string().max(100).optional()).optional(), +}); +const CreateForNewSubscriptionPricingPageSessionBodySchema = z.looseObject({ + redirect_url: z.string().max(250).optional(), + business_entity_id: z.string().max(50).optional(), + auto_select_local_currency: z.boolean().default(false).optional(), + custom: CreateForNewSubscriptionPricingPageSessionCustomSchema.optional(), + pricing_page: + CreateForNewSubscriptionPricingPageSessionPricingPageSchema.optional(), + subscription: + CreateForNewSubscriptionPricingPageSessionSubscriptionSchema.optional(), + customer: CreateForNewSubscriptionPricingPageSessionCustomerSchema.optional(), + billing_address: + CreateForNewSubscriptionPricingPageSessionBillingAddressSchema.optional(), + shipping_address: + CreateForNewSubscriptionPricingPageSessionShippingAddressSchema.optional(), + contract_term: + CreateForNewSubscriptionPricingPageSessionContractTermSchema.optional(), + discounts: + CreateForNewSubscriptionPricingPageSessionDiscountsSchema.optional(), +}); +export { CreateForNewSubscriptionPricingPageSessionBodySchema }; +export type CreateForNewSubscriptionPricingPageSessionBody = z.infer< + typeof CreateForNewSubscriptionPricingPageSessionBodySchema +>; + +//PricingPageSession.createForExistingSubscription + +const CreateForExistingSubscriptionPricingPageSessionCustomSchema = + z.looseObject({}); +const CreateForExistingSubscriptionPricingPageSessionPricingPageSchema = + z.object({ + id: z.string().max(50).optional(), + }); +const CreateForExistingSubscriptionPricingPageSessionSubscriptionSchema = + z.looseObject({ + id: z.string().max(50), + }); +const CreateForExistingSubscriptionPricingPageSessionContractTermSchema = + z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), + }); +const CreateForExistingSubscriptionPricingPageSessionDiscountsSchema = z.object( + { + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + label: z.array(z.string().max(100).optional()).optional(), + }, +); +const CreateForExistingSubscriptionPricingPageSessionBodySchema = z.looseObject( + { + redirect_url: z.string().max(250).optional(), + custom: + CreateForExistingSubscriptionPricingPageSessionCustomSchema.optional(), + pricing_page: + CreateForExistingSubscriptionPricingPageSessionPricingPageSchema.optional(), + subscription: + CreateForExistingSubscriptionPricingPageSessionSubscriptionSchema.optional(), + contract_term: + CreateForExistingSubscriptionPricingPageSessionContractTermSchema.optional(), + discounts: + CreateForExistingSubscriptionPricingPageSessionDiscountsSchema.optional(), + }, +); +export { CreateForExistingSubscriptionPricingPageSessionBodySchema }; +export type CreateForExistingSubscriptionPricingPageSessionBody = z.infer< + typeof CreateForExistingSubscriptionPricingPageSessionBodySchema +>; diff --git a/src/schema/promotional_credit.schema.ts b/src/schema/promotional_credit.schema.ts new file mode 100644 index 0000000..3b0901a --- /dev/null +++ b/src/schema/promotional_credit.schema.ts @@ -0,0 +1,96 @@ +// Generated Zod schemas: PromotionalCredit +// Actions: add, deduct, set, list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//PromotionalCredit.add + +const AddPromotionalCreditBodySchema = z.looseObject({ + customer_id: z.string().max(50), + amount: z.number().int().min(0).optional(), + amount_in_decimal: z.string().max(33).optional(), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { AddPromotionalCreditBodySchema }; +export type AddPromotionalCreditBody = z.infer< + typeof AddPromotionalCreditBodySchema +>; + +//PromotionalCredit.deduct + +const DeductPromotionalCreditBodySchema = z.looseObject({ + customer_id: z.string().max(50), + amount: z.number().int().min(0).optional(), + amount_in_decimal: z.string().max(33).optional(), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { DeductPromotionalCreditBodySchema }; +export type DeductPromotionalCreditBody = z.infer< + typeof DeductPromotionalCreditBodySchema +>; + +//PromotionalCredit.set + +const SetPromotionalCreditBodySchema = z.looseObject({ + customer_id: z.string().max(50), + amount: z.number().int().min(0).optional(), + amount_in_decimal: z.string().max(33).optional(), + currency_code: z.string().max(3).optional(), + description: z.string().max(250), + credit_type: z + .enum(['loyalty_credits', 'referral_rewards', 'general']) + .optional(), + reference: z.string().max(500).optional(), +}); +export { SetPromotionalCreditBodySchema }; +export type SetPromotionalCreditBody = z.infer< + typeof SetPromotionalCreditBodySchema +>; + +//PromotionalCredit.list + +const ListPromotionalCreditIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListPromotionalCreditCreatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ListPromotionalCreditTypeSchema = z.object({ + is: z.enum(['increment', 'decrement']).optional(), + is_not: z.enum(['increment', 'decrement']).optional(), + in: z.enum(['increment', 'decrement']).optional(), + not_in: z.enum(['increment', 'decrement']).optional(), +}); +const ListPromotionalCreditCustomerIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListPromotionalCreditBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + id: ListPromotionalCreditIdSchema.optional(), + created_at: ListPromotionalCreditCreatedAtSchema.optional(), + type: ListPromotionalCreditTypeSchema.optional(), + customer_id: ListPromotionalCreditCustomerIdSchema.optional(), +}); +export { ListPromotionalCreditBodySchema }; +export type ListPromotionalCreditBody = z.infer< + typeof ListPromotionalCreditBodySchema +>; diff --git a/src/schema/purchase.schema.ts b/src/schema/purchase.schema.ts new file mode 100644 index 0000000..7b05376 --- /dev/null +++ b/src/schema/purchase.schema.ts @@ -0,0 +1,280 @@ +// Generated Zod schemas: Purchase +// Actions: create, estimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Purchase.create + +const CreatePurchaseInvoiceInfoSchema = z.object({ + po_number: z.string().max(100).optional(), + notes: z.string().max(2000).optional(), +}); +const CreatePurchasePaymentScheduleSchema = z.object({ + scheme_id: z.string().max(40).optional(), + amount: z.number().int().min(0).optional(), +}); +const CreatePurchaseStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const CreatePurchaseAdditionalInformationSchema = z.looseObject({}); +const CreatePurchasePaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: CreatePurchaseAdditionalInformationSchema.optional(), +}); +const CreatePurchasePurchaseItemsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const CreatePurchaseItemTiersSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const CreatePurchaseShippingAddressesSchema = z.object({ + first_name: z.array(z.string().max(150).optional()).optional(), + last_name: z.array(z.string().max(150).optional()).optional(), + email: z.array(z.string().email().max(70).optional()).optional(), + company: z.array(z.string().max(250).optional()).optional(), + phone: z.array(z.string().max(50).optional()).optional(), + line1: z.array(z.string().max(150).optional()).optional(), + line2: z.array(z.string().max(150).optional()).optional(), + line3: z.array(z.string().max(150).optional()).optional(), + city: z.array(z.string().max(50).optional()).optional(), + state: z.array(z.string().max(50).optional()).optional(), + state_code: z.array(z.string().max(50).optional()).optional(), + country: z.array(z.string().max(50).optional()).optional(), + zip: z.array(z.string().max(20).optional()).optional(), + validation_status: z + .array( + z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + ) + .optional(), +}); +const CreatePurchaseDiscountsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()).optional(), + coupon_id: z.array(z.string().max(100).optional()).optional(), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), +}); +const CreatePurchaseMetaDataItemSchema = z.looseObject({}); +const CreatePurchaseSubscriptionInfoSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + subscription_id: z.array(z.string().max(50).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + contract_term_billing_cycle_on_renewal: z + .array(z.number().int().min(1).max(100).optional()) + .optional(), + meta_data: z.array(CreatePurchaseMetaDataItemSchema.optional()).optional(), +}); +const CreatePurchaseContractTermsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + action_at_term_end: z + .array(z.enum(['renew', 'evergreen', 'cancel', 'renew_once']).optional()) + .optional(), + cancellation_cutoff_period: z.array(z.number().int().optional()).optional(), +}); +const CreatePurchaseBodySchema = z.looseObject({ + customer_id: z.string().max(50), + payment_source_id: z.string().max(40).optional(), + replace_primary_payment_source: z.boolean().default(true).optional(), + invoice_info: CreatePurchaseInvoiceInfoSchema.optional(), + payment_schedule: CreatePurchasePaymentScheduleSchema.optional(), + statement_descriptor: CreatePurchaseStatementDescriptorSchema.optional(), + payment_intent: CreatePurchasePaymentIntentSchema.optional(), + purchase_items: CreatePurchasePurchaseItemsSchema.optional(), + item_tiers: CreatePurchaseItemTiersSchema.optional(), + shipping_addresses: CreatePurchaseShippingAddressesSchema.optional(), + discounts: CreatePurchaseDiscountsSchema.optional(), + subscription_info: CreatePurchaseSubscriptionInfoSchema.optional(), + contract_terms: CreatePurchaseContractTermsSchema.optional(), +}); +export { CreatePurchaseBodySchema }; +export type CreatePurchaseBody = z.infer; + +//Purchase.estimate + +const EstimatePurchaseCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), +}); +const EstimatePurchaseBillingAddressSchema = z.object({ + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EstimatePurchasePurchaseItemsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), +}); +const EstimatePurchaseItemTiersSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const EstimatePurchaseShippingAddressesSchema = z.object({ + first_name: z.array(z.string().max(150).optional()).optional(), + last_name: z.array(z.string().max(150).optional()).optional(), + email: z.array(z.string().email().max(70).optional()).optional(), + company: z.array(z.string().max(250).optional()).optional(), + phone: z.array(z.string().max(50).optional()).optional(), + line1: z.array(z.string().max(150).optional()).optional(), + line2: z.array(z.string().max(150).optional()).optional(), + line3: z.array(z.string().max(150).optional()).optional(), + city: z.array(z.string().max(50).optional()).optional(), + state: z.array(z.string().max(50).optional()).optional(), + state_code: z.array(z.string().max(50).optional()).optional(), + country: z.array(z.string().max(50).optional()).optional(), + zip: z.array(z.string().max(20).optional()).optional(), + validation_status: z + .array( + z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), + ) + .optional(), +}); +const EstimatePurchaseDiscountsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()).optional(), + coupon_id: z.array(z.string().max(100).optional()).optional(), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), +}); +const EstimatePurchaseSubscriptionInfoSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + subscription_id: z.array(z.string().max(50).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + contract_term_billing_cycle_on_renewal: z + .array(z.number().int().min(1).max(100).optional()) + .optional(), +}); +const EstimatePurchaseContractTermsSchema = z.object({ + index: z.array(z.number().int().min(0).optional()), + action_at_term_end: z + .array(z.enum(['renew', 'evergreen', 'cancel', 'renew_once']).optional()) + .optional(), + cancellation_cutoff_period: z.array(z.number().int().optional()).optional(), +}); +const EstimatePurchaseBodySchema = z.looseObject({ + client_profile_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), + customer: EstimatePurchaseCustomerSchema.optional(), + billing_address: EstimatePurchaseBillingAddressSchema.optional(), + purchase_items: EstimatePurchasePurchaseItemsSchema.optional(), + item_tiers: EstimatePurchaseItemTiersSchema.optional(), + shipping_addresses: EstimatePurchaseShippingAddressesSchema.optional(), + discounts: EstimatePurchaseDiscountsSchema.optional(), + subscription_info: EstimatePurchaseSubscriptionInfoSchema.optional(), + contract_terms: EstimatePurchaseContractTermsSchema.optional(), +}); +export { EstimatePurchaseBodySchema }; +export type EstimatePurchaseBody = z.infer; diff --git a/src/schema/quote.schema.ts b/src/schema/quote.schema.ts new file mode 100644 index 0000000..517d891 --- /dev/null +++ b/src/schema/quote.schema.ts @@ -0,0 +1,1717 @@ +// Generated Zod schemas: Quote +// Actions: createSubForCustomerQuote, editCreateSubForCustomerQuote, updateSubscriptionQuote, editUpdateSubscriptionQuote, createForOnetimeCharges, editOneTimeQuote, createSubItemsForCustomerQuote, editCreateSubCustomerQuoteForItems, updateSubscriptionQuoteForItems, editUpdateSubscriptionQuoteForItems, createForChargeItemsAndCharges, editForChargeItemsAndCharges, quoteLineGroupsForQuote, convert, updateStatus, extendExpiryDate, delete, pdf, updateSignatureStatus +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Quote.createSubForCustomerQuote + +const CreateSubForCustomerQuoteQuoteSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const CreateSubForCustomerQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubForCustomerQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateSubForCustomerQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const CreateSubForCustomerQuoteQuoteEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const CreateSubForCustomerQuoteQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + subscription: CreateSubForCustomerQuoteQuoteSubscriptionSchema.optional(), + shipping_address: + CreateSubForCustomerQuoteQuoteShippingAddressSchema.optional(), + contract_term: CreateSubForCustomerQuoteQuoteContractTermSchema.optional(), + addons: CreateSubForCustomerQuoteQuoteAddonsSchema.optional(), + event_based_addons: + CreateSubForCustomerQuoteQuoteEventBasedAddonsSchema.optional(), +}); +export { CreateSubForCustomerQuoteQuoteBodySchema }; +export type CreateSubForCustomerQuoteQuoteBody = z.infer< + typeof CreateSubForCustomerQuoteQuoteBodySchema +>; + +//Quote.editCreateSubForCustomerQuote + +const EditCreateSubForCustomerQuoteQuoteSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const EditCreateSubForCustomerQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditCreateSubForCustomerQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const EditCreateSubForCustomerQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const EditCreateSubForCustomerQuoteQuoteEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const EditCreateSubForCustomerQuoteQuoteBodySchema = z.looseObject({ + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + subscription: EditCreateSubForCustomerQuoteQuoteSubscriptionSchema.optional(), + shipping_address: + EditCreateSubForCustomerQuoteQuoteShippingAddressSchema.optional(), + contract_term: + EditCreateSubForCustomerQuoteQuoteContractTermSchema.optional(), + addons: EditCreateSubForCustomerQuoteQuoteAddonsSchema.optional(), + event_based_addons: + EditCreateSubForCustomerQuoteQuoteEventBasedAddonsSchema.optional(), +}); +export { EditCreateSubForCustomerQuoteQuoteBodySchema }; +export type EditCreateSubForCustomerQuoteQuoteBody = z.infer< + typeof EditCreateSubForCustomerQuoteQuoteBodySchema +>; + +//Quote.updateSubscriptionQuote + +const UpdateSubscriptionQuoteQuoteSubscriptionSchema = z.object({ + id: z.string().max(50), + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const UpdateSubscriptionQuoteQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionQuoteQuoteCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), +}); +const UpdateSubscriptionQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const UpdateSubscriptionQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const UpdateSubscriptionQuoteQuoteEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const UpdateSubscriptionQuoteQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + change_option: z.enum(['immediately', 'specific_date']).optional(), + changes_scheduled_at: z.number().int().optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + subscription: UpdateSubscriptionQuoteQuoteSubscriptionSchema.optional(), + billing_address: UpdateSubscriptionQuoteQuoteBillingAddressSchema.optional(), + shipping_address: + UpdateSubscriptionQuoteQuoteShippingAddressSchema.optional(), + customer: UpdateSubscriptionQuoteQuoteCustomerSchema.optional(), + contract_term: UpdateSubscriptionQuoteQuoteContractTermSchema.optional(), + addons: UpdateSubscriptionQuoteQuoteAddonsSchema.optional(), + event_based_addons: + UpdateSubscriptionQuoteQuoteEventBasedAddonsSchema.optional(), +}); +export { UpdateSubscriptionQuoteQuoteBodySchema }; +export type UpdateSubscriptionQuoteQuoteBody = z.infer< + typeof UpdateSubscriptionQuoteQuoteBodySchema +>; + +//Quote.editUpdateSubscriptionQuote + +const EditUpdateSubscriptionQuoteQuoteSubscriptionSchema = z.object({ + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const EditUpdateSubscriptionQuoteQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditUpdateSubscriptionQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditUpdateSubscriptionQuoteQuoteCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), +}); +const EditUpdateSubscriptionQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const EditUpdateSubscriptionQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const EditUpdateSubscriptionQuoteQuoteEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const EditUpdateSubscriptionQuoteQuoteBodySchema = z.looseObject({ + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + change_option: z.enum(['immediately', 'specific_date']).optional(), + changes_scheduled_at: z.number().int().optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + subscription: EditUpdateSubscriptionQuoteQuoteSubscriptionSchema.optional(), + billing_address: + EditUpdateSubscriptionQuoteQuoteBillingAddressSchema.optional(), + shipping_address: + EditUpdateSubscriptionQuoteQuoteShippingAddressSchema.optional(), + customer: EditUpdateSubscriptionQuoteQuoteCustomerSchema.optional(), + contract_term: EditUpdateSubscriptionQuoteQuoteContractTermSchema.optional(), + addons: EditUpdateSubscriptionQuoteQuoteAddonsSchema.optional(), + event_based_addons: + EditUpdateSubscriptionQuoteQuoteEventBasedAddonsSchema.optional(), +}); +export { EditUpdateSubscriptionQuoteQuoteBodySchema }; +export type EditUpdateSubscriptionQuoteQuoteBody = z.infer< + typeof EditUpdateSubscriptionQuoteQuoteBodySchema +>; + +//Quote.createForOnetimeCharges + +const CreateForOnetimeChargesQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateForOnetimeChargesQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const CreateForOnetimeChargesQuoteChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const CreateForOnetimeChargesQuoteTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateForOnetimeChargesQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + customer_id: z.string().max(50), + po_number: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + currency_code: z.string().max(3).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + shipping_address: + CreateForOnetimeChargesQuoteShippingAddressSchema.optional(), + addons: CreateForOnetimeChargesQuoteAddonsSchema.optional(), + charges: CreateForOnetimeChargesQuoteChargesSchema.optional(), + tax_providers_fields: + CreateForOnetimeChargesQuoteTaxProvidersFieldsSchema.optional(), +}); +export { CreateForOnetimeChargesQuoteBodySchema }; +export type CreateForOnetimeChargesQuoteBody = z.infer< + typeof CreateForOnetimeChargesQuoteBodySchema +>; + +//Quote.editOneTimeQuote + +const EditOneTimeQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditOneTimeQuoteQuoteAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const EditOneTimeQuoteQuoteChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const EditOneTimeQuoteQuoteTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const EditOneTimeQuoteQuoteBodySchema = z.looseObject({ + po_number: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + currency_code: z.string().max(3).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + shipping_address: EditOneTimeQuoteQuoteShippingAddressSchema.optional(), + addons: EditOneTimeQuoteQuoteAddonsSchema.optional(), + charges: EditOneTimeQuoteQuoteChargesSchema.optional(), + tax_providers_fields: + EditOneTimeQuoteQuoteTaxProvidersFieldsSchema.optional(), +}); +export { EditOneTimeQuoteQuoteBodySchema }; +export type EditOneTimeQuoteQuoteBody = z.infer< + typeof EditOneTimeQuoteQuoteBodySchema +>; + +//Quote.createSubItemsForCustomerQuote + +const CreateSubItemsForCustomerQuoteQuoteSubscriptionSchema = z.looseObject({ + id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), +}); +const CreateSubItemsForCustomerQuoteQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubItemsForCustomerQuoteQuoteContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateSubItemsForCustomerQuoteQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubItemsForCustomerQuoteQuoteSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const CreateSubItemsForCustomerQuoteQuoteDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const CreateSubItemsForCustomerQuoteQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const CreateSubItemsForCustomerQuoteQuoteCouponsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const CreateSubItemsForCustomerQuoteQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + billing_start_option: z.enum(['immediately', 'on_specific_date']).optional(), + net_term_days: z.number().int().optional(), + subscription: + CreateSubItemsForCustomerQuoteQuoteSubscriptionSchema.optional(), + shipping_address: + CreateSubItemsForCustomerQuoteQuoteShippingAddressSchema.optional(), + contract_term: + CreateSubItemsForCustomerQuoteQuoteContractTermSchema.optional(), + billing_address: + CreateSubItemsForCustomerQuoteQuoteBillingAddressSchema.optional(), + subscription_items: + CreateSubItemsForCustomerQuoteQuoteSubscriptionItemsSchema.optional(), + discounts: CreateSubItemsForCustomerQuoteQuoteDiscountsSchema.optional(), + item_tiers: CreateSubItemsForCustomerQuoteQuoteItemTiersSchema.optional(), + coupons: CreateSubItemsForCustomerQuoteQuoteCouponsSchema.optional(), +}); +export { CreateSubItemsForCustomerQuoteQuoteBodySchema }; +export type CreateSubItemsForCustomerQuoteQuoteBody = z.infer< + typeof CreateSubItemsForCustomerQuoteQuoteBodySchema +>; + +//Quote.editCreateSubCustomerQuoteForItems + +const EditCreateSubCustomerQuoteForItemsQuoteSubscriptionSchema = z.looseObject( + { + id: z.string().max(50).optional(), + po_number: z.string().max(100).optional(), + trial_end: z.number().int().optional(), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + }, +); +const EditCreateSubCustomerQuoteForItemsQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditCreateSubCustomerQuoteForItemsQuoteContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const EditCreateSubCustomerQuoteForItemsQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditCreateSubCustomerQuoteForItemsQuoteSubscriptionItemsSchema = z.object( + { + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z + .array(z.enum(['plan', 'addon', 'charge']).optional()) + .optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), + }, +); +const EditCreateSubCustomerQuoteForItemsQuoteDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const EditCreateSubCustomerQuoteForItemsQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const EditCreateSubCustomerQuoteForItemsQuoteCouponsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const EditCreateSubCustomerQuoteForItemsQuoteBodySchema = z.looseObject({ + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + billing_start_option: z.enum(['immediately', 'on_specific_date']).optional(), + net_term_days: z.number().int().optional(), + subscription: + EditCreateSubCustomerQuoteForItemsQuoteSubscriptionSchema.optional(), + shipping_address: + EditCreateSubCustomerQuoteForItemsQuoteShippingAddressSchema.optional(), + contract_term: + EditCreateSubCustomerQuoteForItemsQuoteContractTermSchema.optional(), + billing_address: + EditCreateSubCustomerQuoteForItemsQuoteBillingAddressSchema.optional(), + subscription_items: + EditCreateSubCustomerQuoteForItemsQuoteSubscriptionItemsSchema.optional(), + discounts: EditCreateSubCustomerQuoteForItemsQuoteDiscountsSchema.optional(), + item_tiers: EditCreateSubCustomerQuoteForItemsQuoteItemTiersSchema.optional(), + coupons: EditCreateSubCustomerQuoteForItemsQuoteCouponsSchema.optional(), +}); +export { EditCreateSubCustomerQuoteForItemsQuoteBodySchema }; +export type EditCreateSubCustomerQuoteForItemsQuoteBody = z.infer< + typeof EditCreateSubCustomerQuoteForItemsQuoteBodySchema +>; + +//Quote.updateSubscriptionQuoteForItems + +const UpdateSubscriptionQuoteForItemsQuoteSubscriptionSchema = z.looseObject({ + id: z.string().max(50), + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteCouponsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const UpdateSubscriptionQuoteForItemsQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + change_option: z.enum(['immediately', 'specific_date']).optional(), + changes_scheduled_at: z.number().int().optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + net_term_days: z.number().int().optional(), + subscription: + UpdateSubscriptionQuoteForItemsQuoteSubscriptionSchema.optional(), + billing_address: + UpdateSubscriptionQuoteForItemsQuoteBillingAddressSchema.optional(), + shipping_address: + UpdateSubscriptionQuoteForItemsQuoteShippingAddressSchema.optional(), + customer: UpdateSubscriptionQuoteForItemsQuoteCustomerSchema.optional(), + contract_term: + UpdateSubscriptionQuoteForItemsQuoteContractTermSchema.optional(), + subscription_items: + UpdateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema.optional(), + discounts: UpdateSubscriptionQuoteForItemsQuoteDiscountsSchema.optional(), + item_tiers: UpdateSubscriptionQuoteForItemsQuoteItemTiersSchema.optional(), + coupons: UpdateSubscriptionQuoteForItemsQuoteCouponsSchema.optional(), +}); +export { UpdateSubscriptionQuoteForItemsQuoteBodySchema }; +export type UpdateSubscriptionQuoteForItemsQuoteBody = z.infer< + typeof UpdateSubscriptionQuoteForItemsQuoteBodySchema +>; + +//Quote.editUpdateSubscriptionQuoteForItems + +const EditUpdateSubscriptionQuoteForItemsQuoteSubscriptionSchema = + z.looseObject({ + setup_fee: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + }); +const EditUpdateSubscriptionQuoteForItemsQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditUpdateSubscriptionQuoteForItemsQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditUpdateSubscriptionQuoteForItemsQuoteCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + registered_for_gst: z.boolean().optional(), +}); +const EditUpdateSubscriptionQuoteForItemsQuoteContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const EditUpdateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema = + z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z + .array(z.enum(['plan', 'addon', 'charge']).optional()) + .optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), + }); +const EditUpdateSubscriptionQuoteForItemsQuoteDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const EditUpdateSubscriptionQuoteForItemsQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), + ramp_tier_id: z.array(z.string().max(105).optional()).optional(), +}); +const EditUpdateSubscriptionQuoteForItemsQuoteCouponsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + start_date: z.array(z.number().int().optional()).optional(), + end_date: z.array(z.number().int().optional()).optional(), +}); +const EditUpdateSubscriptionQuoteForItemsQuoteBodySchema = z.looseObject({ + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + billing_cycles: z.number().int().min(0).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + change_option: z.enum(['immediately', 'specific_date']).optional(), + changes_scheduled_at: z.number().int().optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + net_term_days: z.number().int().optional(), + subscription: + EditUpdateSubscriptionQuoteForItemsQuoteSubscriptionSchema.optional(), + billing_address: + EditUpdateSubscriptionQuoteForItemsQuoteBillingAddressSchema.optional(), + shipping_address: + EditUpdateSubscriptionQuoteForItemsQuoteShippingAddressSchema.optional(), + customer: EditUpdateSubscriptionQuoteForItemsQuoteCustomerSchema.optional(), + contract_term: + EditUpdateSubscriptionQuoteForItemsQuoteContractTermSchema.optional(), + subscription_items: + EditUpdateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema.optional(), + discounts: EditUpdateSubscriptionQuoteForItemsQuoteDiscountsSchema.optional(), + item_tiers: + EditUpdateSubscriptionQuoteForItemsQuoteItemTiersSchema.optional(), + coupons: EditUpdateSubscriptionQuoteForItemsQuoteCouponsSchema.optional(), +}); +export { EditUpdateSubscriptionQuoteForItemsQuoteBodySchema }; +export type EditUpdateSubscriptionQuoteForItemsQuoteBody = z.infer< + typeof EditUpdateSubscriptionQuoteForItemsQuoteBodySchema +>; + +//Quote.createForChargeItemsAndCharges + +const CreateForChargeItemsAndChargesQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateForChargeItemsAndChargesQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateForChargeItemsAndChargesQuoteItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), +}); +const CreateForChargeItemsAndChargesQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateForChargeItemsAndChargesQuoteChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const CreateForChargeItemsAndChargesQuoteDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateForChargeItemsAndChargesQuoteBodySchema = z.looseObject({ + name: z.string().max(100).optional(), + customer_id: z.string().max(50), + po_number: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + currency_code: z.string().max(3).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + net_term_days: z.number().int().optional(), + billing_address: + CreateForChargeItemsAndChargesQuoteBillingAddressSchema.optional(), + shipping_address: + CreateForChargeItemsAndChargesQuoteShippingAddressSchema.optional(), + item_prices: CreateForChargeItemsAndChargesQuoteItemPricesSchema.optional(), + item_tiers: CreateForChargeItemsAndChargesQuoteItemTiersSchema.optional(), + charges: CreateForChargeItemsAndChargesQuoteChargesSchema.optional(), + discounts: CreateForChargeItemsAndChargesQuoteDiscountsSchema.optional(), + tax_providers_fields: + CreateForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema.optional(), +}); +export { CreateForChargeItemsAndChargesQuoteBodySchema }; +export type CreateForChargeItemsAndChargesQuoteBody = z.infer< + typeof CreateForChargeItemsAndChargesQuoteBodySchema +>; + +//Quote.editForChargeItemsAndCharges + +const EditForChargeItemsAndChargesQuoteBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditForChargeItemsAndChargesQuoteShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const EditForChargeItemsAndChargesQuoteItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), +}); +const EditForChargeItemsAndChargesQuoteItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const EditForChargeItemsAndChargesQuoteChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + service_period: z.array(z.number().int().optional()).optional(), +}); +const EditForChargeItemsAndChargesQuoteDiscountsSchema = z.object({ + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const EditForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const EditForChargeItemsAndChargesQuoteBodySchema = z.looseObject({ + po_number: z.string().max(100).optional(), + notes: z.string().max(10000).optional(), + expires_at: z.number().int().optional(), + currency_code: z.string().max(3).optional(), + coupon: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + net_term_days: z.number().int().optional(), + billing_address: + EditForChargeItemsAndChargesQuoteBillingAddressSchema.optional(), + shipping_address: + EditForChargeItemsAndChargesQuoteShippingAddressSchema.optional(), + item_prices: EditForChargeItemsAndChargesQuoteItemPricesSchema.optional(), + item_tiers: EditForChargeItemsAndChargesQuoteItemTiersSchema.optional(), + charges: EditForChargeItemsAndChargesQuoteChargesSchema.optional(), + discounts: EditForChargeItemsAndChargesQuoteDiscountsSchema.optional(), + tax_providers_fields: + EditForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema.optional(), +}); +export { EditForChargeItemsAndChargesQuoteBodySchema }; +export type EditForChargeItemsAndChargesQuoteBody = z.infer< + typeof EditForChargeItemsAndChargesQuoteBodySchema +>; + +//Quote.quoteLineGroupsForQuote + +const QuoteLineGroupsForQuoteQuoteBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { QuoteLineGroupsForQuoteQuoteBodySchema }; +export type QuoteLineGroupsForQuoteQuoteBody = z.infer< + typeof QuoteLineGroupsForQuoteQuoteBodySchema +>; + +//Quote.convert + +const ConvertQuoteSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + po_number: z.string().max(100).optional(), + auto_close_invoices: z.boolean().optional(), +}); +const ConvertQuoteBodySchema = z.looseObject({ + invoice_date: z.number().int().optional(), + invoice_immediately: z.boolean().optional(), + create_pending_invoices: z.boolean().optional(), + first_invoice_pending: z.boolean().default(false).optional(), + subscription: ConvertQuoteSubscriptionSchema.optional(), +}); +export { ConvertQuoteBodySchema }; +export type ConvertQuoteBody = z.infer; + +//Quote.updateStatus + +const UpdateStatusQuoteBodySchema = z.looseObject({ + status: z.enum([ + 'open', + 'accepted', + 'declined', + 'proposed', + 'voided', + 'closed', + ]), + comment: z.string().max(300).optional(), +}); +export { UpdateStatusQuoteBodySchema }; +export type UpdateStatusQuoteBody = z.infer; + +//Quote.extendExpiryDate + +const ExtendExpiryDateQuoteBodySchema = z.looseObject({ + valid_till: z.number().int(), +}); +export { ExtendExpiryDateQuoteBodySchema }; +export type ExtendExpiryDateQuoteBody = z.infer< + typeof ExtendExpiryDateQuoteBodySchema +>; + +//Quote.delete + +const DeleteQuoteBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { DeleteQuoteBodySchema }; +export type DeleteQuoteBody = z.infer; + +//Quote.pdf + +const PdfQuoteBodySchema = z.looseObject({ + consolidated_view: z.boolean().default(false).optional(), + disposition_type: z.enum(['attachment', 'inline']).optional(), +}); +export { PdfQuoteBodySchema }; +export type PdfQuoteBody = z.infer; + +//Quote.updateSignatureStatus + +const UpdateSignatureStatusQuoteCpqQuoteSignatureSchema = z.object({ + status: z + .enum(['draft', 'active', 'signed', 'expired', 'cancelled', 'declined']) + .optional(), +}); +const UpdateSignatureStatusQuoteBodySchema = z.looseObject({ + cpq_quote_signature: + UpdateSignatureStatusQuoteCpqQuoteSignatureSchema.optional(), +}); +export { UpdateSignatureStatusQuoteBodySchema }; +export type UpdateSignatureStatusQuoteBody = z.infer< + typeof UpdateSignatureStatusQuoteBodySchema +>; diff --git a/src/schema/ramp.schema.ts b/src/schema/ramp.schema.ts new file mode 100644 index 0000000..91a72e3 --- /dev/null +++ b/src/schema/ramp.schema.ts @@ -0,0 +1,231 @@ +// Generated Zod schemas: Ramp +// Actions: createForSubscription, update +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Ramp.createForSubscription + +const CreateForSubscriptionRampContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), + renewal_billing_cycles: z.number().int().optional(), +}); +const CreateForSubscriptionRampItemsToAddSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const CreateForSubscriptionRampItemsToUpdateSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const CreateForSubscriptionRampItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateForSubscriptionRampCouponsToAddSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const CreateForSubscriptionRampDiscountsToAddSchema = z.object({ + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const CreateForSubscriptionRampBodySchema = z.looseObject({ + effective_from: z.number().int(), + description: z.string().max(250).optional(), + coupons_to_remove: z.array(z.string().max(100).optional()).optional(), + discounts_to_remove: z.array(z.string().max(100).optional()).optional(), + items_to_remove: z.array(z.string().max(100).optional()).optional(), + contract_term: CreateForSubscriptionRampContractTermSchema.optional(), + items_to_add: CreateForSubscriptionRampItemsToAddSchema.optional(), + items_to_update: CreateForSubscriptionRampItemsToUpdateSchema.optional(), + item_tiers: CreateForSubscriptionRampItemTiersSchema.optional(), + coupons_to_add: CreateForSubscriptionRampCouponsToAddSchema.optional(), + discounts_to_add: CreateForSubscriptionRampDiscountsToAddSchema.optional(), +}); +export { CreateForSubscriptionRampBodySchema }; +export type CreateForSubscriptionRampBody = z.infer< + typeof CreateForSubscriptionRampBodySchema +>; + +//Ramp.update + +const UpdateRampContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), + renewal_billing_cycles: z.number().int().optional(), +}); +const UpdateRampItemsToAddSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const UpdateRampItemsToUpdateSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), +}); +const UpdateRampItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const UpdateRampCouponsToAddSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const UpdateRampDiscountsToAddSchema = z.object({ + apply_on: z.array( + z.enum(['invoice_amount', 'specific_item_price']).optional(), + ), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), +}); +const UpdateRampBodySchema = z.looseObject({ + effective_from: z.number().int(), + description: z.string().max(250).optional(), + coupons_to_remove: z.array(z.string().max(100).optional()).optional(), + discounts_to_remove: z.array(z.string().max(100).optional()).optional(), + items_to_remove: z.array(z.string().max(100).optional()).optional(), + contract_term: UpdateRampContractTermSchema.optional(), + items_to_add: UpdateRampItemsToAddSchema.optional(), + items_to_update: UpdateRampItemsToUpdateSchema.optional(), + item_tiers: UpdateRampItemTiersSchema.optional(), + coupons_to_add: UpdateRampCouponsToAddSchema.optional(), + discounts_to_add: UpdateRampDiscountsToAddSchema.optional(), +}); +export { UpdateRampBodySchema }; +export type UpdateRampBody = z.infer; diff --git a/src/schema/recorded_purchase.schema.ts b/src/schema/recorded_purchase.schema.ts new file mode 100644 index 0000000..62e6ce9 --- /dev/null +++ b/src/schema/recorded_purchase.schema.ts @@ -0,0 +1,36 @@ +// Generated Zod schemas: RecordedPurchase +// Actions: create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//RecordedPurchase.create + +const CreateRecordedPurchaseCustomerSchema = z.object({ + id: z.string().max(50), +}); +const CreateRecordedPurchaseAppleAppStoreSchema = z.object({ + transaction_id: z.string().max(100).optional(), + receipt: z.string().max(65000).optional(), + product_id: z.string().max(255).optional(), +}); +const CreateRecordedPurchaseGooglePlayStoreSchema = z.object({ + purchase_token: z.string().max(500).optional(), + product_id: z.string().max(255).optional(), + order_id: z.string().max(100).optional(), +}); +const CreateRecordedPurchaseOmnichannelSubscriptionSchema = z.object({ + id: z.string().max(50).optional(), +}); +const CreateRecordedPurchaseBodySchema = z.looseObject({ + app_id: z.string().max(100), + customer: CreateRecordedPurchaseCustomerSchema.optional(), + apple_app_store: CreateRecordedPurchaseAppleAppStoreSchema.optional(), + google_play_store: CreateRecordedPurchaseGooglePlayStoreSchema.optional(), + omnichannel_subscription: + CreateRecordedPurchaseOmnichannelSubscriptionSchema.optional(), +}); +export { CreateRecordedPurchaseBodySchema }; +export type CreateRecordedPurchaseBody = z.infer< + typeof CreateRecordedPurchaseBodySchema +>; diff --git a/src/schema/resource_migration.schema.ts b/src/schema/resource_migration.schema.ts new file mode 100644 index 0000000..b73062c --- /dev/null +++ b/src/schema/resource_migration.schema.ts @@ -0,0 +1,17 @@ +// Generated Zod schemas: ResourceMigration +// Actions: retrieveLatest +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//ResourceMigration.retrieveLatest + +const RetrieveLatestResourceMigrationBodySchema = z.looseObject({ + from_site: z.string().max(50).min(4), + entity_type: z.enum(['customer']), + entity_id: z.string().max(100), +}); +export { RetrieveLatestResourceMigrationBodySchema }; +export type RetrieveLatestResourceMigrationBody = z.infer< + typeof RetrieveLatestResourceMigrationBodySchema +>; diff --git a/src/validation/site_migration_detail/list.validation.ts b/src/schema/site_migration_detail.schema.ts similarity index 62% rename from src/validation/site_migration_detail/list.validation.ts rename to src/schema/site_migration_detail.schema.ts index 604b75c..f0b5987 100644 --- a/src/validation/site_migration_detail/list.validation.ts +++ b/src/schema/site_migration_detail.schema.ts @@ -1,23 +1,27 @@ -// Generated Zod validator: SiteMigrationDetail.list +// Generated Zod schemas: SiteMigrationDetail +// Actions: list // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; -const listSiteMigrationDetailEntityIdAtOtherSiteSchema = z.object({ + +//SiteMigrationDetail.list + +const ListSiteMigrationDetailEntityIdAtOtherSiteSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), }); -const listSiteMigrationDetailOtherSiteNameSchema = z.object({ +const ListSiteMigrationDetailOtherSiteNameSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), }); -const listSiteMigrationDetailEntityIdSchema = z.object({ +const ListSiteMigrationDetailEntityIdSchema = z.object({ is: z.string().min(1).optional(), is_not: z.string().min(1).optional(), starts_with: z.string().min(1).optional(), }); -const listSiteMigrationDetailEntityTypeSchema = z.object({ +const ListSiteMigrationDetailEntityTypeSchema = z.object({ is: z .enum([ 'customer', @@ -59,20 +63,23 @@ const listSiteMigrationDetailEntityTypeSchema = z.object({ ]) .optional(), }); -const listSiteMigrationDetailStatusSchema = z.object({ +const ListSiteMigrationDetailStatusSchema = z.object({ is: z.enum(['moved_in', 'moved_out', 'moving_out']).optional(), is_not: z.enum(['moved_in', 'moved_out', 'moving_out']).optional(), in: z.enum(['moved_in', 'moved_out', 'moving_out']).optional(), not_in: z.enum(['moved_in', 'moved_out', 'moving_out']).optional(), }); -const listSiteMigrationDetailBodySchema = z.looseObject({ +const ListSiteMigrationDetailBodySchema = z.looseObject({ limit: z.number().int().min(1).max(100).optional(), offset: z.string().max(1000).optional(), entity_id_at_other_site: - listSiteMigrationDetailEntityIdAtOtherSiteSchema.optional(), - other_site_name: listSiteMigrationDetailOtherSiteNameSchema.optional(), - entity_id: listSiteMigrationDetailEntityIdSchema.optional(), - entity_type: listSiteMigrationDetailEntityTypeSchema.optional(), - status: listSiteMigrationDetailStatusSchema.optional(), + ListSiteMigrationDetailEntityIdAtOtherSiteSchema.optional(), + other_site_name: ListSiteMigrationDetailOtherSiteNameSchema.optional(), + entity_id: ListSiteMigrationDetailEntityIdSchema.optional(), + entity_type: ListSiteMigrationDetailEntityTypeSchema.optional(), + status: ListSiteMigrationDetailStatusSchema.optional(), }); -export { listSiteMigrationDetailBodySchema }; +export { ListSiteMigrationDetailBodySchema }; +export type ListSiteMigrationDetailBody = z.infer< + typeof ListSiteMigrationDetailBodySchema +>; diff --git a/src/schema/subscription.schema.ts b/src/schema/subscription.schema.ts new file mode 100644 index 0000000..5af1f82 --- /dev/null +++ b/src/schema/subscription.schema.ts @@ -0,0 +1,3206 @@ +// Generated Zod schemas: Subscription +// Actions: create, createForCustomer, createWithItems, subscriptionsForCustomer, contractTermsForSubscription, listDiscounts, removeScheduledCancellation, removeCoupons, update, updateForItems, changeTermEnd, reactivate, addChargeAtTermEnd, chargeAddonAtTermEnd, chargeFutureRenewals, editAdvanceInvoiceSchedule, removeAdvanceInvoiceSchedule, regenerateInvoice, importSubscription, importForCustomer, importContractTerm, importUnbilledCharges, importForItems, overrideBillingProfile, pause, cancel, cancelForItems, resume, move +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Subscription.create + +const CreateSubscriptionMetaDataSchema = z.looseObject({}); +const CreateSubscriptionCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + net_term_days: z.number().int().optional(), + taxjar_exemption_category: z + .enum(['wholesale', 'government', 'other']) + .optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + allow_direct_debit: z.boolean().default(false).optional(), + consolidated_invoicing: z.boolean().optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + entity_identifier_standard: z.string().max(50).optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + registered_for_gst: z.boolean().optional(), + business_customer_without_vat_number: z.boolean().optional(), + exemption_details: z.array(z.string().optional()).optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), +}); +const CreateSubscriptionAdditionalInformationSchema = z.looseObject({}); +const CreateSubscriptionCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: + CreateSubscriptionAdditionalInformationSchema.optional(), +}); +const CreateSubscriptionBillingAddressSchema = z.looseObject({}); +const CreateSubscriptionBankAccountSchema = z.object({ + gateway_account_id: z.string().max(50).optional(), + iban: z.string().max(50).min(10).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + email: z.string().email().max(70).optional(), + phone: z.string().max(50).optional(), + bank_name: z.string().max(100).optional(), + account_number: z.string().max(17).min(4).optional(), + routing_number: z.string().max(9).min(3).optional(), + bank_code: z.string().max(20).optional(), + account_type: z + .enum(['checking', 'savings', 'business_checking', 'current']) + .optional(), + account_holder_type: z.enum(['individual', 'company']).optional(), + echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), + issuing_country: z.string().max(50).optional(), + swedish_identity_number: z.string().max(12).min(10).optional(), + billing_address: CreateSubscriptionBillingAddressSchema.optional(), +}); +const CreateSubscriptionPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + CreateSubscriptionAdditionalInformationSchema.optional(), +}); +const CreateSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + CreateSubscriptionAdditionalInformationSchema.optional(), +}); +const CreateSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const CreateSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateSubscriptionEntityIdentifiersSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + scheme: z.array(z.string().max(50).optional()).optional(), + value: z.array(z.string().max(50).optional()).optional(), + standard: z.array(z.string().max(50).optional()).optional(), +}); +const CreateSubscriptionTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const CreateSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const CreateSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const CreateSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + token_id: z.string().max(40).optional(), + affiliate_token: z.string().max(250).optional(), + created_from_ip: z.string().max(50).optional(), + invoice_notes: z.string().max(2000).optional(), + invoice_date: z.number().int().optional(), + meta_data: CreateSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + client_profile_id: z.string().max(50).optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + customer: CreateSubscriptionCustomerSchema.optional(), + card: CreateSubscriptionCardSchema.optional(), + bank_account: CreateSubscriptionBankAccountSchema.optional(), + payment_method: CreateSubscriptionPaymentMethodSchema.optional(), + payment_intent: CreateSubscriptionPaymentIntentSchema.optional(), + billing_address: CreateSubscriptionBillingAddressSchema.optional(), + shipping_address: CreateSubscriptionShippingAddressSchema.optional(), + statement_descriptor: CreateSubscriptionStatementDescriptorSchema.optional(), + contract_term: CreateSubscriptionContractTermSchema.optional(), + entity_identifiers: CreateSubscriptionEntityIdentifiersSchema.optional(), + tax_providers_fields: CreateSubscriptionTaxProvidersFieldsSchema.optional(), + addons: CreateSubscriptionAddonsSchema.optional(), + event_based_addons: CreateSubscriptionEventBasedAddonsSchema.optional(), + coupons: CreateSubscriptionCouponsSchema.optional(), +}); +export { CreateSubscriptionBodySchema }; +export type CreateSubscriptionBody = z.infer< + typeof CreateSubscriptionBodySchema +>; + +//Subscription.createForCustomer + +const CreateForCustomerSubscriptionMetaDataSchema = z.looseObject({}); +const CreateForCustomerSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateForCustomerSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const CreateForCustomerSubscriptionAdditionalInformationSchema = z.looseObject( + {}, +); +const CreateForCustomerSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + CreateForCustomerSubscriptionAdditionalInformationSchema.optional(), +}); +const CreateForCustomerSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateForCustomerSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), +}); +const CreateForCustomerSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), +}); +const CreateForCustomerSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const CreateForCustomerSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + payment_source_id: z.string().max(40).optional(), + override_relationship: z.boolean().optional(), + invoice_notes: z.string().max(2000).optional(), + invoice_date: z.number().int().optional(), + meta_data: CreateForCustomerSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + replace_primary_payment_source: z.boolean().default(true).optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + shipping_address: + CreateForCustomerSubscriptionShippingAddressSchema.optional(), + statement_descriptor: + CreateForCustomerSubscriptionStatementDescriptorSchema.optional(), + payment_intent: CreateForCustomerSubscriptionPaymentIntentSchema.optional(), + contract_term: CreateForCustomerSubscriptionContractTermSchema.optional(), + addons: CreateForCustomerSubscriptionAddonsSchema.optional(), + event_based_addons: + CreateForCustomerSubscriptionEventBasedAddonsSchema.optional(), + coupons: CreateForCustomerSubscriptionCouponsSchema.optional(), +}); +export { CreateForCustomerSubscriptionBodySchema }; +export type CreateForCustomerSubscriptionBody = z.infer< + typeof CreateForCustomerSubscriptionBodySchema +>; + +//Subscription.createWithItems + +const CreateWithItemsSubscriptionMetaDataSchema = z.looseObject({}); +const CreateWithItemsSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const CreateWithItemsSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const CreateWithItemsSubscriptionAdditionalInformationSchema = z.looseObject( + {}, +); +const CreateWithItemsSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + CreateWithItemsSubscriptionAdditionalInformationSchema.optional(), +}); +const CreateWithItemsSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + contract_start: z.number().int().optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const CreateWithItemsSubscriptionBillingOverrideSchema = z.object({ + max_excess_payment_usage: z.number().int().min(-1).optional(), + max_refundable_credits_usage: z.number().int().min(-1).optional(), +}); +const CreateWithItemsSubscriptionSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + usage_accumulation_reset_frequency: z + .array(z.enum(['never', 'subscription_billing_frequency']).optional()) + .optional(), +}); +const CreateWithItemsSubscriptionDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateWithItemsSubscriptionItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateWithItemsSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const CreateWithItemsSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + business_entity_id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + net_term_days: z.number().int().optional(), + start_date: z.number().int().optional(), + coupon: z.string().max(100).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + terms_to_charge: z.number().int().min(1).optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + payment_source_id: z.string().max(40).optional(), + override_relationship: z.boolean().optional(), + invoice_notes: z.string().max(2000).optional(), + invoice_date: z.number().int().optional(), + meta_data: CreateWithItemsSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + replace_primary_payment_source: z.boolean().default(true).optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + create_pending_invoices: z.boolean().optional(), + auto_close_invoices: z.boolean().optional(), + first_invoice_pending: z.boolean().default(false).optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + shipping_address: CreateWithItemsSubscriptionShippingAddressSchema.optional(), + statement_descriptor: + CreateWithItemsSubscriptionStatementDescriptorSchema.optional(), + payment_intent: CreateWithItemsSubscriptionPaymentIntentSchema.optional(), + contract_term: CreateWithItemsSubscriptionContractTermSchema.optional(), + billing_override: CreateWithItemsSubscriptionBillingOverrideSchema.optional(), + subscription_items: + CreateWithItemsSubscriptionSubscriptionItemsSchema.optional(), + discounts: CreateWithItemsSubscriptionDiscountsSchema.optional(), + item_tiers: CreateWithItemsSubscriptionItemTiersSchema.optional(), + coupons: CreateWithItemsSubscriptionCouponsSchema.optional(), +}); +export { CreateWithItemsSubscriptionBodySchema }; +export type CreateWithItemsSubscriptionBody = z.infer< + typeof CreateWithItemsSubscriptionBodySchema +>; + +//Subscription.subscriptionsForCustomer + +const SubscriptionsForCustomerSubscriptionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { SubscriptionsForCustomerSubscriptionBodySchema }; +export type SubscriptionsForCustomerSubscriptionBody = z.infer< + typeof SubscriptionsForCustomerSubscriptionBodySchema +>; + +//Subscription.contractTermsForSubscription + +const ContractTermsForSubscriptionSubscriptionSortBySchema = z.looseObject({ + asc: z.enum(['created_at']).optional(), + desc: z.enum(['created_at']).optional(), +}); +const ContractTermsForSubscriptionSubscriptionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + sort_by: ContractTermsForSubscriptionSubscriptionSortBySchema.optional(), +}); +export { ContractTermsForSubscriptionSubscriptionBodySchema }; +export type ContractTermsForSubscriptionSubscriptionBody = z.infer< + typeof ContractTermsForSubscriptionSubscriptionBodySchema +>; + +//Subscription.listDiscounts + +const ListDiscountsSubscriptionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { ListDiscountsSubscriptionBodySchema }; +export type ListDiscountsSubscriptionBody = z.infer< + typeof ListDiscountsSubscriptionBodySchema +>; + +//Subscription.removeScheduledCancellation + +const RemoveScheduledCancellationSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const RemoveScheduledCancellationSubscriptionBodySchema = z.looseObject({ + billing_cycles: z.number().int().min(0).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + contract_term: + RemoveScheduledCancellationSubscriptionContractTermSchema.optional(), +}); +export { RemoveScheduledCancellationSubscriptionBodySchema }; +export type RemoveScheduledCancellationSubscriptionBody = z.infer< + typeof RemoveScheduledCancellationSubscriptionBodySchema +>; + +//Subscription.removeCoupons + +const RemoveCouponsSubscriptionBodySchema = z.looseObject({ + coupon_ids: z.array(z.string().max(100).optional()).optional(), +}); +export { RemoveCouponsSubscriptionBodySchema }; +export type RemoveCouponsSubscriptionBody = z.infer< + typeof RemoveCouponsSubscriptionBodySchema +>; + +//Subscription.update + +const UpdateSubscriptionMetaDataSchema = z.looseObject({}); +const UpdateSubscriptionAdditionalInformationSchema = z.looseObject({}); +const UpdateSubscriptionCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: + UpdateSubscriptionAdditionalInformationSchema.optional(), +}); +const UpdateSubscriptionPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + UpdateSubscriptionAdditionalInformationSchema.optional(), +}); +const UpdateSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + UpdateSubscriptionAdditionalInformationSchema.optional(), +}); +const UpdateSubscriptionBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const UpdateSubscriptionCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + entity_identifier_standard: z.string().max(50).optional(), + business_customer_without_vat_number: z.boolean().optional(), + registered_for_gst: z.boolean().optional(), +}); +const UpdateSubscriptionContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const UpdateSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + proration_type: z + .array(z.enum(['full_term', 'partial_term', 'none']).optional()) + .optional(), +}); +const UpdateSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), +}); +const UpdateSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const UpdateSubscriptionBodySchema = z.looseObject({ + plan_id: z.string().max(100).optional(), + plan_quantity: z.number().int().min(1).optional(), + plan_unit_price: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + replace_addon_list: z.boolean().default(false).optional(), + mandatory_addons_to_remove: z + .array(z.string().max(100).optional()) + .optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + invoice_date: z.number().int().optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + coupon: z.string().max(100).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + prorate: z.boolean().optional(), + end_of_term: z.boolean().default(false).optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + token_id: z.string().max(40).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: UpdateSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + override_relationship: z.boolean().optional(), + changes_scheduled_at: z.number().int().optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + card: UpdateSubscriptionCardSchema.optional(), + payment_method: UpdateSubscriptionPaymentMethodSchema.optional(), + payment_intent: UpdateSubscriptionPaymentIntentSchema.optional(), + billing_address: UpdateSubscriptionBillingAddressSchema.optional(), + shipping_address: UpdateSubscriptionShippingAddressSchema.optional(), + statement_descriptor: UpdateSubscriptionStatementDescriptorSchema.optional(), + customer: UpdateSubscriptionCustomerSchema.optional(), + contract_term: UpdateSubscriptionContractTermSchema.optional(), + addons: UpdateSubscriptionAddonsSchema.optional(), + event_based_addons: UpdateSubscriptionEventBasedAddonsSchema.optional(), + coupons: UpdateSubscriptionCouponsSchema.optional(), +}); +export { UpdateSubscriptionBodySchema }; +export type UpdateSubscriptionBody = z.infer< + typeof UpdateSubscriptionBodySchema +>; + +//Subscription.updateForItems + +const UpdateForItemsSubscriptionMetaDataSchema = z.looseObject({}); +const UpdateForItemsSubscriptionAdditionalInformationSchema = z.looseObject({}); +const UpdateForItemsSubscriptionCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + ip_address: z.string().max(50).optional(), + additional_information: + UpdateForItemsSubscriptionAdditionalInformationSchema.optional(), +}); +const UpdateForItemsSubscriptionPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + tmp_token: z.string().max(65000).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + UpdateForItemsSubscriptionAdditionalInformationSchema.optional(), +}); +const UpdateForItemsSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + UpdateForItemsSubscriptionAdditionalInformationSchema.optional(), +}); +const UpdateForItemsSubscriptionBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateForItemsSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const UpdateForItemsSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const UpdateForItemsSubscriptionCustomerSchema = z.object({ + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), + entity_identifier_scheme: z.string().max(50).optional(), + is_einvoice_enabled: z.boolean().optional(), + einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), + entity_identifier_standard: z.string().max(50).optional(), + business_customer_without_vat_number: z.boolean().optional(), + registered_for_gst: z.boolean().optional(), +}); +const UpdateForItemsSubscriptionContractTermSchema = z.object({ + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), + contract_start: z.number().int().optional(), +}); +const UpdateForItemsSubscriptionBillingOverrideSchema = z.object({ + max_excess_payment_usage: z.number().int().min(-1).optional(), + max_refundable_credits_usage: z.number().int().min(-1).optional(), +}); +const UpdateForItemsSubscriptionSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + charge_on_option: z + .array(z.enum(['immediately', 'on_event']).optional()) + .optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), + proration_type: z + .array(z.enum(['full_term', 'partial_term', 'none']).optional()) + .optional(), + usage_accumulation_reset_frequency: z + .array(z.enum(['never', 'subscription_billing_frequency']).optional()) + .optional(), +}); +const UpdateForItemsSubscriptionDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + operation_type: z.array(z.enum(['add', 'remove']).optional()), + id: z.array(z.string().max(50).optional()).optional(), +}); +const UpdateForItemsSubscriptionItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const UpdateForItemsSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const UpdateForItemsSubscriptionBodySchema = z.looseObject({ + mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), + replace_items_list: z.boolean().default(false).optional(), + setup_fee: z.number().int().min(0).optional(), + net_term_days: z.number().int().optional(), + invoice_date: z.number().int().optional(), + start_date: z.number().int().optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + coupon: z.string().max(100).optional(), + terms_to_charge: z.number().int().min(1).optional(), + reactivate_from: z.number().int().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + auto_collection: z.enum(['on', 'off']).optional(), + offline_payment_method: z + .enum([ + 'no_preference', + 'cash', + 'check', + 'bank_transfer', + 'ach_credit', + 'sepa_credit', + 'boleto', + 'us_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'uk_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + 'custom', + ]) + .optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + replace_coupon_list: z.boolean().default(false).optional(), + prorate: z.boolean().optional(), + end_of_term: z.boolean().default(false).optional(), + force_term_reset: z.boolean().default(false).optional(), + reactivate: z.boolean().optional(), + token_id: z.string().max(40).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: UpdateForItemsSubscriptionMetaDataSchema.optional(), + invoice_immediately: z.boolean().optional(), + override_relationship: z.boolean().optional(), + changes_scheduled_at: z.number().int().optional(), + change_option: z + .enum(['immediately', 'end_of_term', 'specific_date']) + .optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + free_period: z.number().int().min(1).optional(), + free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), + create_pending_invoices: z.boolean().optional(), + auto_close_invoices: z.boolean().optional(), + trial_end_action: z + .enum([ + 'site_default', + 'plan_default', + 'activate_subscription', + 'cancel_subscription', + ]) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + invoice_usages: z.boolean().default(false).optional(), + card: UpdateForItemsSubscriptionCardSchema.optional(), + payment_method: UpdateForItemsSubscriptionPaymentMethodSchema.optional(), + payment_intent: UpdateForItemsSubscriptionPaymentIntentSchema.optional(), + billing_address: UpdateForItemsSubscriptionBillingAddressSchema.optional(), + shipping_address: UpdateForItemsSubscriptionShippingAddressSchema.optional(), + statement_descriptor: + UpdateForItemsSubscriptionStatementDescriptorSchema.optional(), + customer: UpdateForItemsSubscriptionCustomerSchema.optional(), + contract_term: UpdateForItemsSubscriptionContractTermSchema.optional(), + billing_override: UpdateForItemsSubscriptionBillingOverrideSchema.optional(), + subscription_items: + UpdateForItemsSubscriptionSubscriptionItemsSchema.optional(), + discounts: UpdateForItemsSubscriptionDiscountsSchema.optional(), + item_tiers: UpdateForItemsSubscriptionItemTiersSchema.optional(), + coupons: UpdateForItemsSubscriptionCouponsSchema.optional(), +}); +export { UpdateForItemsSubscriptionBodySchema }; +export type UpdateForItemsSubscriptionBody = z.infer< + typeof UpdateForItemsSubscriptionBodySchema +>; + +//Subscription.changeTermEnd + +const ChangeTermEndSubscriptionBodySchema = z.looseObject({ + term_ends_at: z.number().int(), + prorate: z.boolean().optional(), + invoice_immediately: z.boolean().optional(), +}); +export { ChangeTermEndSubscriptionBodySchema }; +export type ChangeTermEndSubscriptionBody = z.infer< + typeof ChangeTermEndSubscriptionBodySchema +>; + +//Subscription.reactivate + +const ReactivateSubscriptionContractTermSchema = z.object({ + action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const ReactivateSubscriptionStatementDescriptorSchema = z.object({ + descriptor: z.string().max(65000).optional(), +}); +const ReactivateSubscriptionAdditionalInformationSchema = z.looseObject({}); +const ReactivateSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + ReactivateSubscriptionAdditionalInformationSchema.optional(), +}); +const ReactivateSubscriptionBodySchema = z.looseObject({ + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + trial_period_days: z.number().int().min(1).max(365).optional(), + reactivate_from: z.number().int().optional(), + invoice_immediately: z.boolean().optional(), + billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), + terms_to_charge: z.number().int().min(1).optional(), + invoice_date: z.number().int().optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + contract_term: ReactivateSubscriptionContractTermSchema.optional(), + statement_descriptor: + ReactivateSubscriptionStatementDescriptorSchema.optional(), + payment_intent: ReactivateSubscriptionPaymentIntentSchema.optional(), +}); +export { ReactivateSubscriptionBodySchema }; +export type ReactivateSubscriptionBody = z.infer< + typeof ReactivateSubscriptionBodySchema +>; + +//Subscription.addChargeAtTermEnd + +const AddChargeAtTermEndSubscriptionBodySchema = z.looseObject({ + amount: z.number().int().min(1).optional(), + description: z.string().max(250), + amount_in_decimal: z.string().max(39).optional(), + avalara_sale_type: z + .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) + .optional(), + avalara_transaction_type: z.number().int().optional(), + avalara_service_type: z.number().int().optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +export { AddChargeAtTermEndSubscriptionBodySchema }; +export type AddChargeAtTermEndSubscriptionBody = z.infer< + typeof AddChargeAtTermEndSubscriptionBodySchema +>; + +//Subscription.chargeAddonAtTermEnd + +const ChargeAddonAtTermEndSubscriptionBodySchema = z.looseObject({ + addon_id: z.string().max(100), + addon_quantity: z.number().int().min(1).optional(), + addon_unit_price: z.number().int().min(0).optional(), + addon_quantity_in_decimal: z.string().max(33).optional(), + addon_unit_price_in_decimal: z.string().max(39).optional(), + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), +}); +export { ChargeAddonAtTermEndSubscriptionBodySchema }; +export type ChargeAddonAtTermEndSubscriptionBody = z.infer< + typeof ChargeAddonAtTermEndSubscriptionBodySchema +>; + +//Subscription.chargeFutureRenewals + +const ChargeFutureRenewalsSubscriptionFixedIntervalScheduleSchema = z.object({ + number_of_occurrences: z.number().int().min(1).optional(), + days_before_renewal: z.number().int().min(1).optional(), + end_schedule_on: z + .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) + .optional(), + end_date: z.number().int().optional(), +}); +const ChargeFutureRenewalsSubscriptionSpecificDatesScheduleSchema = z.object({ + terms_to_charge: z.array(z.number().int().optional()).optional(), + date: z.array(z.number().int().optional()).optional(), +}); +const ChargeFutureRenewalsSubscriptionBodySchema = z.looseObject({ + terms_to_charge: z.number().int().min(1).optional(), + invoice_immediately: z.boolean().optional(), + schedule_type: z + .enum(['immediate', 'specific_dates', 'fixed_intervals']) + .optional(), + fixed_interval_schedule: + ChargeFutureRenewalsSubscriptionFixedIntervalScheduleSchema.optional(), + specific_dates_schedule: + ChargeFutureRenewalsSubscriptionSpecificDatesScheduleSchema.optional(), +}); +export { ChargeFutureRenewalsSubscriptionBodySchema }; +export type ChargeFutureRenewalsSubscriptionBody = z.infer< + typeof ChargeFutureRenewalsSubscriptionBodySchema +>; + +//Subscription.editAdvanceInvoiceSchedule + +const EditAdvanceInvoiceScheduleSubscriptionFixedIntervalScheduleSchema = + z.object({ + number_of_occurrences: z.number().int().min(1).optional(), + days_before_renewal: z.number().int().min(1).optional(), + end_schedule_on: z + .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) + .optional(), + end_date: z.number().int().optional(), + }); +const EditAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema = + z.object({ + id: z.array(z.string().max(50).optional()).optional(), + terms_to_charge: z.array(z.number().int().optional()).optional(), + date: z.array(z.number().int().optional()).optional(), + }); +const EditAdvanceInvoiceScheduleSubscriptionBodySchema = z.looseObject({ + terms_to_charge: z.number().int().min(1).optional(), + schedule_type: z.enum(['specific_dates', 'fixed_intervals']).optional(), + fixed_interval_schedule: + EditAdvanceInvoiceScheduleSubscriptionFixedIntervalScheduleSchema.optional(), + specific_dates_schedule: + EditAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema.optional(), +}); +export { EditAdvanceInvoiceScheduleSubscriptionBodySchema }; +export type EditAdvanceInvoiceScheduleSubscriptionBody = z.infer< + typeof EditAdvanceInvoiceScheduleSubscriptionBodySchema +>; + +//Subscription.removeAdvanceInvoiceSchedule + +const RemoveAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema = + z.object({ + id: z.array(z.string().max(50).optional()).optional(), + }); +const RemoveAdvanceInvoiceScheduleSubscriptionBodySchema = z.looseObject({ + specific_dates_schedule: + RemoveAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema.optional(), +}); +export { RemoveAdvanceInvoiceScheduleSubscriptionBodySchema }; +export type RemoveAdvanceInvoiceScheduleSubscriptionBody = z.infer< + typeof RemoveAdvanceInvoiceScheduleSubscriptionBodySchema +>; + +//Subscription.regenerateInvoice + +const RegenerateInvoiceSubscriptionBodySchema = z.looseObject({ + date_from: z.number().int().optional(), + date_to: z.number().int().optional(), + prorate: z.boolean().optional(), + invoice_immediately: z.boolean().optional(), +}); +export { RegenerateInvoiceSubscriptionBodySchema }; +export type RegenerateInvoiceSubscriptionBody = z.infer< + typeof RegenerateInvoiceSubscriptionBodySchema +>; + +//Subscription.importSubscription + +const ImportSubscriptionSubscriptionMetaDataSchema = z.looseObject({}); +const ImportSubscriptionSubscriptionCustomerSchema = z.looseObject({ + id: z.string().max(50).optional(), + email: z.string().email().max(70).optional(), + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + locale: z.string().max(50).optional(), + taxability: z.enum(['taxable', 'exempt']).optional(), + entity_code: z + .enum([ + 'a', + 'b', + 'c', + 'd', + 'e', + 'f', + 'g', + 'h', + 'i', + 'j', + 'k', + 'l', + 'm', + 'n', + 'p', + 'q', + 'r', + 'med1', + 'med2', + ]) + .optional(), + exempt_number: z.string().max(100).optional(), + net_term_days: z.number().int().optional(), + taxjar_exemption_category: z + .enum(['wholesale', 'government', 'other']) + .optional(), + customer_type: z + .enum(['residential', 'business', 'senior_citizen', 'industrial']) + .optional(), + auto_collection: z.enum(['on', 'off']).optional(), + allow_direct_debit: z.boolean().default(false).optional(), + vat_number: z.string().max(20).optional(), + vat_number_prefix: z.string().max(10).optional(), +}); +const ImportSubscriptionSubscriptionContractTermSchema = z.object({ + id: z.string().max(50).optional(), + created_at: z.number().int().optional(), + contract_start: z.number().int().optional(), + billing_cycle: z.number().int().min(0).optional(), + total_amount_raised: z.number().int().min(0).optional(), + total_amount_raised_before_tax: z.number().int().min(0).optional(), + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const ImportSubscriptionSubscriptionAdditionalInformationSchema = z.looseObject( + {}, +); +const ImportSubscriptionSubscriptionCardSchema = z.object({ + gateway: z + .enum([ + 'chargebee', + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + tmp_token: z.string().max(300).optional(), + first_name: z.string().max(50).optional(), + last_name: z.string().max(50).optional(), + number: z.string().max(1500).optional(), + expiry_month: z.number().int().min(1).max(12).optional(), + expiry_year: z.number().int().optional(), + cvv: z.string().max(520).optional(), + preferred_scheme: z + .enum(['cartes_bancaires', 'mastercard', 'visa']) + .optional(), + billing_addr1: z.string().max(150).optional(), + billing_addr2: z.string().max(150).optional(), + billing_city: z.string().max(50).optional(), + billing_state_code: z.string().max(50).optional(), + billing_state: z.string().max(50).optional(), + billing_zip: z.string().max(20).optional(), + billing_country: z.string().max(50).optional(), + additional_information: + ImportSubscriptionSubscriptionAdditionalInformationSchema.optional(), +}); +const ImportSubscriptionSubscriptionPaymentMethodSchema = z.object({ + type: z + .enum([ + 'card', + 'paypal_express_checkout', + 'amazon_payments', + 'direct_debit', + 'generic', + 'alipay', + 'unionpay', + 'apple_pay', + 'wechat_pay', + 'ideal', + 'google_pay', + 'sofort', + 'bancontact', + 'giropay', + 'dotpay', + 'upi', + 'netbanking_emandates', + 'venmo', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'automated_bank_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + gateway: z + .enum([ + 'chargebee_payments', + 'adyen', + 'stripe', + 'wepay', + 'braintree', + 'authorize_net', + 'paypal_pro', + 'pin', + 'eway', + 'eway_rapid', + 'worldpay', + 'balanced_payments', + 'beanstream', + 'bluepay', + 'elavon', + 'first_data_global', + 'hdfc', + 'migs', + 'nmi', + 'ogone', + 'paymill', + 'paypal_payflow_pro', + 'sage_pay', + 'tco', + 'wirecard', + 'amazon_payments', + 'paypal_express_checkout', + 'gocardless', + 'orbital', + 'moneris_us', + 'moneris', + 'bluesnap', + 'cybersource', + 'vantiv', + 'checkout_com', + 'paypal', + 'ingenico_direct', + 'exact', + 'mollie', + 'quickbooks', + 'razorpay', + 'global_payments', + 'bank_of_america', + 'ecentric', + 'metrics_global', + 'windcave', + 'pay_com', + 'ebanx', + 'dlocal', + 'nuvei', + 'solidgate', + 'paystack', + 'jp_morgan', + 'deutsche_bank', + 'ezidebit', + 'twikey', + 'tempus', + 'moyasar', + 'payway', + ]) + .optional(), + gateway_account_id: z.string().max(50).optional(), + reference_id: z.string().max(200).optional(), + issuing_country: z.string().max(50).optional(), + additional_information: + ImportSubscriptionSubscriptionAdditionalInformationSchema.optional(), +}); +const ImportSubscriptionSubscriptionBillingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const ImportSubscriptionSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const ImportSubscriptionSubscriptionTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + reference_number: z.string().max(100).optional(), + date: z.number().int().optional(), +}); +const ImportSubscriptionSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), +}); +const ImportSubscriptionSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), +}); +const ImportSubscriptionSubscriptionChargedEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + last_charged_at: z.array(z.number().int().optional()).optional(), +}); +const ImportSubscriptionSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const ImportSubscriptionSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + client_profile_id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + auto_collection: z.enum(['on', 'off']).optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + status: z.enum([ + 'future', + 'in_trial', + 'active', + 'non_renewing', + 'paused', + 'cancelled', + 'transferred', + ]), + current_term_end: z.number().int().optional(), + current_term_start: z.number().int().optional(), + trial_start: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + started_at: z.number().int().optional(), + activated_at: z.number().int().optional(), + pause_date: z.number().int().optional(), + resume_date: z.number().int().optional(), + create_current_term_invoice: z.boolean().default(false).optional(), + affiliate_token: z.string().max(250).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: ImportSubscriptionSubscriptionMetaDataSchema.optional(), + customer: ImportSubscriptionSubscriptionCustomerSchema.optional(), + contract_term: ImportSubscriptionSubscriptionContractTermSchema.optional(), + card: ImportSubscriptionSubscriptionCardSchema.optional(), + payment_method: ImportSubscriptionSubscriptionPaymentMethodSchema.optional(), + billing_address: + ImportSubscriptionSubscriptionBillingAddressSchema.optional(), + shipping_address: + ImportSubscriptionSubscriptionShippingAddressSchema.optional(), + transaction: ImportSubscriptionSubscriptionTransactionSchema.optional(), + addons: ImportSubscriptionSubscriptionAddonsSchema.optional(), + event_based_addons: + ImportSubscriptionSubscriptionEventBasedAddonsSchema.optional(), + charged_event_based_addons: + ImportSubscriptionSubscriptionChargedEventBasedAddonsSchema.optional(), + coupons: ImportSubscriptionSubscriptionCouponsSchema.optional(), +}); +export { ImportSubscriptionSubscriptionBodySchema }; +export type ImportSubscriptionSubscriptionBody = z.infer< + typeof ImportSubscriptionSubscriptionBodySchema +>; + +//Subscription.importForCustomer + +const ImportForCustomerSubscriptionMetaDataSchema = z.looseObject({}); +const ImportForCustomerSubscriptionContractTermSchema = z.object({ + id: z.string().max(50).optional(), + created_at: z.number().int().optional(), + contract_start: z.number().int().optional(), + billing_cycle: z.number().int().min(0).optional(), + total_amount_raised: z.number().int().min(0).optional(), + total_amount_raised_before_tax: z.number().int().min(0).optional(), + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const ImportForCustomerSubscriptionTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + reference_number: z.string().max(100).optional(), + date: z.number().int().optional(), +}); +const ImportForCustomerSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const ImportForCustomerSubscriptionAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), +}); +const ImportForCustomerSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), + on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().default(true).optional()).optional(), +}); +const ImportForCustomerSubscriptionChargedEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + last_charged_at: z.array(z.number().int().optional()).optional(), +}); +const ImportForCustomerSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const ImportForCustomerSubscriptionBodySchema = z.looseObject({ + id: z.string().max(50).optional(), + plan_id: z.string().max(100), + plan_quantity: z.number().int().min(1).optional(), + plan_quantity_in_decimal: z.string().max(33).optional(), + plan_unit_price: z.number().int().min(0).optional(), + plan_unit_price_in_decimal: z.string().max(39).optional(), + setup_fee: z.number().int().min(0).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + start_date: z.number().int().optional(), + auto_collection: z.enum(['on', 'off']).optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + payment_source_id: z.string().max(40).optional(), + status: z.enum([ + 'future', + 'in_trial', + 'active', + 'non_renewing', + 'paused', + 'cancelled', + 'transferred', + ]), + current_term_end: z.number().int().optional(), + current_term_start: z.number().int().optional(), + trial_start: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + started_at: z.number().int().optional(), + activated_at: z.number().int().optional(), + pause_date: z.number().int().optional(), + resume_date: z.number().int().optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + create_current_term_invoice: z.boolean().default(false).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: ImportForCustomerSubscriptionMetaDataSchema.optional(), + contract_term: ImportForCustomerSubscriptionContractTermSchema.optional(), + transaction: ImportForCustomerSubscriptionTransactionSchema.optional(), + shipping_address: + ImportForCustomerSubscriptionShippingAddressSchema.optional(), + addons: ImportForCustomerSubscriptionAddonsSchema.optional(), + event_based_addons: + ImportForCustomerSubscriptionEventBasedAddonsSchema.optional(), + charged_event_based_addons: + ImportForCustomerSubscriptionChargedEventBasedAddonsSchema.optional(), + coupons: ImportForCustomerSubscriptionCouponsSchema.optional(), +}); +export { ImportForCustomerSubscriptionBodySchema }; +export type ImportForCustomerSubscriptionBody = z.infer< + typeof ImportForCustomerSubscriptionBodySchema +>; + +//Subscription.importContractTerm + +const ImportContractTermSubscriptionContractTermSchema = z.object({ + id: z.string().max(50).optional(), + created_at: z.number().int().optional(), + contract_start: z.number().int().optional(), + contract_end: z.number().int().optional(), + status: z.enum(['active', 'completed', 'cancelled', 'terminated']).optional(), + total_amount_raised: z.number().int().min(0).optional(), + total_amount_raised_before_tax: z.number().int().min(0).optional(), + total_contract_value: z.number().int().min(0).optional(), + total_contract_value_before_tax: z.number().int().min(0).optional(), + billing_cycle: z.number().int().min(0).optional(), + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const ImportContractTermSubscriptionBodySchema = z.looseObject({ + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + contract_term: ImportContractTermSubscriptionContractTermSchema.optional(), +}); +export { ImportContractTermSubscriptionBodySchema }; +export type ImportContractTermSubscriptionBody = z.infer< + typeof ImportContractTermSubscriptionBodySchema +>; + +//Subscription.importUnbilledCharges + +const ImportUnbilledChargesSubscriptionUnbilledChargesSchema = z.object({ + id: z.array(z.string().max(40).optional()).optional(), + date_from: z.array(z.number().int().optional()), + date_to: z.array(z.number().int().optional()), + entity_type: z.array( + z + .enum([ + 'adhoc', + 'plan_item_price', + 'addon_item_price', + 'charge_item_price', + 'plan_setup', + 'plan', + 'addon', + ]) + .optional(), + ), + entity_id: z.array(z.string().max(100).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + quantity: z.array(z.number().int().min(0).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + discount_amount: z.array(z.number().int().min(0).optional()).optional(), + use_for_proration: z.array(z.boolean().default(false).optional()).optional(), + is_advance_charge: z.array(z.boolean().default(false).optional()).optional(), +}); +const ImportUnbilledChargesSubscriptionDiscountsSchema = z.object({ + unbilled_charge_id: z.array(z.string().max(40).optional()).optional(), + entity_type: z + .array( + z + .enum([ + 'item_level_coupon', + 'document_level_coupon', + 'item_level_discount', + 'document_level_discount', + ]) + .optional(), + ) + .optional(), + entity_id: z.array(z.string().max(100).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()), +}); +const ImportUnbilledChargesSubscriptionTiersSchema = z.object({ + unbilled_charge_id: z.array(z.string().max(40).optional()), + starting_unit: z.array(z.number().int().min(0).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + quantity_used: z.array(z.number().int().min(0).optional()).optional(), + unit_amount: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), +}); +const ImportUnbilledChargesSubscriptionBodySchema = z.looseObject({ + unbilled_charges: + ImportUnbilledChargesSubscriptionUnbilledChargesSchema.optional(), + discounts: ImportUnbilledChargesSubscriptionDiscountsSchema.optional(), + tiers: ImportUnbilledChargesSubscriptionTiersSchema.optional(), +}); +export { ImportUnbilledChargesSubscriptionBodySchema }; +export type ImportUnbilledChargesSubscriptionBody = z.infer< + typeof ImportUnbilledChargesSubscriptionBodySchema +>; + +//Subscription.importForItems + +const ImportForItemsSubscriptionMetaDataSchema = z.looseObject({}); +const ImportForItemsSubscriptionContractTermSchema = z.object({ + id: z.string().max(50).optional(), + created_at: z.number().int().optional(), + contract_start: z.number().int().optional(), + billing_cycle: z.number().int().min(0).optional(), + total_amount_raised: z.number().int().min(0).optional(), + total_amount_raised_before_tax: z.number().int().min(0).optional(), + action_at_term_end: z + .enum(['renew', 'evergreen', 'cancel', 'renew_once']) + .optional(), + cancellation_cutoff_period: z.number().int().optional(), +}); +const ImportForItemsSubscriptionTransactionSchema = z.object({ + amount: z.number().int().min(0).optional(), + payment_method: z + .enum([ + 'cash', + 'check', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]) + .optional(), + reference_number: z.string().max(100).optional(), + date: z.number().int().optional(), +}); +const ImportForItemsSubscriptionShippingAddressSchema = z.object({ + first_name: z.string().max(150).optional(), + last_name: z.string().max(150).optional(), + email: z.string().email().max(70).optional(), + company: z.string().max(250).optional(), + phone: z.string().max(50).optional(), + line1: z.string().max(150).optional(), + line2: z.string().max(150).optional(), + line3: z.string().max(150).optional(), + city: z.string().max(50).optional(), + state_code: z.string().max(50).optional(), + state: z.string().max(50).optional(), + zip: z.string().max(20).optional(), + country: z.string().max(50).optional(), + validation_status: z + .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) + .optional(), +}); +const ImportForItemsSubscriptionSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + billing_cycles: z.array(z.number().int().min(0).optional()).optional(), + trial_end: z.array(z.number().int().optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), + charge_on_event: z + .array( + z + .enum([ + 'subscription_creation', + 'subscription_trial_start', + 'plan_activation', + 'subscription_activation', + 'contract_termination', + ]) + .optional(), + ) + .optional(), + charge_once: z.array(z.boolean().optional()).optional(), + item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), +}); +const ImportForItemsSubscriptionDiscountsSchema = z.object({ + apply_on: z + .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) + .optional(), + duration_type: z.array( + z.enum(['one_time', 'forever', 'limited_period']).optional(), + ), + percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), + amount: z.array(z.number().int().min(0).optional()).optional(), + period: z.array(z.number().int().min(1).optional()).optional(), + period_unit: z + .array(z.enum(['day', 'week', 'month', 'year']).optional()) + .optional(), + included_in_mrr: z.array(z.boolean().optional()).optional(), + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), +}); +const ImportForItemsSubscriptionChargedItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + last_charged_at: z.array(z.number().int().optional()).optional(), +}); +const ImportForItemsSubscriptionItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const ImportForItemsSubscriptionCouponsSchema = z.object({ + coupon_id: z.array(z.string().max(100).optional()).optional(), + apply_till: z.array(z.number().int().optional()).optional(), +}); +const ImportForItemsSubscriptionBodySchema = z.looseObject({ + exhausted_coupon_ids: z.array(z.string().max(100).optional()).optional(), + id: z.string().max(50).optional(), + trial_end: z.number().int().optional(), + billing_cycles: z.number().int().min(0).optional(), + setup_fee: z.number().int().min(0).optional(), + net_term_days: z.number().int().optional(), + start_date: z.number().int().optional(), + auto_collection: z.enum(['on', 'off']).optional(), + po_number: z.string().max(100).optional(), + coupon_ids: z.array(z.string().max(100).optional()).optional(), + payment_source_id: z.string().max(40).optional(), + status: z.enum([ + 'future', + 'in_trial', + 'active', + 'non_renewing', + 'paused', + 'cancelled', + 'transferred', + ]), + current_term_end: z.number().int().optional(), + current_term_start: z.number().int().optional(), + trial_start: z.number().int().optional(), + cancelled_at: z.number().int().optional(), + started_at: z.number().int().optional(), + activated_at: z.number().int().optional(), + pause_date: z.number().int().optional(), + resume_date: z.number().int().optional(), + contract_term_billing_cycle_on_renewal: z + .number() + .int() + .min(1) + .max(100) + .optional(), + create_current_term_invoice: z.boolean().default(false).optional(), + invoice_notes: z.string().max(2000).optional(), + meta_data: ImportForItemsSubscriptionMetaDataSchema.optional(), + cancel_reason_code: z.string().max(100).optional(), + create_pending_invoices: z.boolean().optional(), + auto_close_invoices: z.boolean().optional(), + contract_term: ImportForItemsSubscriptionContractTermSchema.optional(), + transaction: ImportForItemsSubscriptionTransactionSchema.optional(), + shipping_address: ImportForItemsSubscriptionShippingAddressSchema.optional(), + subscription_items: + ImportForItemsSubscriptionSubscriptionItemsSchema.optional(), + discounts: ImportForItemsSubscriptionDiscountsSchema.optional(), + charged_items: ImportForItemsSubscriptionChargedItemsSchema.optional(), + item_tiers: ImportForItemsSubscriptionItemTiersSchema.optional(), + coupons: ImportForItemsSubscriptionCouponsSchema.optional(), +}); +export { ImportForItemsSubscriptionBodySchema }; +export type ImportForItemsSubscriptionBody = z.infer< + typeof ImportForItemsSubscriptionBodySchema +>; + +//Subscription.overrideBillingProfile + +const OverrideBillingProfileSubscriptionBodySchema = z.looseObject({ + payment_source_id: z.string().max(40).optional(), + auto_collection: z.enum(['on', 'off']).optional(), +}); +export { OverrideBillingProfileSubscriptionBodySchema }; +export type OverrideBillingProfileSubscriptionBody = z.infer< + typeof OverrideBillingProfileSubscriptionBodySchema +>; + +//Subscription.pause + +const PauseSubscriptionBodySchema = z.looseObject({ + pause_option: z + .enum(['immediately', 'end_of_term', 'specific_date', 'billing_cycles']) + .optional(), + pause_date: z.number().int().optional(), + unbilled_charges_handling: z.enum(['no_action', 'invoice']).optional(), + invoice_dunning_handling: z.enum(['continue', 'stop']).optional(), + skip_billing_cycles: z.number().int().min(1).optional(), + resume_date: z.number().int().optional(), +}); +export { PauseSubscriptionBodySchema }; +export type PauseSubscriptionBody = z.infer; + +//Subscription.cancel + +const CancelSubscriptionEventBasedAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + service_period_in_days: z + .array(z.number().int().min(1).max(4000).optional()) + .optional(), +}); +const CancelSubscriptionBodySchema = z.looseObject({ + cancel_option: z + .enum([ + 'immediately', + 'end_of_term', + 'specific_date', + 'end_of_billing_term', + ]) + .optional(), + end_of_term: z.boolean().default(false).optional(), + cancel_at: z.number().int().optional(), + credit_option_for_current_term_charges: z + .enum(['none', 'prorate', 'full']) + .optional(), + unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), + account_receivables_handling: z + .enum(['no_action', 'schedule_payment_collection', 'write_off']) + .optional(), + refundable_credits_handling: z + .enum(['no_action', 'schedule_refund']) + .optional(), + contract_term_cancel_option: z + .enum([ + 'terminate_immediately', + 'end_of_contract_term', + 'specific_date', + 'end_of_subscription_billing_term', + ]) + .optional(), + invoice_date: z.number().int().optional(), + cancel_reason_code: z.string().max(100).optional(), + event_based_addons: CancelSubscriptionEventBasedAddonsSchema.optional(), +}); +export { CancelSubscriptionBodySchema }; +export type CancelSubscriptionBody = z.infer< + typeof CancelSubscriptionBodySchema +>; + +//Subscription.cancelForItems + +const CancelForItemsSubscriptionSubscriptionItemsSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + service_period_days: z + .array(z.number().int().min(1).max(730).optional()) + .optional(), +}); +const CancelForItemsSubscriptionBodySchema = z.looseObject({ + cancel_option: z + .enum([ + 'immediately', + 'end_of_term', + 'specific_date', + 'end_of_billing_term', + ]) + .optional(), + end_of_term: z.boolean().default(false).optional(), + cancel_at: z.number().int().optional(), + credit_option_for_current_term_charges: z + .enum(['none', 'prorate', 'full']) + .optional(), + unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), + account_receivables_handling: z + .enum(['no_action', 'schedule_payment_collection', 'write_off']) + .optional(), + refundable_credits_handling: z + .enum(['no_action', 'schedule_refund']) + .optional(), + contract_term_cancel_option: z + .enum([ + 'terminate_immediately', + 'end_of_contract_term', + 'specific_date', + 'end_of_subscription_billing_term', + ]) + .optional(), + invoice_date: z.number().int().optional(), + cancel_reason_code: z.string().max(100).optional(), + decommissioned: z.boolean().default(false).optional(), + subscription_items: + CancelForItemsSubscriptionSubscriptionItemsSchema.optional(), +}); +export { CancelForItemsSubscriptionBodySchema }; +export type CancelForItemsSubscriptionBody = z.infer< + typeof CancelForItemsSubscriptionBodySchema +>; + +//Subscription.resume + +const ResumeSubscriptionAdditionalInformationSchema = z.looseObject({}); +const ResumeSubscriptionPaymentIntentSchema = z.object({ + id: z.string().max(150).optional(), + gateway_account_id: z.string().max(50).optional(), + gw_token: z.string().max(65000).optional(), + payment_method_type: z + .enum([ + 'card', + 'ideal', + 'sofort', + 'bancontact', + 'google_pay', + 'dotpay', + 'giropay', + 'apple_pay', + 'upi', + 'netbanking_emandates', + 'paypal_express_checkout', + 'direct_debit', + 'boleto', + 'venmo', + 'amazon_payments', + 'pay_to', + 'faster_payments', + 'sepa_instant_transfer', + 'klarna_pay_now', + 'online_banking_poland', + 'payconiq_by_bancontact', + 'electronic_payment_standard', + 'kbc_payment_button', + 'pay_by_bank', + 'trustly', + 'stablecoin', + 'kakao_pay', + 'naver_pay', + 'revolut_pay', + 'cash_app_pay', + 'wechat_pay', + 'alipay', + 'pix', + 'twint', + 'go_pay', + 'grab_pay', + 'pay_co', + 'after_pay', + 'swish', + 'payme', + ]) + .optional(), + reference_id: z.string().max(65000).optional(), + gw_payment_method_id: z.string().max(65000).optional(), + additional_information: + ResumeSubscriptionAdditionalInformationSchema.optional(), +}); +const ResumeSubscriptionBodySchema = z.looseObject({ + resume_option: z.enum(['immediately', 'specific_date']).optional(), + resume_date: z.number().int().optional(), + charges_handling: z + .enum(['invoice_immediately', 'add_to_unbilled_charges']) + .optional(), + unpaid_invoices_handling: z + .enum(['no_action', 'schedule_payment_collection']) + .optional(), + payment_initiator: z.enum(['customer', 'merchant']).optional(), + payment_intent: ResumeSubscriptionPaymentIntentSchema.optional(), +}); +export { ResumeSubscriptionBodySchema }; +export type ResumeSubscriptionBody = z.infer< + typeof ResumeSubscriptionBodySchema +>; + +//Subscription.move + +const MoveSubscriptionBodySchema = z.looseObject({ + to_customer_id: z.string().max(50), + copy_payment_source: z.boolean().default(false).optional(), +}); +export { MoveSubscriptionBodySchema }; +export type MoveSubscriptionBody = z.infer; diff --git a/src/schema/subscription_entitlement.schema.ts b/src/schema/subscription_entitlement.schema.ts new file mode 100644 index 0000000..e7d53fc --- /dev/null +++ b/src/schema/subscription_entitlement.schema.ts @@ -0,0 +1,39 @@ +// Generated Zod schemas: SubscriptionEntitlement +// Actions: subscriptionEntitlementsForSubscription, setSubscriptionEntitlementAvailability +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//SubscriptionEntitlement.subscriptionEntitlementsForSubscription + +const SubscriptionEntitlementsForSubscriptionSubscriptionEntitlementBodySchema = + z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + include_drafts: z.boolean().default(false).optional(), + embed: z.string().max(1000).optional(), + include_scheduled_overrides: z.boolean().default(false).optional(), + }); +export { SubscriptionEntitlementsForSubscriptionSubscriptionEntitlementBodySchema }; +export type SubscriptionEntitlementsForSubscriptionSubscriptionEntitlementBody = + z.infer< + typeof SubscriptionEntitlementsForSubscriptionSubscriptionEntitlementBodySchema + >; + +//SubscriptionEntitlement.setSubscriptionEntitlementAvailability + +const SetSubscriptionEntitlementAvailabilitySubscriptionEntitlementSubscriptionEntitlementsSchema = + z.object({ + feature_id: z.array(z.string().max(50).optional()), + }); +const SetSubscriptionEntitlementAvailabilitySubscriptionEntitlementBodySchema = + z.looseObject({ + is_enabled: z.boolean(), + subscription_entitlements: + SetSubscriptionEntitlementAvailabilitySubscriptionEntitlementSubscriptionEntitlementsSchema.optional(), + }); +export { SetSubscriptionEntitlementAvailabilitySubscriptionEntitlementBodySchema }; +export type SetSubscriptionEntitlementAvailabilitySubscriptionEntitlementBody = + z.infer< + typeof SetSubscriptionEntitlementAvailabilitySubscriptionEntitlementBodySchema + >; diff --git a/src/schema/time_machine.schema.ts b/src/schema/time_machine.schema.ts new file mode 100644 index 0000000..d5f6d5d --- /dev/null +++ b/src/schema/time_machine.schema.ts @@ -0,0 +1,25 @@ +// Generated Zod schemas: TimeMachine +// Actions: startAfresh, travelForward +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//TimeMachine.startAfresh + +const StartAfreshTimeMachineBodySchema = z.looseObject({ + genesis_time: z.number().int().optional(), +}); +export { StartAfreshTimeMachineBodySchema }; +export type StartAfreshTimeMachineBody = z.infer< + typeof StartAfreshTimeMachineBodySchema +>; + +//TimeMachine.travelForward + +const TravelForwardTimeMachineBodySchema = z.looseObject({ + destination_time: z.number().int().optional(), +}); +export { TravelForwardTimeMachineBodySchema }; +export type TravelForwardTimeMachineBody = z.infer< + typeof TravelForwardTimeMachineBodySchema +>; diff --git a/src/schema/transaction.schema.ts b/src/schema/transaction.schema.ts new file mode 100644 index 0000000..15024f8 --- /dev/null +++ b/src/schema/transaction.schema.ts @@ -0,0 +1,106 @@ +// Generated Zod schemas: Transaction +// Actions: createAuthorization, recordRefund, reconcile, refund, transactionsForCustomer, transactionsForSubscription, paymentsForInvoice, deleteOfflineTransaction +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Transaction.createAuthorization + +const CreateAuthorizationTransactionBodySchema = z.looseObject({ + customer_id: z.string().max(50), + payment_source_id: z.string().max(40).optional(), + currency_code: z.string().max(3).optional(), + amount: z.number().int().min(1), +}); +export { CreateAuthorizationTransactionBodySchema }; +export type CreateAuthorizationTransactionBody = z.infer< + typeof CreateAuthorizationTransactionBodySchema +>; + +//Transaction.recordRefund + +const RecordRefundTransactionBodySchema = z.looseObject({ + amount: z.number().int().min(1).optional(), + payment_method: z.enum([ + 'cash', + 'check', + 'chargeback', + 'bank_transfer', + 'other', + 'app_store', + 'play_store', + 'custom', + ]), + date: z.number().int(), + reference_number: z.string().max(100).optional(), + custom_payment_method_id: z.string().max(50).optional(), + comment: z.string().max(300).optional(), +}); +export { RecordRefundTransactionBodySchema }; +export type RecordRefundTransactionBody = z.infer< + typeof RecordRefundTransactionBodySchema +>; + +//Transaction.reconcile + +const ReconcileTransactionBodySchema = z.looseObject({ + id_at_gateway: z.string().max(100).optional(), + customer_id: z.string().max(50).optional(), + status: z.enum(['success', 'failure']).optional(), +}); +export { ReconcileTransactionBodySchema }; +export type ReconcileTransactionBody = z.infer< + typeof ReconcileTransactionBodySchema +>; + +//Transaction.refund + +const RefundTransactionBodySchema = z.looseObject({ + amount: z.number().int().min(1).optional(), + comment: z.string().max(300).optional(), +}); +export { RefundTransactionBodySchema }; +export type RefundTransactionBody = z.infer; + +//Transaction.transactionsForCustomer + +const TransactionsForCustomerTransactionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { TransactionsForCustomerTransactionBodySchema }; +export type TransactionsForCustomerTransactionBody = z.infer< + typeof TransactionsForCustomerTransactionBodySchema +>; + +//Transaction.transactionsForSubscription + +const TransactionsForSubscriptionTransactionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { TransactionsForSubscriptionTransactionBodySchema }; +export type TransactionsForSubscriptionTransactionBody = z.infer< + typeof TransactionsForSubscriptionTransactionBodySchema +>; + +//Transaction.paymentsForInvoice + +const PaymentsForInvoiceTransactionBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { PaymentsForInvoiceTransactionBodySchema }; +export type PaymentsForInvoiceTransactionBody = z.infer< + typeof PaymentsForInvoiceTransactionBodySchema +>; + +//Transaction.deleteOfflineTransaction + +const DeleteOfflineTransactionTransactionBodySchema = z.looseObject({ + comment: z.string().max(300).optional(), +}); +export { DeleteOfflineTransactionTransactionBodySchema }; +export type DeleteOfflineTransactionTransactionBody = z.infer< + typeof DeleteOfflineTransactionTransactionBodySchema +>; diff --git a/src/schema/unbilled_charge.schema.ts b/src/schema/unbilled_charge.schema.ts new file mode 100644 index 0000000..0863259 --- /dev/null +++ b/src/schema/unbilled_charge.schema.ts @@ -0,0 +1,132 @@ +// Generated Zod schemas: UnbilledCharge +// Actions: createUnbilledCharge, create, invoiceUnbilledCharges, invoiceNowEstimate +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//UnbilledCharge.createUnbilledCharge + +const CreateUnbilledChargeUnbilledChargeAddonsSchema = z.object({ + id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateUnbilledChargeUnbilledChargeChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateUnbilledChargeUnbilledChargeTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateUnbilledChargeUnbilledChargeBodySchema = z.looseObject({ + subscription_id: z.string().max(50), + currency_code: z.string().max(3).optional(), + addons: CreateUnbilledChargeUnbilledChargeAddonsSchema.optional(), + charges: CreateUnbilledChargeUnbilledChargeChargesSchema.optional(), + tax_providers_fields: + CreateUnbilledChargeUnbilledChargeTaxProvidersFieldsSchema.optional(), +}); +export { CreateUnbilledChargeUnbilledChargeBodySchema }; +export type CreateUnbilledChargeUnbilledChargeBody = z.infer< + typeof CreateUnbilledChargeUnbilledChargeBodySchema +>; + +//UnbilledCharge.create + +const CreateUnbilledChargeItemPricesSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + quantity: z.array(z.number().int().min(1).optional()).optional(), + quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), + unit_price: z.array(z.number().int().min(0).optional()).optional(), + unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateUnbilledChargeItemTiersSchema = z.object({ + item_price_id: z.array(z.string().max(100).optional()).optional(), + starting_unit: z.array(z.number().int().min(1).optional()).optional(), + ending_unit: z.array(z.number().int().optional()).optional(), + price: z.array(z.number().int().min(0).optional()).optional(), + starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), + price_in_decimal: z.array(z.string().max(39).optional()).optional(), + pricing_type: z + .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) + .optional(), + package_size: z.array(z.number().int().min(1).optional()).optional(), +}); +const CreateUnbilledChargeChargesSchema = z.object({ + amount: z.array(z.number().int().min(1).optional()).optional(), + amount_in_decimal: z.array(z.string().max(39).optional()).optional(), + description: z.array(z.string().max(250).optional()).optional(), + taxable: z.array(z.boolean().default(true).optional()).optional(), + tax_profile_id: z.array(z.string().max(50).optional()).optional(), + avalara_tax_code: z.array(z.string().max(50).optional()).optional(), + hsn_code: z.array(z.string().max(50).optional()).optional(), + taxjar_product_code: z.array(z.string().max(50).optional()).optional(), + avalara_sale_type: z + .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) + .optional(), + avalara_transaction_type: z.array(z.number().int().optional()).optional(), + avalara_service_type: z.array(z.number().int().optional()).optional(), + date_from: z.array(z.number().int().optional()).optional(), + date_to: z.array(z.number().int().optional()).optional(), +}); +const CreateUnbilledChargeTaxProvidersFieldsSchema = z.object({ + provider_name: z.array(z.string().max(50).optional()).optional(), + field_id: z.array(z.string().max(50).optional()).optional(), + field_value: z.array(z.string().max(50).optional()).optional(), +}); +const CreateUnbilledChargeBodySchema = z.looseObject({ + subscription_id: z.string().max(50), + currency_code: z.string().max(3).optional(), + item_prices: CreateUnbilledChargeItemPricesSchema.optional(), + item_tiers: CreateUnbilledChargeItemTiersSchema.optional(), + charges: CreateUnbilledChargeChargesSchema.optional(), + tax_providers_fields: CreateUnbilledChargeTaxProvidersFieldsSchema.optional(), +}); +export { CreateUnbilledChargeBodySchema }; +export type CreateUnbilledChargeBody = z.infer< + typeof CreateUnbilledChargeBodySchema +>; + +//UnbilledCharge.invoiceUnbilledCharges + +const InvoiceUnbilledChargesUnbilledChargeBodySchema = z.looseObject({ + subscription_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), +}); +export { InvoiceUnbilledChargesUnbilledChargeBodySchema }; +export type InvoiceUnbilledChargesUnbilledChargeBody = z.infer< + typeof InvoiceUnbilledChargesUnbilledChargeBodySchema +>; + +//UnbilledCharge.invoiceNowEstimate + +const InvoiceNowEstimateUnbilledChargeBodySchema = z.looseObject({ + subscription_id: z.string().max(50).optional(), + customer_id: z.string().max(50).optional(), +}); +export { InvoiceNowEstimateUnbilledChargeBodySchema }; +export type InvoiceNowEstimateUnbilledChargeBody = z.infer< + typeof InvoiceNowEstimateUnbilledChargeBodySchema +>; diff --git a/src/schema/usage.schema.ts b/src/schema/usage.schema.ts new file mode 100644 index 0000000..094ea92 --- /dev/null +++ b/src/schema/usage.schema.ts @@ -0,0 +1,106 @@ +// Generated Zod schemas: Usage +// Actions: create, retrieve, delete, list, pdf +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//Usage.create + +const CreateUsageBodySchema = z.looseObject({ + id: z.string().max(100).optional(), + item_price_id: z.string().max(100), + quantity: z.string().max(40), + usage_date: z.number().int(), + dedupe_option: z.enum(['skip', 'update_existing']).optional(), + note: z.string().max(500).optional(), +}); +export { CreateUsageBodySchema }; +export type CreateUsageBody = z.infer; + +//Usage.retrieve + +const RetrieveUsageBodySchema = z.looseObject({ + id: z.string().max(100), +}); +export { RetrieveUsageBodySchema }; +export type RetrieveUsageBody = z.infer; + +//Usage.delete + +const DeleteUsageBodySchema = z.looseObject({ + id: z.string().max(100), +}); +export { DeleteUsageBodySchema }; +export type DeleteUsageBody = z.infer; + +//Usage.list + +const ListUsageIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListUsageSubscriptionIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListUsageUsageDateSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ListUsageUpdatedAtSchema = z.object({ + after: z.string().regex(RegExp('^d{10}$')).optional(), + before: z.string().regex(RegExp('^d{10}$')).optional(), + on: z.string().regex(RegExp('^d{10}$')).optional(), + between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), +}); +const ListUsageItemPriceIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), +}); +const ListUsageInvoiceIdSchema = z.object({ + is: z.string().min(1).optional(), + is_not: z.string().min(1).optional(), + starts_with: z.string().min(1).optional(), + is_present: z.enum(['true', 'false']).optional(), +}); +const ListUsageSourceSchema = z.object({ + is: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), + is_not: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), + in: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), + not_in: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), +}); +const ListUsageSortBySchema = z.looseObject({ + asc: z.enum(['usage_date', 'updated_at']).optional(), + desc: z.enum(['usage_date', 'updated_at']).optional(), +}); +const ListUsageBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + id: ListUsageIdSchema.optional(), + subscription_id: ListUsageSubscriptionIdSchema.optional(), + usage_date: ListUsageUsageDateSchema.optional(), + updated_at: ListUsageUpdatedAtSchema.optional(), + item_price_id: ListUsageItemPriceIdSchema.optional(), + invoice_id: ListUsageInvoiceIdSchema.optional(), + source: ListUsageSourceSchema.optional(), + sort_by: ListUsageSortBySchema.optional(), +}); +export { ListUsageBodySchema }; +export type ListUsageBody = z.infer; + +//Usage.pdf + +const PdfUsageInvoiceSchema = z.object({ + id: z.string().max(50), +}); +const PdfUsageBodySchema = z.looseObject({ + disposition_type: z.enum(['attachment', 'inline']).optional(), + invoice: PdfUsageInvoiceSchema.optional(), +}); +export { PdfUsageBodySchema }; +export type PdfUsageBody = z.infer; diff --git a/src/schema/usage_charge.schema.ts b/src/schema/usage_charge.schema.ts new file mode 100644 index 0000000..d03962d --- /dev/null +++ b/src/schema/usage_charge.schema.ts @@ -0,0 +1,21 @@ +// Generated Zod schemas: UsageCharge +// Actions: retrieveUsageChargesForSubscription +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//UsageCharge.retrieveUsageChargesForSubscription + +const RetrieveUsageChargesForSubscriptionUsageChargeFeatureIdSchema = z.object({ + is: z.string().min(1).optional(), +}); +const RetrieveUsageChargesForSubscriptionUsageChargeBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), + feature_id: + RetrieveUsageChargesForSubscriptionUsageChargeFeatureIdSchema.optional(), +}); +export { RetrieveUsageChargesForSubscriptionUsageChargeBodySchema }; +export type RetrieveUsageChargesForSubscriptionUsageChargeBody = z.infer< + typeof RetrieveUsageChargesForSubscriptionUsageChargeBodySchema +>; diff --git a/src/schema/usage_event.schema.ts b/src/schema/usage_event.schema.ts new file mode 100644 index 0000000..5a765b9 --- /dev/null +++ b/src/schema/usage_event.schema.ts @@ -0,0 +1,34 @@ +// Generated Zod schemas: UsageEvent +// Actions: create, batchIngest +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//UsageEvent.create + +const CreateUsageEventPropertiesSchema = z.looseObject({}); +const CreateUsageEventBodySchema = z.looseObject({ + deduplication_id: z.string().max(36), + subscription_id: z.string().max(50), + usage_timestamp: z.number().int(), + properties: CreateUsageEventPropertiesSchema, +}); +export { CreateUsageEventBodySchema }; +export type CreateUsageEventBody = z.infer; + +//UsageEvent.batchIngest + +const BatchIngestUsageEventPropertiesItemSchema = z.looseObject({}); +const BatchIngestUsageEventEventsSchema = z.object({ + deduplication_id: z.array(z.string().max(36).optional()), + subscription_id: z.array(z.string().max(50).optional()), + usage_timestamp: z.array(z.number().int().optional()), + properties: z.array(BatchIngestUsageEventPropertiesItemSchema.optional()), +}); +const BatchIngestUsageEventBodySchema = z.looseObject({ + events: BatchIngestUsageEventEventsSchema.optional(), +}); +export { BatchIngestUsageEventBodySchema }; +export type BatchIngestUsageEventBody = z.infer< + typeof BatchIngestUsageEventBodySchema +>; diff --git a/src/schema/usage_file.schema.ts b/src/schema/usage_file.schema.ts new file mode 100644 index 0000000..ac1afba --- /dev/null +++ b/src/schema/usage_file.schema.ts @@ -0,0 +1,16 @@ +// Generated Zod schemas: UsageFile +// Actions: uploadUrl +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//UsageFile.uploadUrl + +const UploadUrlUsageFileBodySchema = z.looseObject({ + file_name: z.string().max(150), + mime_type: z.string().max(100), +}); +export { UploadUrlUsageFileBodySchema }; +export type UploadUrlUsageFileBody = z.infer< + typeof UploadUrlUsageFileBodySchema +>; diff --git a/src/validation/usage_summary/retrieve_usage_summary_for_subscription.validation.ts b/src/schema/usage_summary.schema.ts similarity index 51% rename from src/validation/usage_summary/retrieve_usage_summary_for_subscription.validation.ts rename to src/schema/usage_summary.schema.ts index 5511182..5f6ac38 100644 --- a/src/validation/usage_summary/retrieve_usage_summary_for_subscription.validation.ts +++ b/src/schema/usage_summary.schema.ts @@ -1,8 +1,12 @@ -// Generated Zod validator: UsageSummary.retrieveUsageSummaryForSubscription +// Generated Zod schemas: UsageSummary +// Actions: retrieveUsageSummaryForSubscription // Do not edit manually – regenerate via sdk-generator import { z } from 'zod'; -const retrieveUsageSummaryForSubscriptionUsageSummaryBodySchema = z.looseObject( + +//UsageSummary.retrieveUsageSummaryForSubscription + +const RetrieveUsageSummaryForSubscriptionUsageSummaryBodySchema = z.looseObject( { limit: z.number().int().min(1).max(100).optional(), offset: z.string().max(1000).optional(), @@ -12,4 +16,7 @@ const retrieveUsageSummaryForSubscriptionUsageSummaryBodySchema = z.looseObject( timeframe_end: z.number().int().optional(), }, ); -export { retrieveUsageSummaryForSubscriptionUsageSummaryBodySchema }; +export { RetrieveUsageSummaryForSubscriptionUsageSummaryBodySchema }; +export type RetrieveUsageSummaryForSubscriptionUsageSummaryBody = z.infer< + typeof RetrieveUsageSummaryForSubscriptionUsageSummaryBodySchema +>; diff --git a/src/schema/virtual_bank_account.schema.ts b/src/schema/virtual_bank_account.schema.ts new file mode 100644 index 0000000..3133cc7 --- /dev/null +++ b/src/schema/virtual_bank_account.schema.ts @@ -0,0 +1,51 @@ +// Generated Zod schemas: VirtualBankAccount +// Actions: createUsingPermanentToken, create +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//VirtualBankAccount.createUsingPermanentToken + +const CreateUsingPermanentTokenVirtualBankAccountBodySchema = z.looseObject({ + customer_id: z.string().max(50), + reference_id: z.string().max(150), + gateway_account_id: z.string().max(50).optional(), + scheme: z + .enum([ + 'ach_credit', + 'sepa_credit', + 'us_automated_bank_transfer', + 'gb_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + ]) + .optional(), +}); +export { CreateUsingPermanentTokenVirtualBankAccountBodySchema }; +export type CreateUsingPermanentTokenVirtualBankAccountBody = z.infer< + typeof CreateUsingPermanentTokenVirtualBankAccountBodySchema +>; + +//VirtualBankAccount.create + +const CreateVirtualBankAccountBodySchema = z.looseObject({ + customer_id: z.string().max(50), + email: z.string().email().max(70).optional(), + gateway_account_id: z.string().max(50).optional(), + scheme: z + .enum([ + 'ach_credit', + 'sepa_credit', + 'us_automated_bank_transfer', + 'gb_automated_bank_transfer', + 'eu_automated_bank_transfer', + 'jp_automated_bank_transfer', + 'mx_automated_bank_transfer', + ]) + .optional(), +}); +export { CreateVirtualBankAccountBodySchema }; +export type CreateVirtualBankAccountBody = z.infer< + typeof CreateVirtualBankAccountBodySchema +>; diff --git a/src/schema/webhook_endpoint.schema.ts b/src/schema/webhook_endpoint.schema.ts new file mode 100644 index 0000000..abacc9c --- /dev/null +++ b/src/schema/webhook_endpoint.schema.ts @@ -0,0 +1,521 @@ +// Generated Zod schemas: WebhookEndpoint +// Actions: create, update, list +// Do not edit manually – regenerate via sdk-generator + +import { z } from 'zod'; + +//WebhookEndpoint.create + +const CreateWebhookEndpointBodySchema = z.looseObject({ + name: z.string().max(50), + api_version: z.enum(['v1', 'v2']).optional(), + url: z.string().max(512), + primary_url: z.boolean().default(false).optional(), + disabled: z.boolean().default(false).optional(), + basic_auth_password: z.string().max(250).optional(), + basic_auth_username: z.string().max(250).optional(), + send_card_resource: z.boolean().default(false).optional(), + chargebee_response_schema_type: z + .enum(['plans_addons', 'items', 'compat']) + .optional(), + enabled_events: z + .array( + z + .enum([ + 'coupon_created', + 'coupon_updated', + 'coupon_deleted', + 'coupon_set_created', + 'coupon_set_updated', + 'coupon_set_deleted', + 'coupon_codes_added', + 'coupon_codes_deleted', + 'coupon_codes_updated', + 'customer_created', + 'customer_changed', + 'customer_deleted', + 'customer_moved_out', + 'customer_moved_in', + 'promotional_credits_added', + 'promotional_credits_deducted', + 'subscription_created', + 'subscription_created_with_backdating', + 'subscription_started', + 'subscription_trial_end_reminder', + 'subscription_activated', + 'subscription_activated_with_backdating', + 'subscription_changed', + 'subscription_trial_extended', + 'mrr_updated', + 'subscription_changed_with_backdating', + 'subscription_cancellation_scheduled', + 'subscription_cancellation_reminder', + 'subscription_cancelled', + 'subscription_canceled_with_backdating', + 'subscription_reactivated', + 'subscription_reactivated_with_backdating', + 'subscription_renewed', + 'subscription_items_renewed', + 'subscription_scheduled_cancellation_removed', + 'subscription_changes_scheduled', + 'subscription_scheduled_changes_removed', + 'subscription_shipping_address_updated', + 'subscription_deleted', + 'subscription_paused', + 'subscription_pause_scheduled', + 'subscription_scheduled_pause_removed', + 'subscription_resumed', + 'subscription_resumption_scheduled', + 'subscription_scheduled_resumption_removed', + 'subscription_advance_invoice_schedule_added', + 'subscription_advance_invoice_schedule_updated', + 'subscription_advance_invoice_schedule_removed', + 'pending_invoice_created', + 'pending_invoice_updated', + 'invoice_generated', + 'invoice_generated_with_backdating', + 'invoice_updated', + 'invoice_deleted', + 'credit_note_created', + 'credit_note_created_with_backdating', + 'credit_note_updated', + 'credit_note_deleted', + 'payment_schedules_created', + 'payment_schedules_updated', + 'payment_schedule_scheme_created', + 'payment_schedule_scheme_deleted', + 'subscription_renewal_reminder', + 'add_usages_reminder', + 'payment_due_reminder', + 'transaction_created', + 'transaction_updated', + 'transaction_deleted', + 'payment_succeeded', + 'payment_failed', + 'dunning_updated', + 'payment_refunded', + 'payment_initiated', + 'refund_initiated', + 'netd_payment_due_reminder', + 'authorization_succeeded', + 'authorization_voided', + 'card_added', + 'card_updated', + 'card_expiry_reminder', + 'card_expired', + 'card_deleted', + 'payment_source_added', + 'payment_source_updated', + 'payment_source_deleted', + 'payment_source_expiring', + 'payment_source_expired', + 'payment_source_locally_deleted', + 'virtual_bank_account_added', + 'virtual_bank_account_updated', + 'virtual_bank_account_deleted', + 'token_created', + 'token_consumed', + 'token_expired', + 'unbilled_charges_created', + 'unbilled_charges_voided', + 'unbilled_charges_deleted', + 'unbilled_charges_invoiced', + 'order_created', + 'order_updated', + 'order_cancelled', + 'order_delivered', + 'order_returned', + 'order_ready_to_process', + 'order_ready_to_ship', + 'order_deleted', + 'order_resent', + 'quote_created', + 'quote_updated', + 'quote_deleted', + 'tax_withheld_recorded', + 'tax_withheld_deleted', + 'tax_withheld_refunded', + 'gift_scheduled', + 'gift_unclaimed', + 'gift_claimed', + 'gift_expired', + 'gift_cancelled', + 'gift_updated', + 'hierarchy_created', + 'hierarchy_deleted', + 'payment_intent_created', + 'payment_intent_updated', + 'contract_term_created', + 'contract_term_renewed', + 'contract_term_terminated', + 'contract_term_completed', + 'contract_term_cancelled', + 'item_family_created', + 'item_family_updated', + 'item_family_deleted', + 'item_created', + 'item_updated', + 'item_deleted', + 'item_price_created', + 'item_price_updated', + 'item_price_deleted', + 'attached_item_created', + 'attached_item_updated', + 'attached_item_deleted', + 'differential_price_created', + 'differential_price_updated', + 'differential_price_deleted', + 'feature_created', + 'feature_updated', + 'feature_deleted', + 'feature_activated', + 'feature_reactivated', + 'feature_archived', + 'item_entitlements_updated', + 'entitlement_overrides_updated', + 'entitlement_overrides_removed', + 'item_entitlements_removed', + 'entitlement_overrides_auto_removed', + 'subscription_entitlements_created', + 'subscription_entitlements_updated', + 'business_entity_created', + 'business_entity_updated', + 'business_entity_deleted', + 'customer_business_entity_changed', + 'subscription_business_entity_changed', + 'purchase_created', + 'voucher_created', + 'voucher_expired', + 'voucher_create_failed', + 'product_created', + 'product_updated', + 'product_deleted', + 'variant_created', + 'variant_updated', + 'variant_deleted', + 'item_price_entitlements_updated', + 'item_price_entitlements_removed', + 'subscription_ramp_created', + 'subscription_ramp_deleted', + 'subscription_ramp_applied', + 'subscription_ramp_drafted', + 'subscription_ramp_updated', + 'price_variant_created', + 'price_variant_updated', + 'price_variant_deleted', + 'customer_entitlements_updated', + 'subscription_moved_in', + 'subscription_moved_out', + 'subscription_movement_failed', + 'omnichannel_subscription_created', + 'omnichannel_subscription_item_renewed', + 'omnichannel_subscription_item_downgrade_scheduled', + 'omnichannel_subscription_item_scheduled_downgrade_removed', + 'omnichannel_subscription_item_downgraded', + 'omnichannel_subscription_item_expired', + 'omnichannel_subscription_item_cancellation_scheduled', + 'omnichannel_subscription_item_scheduled_cancellation_removed', + 'omnichannel_subscription_item_resubscribed', + 'omnichannel_subscription_item_upgraded', + 'omnichannel_subscription_item_cancelled', + 'omnichannel_subscription_imported', + 'omnichannel_subscription_item_grace_period_started', + 'omnichannel_subscription_item_grace_period_expired', + 'omnichannel_subscription_item_dunning_started', + 'omnichannel_subscription_item_dunning_expired', + 'rule_created', + 'rule_updated', + 'rule_deleted', + 'record_purchase_failed', + 'omnichannel_subscription_item_change_scheduled', + 'omnichannel_subscription_item_scheduled_change_removed', + 'omnichannel_subscription_item_reactivated', + 'sales_order_created', + 'sales_order_updated', + 'omnichannel_subscription_item_changed', + 'omnichannel_subscription_item_paused', + 'omnichannel_subscription_item_resumed', + 'omnichannel_one_time_order_created', + 'omnichannel_one_time_order_item_cancelled', + 'usage_file_ingested', + 'omnichannel_subscription_item_pause_scheduled', + 'omnichannel_subscription_moved_in', + 'omnichannel_transaction_created', + 'alert_status_changed', + 'plan_created', + 'plan_updated', + 'plan_deleted', + 'addon_created', + 'addon_updated', + 'addon_deleted', + ]) + .optional(), + ) + .optional(), +}); +export { CreateWebhookEndpointBodySchema }; +export type CreateWebhookEndpointBody = z.infer< + typeof CreateWebhookEndpointBodySchema +>; + +//WebhookEndpoint.update + +const UpdateWebhookEndpointBodySchema = z.looseObject({ + name: z.string().max(50).optional(), + api_version: z.enum(['v1', 'v2']).optional(), + url: z.string().max(512).optional(), + primary_url: z.boolean().default(false).optional(), + send_card_resource: z.boolean().default(false).optional(), + basic_auth_password: z.string().max(250).optional(), + basic_auth_username: z.string().max(250).optional(), + disabled: z.boolean().default(false).optional(), + enabled_events: z + .array( + z + .enum([ + 'coupon_created', + 'coupon_updated', + 'coupon_deleted', + 'coupon_set_created', + 'coupon_set_updated', + 'coupon_set_deleted', + 'coupon_codes_added', + 'coupon_codes_deleted', + 'coupon_codes_updated', + 'customer_created', + 'customer_changed', + 'customer_deleted', + 'customer_moved_out', + 'customer_moved_in', + 'promotional_credits_added', + 'promotional_credits_deducted', + 'subscription_created', + 'subscription_created_with_backdating', + 'subscription_started', + 'subscription_trial_end_reminder', + 'subscription_activated', + 'subscription_activated_with_backdating', + 'subscription_changed', + 'subscription_trial_extended', + 'mrr_updated', + 'subscription_changed_with_backdating', + 'subscription_cancellation_scheduled', + 'subscription_cancellation_reminder', + 'subscription_cancelled', + 'subscription_canceled_with_backdating', + 'subscription_reactivated', + 'subscription_reactivated_with_backdating', + 'subscription_renewed', + 'subscription_items_renewed', + 'subscription_scheduled_cancellation_removed', + 'subscription_changes_scheduled', + 'subscription_scheduled_changes_removed', + 'subscription_shipping_address_updated', + 'subscription_deleted', + 'subscription_paused', + 'subscription_pause_scheduled', + 'subscription_scheduled_pause_removed', + 'subscription_resumed', + 'subscription_resumption_scheduled', + 'subscription_scheduled_resumption_removed', + 'subscription_advance_invoice_schedule_added', + 'subscription_advance_invoice_schedule_updated', + 'subscription_advance_invoice_schedule_removed', + 'pending_invoice_created', + 'pending_invoice_updated', + 'invoice_generated', + 'invoice_generated_with_backdating', + 'invoice_updated', + 'invoice_deleted', + 'credit_note_created', + 'credit_note_created_with_backdating', + 'credit_note_updated', + 'credit_note_deleted', + 'payment_schedules_created', + 'payment_schedules_updated', + 'payment_schedule_scheme_created', + 'payment_schedule_scheme_deleted', + 'subscription_renewal_reminder', + 'add_usages_reminder', + 'payment_due_reminder', + 'transaction_created', + 'transaction_updated', + 'transaction_deleted', + 'payment_succeeded', + 'payment_failed', + 'dunning_updated', + 'payment_refunded', + 'payment_initiated', + 'refund_initiated', + 'netd_payment_due_reminder', + 'authorization_succeeded', + 'authorization_voided', + 'card_added', + 'card_updated', + 'card_expiry_reminder', + 'card_expired', + 'card_deleted', + 'payment_source_added', + 'payment_source_updated', + 'payment_source_deleted', + 'payment_source_expiring', + 'payment_source_expired', + 'payment_source_locally_deleted', + 'virtual_bank_account_added', + 'virtual_bank_account_updated', + 'virtual_bank_account_deleted', + 'token_created', + 'token_consumed', + 'token_expired', + 'unbilled_charges_created', + 'unbilled_charges_voided', + 'unbilled_charges_deleted', + 'unbilled_charges_invoiced', + 'order_created', + 'order_updated', + 'order_cancelled', + 'order_delivered', + 'order_returned', + 'order_ready_to_process', + 'order_ready_to_ship', + 'order_deleted', + 'order_resent', + 'quote_created', + 'quote_updated', + 'quote_deleted', + 'tax_withheld_recorded', + 'tax_withheld_deleted', + 'tax_withheld_refunded', + 'gift_scheduled', + 'gift_unclaimed', + 'gift_claimed', + 'gift_expired', + 'gift_cancelled', + 'gift_updated', + 'hierarchy_created', + 'hierarchy_deleted', + 'payment_intent_created', + 'payment_intent_updated', + 'contract_term_created', + 'contract_term_renewed', + 'contract_term_terminated', + 'contract_term_completed', + 'contract_term_cancelled', + 'item_family_created', + 'item_family_updated', + 'item_family_deleted', + 'item_created', + 'item_updated', + 'item_deleted', + 'item_price_created', + 'item_price_updated', + 'item_price_deleted', + 'attached_item_created', + 'attached_item_updated', + 'attached_item_deleted', + 'differential_price_created', + 'differential_price_updated', + 'differential_price_deleted', + 'feature_created', + 'feature_updated', + 'feature_deleted', + 'feature_activated', + 'feature_reactivated', + 'feature_archived', + 'item_entitlements_updated', + 'entitlement_overrides_updated', + 'entitlement_overrides_removed', + 'item_entitlements_removed', + 'entitlement_overrides_auto_removed', + 'subscription_entitlements_created', + 'subscription_entitlements_updated', + 'business_entity_created', + 'business_entity_updated', + 'business_entity_deleted', + 'customer_business_entity_changed', + 'subscription_business_entity_changed', + 'purchase_created', + 'voucher_created', + 'voucher_expired', + 'voucher_create_failed', + 'product_created', + 'product_updated', + 'product_deleted', + 'variant_created', + 'variant_updated', + 'variant_deleted', + 'item_price_entitlements_updated', + 'item_price_entitlements_removed', + 'subscription_ramp_created', + 'subscription_ramp_deleted', + 'subscription_ramp_applied', + 'subscription_ramp_drafted', + 'subscription_ramp_updated', + 'price_variant_created', + 'price_variant_updated', + 'price_variant_deleted', + 'customer_entitlements_updated', + 'subscription_moved_in', + 'subscription_moved_out', + 'subscription_movement_failed', + 'omnichannel_subscription_created', + 'omnichannel_subscription_item_renewed', + 'omnichannel_subscription_item_downgrade_scheduled', + 'omnichannel_subscription_item_scheduled_downgrade_removed', + 'omnichannel_subscription_item_downgraded', + 'omnichannel_subscription_item_expired', + 'omnichannel_subscription_item_cancellation_scheduled', + 'omnichannel_subscription_item_scheduled_cancellation_removed', + 'omnichannel_subscription_item_resubscribed', + 'omnichannel_subscription_item_upgraded', + 'omnichannel_subscription_item_cancelled', + 'omnichannel_subscription_imported', + 'omnichannel_subscription_item_grace_period_started', + 'omnichannel_subscription_item_grace_period_expired', + 'omnichannel_subscription_item_dunning_started', + 'omnichannel_subscription_item_dunning_expired', + 'rule_created', + 'rule_updated', + 'rule_deleted', + 'record_purchase_failed', + 'omnichannel_subscription_item_change_scheduled', + 'omnichannel_subscription_item_scheduled_change_removed', + 'omnichannel_subscription_item_reactivated', + 'sales_order_created', + 'sales_order_updated', + 'omnichannel_subscription_item_changed', + 'omnichannel_subscription_item_paused', + 'omnichannel_subscription_item_resumed', + 'omnichannel_one_time_order_created', + 'omnichannel_one_time_order_item_cancelled', + 'usage_file_ingested', + 'omnichannel_subscription_item_pause_scheduled', + 'omnichannel_subscription_moved_in', + 'omnichannel_transaction_created', + 'alert_status_changed', + 'plan_created', + 'plan_updated', + 'plan_deleted', + 'addon_created', + 'addon_updated', + 'addon_deleted', + ]) + .optional(), + ) + .optional(), +}); +export { UpdateWebhookEndpointBodySchema }; +export type UpdateWebhookEndpointBody = z.infer< + typeof UpdateWebhookEndpointBodySchema +>; + +//WebhookEndpoint.list + +const ListWebhookEndpointBodySchema = z.looseObject({ + limit: z.number().int().min(1).max(100).optional(), + offset: z.string().max(1000).optional(), +}); +export { ListWebhookEndpointBodySchema }; +export type ListWebhookEndpointBody = z.infer< + typeof ListWebhookEndpointBodySchema +>; diff --git a/src/validation/addon/copy.validation.ts b/src/validation/addon/copy.validation.ts deleted file mode 100644 index a0343ff..0000000 --- a/src/validation/addon/copy.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Addon.copy -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const copyAddonBodySchema = z.looseObject({ - from_site: z.string().max(50), - id_at_from_site: z.string().max(100), - id: z.string().max(100).optional(), - for_site_merging: z.boolean().default(false).optional(), -}); -export { copyAddonBodySchema }; diff --git a/src/validation/addon/create.validation.ts b/src/validation/addon/create.validation.ts deleted file mode 100644 index 08cd7f8..0000000 --- a/src/validation/addon/create.validation.ts +++ /dev/null @@ -1,73 +0,0 @@ -// Generated Zod validator: Addon.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createAddonMetaDataSchema = z.looseObject({}); -const createAddonTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const createAddonTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()), - field_id: z.array(z.string().max(50).optional()), - field_value: z.array(z.string().max(50).optional()), -}); -const createAddonBodySchema = z.looseObject({ - id: z.string().max(100), - name: z.string().max(100), - invoice_name: z.string().max(100).optional(), - description: z.string().max(2000).optional(), - charge_type: z.enum(['recurring', 'non_recurring']), - price: z.number().int().min(0).optional(), - currency_code: z.string().max(3).optional(), - period: z.number().int().min(1).optional(), - period_unit: z - .enum(['day', 'week', 'month', 'year', 'not_applicable']) - .optional(), - pricing_model: z - .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) - .optional(), - type: z - .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) - .optional(), - unit: z.string().max(30).optional(), - enabled_in_portal: z.boolean().default(true).optional(), - taxable: z.boolean().default(true).optional(), - tax_profile_id: z.string().max(50).optional(), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - tax_code: z.string().max(50).optional(), - hsn_code: z.string().max(50).optional(), - taxjar_product_code: z.string().max(50).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: createAddonMetaDataSchema.optional(), - sku: z.string().max(100).optional(), - accounting_code: z.string().max(100).optional(), - accounting_category1: z.string().max(100).optional(), - accounting_category2: z.string().max(100).optional(), - accounting_category3: z.string().max(100).optional(), - accounting_category4: z.string().max(100).optional(), - is_shippable: z.boolean().default(false).optional(), - shipping_frequency_period: z.number().int().min(1).optional(), - shipping_frequency_period_unit: z - .enum(['year', 'month', 'week', 'day']) - .optional(), - included_in_mrr: z.boolean().optional(), - show_description_in_invoices: z.boolean().default(false).optional(), - show_description_in_quotes: z.boolean().default(false).optional(), - price_in_decimal: z.string().max(39).optional(), - proration_type: z - .enum(['site_default', 'partial_term', 'full_term']) - .optional(), - status: z.enum(['active', 'archived']).optional(), - tiers: createAddonTiersSchema.optional(), - tax_providers_fields: createAddonTaxProvidersFieldsSchema.optional(), -}); -export { createAddonBodySchema }; diff --git a/src/validation/addon/update.validation.ts b/src/validation/addon/update.validation.ts deleted file mode 100644 index 6a30e3e..0000000 --- a/src/validation/addon/update.validation.ts +++ /dev/null @@ -1,71 +0,0 @@ -// Generated Zod validator: Addon.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateAddonMetaDataSchema = z.looseObject({}); -const updateAddonTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const updateAddonTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()), - field_id: z.array(z.string().max(50).optional()), - field_value: z.array(z.string().max(50).optional()), -}); -const updateAddonBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - invoice_name: z.string().max(100).optional(), - description: z.string().max(2000).optional(), - charge_type: z.enum(['recurring', 'non_recurring']).optional(), - price: z.number().int().min(0).optional(), - currency_code: z.string().max(3).optional(), - period: z.number().int().min(1).optional(), - period_unit: z - .enum(['day', 'week', 'month', 'year', 'not_applicable']) - .optional(), - pricing_model: z - .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) - .optional(), - type: z - .enum(['on_off', 'quantity', 'tiered', 'volume', 'stairstep']) - .optional(), - unit: z.string().max(30).optional(), - enabled_in_portal: z.boolean().default(true).optional(), - taxable: z.boolean().default(true).optional(), - tax_profile_id: z.string().max(50).optional(), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - tax_code: z.string().max(50).optional(), - hsn_code: z.string().max(50).optional(), - taxjar_product_code: z.string().max(50).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: updateAddonMetaDataSchema.optional(), - sku: z.string().max(100).optional(), - accounting_code: z.string().max(100).optional(), - accounting_category1: z.string().max(100).optional(), - accounting_category2: z.string().max(100).optional(), - accounting_category3: z.string().max(100).optional(), - accounting_category4: z.string().max(100).optional(), - is_shippable: z.boolean().default(false).optional(), - shipping_frequency_period: z.number().int().min(1).optional(), - shipping_frequency_period_unit: z - .enum(['year', 'month', 'week', 'day']) - .optional(), - included_in_mrr: z.boolean().optional(), - show_description_in_invoices: z.boolean().default(false).optional(), - show_description_in_quotes: z.boolean().default(false).optional(), - price_in_decimal: z.string().max(39).optional(), - proration_type: z - .enum(['site_default', 'partial_term', 'full_term']) - .optional(), - tiers: updateAddonTiersSchema.optional(), - tax_providers_fields: updateAddonTaxProvidersFieldsSchema.optional(), -}); -export { updateAddonBodySchema }; diff --git a/src/validation/address/retrieve.validation.ts b/src/validation/address/retrieve.validation.ts deleted file mode 100644 index f85e7c0..0000000 --- a/src/validation/address/retrieve.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Address.retrieve -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveAddressBodySchema = z.looseObject({ - subscription_id: z.string().max(50), - label: z.string().max(50), -}); -export { retrieveAddressBodySchema }; diff --git a/src/validation/alert/create.validation.ts b/src/validation/alert/create.validation.ts deleted file mode 100644 index d457c89..0000000 --- a/src/validation/alert/create.validation.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Generated Zod validator: Alert.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createAlertThresholdSchema = z.object({ - mode: z.enum(['absolute', 'percentage']), - value: z.number(), -}); -const createAlertFilterConditionsSchema = z.object({ - field: z.array(z.enum(['plan_price_id']).optional()).optional(), - operator: z.array(z.enum(['equals', 'not_equals']).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), -}); -const createAlertBodySchema = z.looseObject({ - type: z.enum(['usage_exceeded']), - name: z.string().max(50), - description: z.string().max(65000).optional(), - metered_feature_id: z.string().max(50), - subscription_id: z.string().max(50).optional(), - meta: z.string().max(65000).optional(), - threshold: createAlertThresholdSchema.optional(), - filter_conditions: createAlertFilterConditionsSchema.optional(), -}); -export { createAlertBodySchema }; diff --git a/src/validation/alert/update.validation.ts b/src/validation/alert/update.validation.ts deleted file mode 100644 index 8ea0fd6..0000000 --- a/src/validation/alert/update.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: Alert.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateAlertThresholdSchema = z.object({ - mode: z.enum(['absolute', 'percentage']).optional(), - value: z.number().optional(), -}); -const updateAlertBodySchema = z.looseObject({ - status: z.enum(['enabled', 'disabled']).optional(), - threshold: updateAlertThresholdSchema.optional(), -}); -export { updateAlertBodySchema }; diff --git a/src/validation/attached_item/create.validation.ts b/src/validation/attached_item/create.validation.ts deleted file mode 100644 index e608b5f..0000000 --- a/src/validation/attached_item/create.validation.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Generated Zod validator: AttachedItem.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createAttachedItemBodySchema = z.looseObject({ - item_id: z.string().max(100), - type: z.enum(['recommended', 'mandatory', 'optional']).optional(), - billing_cycles: z.number().int().min(1).optional(), - quantity: z.number().int().min(1).optional(), - quantity_in_decimal: z.string().max(33).optional(), - charge_on_event: z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - 'on_demand', - ]) - .optional(), - charge_once: z.boolean().optional(), - business_entity_id: z.string().max(50).optional(), -}); -export { createAttachedItemBodySchema }; diff --git a/src/validation/attached_item/delete.validation.ts b/src/validation/attached_item/delete.validation.ts deleted file mode 100644 index b33b493..0000000 --- a/src/validation/attached_item/delete.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: AttachedItem.delete -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteAttachedItemBodySchema = z.looseObject({ - parent_item_id: z.string().max(100), -}); -export { deleteAttachedItemBodySchema }; diff --git a/src/validation/attached_item/retrieve.validation.ts b/src/validation/attached_item/retrieve.validation.ts deleted file mode 100644 index b8518d3..0000000 --- a/src/validation/attached_item/retrieve.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: AttachedItem.retrieve -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveAttachedItemBodySchema = z.looseObject({ - parent_item_id: z.string().max(100), -}); -export { retrieveAttachedItemBodySchema }; diff --git a/src/validation/attached_item/update.validation.ts b/src/validation/attached_item/update.validation.ts deleted file mode 100644 index 89e761b..0000000 --- a/src/validation/attached_item/update.validation.ts +++ /dev/null @@ -1,23 +0,0 @@ -// Generated Zod validator: AttachedItem.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateAttachedItemBodySchema = z.looseObject({ - parent_item_id: z.string().max(100), - type: z.enum(['recommended', 'mandatory', 'optional']).optional(), - billing_cycles: z.number().int().min(1).optional(), - quantity: z.number().int().min(1).optional(), - quantity_in_decimal: z.string().max(33).optional(), - charge_on_event: z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - 'on_demand', - ]) - .optional(), - charge_once: z.boolean().optional(), -}); -export { updateAttachedItemBodySchema }; diff --git a/src/validation/business_entity/create_transfers.validation.ts b/src/validation/business_entity/create_transfers.validation.ts deleted file mode 100644 index 2c943f2..0000000 --- a/src/validation/business_entity/create_transfers.validation.ts +++ /dev/null @@ -1,12 +0,0 @@ -// Generated Zod validator: BusinessEntity.createTransfers -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createTransfersBusinessEntityBodySchema = z.looseObject({ - active_resource_ids: z.array(z.string().max(50).optional()), - destination_business_entity_ids: z.array(z.string().max(50).optional()), - source_business_entity_ids: z.array(z.string().max(50).optional()).optional(), - resource_types: z.array(z.string().max(50).optional()), - reason_codes: z.array(z.string().max(50).optional()), -}); -export { createTransfersBusinessEntityBodySchema }; diff --git a/src/validation/business_entity/get_transfers.validation.ts b/src/validation/business_entity/get_transfers.validation.ts deleted file mode 100644 index 76f7353..0000000 --- a/src/validation/business_entity/get_transfers.validation.ts +++ /dev/null @@ -1,34 +0,0 @@ -// Generated Zod validator: BusinessEntity.getTransfers -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const getTransfersBusinessEntityResourceTypeSchema = z.object({ - is: z.string().min(1).optional(), -}); -const getTransfersBusinessEntityResourceIdSchema = z.object({ - is: z.string().min(1).optional(), -}); -const getTransfersBusinessEntityActiveResourceIdSchema = z.object({ - is: z.string().min(1).optional(), -}); -const getTransfersBusinessEntityCreatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const getTransfersBusinessEntitySortBySchema = z.looseObject({ - asc: z.enum(['created_at']).optional(), - desc: z.enum(['created_at']).optional(), -}); -const getTransfersBusinessEntityBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - resource_type: getTransfersBusinessEntityResourceTypeSchema.optional(), - resource_id: getTransfersBusinessEntityResourceIdSchema.optional(), - active_resource_id: - getTransfersBusinessEntityActiveResourceIdSchema.optional(), - created_at: getTransfersBusinessEntityCreatedAtSchema.optional(), - sort_by: getTransfersBusinessEntitySortBySchema.optional(), -}); -export { getTransfersBusinessEntityBodySchema }; diff --git a/src/validation/card/copy_card_for_customer.validation.ts b/src/validation/card/copy_card_for_customer.validation.ts deleted file mode 100644 index 8921ec7..0000000 --- a/src/validation/card/copy_card_for_customer.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Card.copyCardForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const copyCardForCustomerCardBodySchema = z.looseObject({ - gateway_account_id: z.string().max(50), -}); -export { copyCardForCustomerCardBodySchema }; diff --git a/src/validation/card/switch_gateway_for_customer.validation.ts b/src/validation/card/switch_gateway_for_customer.validation.ts deleted file mode 100644 index 03334d0..0000000 --- a/src/validation/card/switch_gateway_for_customer.validation.ts +++ /dev/null @@ -1,66 +0,0 @@ -// Generated Zod validator: Card.switchGatewayForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const switchGatewayForCustomerCardBodySchema = z.looseObject({ - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'wirecard', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50), -}); -export { switchGatewayForCustomerCardBodySchema }; diff --git a/src/validation/comment/create.validation.ts b/src/validation/comment/create.validation.ts deleted file mode 100644 index 709ea88..0000000 --- a/src/validation/comment/create.validation.ts +++ /dev/null @@ -1,27 +0,0 @@ -// Generated Zod validator: Comment.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createCommentBodySchema = z.looseObject({ - entity_type: z.enum([ - 'customer', - 'subscription', - 'invoice', - 'quote', - 'credit_note', - 'transaction', - 'plan', - 'addon', - 'coupon', - 'order', - 'business_entity', - 'item_family', - 'item', - 'item_price', - 'price_variant', - ]), - entity_id: z.string().max(100), - notes: z.string().max(1000), - added_by: z.string().max(100).optional(), -}); -export { createCommentBodySchema }; diff --git a/src/validation/comment/list.validation.ts b/src/validation/comment/list.validation.ts deleted file mode 100644 index ba9312d..0000000 --- a/src/validation/comment/list.validation.ts +++ /dev/null @@ -1,41 +0,0 @@ -// Generated Zod validator: Comment.list -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listCommentCreatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const listCommentSortBySchema = z.looseObject({ - asc: z.enum(['created_at']).optional(), - desc: z.enum(['created_at']).optional(), -}); -const listCommentBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - entity_type: z - .enum([ - 'customer', - 'subscription', - 'invoice', - 'quote', - 'credit_note', - 'transaction', - 'plan', - 'addon', - 'coupon', - 'order', - 'business_entity', - 'item_family', - 'item', - 'item_price', - 'price_variant', - ]) - .optional(), - entity_id: z.string().max(100).optional(), - created_at: listCommentCreatedAtSchema.optional(), - sort_by: listCommentSortBySchema.optional(), -}); -export { listCommentBodySchema }; diff --git a/src/validation/coupon/copy.validation.ts b/src/validation/coupon/copy.validation.ts deleted file mode 100644 index f472590..0000000 --- a/src/validation/coupon/copy.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Coupon.copy -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const copyCouponBodySchema = z.looseObject({ - from_site: z.string().max(50), - id_at_from_site: z.string().max(100), - id: z.string().max(100).optional(), - for_site_merging: z.boolean().default(false).optional(), -}); -export { copyCouponBodySchema }; diff --git a/src/validation/coupon/create.validation.ts b/src/validation/coupon/create.validation.ts deleted file mode 100644 index d7d20cf..0000000 --- a/src/validation/coupon/create.validation.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Generated Zod validator: Coupon.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createCouponMetaDataSchema = z.looseObject({}); -const createCouponBodySchema = z.looseObject({ - id: z.string().max(100), - name: z.string().max(50), - invoice_name: z.string().max(100).optional(), - discount_type: z - .enum(['fixed_amount', 'percentage', 'offer_quantity']) - .optional(), - discount_amount: z.number().int().min(0).optional(), - currency_code: z.string().max(3).optional(), - discount_percentage: z.number().min(0.01).max(100).optional(), - discount_quantity: z.number().int().min(1).optional(), - apply_on: z.enum([ - 'invoice_amount', - 'specified_items_total', - 'each_specified_item', - 'each_unit_of_specified_items', - ]), - duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), - duration_month: z.number().int().min(1).max(240).optional(), - valid_till: z.number().int().optional(), - max_redemptions: z.number().int().min(1).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: createCouponMetaDataSchema.optional(), - included_in_mrr: z.boolean().optional(), - period: z.number().int().min(1).optional(), - period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - plan_constraint: z.enum(['none', 'all', 'specific']).optional(), - addon_constraint: z.enum(['none', 'all', 'specific']).optional(), - plan_ids: z.array(z.string().max(100).optional()).optional(), - addon_ids: z.array(z.string().max(100).optional()).optional(), - status: z.enum(['active', 'archived']).optional(), -}); -export { createCouponBodySchema }; diff --git a/src/validation/coupon/create_for_items.validation.ts b/src/validation/coupon/create_for_items.validation.ts deleted file mode 100644 index 2ed2821..0000000 --- a/src/validation/coupon/create_for_items.validation.ts +++ /dev/null @@ -1,70 +0,0 @@ -// Generated Zod validator: Coupon.createForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForItemsCouponMetaDataSchema = z.looseObject({}); -const createForItemsCouponItemConstraintsSchema = z.object({ - constraint: z.array( - z.enum(['none', 'all', 'specific', 'criteria']).optional(), - ), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()), - item_price_ids: z.array(z.array(z.string().optional()).optional()).optional(), -}); -const createForItemsCouponItemConstraintCriteriaSchema = z.object({ - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - item_family_ids: z - .array(z.array(z.string().optional()).optional()) - .optional(), - currencies: z.array(z.array(z.string().optional()).optional()).optional(), - item_price_periods: z - .array(z.array(z.string().optional()).optional()) - .optional(), -}); -const createForItemsCouponCouponConstraintsSchema = z.object({ - entity_type: z.array(z.enum(['customer']).optional()), - type: z.array( - z - .enum([ - 'max_redemptions', - 'unique_by', - 'existing_customer', - 'new_customer', - ]) - .optional(), - ), - value: z.array(z.string().max(65000).optional()).optional(), -}); -const createForItemsCouponBodySchema = z.looseObject({ - id: z.string().max(100), - name: z.string().max(50), - invoice_name: z.string().max(100).optional(), - discount_type: z - .enum(['fixed_amount', 'percentage', 'offer_quantity']) - .optional(), - discount_amount: z.number().int().min(0).optional(), - currency_code: z.string().max(3).optional(), - discount_percentage: z.number().min(0.01).max(100).optional(), - discount_quantity: z.number().int().min(1).optional(), - apply_on: z.enum([ - 'invoice_amount', - 'specified_items_total', - 'each_specified_item', - 'each_unit_of_specified_items', - ]), - duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), - duration_month: z.number().int().min(1).max(240).optional(), - valid_from: z.number().int().optional(), - valid_till: z.number().int().optional(), - max_redemptions: z.number().int().min(1).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: createForItemsCouponMetaDataSchema.optional(), - included_in_mrr: z.boolean().optional(), - period: z.number().int().min(1).optional(), - period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - status: z.enum(['active', 'archived']).optional(), - item_constraints: createForItemsCouponItemConstraintsSchema.optional(), - item_constraint_criteria: - createForItemsCouponItemConstraintCriteriaSchema.optional(), - coupon_constraints: createForItemsCouponCouponConstraintsSchema.optional(), -}); -export { createForItemsCouponBodySchema }; diff --git a/src/validation/coupon/update.validation.ts b/src/validation/coupon/update.validation.ts deleted file mode 100644 index 1928b2f..0000000 --- a/src/validation/coupon/update.validation.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Generated Zod validator: Coupon.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateCouponMetaDataSchema = z.looseObject({}); -const updateCouponBodySchema = z.looseObject({ - name: z.string().max(50).optional(), - invoice_name: z.string().max(100).optional(), - discount_type: z - .enum(['fixed_amount', 'percentage', 'offer_quantity']) - .optional(), - discount_amount: z.number().int().min(0).optional(), - currency_code: z.string().max(3).optional(), - discount_percentage: z.number().min(0.01).max(100).optional(), - discount_quantity: z.number().int().min(1).optional(), - apply_on: z - .enum([ - 'invoice_amount', - 'specified_items_total', - 'each_specified_item', - 'each_unit_of_specified_items', - ]) - .optional(), - duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), - duration_month: z.number().int().min(1).max(240).optional(), - valid_till: z.number().int().optional(), - max_redemptions: z.number().int().min(1).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: updateCouponMetaDataSchema.optional(), - included_in_mrr: z.boolean().optional(), - period: z.number().int().min(1).optional(), - period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - plan_constraint: z.enum(['none', 'all', 'specific']).optional(), - addon_constraint: z.enum(['none', 'all', 'specific']).optional(), - plan_ids: z.array(z.string().max(100).optional()).optional(), - addon_ids: z.array(z.string().max(100).optional()).optional(), -}); -export { updateCouponBodySchema }; diff --git a/src/validation/coupon/update_for_items.validation.ts b/src/validation/coupon/update_for_items.validation.ts deleted file mode 100644 index 478844a..0000000 --- a/src/validation/coupon/update_for_items.validation.ts +++ /dev/null @@ -1,70 +0,0 @@ -// Generated Zod validator: Coupon.updateForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateForItemsCouponMetaDataSchema = z.looseObject({}); -const updateForItemsCouponItemConstraintsSchema = z.object({ - constraint: z.array( - z.enum(['none', 'all', 'specific', 'criteria']).optional(), - ), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()), - item_price_ids: z.array(z.array(z.string().optional()).optional()).optional(), -}); -const updateForItemsCouponItemConstraintCriteriaSchema = z.object({ - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - item_family_ids: z - .array(z.array(z.string().optional()).optional()) - .optional(), - currencies: z.array(z.array(z.string().optional()).optional()).optional(), - item_price_periods: z - .array(z.array(z.string().optional()).optional()) - .optional(), -}); -const updateForItemsCouponCouponConstraintsSchema = z.object({ - entity_type: z.array(z.enum(['customer']).optional()), - type: z.array( - z - .enum([ - 'max_redemptions', - 'unique_by', - 'existing_customer', - 'new_customer', - ]) - .optional(), - ), - value: z.array(z.string().max(65000).optional()).optional(), -}); -const updateForItemsCouponBodySchema = z.looseObject({ - name: z.string().max(50).optional(), - invoice_name: z.string().max(100).optional(), - discount_type: z - .enum(['fixed_amount', 'percentage', 'offer_quantity']) - .optional(), - discount_amount: z.number().int().min(0).optional(), - currency_code: z.string().max(3).optional(), - discount_percentage: z.number().min(0.01).max(100).optional(), - discount_quantity: z.number().int().min(1).optional(), - apply_on: z - .enum([ - 'invoice_amount', - 'specified_items_total', - 'each_specified_item', - 'each_unit_of_specified_items', - ]) - .optional(), - duration_type: z.enum(['one_time', 'forever', 'limited_period']).optional(), - duration_month: z.number().int().min(1).max(240).optional(), - valid_from: z.number().int().optional(), - valid_till: z.number().int().optional(), - max_redemptions: z.number().int().min(1).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: updateForItemsCouponMetaDataSchema.optional(), - included_in_mrr: z.boolean().optional(), - period: z.number().int().min(1).optional(), - period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - item_constraints: updateForItemsCouponItemConstraintsSchema.optional(), - item_constraint_criteria: - updateForItemsCouponItemConstraintCriteriaSchema.optional(), - coupon_constraints: updateForItemsCouponCouponConstraintsSchema.optional(), -}); -export { updateForItemsCouponBodySchema }; diff --git a/src/validation/coupon_code/create.validation.ts b/src/validation/coupon_code/create.validation.ts deleted file mode 100644 index da9b922..0000000 --- a/src/validation/coupon_code/create.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: CouponCode.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createCouponCodeBodySchema = z.looseObject({ - coupon_id: z.string().max(100), - coupon_set_name: z.string().max(50), - code: z.string().max(50), -}); -export { createCouponCodeBodySchema }; diff --git a/src/validation/coupon_set/add_coupon_codes.validation.ts b/src/validation/coupon_set/add_coupon_codes.validation.ts deleted file mode 100644 index 4638025..0000000 --- a/src/validation/coupon_set/add_coupon_codes.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: CouponSet.addCouponCodes -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addCouponCodesCouponSetBodySchema = z.looseObject({ - code: z.array(z.string().max(50).optional()).optional(), -}); -export { addCouponCodesCouponSetBodySchema }; diff --git a/src/validation/coupon_set/create.validation.ts b/src/validation/coupon_set/create.validation.ts deleted file mode 100644 index 7bfd35e..0000000 --- a/src/validation/coupon_set/create.validation.ts +++ /dev/null @@ -1,12 +0,0 @@ -// Generated Zod validator: CouponSet.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createCouponSetMetaDataSchema = z.looseObject({}); -const createCouponSetBodySchema = z.looseObject({ - coupon_id: z.string().max(100), - name: z.string().max(50), - id: z.string().max(50), - meta_data: createCouponSetMetaDataSchema.optional(), -}); -export { createCouponSetBodySchema }; diff --git a/src/validation/coupon_set/update.validation.ts b/src/validation/coupon_set/update.validation.ts deleted file mode 100644 index 57695af..0000000 --- a/src/validation/coupon_set/update.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: CouponSet.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateCouponSetMetaDataSchema = z.looseObject({}); -const updateCouponSetBodySchema = z.looseObject({ - name: z.string().max(50).optional(), - meta_data: updateCouponSetMetaDataSchema.optional(), -}); -export { updateCouponSetBodySchema }; diff --git a/src/validation/credit_note/create.validation.ts b/src/validation/credit_note/create.validation.ts deleted file mode 100644 index 83f9fc5..0000000 --- a/src/validation/credit_note/create.validation.ts +++ /dev/null @@ -1,53 +0,0 @@ -// Generated Zod validator: CreditNote.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createCreditNoteLineItemsSchema = z.object({ - reference_line_item_id: z.array(z.string().max(40).optional()).optional(), - unit_amount: z.array(z.number().int().optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - quantity: z.array(z.number().int().optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - amount: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - entity_type: z - .array( - z - .enum([ - 'adhoc', - 'plan_item_price', - 'addon_item_price', - 'charge_item_price', - 'plan', - 'addon', - ]) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), -}); -const createCreditNoteBodySchema = z.looseObject({ - reference_invoice_id: z.string().max(50).optional(), - customer_id: z.string().max(50).optional(), - total: z.number().int().min(0).optional(), - type: z.enum(['adjustment', 'refundable', 'store']), - reason_code: z - .enum([ - 'product_unsatisfactory', - 'service_unsatisfactory', - 'order_change', - 'order_cancellation', - 'waiver', - 'other', - ]) - .optional(), - create_reason_code: z.string().max(100).optional(), - date: z.number().int().optional(), - customer_notes: z.string().max(2000).optional(), - currency_code: z.string().max(3).optional(), - comment: z.string().max(300).optional(), - line_items: createCreditNoteLineItemsSchema.optional(), -}); -export { createCreditNoteBodySchema }; diff --git a/src/validation/credit_note/credit_notes_for_customer.validation.ts b/src/validation/credit_note/credit_notes_for_customer.validation.ts deleted file mode 100644 index bdd99e0..0000000 --- a/src/validation/credit_note/credit_notes_for_customer.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: CreditNote.creditNotesForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const creditNotesForCustomerCreditNoteBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { creditNotesForCustomerCreditNoteBodySchema }; diff --git a/src/validation/credit_note/delete.validation.ts b/src/validation/credit_note/delete.validation.ts deleted file mode 100644 index 8c74fb2..0000000 --- a/src/validation/credit_note/delete.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: CreditNote.delete -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteCreditNoteBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), -}); -export { deleteCreditNoteBodySchema }; diff --git a/src/validation/credit_note/import_credit_note.validation.ts b/src/validation/credit_note/import_credit_note.validation.ts deleted file mode 100644 index e438da4..0000000 --- a/src/validation/credit_note/import_credit_note.validation.ts +++ /dev/null @@ -1,167 +0,0 @@ -// Generated Zod validator: CreditNote.importCreditNote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importCreditNoteCreditNoteLineItemsSchema = z.object({ - reference_line_item_id: z.array(z.string().max(40).optional()).optional(), - id: z.array(z.string().max(40).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), - subscription_id: z.array(z.string().max(50).optional()).optional(), - description: z.array(z.string().max(250).optional()), - unit_amount: z.array(z.number().int().optional()).optional(), - quantity: z.array(z.number().int().optional()).optional(), - amount: z.array(z.number().int().optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - entity_type: z - .array( - z - .enum([ - 'adhoc', - 'plan_item_price', - 'addon_item_price', - 'charge_item_price', - 'plan_setup', - 'plan', - 'addon', - ]) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), - item_level_discount1_entity_id: z - .array(z.string().max(100).optional()) - .optional(), - item_level_discount1_amount: z - .array(z.number().int().min(0).optional()) - .optional(), - item_level_discount2_entity_id: z - .array(z.string().max(100).optional()) - .optional(), - item_level_discount2_amount: z - .array(z.number().int().min(0).optional()) - .optional(), - tax1_name: z.array(z.string().max(50).optional()).optional(), - tax1_amount: z.array(z.number().int().min(0).optional()).optional(), - tax2_name: z.array(z.string().max(50).optional()).optional(), - tax2_amount: z.array(z.number().int().min(0).optional()).optional(), - tax3_name: z.array(z.string().max(50).optional()).optional(), - tax3_amount: z.array(z.number().int().min(0).optional()).optional(), - tax4_name: z.array(z.string().max(50).optional()).optional(), - tax4_amount: z.array(z.number().int().min(0).optional()).optional(), - tax5_name: z.array(z.string().max(50).optional()).optional(), - tax5_amount: z.array(z.number().int().min(0).optional()).optional(), - tax6_name: z.array(z.string().max(50).optional()).optional(), - tax6_amount: z.array(z.number().int().min(0).optional()).optional(), - tax7_name: z.array(z.string().max(50).optional()).optional(), - tax7_amount: z.array(z.number().int().min(0).optional()).optional(), - tax8_name: z.array(z.string().max(50).optional()).optional(), - tax8_amount: z.array(z.number().int().min(0).optional()).optional(), - tax9_name: z.array(z.string().max(50).optional()).optional(), - tax9_amount: z.array(z.number().int().min(0).optional()).optional(), - tax10_name: z.array(z.string().max(50).optional()).optional(), - tax10_amount: z.array(z.number().int().min(0).optional()).optional(), -}); -const importCreditNoteCreditNoteLineItemTiersSchema = z.object({ - line_item_id: z.array(z.string().max(40).optional()), - starting_unit: z.array(z.number().int().min(0).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - quantity_used: z.array(z.number().int().min(0).optional()).optional(), - unit_amount: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), -}); -const importCreditNoteCreditNoteDiscountsSchema = z.object({ - line_item_id: z.array(z.string().max(40).optional()).optional(), - entity_type: z.array( - z - .enum([ - 'item_level_coupon', - 'document_level_coupon', - 'promotional_credits', - 'item_level_discount', - 'document_level_discount', - ]) - .optional(), - ), - entity_id: z.array(z.string().max(100).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()), -}); -const importCreditNoteCreditNoteTaxesSchema = z.object({ - name: z.array(z.string().max(100).optional()), - rate: z.array(z.number().min(0).max(100).optional()), - amount: z.array(z.number().int().min(0).optional()).optional(), - description: z.array(z.string().max(50).optional()).optional(), - juris_type: z - .array( - z - .enum([ - 'country', - 'federal', - 'state', - 'county', - 'city', - 'special', - 'unincorporated', - 'other', - ]) - .optional(), - ) - .optional(), - juris_name: z.array(z.string().max(250).optional()).optional(), - juris_code: z.array(z.string().max(250).optional()).optional(), -}); -const importCreditNoteCreditNoteAllocationsSchema = z.object({ - invoice_id: z.array(z.string().max(50).optional()), - allocated_amount: z.array(z.number().int().min(1).optional()), - allocated_at: z.array(z.number().int().optional()), -}); -const importCreditNoteCreditNoteLinkedRefundsSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - amount: z.array(z.number().int().min(1).optional()), - payment_method: z.array( - z - .enum([ - 'cash', - 'check', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]) - .optional(), - ), - date: z.array(z.number().int().optional()), - reference_number: z.array(z.string().max(100).min(1).optional()).optional(), -}); -const importCreditNoteCreditNoteBodySchema = z.looseObject({ - id: z.string().max(50), - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - reference_invoice_id: z.string().max(50), - type: z.enum(['adjustment', 'refundable', 'store']), - currency_code: z.string().max(3).optional(), - create_reason_code: z.string().max(100), - date: z.number().int(), - status: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), - total: z.number().int().min(0).optional(), - refunded_at: z.number().int().optional(), - voided_at: z.number().int().optional(), - sub_total: z.number().int().min(0).optional(), - round_off_amount: z.number().int().min(-99).max(99).optional(), - fractional_correction: z.number().int().min(-50000).max(50000).optional(), - vat_number_prefix: z.string().max(10).optional(), - line_items: importCreditNoteCreditNoteLineItemsSchema.optional(), - line_item_tiers: importCreditNoteCreditNoteLineItemTiersSchema.optional(), - discounts: importCreditNoteCreditNoteDiscountsSchema.optional(), - taxes: importCreditNoteCreditNoteTaxesSchema.optional(), - allocations: importCreditNoteCreditNoteAllocationsSchema.optional(), - linked_refunds: importCreditNoteCreditNoteLinkedRefundsSchema.optional(), -}); -export { importCreditNoteCreditNoteBodySchema }; diff --git a/src/validation/credit_note/pdf.validation.ts b/src/validation/credit_note/pdf.validation.ts deleted file mode 100644 index 810403f..0000000 --- a/src/validation/credit_note/pdf.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: CreditNote.pdf -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const pdfCreditNoteBodySchema = z.looseObject({ - disposition_type: z.enum(['attachment', 'inline']).optional(), -}); -export { pdfCreditNoteBodySchema }; diff --git a/src/validation/credit_note/record_refund.validation.ts b/src/validation/credit_note/record_refund.validation.ts deleted file mode 100644 index 738a2bf..0000000 --- a/src/validation/credit_note/record_refund.validation.ts +++ /dev/null @@ -1,27 +0,0 @@ -// Generated Zod validator: CreditNote.recordRefund -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const recordRefundCreditNoteTransactionSchema = z.object({ - id: z.string().max(40).optional(), - amount: z.number().int().min(0).optional(), - payment_method: z.enum([ - 'cash', - 'check', - 'chargeback', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]), - reference_number: z.string().max(100).optional(), - custom_payment_method_id: z.string().max(50).optional(), - date: z.number().int(), -}); -const recordRefundCreditNoteBodySchema = z.looseObject({ - refund_reason_code: z.string().max(100).optional(), - comment: z.string().max(300).optional(), - transaction: recordRefundCreditNoteTransactionSchema.optional(), -}); -export { recordRefundCreditNoteBodySchema }; diff --git a/src/validation/credit_note/refund.validation.ts b/src/validation/credit_note/refund.validation.ts deleted file mode 100644 index bab4188..0000000 --- a/src/validation/credit_note/refund.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: CreditNote.refund -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const refundCreditNoteBodySchema = z.looseObject({ - refund_amount: z.number().int().min(1).optional(), - customer_notes: z.string().max(2000).optional(), - refund_reason_code: z.string().max(100).optional(), -}); -export { refundCreditNoteBodySchema }; diff --git a/src/validation/credit_note/remove_tax_withheld_refund.validation.ts b/src/validation/credit_note/remove_tax_withheld_refund.validation.ts deleted file mode 100644 index ad1dc2a..0000000 --- a/src/validation/credit_note/remove_tax_withheld_refund.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: CreditNote.removeTaxWithheldRefund -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const removeTaxWithheldRefundCreditNoteTaxWithheldSchema = z.object({ - id: z.string().max(40), -}); -const removeTaxWithheldRefundCreditNoteBodySchema = z.looseObject({ - tax_withheld: removeTaxWithheldRefundCreditNoteTaxWithheldSchema.optional(), -}); -export { removeTaxWithheldRefundCreditNoteBodySchema }; diff --git a/src/validation/credit_note/retrieve.validation.ts b/src/validation/credit_note/retrieve.validation.ts deleted file mode 100644 index 67322a1..0000000 --- a/src/validation/credit_note/retrieve.validation.ts +++ /dev/null @@ -1,20 +0,0 @@ -// Generated Zod validator: CreditNote.retrieve -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveCreditNoteSubscriptionIdSchema = z.object({ - is: z.string().min(1).optional(), -}); -const retrieveCreditNoteCustomerIdSchema = z.object({ - is: z.string().min(1).optional(), -}); -const retrieveCreditNoteLineItemSchema = z.object({ - subscription_id: retrieveCreditNoteSubscriptionIdSchema.optional(), - customer_id: retrieveCreditNoteCustomerIdSchema.optional(), -}); -const retrieveCreditNoteBodySchema = z.looseObject({ - line_items_limit: z.number().int().min(1).max(300).optional(), - line_items_offset: z.string().max(1000).optional(), - line_item: retrieveCreditNoteLineItemSchema.optional(), -}); -export { retrieveCreditNoteBodySchema }; diff --git a/src/validation/credit_note/void_credit_note.validation.ts b/src/validation/credit_note/void_credit_note.validation.ts deleted file mode 100644 index 8a854a9..0000000 --- a/src/validation/credit_note/void_credit_note.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: CreditNote.voidCreditNote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const voidCreditNoteCreditNoteBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), -}); -export { voidCreditNoteCreditNoteBodySchema }; diff --git a/src/validation/currency/add_schedule.validation.ts b/src/validation/currency/add_schedule.validation.ts deleted file mode 100644 index 9b082ec..0000000 --- a/src/validation/currency/add_schedule.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Currency.addSchedule -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addScheduleCurrencyBodySchema = z.looseObject({ - manual_exchange_rate: z.string().max(20), - schedule_at: z.number().int(), -}); -export { addScheduleCurrencyBodySchema }; diff --git a/src/validation/currency/create.validation.ts b/src/validation/currency/create.validation.ts deleted file mode 100644 index 9ed7109..0000000 --- a/src/validation/currency/create.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: Currency.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createCurrencyBodySchema = z.looseObject({ - currency_code: z.string().max(3), - forex_type: z.enum(['manual', 'auto']), - manual_exchange_rate: z.string().max(20).optional(), -}); -export { createCurrencyBodySchema }; diff --git a/src/validation/currency/list.validation.ts b/src/validation/currency/list.validation.ts deleted file mode 100644 index 35658f7..0000000 --- a/src/validation/currency/list.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Currency.list -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listCurrencyBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { listCurrencyBodySchema }; diff --git a/src/validation/currency/update.validation.ts b/src/validation/currency/update.validation.ts deleted file mode 100644 index c5decb0..0000000 --- a/src/validation/currency/update.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Currency.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateCurrencyBodySchema = z.looseObject({ - forex_type: z.enum(['manual', 'auto']), - manual_exchange_rate: z.string().max(20).optional(), -}); -export { updateCurrencyBodySchema }; diff --git a/src/validation/customer/add_contact.validation.ts b/src/validation/customer/add_contact.validation.ts deleted file mode 100644 index 0ac9e43..0000000 --- a/src/validation/customer/add_contact.validation.ts +++ /dev/null @@ -1,19 +0,0 @@ -// Generated Zod validator: Customer.addContact -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addContactCustomerContactSchema = z.object({ - id: z.string().max(150).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70), - phone: z.string().max(50).optional(), - label: z.string().max(50).optional(), - enabled: z.boolean().default(false).optional(), - send_billing_email: z.boolean().default(false).optional(), - send_account_email: z.boolean().default(false).optional(), -}); -const addContactCustomerBodySchema = z.looseObject({ - contact: addContactCustomerContactSchema.optional(), -}); -export { addContactCustomerBodySchema }; diff --git a/src/validation/customer/add_promotional_credits.validation.ts b/src/validation/customer/add_promotional_credits.validation.ts deleted file mode 100644 index 6a1f539..0000000 --- a/src/validation/customer/add_promotional_credits.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Customer.addPromotionalCredits -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addPromotionalCreditsCustomerBodySchema = z.looseObject({ - amount: z.number().int().min(1), - currency_code: z.string().max(3).optional(), - description: z.string().max(250), - credit_type: z - .enum(['loyalty_credits', 'referral_rewards', 'general']) - .optional(), - reference: z.string().max(500).optional(), -}); -export { addPromotionalCreditsCustomerBodySchema }; diff --git a/src/validation/customer/assign_payment_role.validation.ts b/src/validation/customer/assign_payment_role.validation.ts deleted file mode 100644 index 62d36d4..0000000 --- a/src/validation/customer/assign_payment_role.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Customer.assignPaymentRole -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const assignPaymentRoleCustomerBodySchema = z.looseObject({ - payment_source_id: z.string().max(40), - role: z.enum(['primary', 'backup', 'none']), -}); -export { assignPaymentRoleCustomerBodySchema }; diff --git a/src/validation/customer/change_billing_date.validation.ts b/src/validation/customer/change_billing_date.validation.ts deleted file mode 100644 index 6a7c9d6..0000000 --- a/src/validation/customer/change_billing_date.validation.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Generated Zod validator: Customer.changeBillingDate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const changeBillingDateCustomerBodySchema = z.looseObject({ - billing_date: z.number().int().min(1).max(31).optional(), - billing_month: z.number().int().min(1).max(12).optional(), - billing_date_mode: z.enum(['using_defaults', 'manually_set']).optional(), - billing_day_of_week: z - .enum([ - 'sunday', - 'monday', - 'tuesday', - 'wednesday', - 'thursday', - 'friday', - 'saturday', - ]) - .optional(), - billing_day_of_week_mode: z - .enum(['using_defaults', 'manually_set']) - .optional(), -}); -export { changeBillingDateCustomerBodySchema }; diff --git a/src/validation/customer/collect_payment.validation.ts b/src/validation/customer/collect_payment.validation.ts deleted file mode 100644 index 0265adc..0000000 --- a/src/validation/customer/collect_payment.validation.ts +++ /dev/null @@ -1,150 +0,0 @@ -// Generated Zod validator: Customer.collectPayment -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const collectPaymentCustomerAdditionalInformationSchema = z.looseObject({}); -const collectPaymentCustomerPaymentMethodSchema = z.object({ - type: z - .enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - tmp_token: z.string().max(65000).optional(), - additional_information: - collectPaymentCustomerAdditionalInformationSchema.optional(), -}); -const collectPaymentCustomerCardSchema = z.object({ - gateway_account_id: z.string().max(50).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - additional_information: - collectPaymentCustomerAdditionalInformationSchema.optional(), -}); -const collectPaymentCustomerPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gw_payment_method_id: z.string().max(65000).optional(), - reference_id: z.string().max(65000).optional(), - additional_information: - collectPaymentCustomerAdditionalInformationSchema.optional(), -}); -const collectPaymentCustomerInvoiceAllocationsSchema = z.object({ - invoice_id: z.array(z.string().max(50).optional()), - allocation_amount: z.array(z.number().int().min(0).optional()).optional(), -}); -const collectPaymentCustomerBodySchema = z.looseObject({ - amount: z.number().int().min(0).optional(), - payment_source_id: z.string().max(40).optional(), - token_id: z.string().max(40).optional(), - replace_primary_payment_source: z.boolean().default(false).optional(), - retain_payment_source: z.boolean().default(false).optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - payment_method: collectPaymentCustomerPaymentMethodSchema.optional(), - card: collectPaymentCustomerCardSchema.optional(), - payment_intent: collectPaymentCustomerPaymentIntentSchema.optional(), - invoice_allocations: - collectPaymentCustomerInvoiceAllocationsSchema.optional(), -}); -export { collectPaymentCustomerBodySchema }; diff --git a/src/validation/customer/contacts_for_customer.validation.ts b/src/validation/customer/contacts_for_customer.validation.ts deleted file mode 100644 index 7cb01e2..0000000 --- a/src/validation/customer/contacts_for_customer.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Customer.contactsForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const contactsForCustomerCustomerBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { contactsForCustomerCustomerBodySchema }; diff --git a/src/validation/customer/create.validation.ts b/src/validation/customer/create.validation.ts deleted file mode 100644 index 2e81259..0000000 --- a/src/validation/customer/create.validation.ts +++ /dev/null @@ -1,378 +0,0 @@ -// Generated Zod validator: Customer.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createCustomerMetaDataSchema = z.looseObject({}); -const createCustomerAdditionalInformationSchema = z.looseObject({}); -const createCustomerCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - tmp_token: z.string().max(300).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - ip_address: z.string().max(50).optional(), - additional_information: createCustomerAdditionalInformationSchema.optional(), -}); -const createCustomerBillingAddressSchema = z.looseObject({}); -const createCustomerBankAccountSchema = z.object({ - gateway_account_id: z.string().max(50).optional(), - iban: z.string().max(50).min(10).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - email: z.string().email().max(70).optional(), - phone: z.string().max(50).optional(), - bank_name: z.string().max(100).optional(), - account_number: z.string().max(17).min(4).optional(), - routing_number: z.string().max(9).min(3).optional(), - bank_code: z.string().max(20).optional(), - account_type: z - .enum(['checking', 'savings', 'business_checking', 'current']) - .optional(), - account_holder_type: z.enum(['individual', 'company']).optional(), - echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), - issuing_country: z.string().max(50).optional(), - swedish_identity_number: z.string().max(12).min(10).optional(), - billing_address: createCustomerBillingAddressSchema.optional(), -}); -const createCustomerPaymentMethodSchema = z.object({ - type: z - .enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - tmp_token: z.string().max(65000).optional(), - issuing_country: z.string().max(50).optional(), - additional_information: createCustomerAdditionalInformationSchema.optional(), -}); -const createCustomerPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: createCustomerAdditionalInformationSchema.optional(), -}); -const createCustomerEntityIdentifiersSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - scheme: z.array(z.string().max(50).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), - standard: z.array(z.string().max(50).optional()).optional(), -}); -const createCustomerTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createCustomerBodySchema = z.looseObject({ - id: z.string().max(50).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - preferred_currency_code: z.string().max(3).optional(), - phone: z.string().max(50).optional(), - company: z.string().max(250).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - net_term_days: z.number().int().optional(), - allow_direct_debit: z.boolean().default(false).optional(), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - entity_identifier_scheme: z.string().max(50).optional(), - entity_identifier_standard: z.string().max(50).optional(), - registered_for_gst: z.boolean().optional(), - is_einvoice_enabled: z.boolean().optional(), - einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - exemption_details: z.array(z.string().optional()).optional(), - customer_type: z - .enum(['residential', 'business', 'senior_citizen', 'industrial']) - .optional(), - client_profile_id: z.string().max(50).optional(), - taxjar_exemption_category: z - .enum(['wholesale', 'government', 'other']) - .optional(), - business_customer_without_vat_number: z.boolean().optional(), - locale: z.string().max(50).optional(), - entity_code: z - .enum([ - 'a', - 'b', - 'c', - 'd', - 'e', - 'f', - 'g', - 'h', - 'i', - 'j', - 'k', - 'l', - 'm', - 'n', - 'p', - 'q', - 'r', - 'med1', - 'med2', - ]) - .optional(), - exempt_number: z.string().max(100).optional(), - meta_data: createCustomerMetaDataSchema.optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - auto_close_invoices: z.boolean().optional(), - consolidated_invoicing: z.boolean().optional(), - token_id: z.string().max(40).optional(), - business_entity_id: z.string().max(50).optional(), - created_from_ip: z.string().max(50).optional(), - invoice_notes: z.string().max(2000).optional(), - card: createCustomerCardSchema.optional(), - bank_account: createCustomerBankAccountSchema.optional(), - payment_method: createCustomerPaymentMethodSchema.optional(), - payment_intent: createCustomerPaymentIntentSchema.optional(), - billing_address: createCustomerBillingAddressSchema.optional(), - entity_identifiers: createCustomerEntityIdentifiersSchema.optional(), - tax_providers_fields: createCustomerTaxProvidersFieldsSchema.optional(), -}); -export { createCustomerBodySchema }; diff --git a/src/validation/customer/deduct_promotional_credits.validation.ts b/src/validation/customer/deduct_promotional_credits.validation.ts deleted file mode 100644 index e0bc051..0000000 --- a/src/validation/customer/deduct_promotional_credits.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Customer.deductPromotionalCredits -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deductPromotionalCreditsCustomerBodySchema = z.looseObject({ - amount: z.number().int().min(1), - currency_code: z.string().max(3).optional(), - description: z.string().max(250), - credit_type: z - .enum(['loyalty_credits', 'referral_rewards', 'general']) - .optional(), - reference: z.string().max(500).optional(), -}); -export { deductPromotionalCreditsCustomerBodySchema }; diff --git a/src/validation/customer/delete.validation.ts b/src/validation/customer/delete.validation.ts deleted file mode 100644 index 740d03c..0000000 --- a/src/validation/customer/delete.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Customer.delete -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteCustomerBodySchema = z.looseObject({ - delete_payment_method: z.boolean().default(true).optional(), -}); -export { deleteCustomerBodySchema }; diff --git a/src/validation/customer/delete_contact.validation.ts b/src/validation/customer/delete_contact.validation.ts deleted file mode 100644 index 43eae03..0000000 --- a/src/validation/customer/delete_contact.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Customer.deleteContact -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteContactCustomerContactSchema = z.object({ - id: z.string().max(150), -}); -const deleteContactCustomerBodySchema = z.looseObject({ - contact: deleteContactCustomerContactSchema.optional(), -}); -export { deleteContactCustomerBodySchema }; diff --git a/src/validation/customer/hierarchy.validation.ts b/src/validation/customer/hierarchy.validation.ts deleted file mode 100644 index 6fa3def..0000000 --- a/src/validation/customer/hierarchy.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Customer.hierarchy -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const hierarchyCustomerBodySchema = z.looseObject({ - hierarchy_operation_type: z.enum([ - 'complete_hierarchy', - 'subordinates', - 'path_to_root', - 'subordinates_with_unbilled_charges_payable_by_parent', - 'immediate_children', - ]), -}); -export { hierarchyCustomerBodySchema }; diff --git a/src/validation/customer/list_hierarchy_detail.validation.ts b/src/validation/customer/list_hierarchy_detail.validation.ts deleted file mode 100644 index eae862c..0000000 --- a/src/validation/customer/list_hierarchy_detail.validation.ts +++ /dev/null @@ -1,16 +0,0 @@ -// Generated Zod validator: Customer.listHierarchyDetail -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listHierarchyDetailCustomerBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - hierarchy_operation_type: z.enum([ - 'complete_hierarchy', - 'subordinates', - 'path_to_root', - 'subordinates_with_unbilled_charges_payable_by_parent', - 'immediate_children', - ]), -}); -export { listHierarchyDetailCustomerBodySchema }; diff --git a/src/validation/customer/merge.validation.ts b/src/validation/customer/merge.validation.ts deleted file mode 100644 index 9d4ad79..0000000 --- a/src/validation/customer/merge.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Customer.merge -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const mergeCustomerBodySchema = z.looseObject({ - from_customer_id: z.string().max(50), - to_customer_id: z.string().max(50), -}); -export { mergeCustomerBodySchema }; diff --git a/src/validation/customer/move.validation.ts b/src/validation/customer/move.validation.ts deleted file mode 100644 index 897a304..0000000 --- a/src/validation/customer/move.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Customer.move -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const moveCustomerBodySchema = z.looseObject({ - id_at_from_site: z.string().max(100), - from_site: z.string().max(50), -}); -export { moveCustomerBodySchema }; diff --git a/src/validation/customer/record_excess_payment.validation.ts b/src/validation/customer/record_excess_payment.validation.ts deleted file mode 100644 index 82cd620..0000000 --- a/src/validation/customer/record_excess_payment.validation.ts +++ /dev/null @@ -1,26 +0,0 @@ -// Generated Zod validator: Customer.recordExcessPayment -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const recordExcessPaymentCustomerTransactionSchema = z.object({ - id: z.string().max(40).optional(), - amount: z.number().int().min(0), - currency_code: z.string().max(3).optional(), - date: z.number().int(), - payment_method: z.enum([ - 'cash', - 'check', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]), - reference_number: z.string().max(100).optional(), - custom_payment_method_id: z.string().max(50).optional(), -}); -const recordExcessPaymentCustomerBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), - transaction: recordExcessPaymentCustomerTransactionSchema.optional(), -}); -export { recordExcessPaymentCustomerBodySchema }; diff --git a/src/validation/customer/relationships.validation.ts b/src/validation/customer/relationships.validation.ts deleted file mode 100644 index 68ead2d..0000000 --- a/src/validation/customer/relationships.validation.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Generated Zod validator: Customer.relationships -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const relationshipsCustomerParentAccountAccessSchema = z.object({ - portal_edit_child_subscriptions: z - .enum(['yes', 'view_only', 'no']) - .optional(), - portal_download_child_invoices: z.enum(['yes', 'view_only', 'no']).optional(), - send_subscription_emails: z.boolean().optional(), - send_payment_emails: z.boolean().optional(), - send_invoice_emails: z.boolean().optional(), -}); -const relationshipsCustomerChildAccountAccessSchema = z.object({ - portal_edit_subscriptions: z.enum(['yes', 'view_only']).optional(), - portal_download_invoices: z.enum(['yes', 'view_only', 'no']).optional(), - send_subscription_emails: z.boolean().optional(), - send_payment_emails: z.boolean().optional(), - send_invoice_emails: z.boolean().optional(), -}); -const relationshipsCustomerBodySchema = z.looseObject({ - parent_id: z.string().max(50).optional(), - payment_owner_id: z.string().max(50).optional(), - invoice_owner_id: z.string().max(50).optional(), - use_default_hierarchy_settings: z.boolean().default(true).optional(), - parent_account_access: - relationshipsCustomerParentAccountAccessSchema.optional(), - child_account_access: - relationshipsCustomerChildAccountAccessSchema.optional(), -}); -export { relationshipsCustomerBodySchema }; diff --git a/src/validation/customer/set_promotional_credits.validation.ts b/src/validation/customer/set_promotional_credits.validation.ts deleted file mode 100644 index 697b60f..0000000 --- a/src/validation/customer/set_promotional_credits.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Customer.setPromotionalCredits -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const setPromotionalCreditsCustomerBodySchema = z.looseObject({ - amount: z.number().int().min(0), - currency_code: z.string().max(3).optional(), - description: z.string().max(250), - credit_type: z - .enum(['loyalty_credits', 'referral_rewards', 'general']) - .optional(), - reference: z.string().max(500).optional(), -}); -export { setPromotionalCreditsCustomerBodySchema }; diff --git a/src/validation/customer/update.validation.ts b/src/validation/customer/update.validation.ts deleted file mode 100644 index 4098813..0000000 --- a/src/validation/customer/update.validation.ts +++ /dev/null @@ -1,79 +0,0 @@ -// Generated Zod validator: Customer.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateCustomerMetaDataSchema = z.looseObject({}); -const updateCustomerTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const updateCustomerBodySchema = z.looseObject({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - preferred_currency_code: z.string().max(3).optional(), - phone: z.string().max(50).optional(), - company: z.string().max(250).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - allow_direct_debit: z.boolean().default(false).optional(), - net_term_days: z.number().int().optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - exemption_details: z.array(z.string().optional()).optional(), - customer_type: z - .enum(['residential', 'business', 'senior_citizen', 'industrial']) - .optional(), - client_profile_id: z.string().max(50).optional(), - taxjar_exemption_category: z - .enum(['wholesale', 'government', 'other']) - .optional(), - locale: z.string().max(50).optional(), - entity_code: z - .enum([ - 'a', - 'b', - 'c', - 'd', - 'e', - 'f', - 'g', - 'h', - 'i', - 'j', - 'k', - 'l', - 'm', - 'n', - 'p', - 'q', - 'r', - 'med1', - 'med2', - ]) - .optional(), - exempt_number: z.string().max(100).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - invoice_notes: z.string().max(2000).optional(), - auto_close_invoices: z.boolean().optional(), - meta_data: updateCustomerMetaDataSchema.optional(), - fraud_flag: z.enum(['safe', 'fraudulent']).optional(), - consolidated_invoicing: z.boolean().optional(), - tax_providers_fields: updateCustomerTaxProvidersFieldsSchema.optional(), -}); -export { updateCustomerBodySchema }; diff --git a/src/validation/customer/update_billing_info.validation.ts b/src/validation/customer/update_billing_info.validation.ts deleted file mode 100644 index 747ff77..0000000 --- a/src/validation/customer/update_billing_info.validation.ts +++ /dev/null @@ -1,52 +0,0 @@ -// Generated Zod validator: Customer.updateBillingInfo -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateBillingInfoCustomerBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateBillingInfoCustomerEntityIdentifiersSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - scheme: z.array(z.string().max(50).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), - operation: z - .array(z.enum(['create', 'update', 'delete']).optional()) - .optional(), - standard: z.array(z.string().max(50).optional()).optional(), -}); -const updateBillingInfoCustomerTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const updateBillingInfoCustomerBodySchema = z.looseObject({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - entity_identifier_scheme: z.string().max(50).optional(), - entity_identifier_standard: z.string().max(50).optional(), - registered_for_gst: z.boolean().optional(), - business_customer_without_vat_number: z.boolean().optional(), - is_einvoice_enabled: z.boolean().optional(), - einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), - billing_address: updateBillingInfoCustomerBillingAddressSchema.optional(), - entity_identifiers: - updateBillingInfoCustomerEntityIdentifiersSchema.optional(), - tax_providers_fields: - updateBillingInfoCustomerTaxProvidersFieldsSchema.optional(), -}); -export { updateBillingInfoCustomerBodySchema }; diff --git a/src/validation/customer/update_contact.validation.ts b/src/validation/customer/update_contact.validation.ts deleted file mode 100644 index e166b88..0000000 --- a/src/validation/customer/update_contact.validation.ts +++ /dev/null @@ -1,19 +0,0 @@ -// Generated Zod validator: Customer.updateContact -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateContactCustomerContactSchema = z.object({ - id: z.string().max(150), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - phone: z.string().max(50).optional(), - label: z.string().max(50).optional(), - enabled: z.boolean().default(false).optional(), - send_billing_email: z.boolean().default(false).optional(), - send_account_email: z.boolean().default(false).optional(), -}); -const updateContactCustomerBodySchema = z.looseObject({ - contact: updateContactCustomerContactSchema.optional(), -}); -export { updateContactCustomerBodySchema }; diff --git a/src/validation/customer/update_hierarchy_settings.validation.ts b/src/validation/customer/update_hierarchy_settings.validation.ts deleted file mode 100644 index 8278645..0000000 --- a/src/validation/customer/update_hierarchy_settings.validation.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Generated Zod validator: Customer.updateHierarchySettings -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateHierarchySettingsCustomerParentAccountAccessSchema = z.object({ - portal_edit_child_subscriptions: z - .enum(['yes', 'view_only', 'no']) - .optional(), - portal_download_child_invoices: z.enum(['yes', 'view_only', 'no']).optional(), - send_subscription_emails: z.boolean().optional(), - send_payment_emails: z.boolean().optional(), - send_invoice_emails: z.boolean().optional(), -}); -const updateHierarchySettingsCustomerChildAccountAccessSchema = z.object({ - portal_edit_subscriptions: z.enum(['yes', 'view_only']).optional(), - portal_download_invoices: z.enum(['yes', 'view_only', 'no']).optional(), - send_subscription_emails: z.boolean().optional(), - send_payment_emails: z.boolean().optional(), - send_invoice_emails: z.boolean().optional(), -}); -const updateHierarchySettingsCustomerBodySchema = z.looseObject({ - use_default_hierarchy_settings: z.boolean().default(true).optional(), - parent_account_access: - updateHierarchySettingsCustomerParentAccountAccessSchema.optional(), - child_account_access: - updateHierarchySettingsCustomerChildAccountAccessSchema.optional(), -}); -export { updateHierarchySettingsCustomerBodySchema }; diff --git a/src/validation/customer/update_payment_method.validation.ts b/src/validation/customer/update_payment_method.validation.ts deleted file mode 100644 index 27f912c..0000000 --- a/src/validation/customer/update_payment_method.validation.ts +++ /dev/null @@ -1,125 +0,0 @@ -// Generated Zod validator: Customer.updatePaymentMethod -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updatePaymentMethodCustomerAdditionalInformationSchema = z.looseObject( - {}, -); -const updatePaymentMethodCustomerPaymentMethodSchema = z.object({ - type: z.enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]), - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - tmp_token: z.string().max(65000).optional(), - issuing_country: z.string().max(50).optional(), - additional_information: - updatePaymentMethodCustomerAdditionalInformationSchema.optional(), -}); -const updatePaymentMethodCustomerBodySchema = z.looseObject({ - payment_method: updatePaymentMethodCustomerPaymentMethodSchema.optional(), -}); -export { updatePaymentMethodCustomerBodySchema }; diff --git a/src/validation/customer_entitlement/entitlements_for_customer.validation.ts b/src/validation/customer_entitlement/entitlements_for_customer.validation.ts deleted file mode 100644 index 2e4015c..0000000 --- a/src/validation/customer_entitlement/entitlements_for_customer.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: CustomerEntitlement.entitlementsForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const entitlementsForCustomerCustomerEntitlementBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - consolidate_entitlements: z.boolean().default(false).optional(), -}); -export { entitlementsForCustomerCustomerEntitlementBodySchema }; diff --git a/src/validation/differential_price/create.validation.ts b/src/validation/differential_price/create.validation.ts deleted file mode 100644 index 02e0f2d..0000000 --- a/src/validation/differential_price/create.validation.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Generated Zod validator: DifferentialPrice.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createDifferentialPriceParentPeriodsSchema = z.object({ - period_unit: z.array(z.enum(['day', 'week', 'month', 'year']).optional()), - period: z.array(z.array(z.string().optional()).optional()).optional(), -}); -const createDifferentialPriceTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createDifferentialPriceBodySchema = z.looseObject({ - parent_item_id: z.string().max(100), - price: z.number().int().min(0).optional(), - price_in_decimal: z.string().max(39).optional(), - business_entity_id: z.string().max(50).optional(), - parent_periods: createDifferentialPriceParentPeriodsSchema.optional(), - tiers: createDifferentialPriceTiersSchema.optional(), -}); -export { createDifferentialPriceBodySchema }; diff --git a/src/validation/differential_price/delete.validation.ts b/src/validation/differential_price/delete.validation.ts deleted file mode 100644 index 3e4ba4c..0000000 --- a/src/validation/differential_price/delete.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: DifferentialPrice.delete -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteDifferentialPriceBodySchema = z.looseObject({ - item_price_id: z.string().max(100), -}); -export { deleteDifferentialPriceBodySchema }; diff --git a/src/validation/differential_price/retrieve.validation.ts b/src/validation/differential_price/retrieve.validation.ts deleted file mode 100644 index 1c6d1ee..0000000 --- a/src/validation/differential_price/retrieve.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: DifferentialPrice.retrieve -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveDifferentialPriceBodySchema = z.looseObject({ - item_price_id: z.string().max(100), -}); -export { retrieveDifferentialPriceBodySchema }; diff --git a/src/validation/differential_price/update.validation.ts b/src/validation/differential_price/update.validation.ts deleted file mode 100644 index 5f27b08..0000000 --- a/src/validation/differential_price/update.validation.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Generated Zod validator: DifferentialPrice.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateDifferentialPriceParentPeriodsSchema = z.object({ - period_unit: z.array(z.enum(['day', 'week', 'month', 'year']).optional()), - period: z.array(z.array(z.string().optional()).optional()).optional(), -}); -const updateDifferentialPriceTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const updateDifferentialPriceBodySchema = z.looseObject({ - item_price_id: z.string().max(100), - price: z.number().int().min(0).optional(), - price_in_decimal: z.string().max(39).optional(), - parent_periods: updateDifferentialPriceParentPeriodsSchema.optional(), - tiers: updateDifferentialPriceTiersSchema.optional(), -}); -export { updateDifferentialPriceBodySchema }; diff --git a/src/validation/entitlement_override/add_entitlement_override_for_subscription.validation.ts b/src/validation/entitlement_override/add_entitlement_override_for_subscription.validation.ts deleted file mode 100644 index fd7e9d1..0000000 --- a/src/validation/entitlement_override/add_entitlement_override_for_subscription.validation.ts +++ /dev/null @@ -1,23 +0,0 @@ -// Generated Zod validator: EntitlementOverride.addEntitlementOverrideForSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addEntitlementOverrideForSubscriptionEntitlementOverrideEntitlementOverridesSchema = - z.object({ - feature_id: z.array(z.string().max(50).optional()), - entity_id: z.array(z.string().max(50).optional()).optional(), - entity_type: z - .array(z.enum(['plan_price', 'addon_price', 'charge']).optional()) - .optional(), - value: z.array(z.string().max(50).optional()).optional(), - expires_at: z.array(z.number().int().optional()).optional(), - effective_from: z.array(z.number().int().optional()).optional(), - is_enabled: z.array(z.boolean().optional()).optional(), - }); -const addEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema = - z.looseObject({ - action: z.enum(['upsert', 'remove']).optional(), - entitlement_overrides: - addEntitlementOverrideForSubscriptionEntitlementOverrideEntitlementOverridesSchema.optional(), - }); -export { addEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema }; diff --git a/src/validation/entitlement_override/list_entitlement_override_for_subscription.validation.ts b/src/validation/entitlement_override/list_entitlement_override_for_subscription.validation.ts deleted file mode 100644 index 4ecc196..0000000 --- a/src/validation/entitlement_override/list_entitlement_override_for_subscription.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: EntitlementOverride.listEntitlementOverrideForSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema = - z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - embed: z.string().max(1000).optional(), - include_drafts: z.boolean().default(false).optional(), - include_scheduled_overrides: z.boolean().default(false).optional(), - }); -export { listEntitlementOverrideForSubscriptionEntitlementOverrideBodySchema }; diff --git a/src/validation/estimate/advance_invoice_estimate.validation.ts b/src/validation/estimate/advance_invoice_estimate.validation.ts deleted file mode 100644 index 58e0d52..0000000 --- a/src/validation/estimate/advance_invoice_estimate.validation.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Generated Zod validator: Estimate.advanceInvoiceEstimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const advanceInvoiceEstimateEstimateFixedIntervalScheduleSchema = z.object({ - number_of_occurrences: z.number().int().min(1).optional(), - days_before_renewal: z.number().int().min(1).optional(), - end_schedule_on: z - .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) - .optional(), - end_date: z.number().int().optional(), -}); -const advanceInvoiceEstimateEstimateSpecificDatesScheduleSchema = z.object({ - terms_to_charge: z.array(z.number().int().optional()).optional(), - date: z.array(z.number().int().optional()).optional(), -}); -const advanceInvoiceEstimateEstimateBodySchema = z.looseObject({ - terms_to_charge: z.number().int().min(1).optional(), - invoice_immediately: z.boolean().optional(), - schedule_type: z - .enum(['immediate', 'specific_dates', 'fixed_intervals']) - .optional(), - fixed_interval_schedule: - advanceInvoiceEstimateEstimateFixedIntervalScheduleSchema.optional(), - specific_dates_schedule: - advanceInvoiceEstimateEstimateSpecificDatesScheduleSchema.optional(), -}); -export { advanceInvoiceEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/cancel_subscription.validation.ts b/src/validation/estimate/cancel_subscription.validation.ts deleted file mode 100644 index c5ec176..0000000 --- a/src/validation/estimate/cancel_subscription.validation.ts +++ /dev/null @@ -1,47 +0,0 @@ -// Generated Zod validator: Estimate.cancelSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const cancelSubscriptionEstimateEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), -}); -const cancelSubscriptionEstimateBodySchema = z.looseObject({ - cancel_option: z - .enum([ - 'immediately', - 'end_of_term', - 'specific_date', - 'end_of_billing_term', - ]) - .optional(), - end_of_term: z.boolean().default(false).optional(), - cancel_at: z.number().int().optional(), - credit_option_for_current_term_charges: z - .enum(['none', 'prorate', 'full']) - .optional(), - unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), - account_receivables_handling: z - .enum(['no_action', 'schedule_payment_collection', 'write_off']) - .optional(), - refundable_credits_handling: z - .enum(['no_action', 'schedule_refund']) - .optional(), - contract_term_cancel_option: z - .enum([ - 'terminate_immediately', - 'end_of_contract_term', - 'specific_date', - 'end_of_subscription_billing_term', - ]) - .optional(), - invoice_date: z.number().int().optional(), - cancel_reason_code: z.string().max(100).optional(), - event_based_addons: - cancelSubscriptionEstimateEventBasedAddonsSchema.optional(), -}); -export { cancelSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/cancel_subscription_for_items.validation.ts b/src/validation/estimate/cancel_subscription_for_items.validation.ts deleted file mode 100644 index 46b0cc8..0000000 --- a/src/validation/estimate/cancel_subscription_for_items.validation.ts +++ /dev/null @@ -1,49 +0,0 @@ -// Generated Zod validator: Estimate.cancelSubscriptionForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const cancelSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), -}); -const cancelSubscriptionForItemsEstimateBodySchema = z.looseObject({ - cancel_option: z - .enum([ - 'immediately', - 'end_of_term', - 'specific_date', - 'end_of_billing_term', - ]) - .optional(), - end_of_term: z.boolean().default(false).optional(), - cancel_at: z.number().int().optional(), - credit_option_for_current_term_charges: z - .enum(['none', 'prorate', 'full']) - .optional(), - unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), - account_receivables_handling: z - .enum(['no_action', 'schedule_payment_collection', 'write_off']) - .optional(), - refundable_credits_handling: z - .enum(['no_action', 'schedule_refund']) - .optional(), - contract_term_cancel_option: z - .enum([ - 'terminate_immediately', - 'end_of_contract_term', - 'specific_date', - 'end_of_subscription_billing_term', - ]) - .optional(), - invoice_date: z.number().int().optional(), - cancel_reason_code: z.string().max(100).optional(), - subscription_items: - cancelSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), -}); -export { cancelSubscriptionForItemsEstimateBodySchema }; diff --git a/src/validation/estimate/change_term_end.validation.ts b/src/validation/estimate/change_term_end.validation.ts deleted file mode 100644 index c424c86..0000000 --- a/src/validation/estimate/change_term_end.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: Estimate.changeTermEnd -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const changeTermEndEstimateBodySchema = z.looseObject({ - term_ends_at: z.number().int(), - prorate: z.boolean().optional(), - invoice_immediately: z.boolean().optional(), -}); -export { changeTermEndEstimateBodySchema }; diff --git a/src/validation/estimate/create_invoice.validation.ts b/src/validation/estimate/create_invoice.validation.ts deleted file mode 100644 index 8e7380d..0000000 --- a/src/validation/estimate/create_invoice.validation.ts +++ /dev/null @@ -1,87 +0,0 @@ -// Generated Zod validator: Estimate.createInvoice -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createInvoiceEstimateInvoiceSchema = z.object({ - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - po_number: z.string().max(100).optional(), -}); -const createInvoiceEstimateShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createInvoiceEstimateAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createInvoiceEstimateChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - taxable: z.array(z.boolean().default(true).optional()).optional(), - tax_profile_id: z.array(z.string().max(50).optional()).optional(), - avalara_tax_code: z.array(z.string().max(50).optional()).optional(), - hsn_code: z.array(z.string().max(50).optional()).optional(), - taxjar_product_code: z.array(z.string().max(50).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createInvoiceEstimateNotesToRemoveSchema = z.object({ - entity_type: z - .array( - z - .enum(['plan', 'addon', 'customer', 'subscription', 'coupon']) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), -}); -const createInvoiceEstimateTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createInvoiceEstimateBodySchema = z.looseObject({ - currency_code: z.string().max(3).optional(), - invoice_note: z.string().max(2000).optional(), - remove_general_note: z.boolean().default(false).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - authorization_transaction_id: z.string().max(40).optional(), - payment_source_id: z.string().max(40).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - invoice_date: z.number().int().optional(), - invoice: createInvoiceEstimateInvoiceSchema.optional(), - shipping_address: createInvoiceEstimateShippingAddressSchema.optional(), - addons: createInvoiceEstimateAddonsSchema.optional(), - charges: createInvoiceEstimateChargesSchema.optional(), - notes_to_remove: createInvoiceEstimateNotesToRemoveSchema.optional(), - tax_providers_fields: - createInvoiceEstimateTaxProvidersFieldsSchema.optional(), -}); -export { createInvoiceEstimateBodySchema }; diff --git a/src/validation/estimate/create_invoice_for_items.validation.ts b/src/validation/estimate/create_invoice_for_items.validation.ts deleted file mode 100644 index bbc0e7d..0000000 --- a/src/validation/estimate/create_invoice_for_items.validation.ts +++ /dev/null @@ -1,132 +0,0 @@ -// Generated Zod validator: Estimate.createInvoiceForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createInvoiceForItemsEstimateInvoiceSchema = z.object({ - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - po_number: z.string().max(100).optional(), -}); -const createInvoiceForItemsEstimateShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createInvoiceForItemsEstimateBillingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createInvoiceForItemsEstimateItemPricesSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createInvoiceForItemsEstimateItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createInvoiceForItemsEstimateChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - taxable: z.array(z.boolean().default(true).optional()).optional(), - tax_profile_id: z.array(z.string().max(50).optional()).optional(), - avalara_tax_code: z.array(z.string().max(50).optional()).optional(), - hsn_code: z.array(z.string().max(50).optional()).optional(), - taxjar_product_code: z.array(z.string().max(50).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createInvoiceForItemsEstimateNotesToRemoveSchema = z.object({ - entity_type: z - .array( - z - .enum([ - 'customer', - 'subscription', - 'coupon', - 'plan_item_price', - 'addon_item_price', - 'charge_item_price', - ]) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), -}); -const createInvoiceForItemsEstimateDiscountsSchema = z.object({ - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - apply_on: z.array( - z.enum(['invoice_amount', 'specific_item_price']).optional(), - ), - item_price_id: z.array(z.string().max(100).optional()).optional(), -}); -const createInvoiceForItemsEstimateTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createInvoiceForItemsEstimateBodySchema = z.looseObject({ - currency_code: z.string().max(3).optional(), - invoice_note: z.string().max(2000).optional(), - remove_general_note: z.boolean().default(false).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - authorization_transaction_id: z.string().max(40).optional(), - payment_source_id: z.string().max(40).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - invoice_date: z.number().int().optional(), - invoice: createInvoiceForItemsEstimateInvoiceSchema.optional(), - shipping_address: - createInvoiceForItemsEstimateShippingAddressSchema.optional(), - billing_address: createInvoiceForItemsEstimateBillingAddressSchema.optional(), - item_prices: createInvoiceForItemsEstimateItemPricesSchema.optional(), - item_tiers: createInvoiceForItemsEstimateItemTiersSchema.optional(), - charges: createInvoiceForItemsEstimateChargesSchema.optional(), - notes_to_remove: createInvoiceForItemsEstimateNotesToRemoveSchema.optional(), - discounts: createInvoiceForItemsEstimateDiscountsSchema.optional(), - tax_providers_fields: - createInvoiceForItemsEstimateTaxProvidersFieldsSchema.optional(), -}); -export { createInvoiceForItemsEstimateBodySchema }; diff --git a/src/validation/estimate/create_sub_for_customer_estimate.validation.ts b/src/validation/estimate/create_sub_for_customer_estimate.validation.ts deleted file mode 100644 index ec1fab5..0000000 --- a/src/validation/estimate/create_sub_for_customer_estimate.validation.ts +++ /dev/null @@ -1,120 +0,0 @@ -// Generated Zod validator: Estimate.createSubForCustomerEstimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createSubForCustomerEstimateEstimateSubscriptionSchema = z.object({ - id: z.string().max(50).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - start_date: z.number().int().optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), -}); -const createSubForCustomerEstimateEstimateShippingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubForCustomerEstimateEstimateContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createSubForCustomerEstimateEstimateAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), -}); -const createSubForCustomerEstimateEstimateEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), -}); -const createSubForCustomerEstimateEstimateBodySchema = z.looseObject({ - use_existing_balances: z.boolean().default(true).optional(), - invoice_immediately: z.boolean().optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - invoice_date: z.number().int().optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - subscription: - createSubForCustomerEstimateEstimateSubscriptionSchema.optional(), - shipping_address: - createSubForCustomerEstimateEstimateShippingAddressSchema.optional(), - contract_term: - createSubForCustomerEstimateEstimateContractTermSchema.optional(), - addons: createSubForCustomerEstimateEstimateAddonsSchema.optional(), - event_based_addons: - createSubForCustomerEstimateEstimateEventBasedAddonsSchema.optional(), -}); -export { createSubForCustomerEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/create_sub_item_estimate.validation.ts b/src/validation/estimate/create_sub_item_estimate.validation.ts deleted file mode 100644 index 44b549f..0000000 --- a/src/validation/estimate/create_sub_item_estimate.validation.ts +++ /dev/null @@ -1,195 +0,0 @@ -// Generated Zod validator: Estimate.createSubItemEstimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createSubItemEstimateEstimateSubscriptionSchema = z.object({ - id: z.string().max(50).optional(), - trial_end: z.number().int().optional(), - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - coupon: z.string().max(100).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), -}); -const createSubItemEstimateEstimateBillingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubItemEstimateEstimateShippingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubItemEstimateEstimateCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - entity_code: z - .enum([ - 'a', - 'b', - 'c', - 'd', - 'e', - 'f', - 'g', - 'h', - 'i', - 'j', - 'k', - 'l', - 'm', - 'n', - 'p', - 'q', - 'r', - 'med1', - 'med2', - ]) - .optional(), - exempt_number: z.string().max(100).optional(), - exemption_details: z.array(z.string().optional()).optional(), - customer_type: z - .enum(['residential', 'business', 'senior_citizen', 'industrial']) - .optional(), -}); -const createSubItemEstimateEstimateContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - contract_start: z.number().int().optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createSubItemEstimateEstimateSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), -}); -const createSubItemEstimateEstimateDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), -}); -const createSubItemEstimateEstimateItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createSubItemEstimateEstimateTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createSubItemEstimateEstimateBodySchema = z.looseObject({ - billing_cycles: z.number().int().min(0).optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - invoice_immediately: z.boolean().optional(), - invoice_date: z.number().int().optional(), - client_profile_id: z.string().max(50).optional(), - subscription: createSubItemEstimateEstimateSubscriptionSchema.optional(), - billing_address: createSubItemEstimateEstimateBillingAddressSchema.optional(), - shipping_address: - createSubItemEstimateEstimateShippingAddressSchema.optional(), - customer: createSubItemEstimateEstimateCustomerSchema.optional(), - contract_term: createSubItemEstimateEstimateContractTermSchema.optional(), - subscription_items: - createSubItemEstimateEstimateSubscriptionItemsSchema.optional(), - discounts: createSubItemEstimateEstimateDiscountsSchema.optional(), - item_tiers: createSubItemEstimateEstimateItemTiersSchema.optional(), - tax_providers_fields: - createSubItemEstimateEstimateTaxProvidersFieldsSchema.optional(), -}); -export { createSubItemEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/create_sub_item_for_customer_estimate.validation.ts b/src/validation/estimate/create_sub_item_for_customer_estimate.validation.ts deleted file mode 100644 index 2a1c6d4..0000000 --- a/src/validation/estimate/create_sub_item_for_customer_estimate.validation.ts +++ /dev/null @@ -1,165 +0,0 @@ -// Generated Zod validator: Estimate.createSubItemForCustomerEstimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createSubItemForCustomerEstimateEstimateSubscriptionSchema = z.object({ - id: z.string().max(50).optional(), - trial_end: z.number().int().optional(), - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), -}); -const createSubItemForCustomerEstimateEstimateShippingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubItemForCustomerEstimateEstimateBillingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubItemForCustomerEstimateEstimateContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - contract_start: z.number().int().optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createSubItemForCustomerEstimateEstimateBillingOverrideSchema = z.object({ - max_excess_payment_usage: z.number().int().min(-1).optional(), - max_refundable_credits_usage: z.number().int().min(-1).optional(), -}); -const createSubItemForCustomerEstimateEstimateSubscriptionItemsSchema = - z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - item_type: z - .array(z.enum(['plan', 'addon', 'charge']).optional()) - .optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - }); -const createSubItemForCustomerEstimateEstimateDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), -}); -const createSubItemForCustomerEstimateEstimateItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createSubItemForCustomerEstimateEstimateBodySchema = z.looseObject({ - use_existing_balances: z.boolean().default(true).optional(), - invoice_immediately: z.boolean().optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - invoice_date: z.number().int().optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - subscription: - createSubItemForCustomerEstimateEstimateSubscriptionSchema.optional(), - shipping_address: - createSubItemForCustomerEstimateEstimateShippingAddressSchema.optional(), - billing_address: - createSubItemForCustomerEstimateEstimateBillingAddressSchema.optional(), - contract_term: - createSubItemForCustomerEstimateEstimateContractTermSchema.optional(), - billing_override: - createSubItemForCustomerEstimateEstimateBillingOverrideSchema.optional(), - subscription_items: - createSubItemForCustomerEstimateEstimateSubscriptionItemsSchema.optional(), - discounts: createSubItemForCustomerEstimateEstimateDiscountsSchema.optional(), - item_tiers: - createSubItemForCustomerEstimateEstimateItemTiersSchema.optional(), -}); -export { createSubItemForCustomerEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/create_subscription.validation.ts b/src/validation/estimate/create_subscription.validation.ts deleted file mode 100644 index 4fc6088..0000000 --- a/src/validation/estimate/create_subscription.validation.ts +++ /dev/null @@ -1,173 +0,0 @@ -// Generated Zod validator: Estimate.createSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createSubscriptionEstimateSubscriptionSchema = z.object({ - id: z.string().max(50).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - start_date: z.number().int().optional(), - coupon: z.string().max(100).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), -}); -const createSubscriptionEstimateBillingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubscriptionEstimateShippingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubscriptionEstimateCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - entity_code: z - .enum([ - 'a', - 'b', - 'c', - 'd', - 'e', - 'f', - 'g', - 'h', - 'i', - 'j', - 'k', - 'l', - 'm', - 'n', - 'p', - 'q', - 'r', - 'med1', - 'med2', - ]) - .optional(), - exempt_number: z.string().max(100).optional(), - exemption_details: z.array(z.string().optional()).optional(), - customer_type: z - .enum(['residential', 'business', 'senior_citizen', 'industrial']) - .optional(), -}); -const createSubscriptionEstimateContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createSubscriptionEstimateAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), -}); -const createSubscriptionEstimateEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), -}); -const createSubscriptionEstimateTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createSubscriptionEstimateBodySchema = z.looseObject({ - billing_cycles: z.number().int().min(0).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - invoice_immediately: z.boolean().optional(), - invoice_date: z.number().int().optional(), - client_profile_id: z.string().max(50).optional(), - subscription: createSubscriptionEstimateSubscriptionSchema.optional(), - billing_address: createSubscriptionEstimateBillingAddressSchema.optional(), - shipping_address: createSubscriptionEstimateShippingAddressSchema.optional(), - customer: createSubscriptionEstimateCustomerSchema.optional(), - contract_term: createSubscriptionEstimateContractTermSchema.optional(), - addons: createSubscriptionEstimateAddonsSchema.optional(), - event_based_addons: - createSubscriptionEstimateEventBasedAddonsSchema.optional(), - tax_providers_fields: - createSubscriptionEstimateTaxProvidersFieldsSchema.optional(), -}); -export { createSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/gift_subscription.validation.ts b/src/validation/estimate/gift_subscription.validation.ts deleted file mode 100644 index d7b2f2e..0000000 --- a/src/validation/estimate/gift_subscription.validation.ts +++ /dev/null @@ -1,115 +0,0 @@ -// Generated Zod validator: Estimate.giftSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const giftSubscriptionEstimateGiftSchema = z.object({ - scheduled_at: z.number().int().optional(), - auto_claim: z.boolean().default(false).optional(), - no_expiry: z.boolean().optional(), - claim_expiry_date: z.number().int().optional(), -}); -const giftSubscriptionEstimateGifterSchema = z.object({ - customer_id: z.string().max(50), - signature: z.string().max(50), - note: z.string().max(500).optional(), - payment_src_id: z.string().max(40).optional(), -}); -const giftSubscriptionEstimateGiftReceiverSchema = z.object({ - customer_id: z.string().max(50), - first_name: z.string().max(150), - last_name: z.string().max(150), - email: z.string().email().max(70), -}); -const giftSubscriptionEstimateAdditionalInformationSchema = z.looseObject({}); -const giftSubscriptionEstimatePaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - giftSubscriptionEstimateAdditionalInformationSchema.optional(), -}); -const giftSubscriptionEstimateShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const giftSubscriptionEstimateSubscriptionSchema = z.object({ - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), -}); -const giftSubscriptionEstimateAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), -}); -const giftSubscriptionEstimateBodySchema = z.looseObject({ - coupon_ids: z.array(z.string().max(100).optional()).optional(), - gift: giftSubscriptionEstimateGiftSchema.optional(), - gifter: giftSubscriptionEstimateGifterSchema.optional(), - gift_receiver: giftSubscriptionEstimateGiftReceiverSchema.optional(), - payment_intent: giftSubscriptionEstimatePaymentIntentSchema.optional(), - shipping_address: giftSubscriptionEstimateShippingAddressSchema.optional(), - subscription: giftSubscriptionEstimateSubscriptionSchema.optional(), - addons: giftSubscriptionEstimateAddonsSchema.optional(), -}); -export { giftSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/gift_subscription_for_items.validation.ts b/src/validation/estimate/gift_subscription_for_items.validation.ts deleted file mode 100644 index 92d61c0..0000000 --- a/src/validation/estimate/gift_subscription_for_items.validation.ts +++ /dev/null @@ -1,125 +0,0 @@ -// Generated Zod validator: Estimate.giftSubscriptionForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const giftSubscriptionForItemsEstimateGiftSchema = z.object({ - scheduled_at: z.number().int().optional(), - auto_claim: z.boolean().default(false).optional(), - no_expiry: z.boolean().optional(), - claim_expiry_date: z.number().int().optional(), -}); -const giftSubscriptionForItemsEstimateGifterSchema = z.object({ - customer_id: z.string().max(50), - signature: z.string().max(50), - note: z.string().max(500).optional(), - payment_src_id: z.string().max(40).optional(), -}); -const giftSubscriptionForItemsEstimateGiftReceiverSchema = z.object({ - customer_id: z.string().max(50), - first_name: z.string().max(150), - last_name: z.string().max(150), - email: z.string().email().max(70), -}); -const giftSubscriptionForItemsEstimateAdditionalInformationSchema = - z.looseObject({}); -const giftSubscriptionForItemsEstimatePaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - giftSubscriptionForItemsEstimateAdditionalInformationSchema.optional(), -}); -const giftSubscriptionForItemsEstimateShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const giftSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const giftSubscriptionForItemsEstimateItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const giftSubscriptionForItemsEstimateBodySchema = z.looseObject({ - coupon_ids: z.array(z.string().max(100).optional()).optional(), - gift: giftSubscriptionForItemsEstimateGiftSchema.optional(), - gifter: giftSubscriptionForItemsEstimateGifterSchema.optional(), - gift_receiver: giftSubscriptionForItemsEstimateGiftReceiverSchema.optional(), - payment_intent: - giftSubscriptionForItemsEstimatePaymentIntentSchema.optional(), - shipping_address: - giftSubscriptionForItemsEstimateShippingAddressSchema.optional(), - subscription_items: - giftSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), - item_tiers: giftSubscriptionForItemsEstimateItemTiersSchema.optional(), -}); -export { giftSubscriptionForItemsEstimateBodySchema }; diff --git a/src/validation/estimate/pause_subscription.validation.ts b/src/validation/estimate/pause_subscription.validation.ts deleted file mode 100644 index 15cced5..0000000 --- a/src/validation/estimate/pause_subscription.validation.ts +++ /dev/null @@ -1,17 +0,0 @@ -// Generated Zod validator: Estimate.pauseSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const pauseSubscriptionEstimateSubscriptionSchema = z.object({ - pause_date: z.number().int().optional(), - resume_date: z.number().int().optional(), - skip_billing_cycles: z.number().int().min(1).optional(), -}); -const pauseSubscriptionEstimateBodySchema = z.looseObject({ - pause_option: z - .enum(['immediately', 'end_of_term', 'specific_date', 'billing_cycles']) - .optional(), - unbilled_charges_handling: z.enum(['no_action', 'invoice']).optional(), - subscription: pauseSubscriptionEstimateSubscriptionSchema.optional(), -}); -export { pauseSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/payment_schedules.validation.ts b/src/validation/estimate/payment_schedules.validation.ts deleted file mode 100644 index 4dc688f..0000000 --- a/src/validation/estimate/payment_schedules.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Estimate.paymentSchedules -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const paymentSchedulesEstimateBodySchema = z.looseObject({ - scheme_id: z.string(), - amount: z.number().int().min(0).optional(), - invoice_id: z.string().optional(), - payment_schedule_start_date: z.number().int().optional(), -}); -export { paymentSchedulesEstimateBodySchema }; diff --git a/src/validation/estimate/regenerate_invoice_estimate.validation.ts b/src/validation/estimate/regenerate_invoice_estimate.validation.ts deleted file mode 100644 index 77fb449..0000000 --- a/src/validation/estimate/regenerate_invoice_estimate.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Estimate.regenerateInvoiceEstimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const regenerateInvoiceEstimateEstimateBodySchema = z.looseObject({ - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), - prorate: z.boolean().optional(), - invoice_immediately: z.boolean().optional(), -}); -export { regenerateInvoiceEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/renewal_estimate.validation.ts b/src/validation/estimate/renewal_estimate.validation.ts deleted file mode 100644 index 44e63a2..0000000 --- a/src/validation/estimate/renewal_estimate.validation.ts +++ /dev/null @@ -1,12 +0,0 @@ -// Generated Zod validator: Estimate.renewalEstimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const renewalEstimateEstimateBodySchema = z.looseObject({ - include_delayed_charges: z.boolean().default(true).optional(), - use_existing_balances: z.boolean().default(true).optional(), - ignore_scheduled_cancellation: z.boolean().default(false).optional(), - ignore_scheduled_changes: z.boolean().default(false).optional(), - exclude_tax_type: z.enum(['exclusive', 'none']).optional(), -}); -export { renewalEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/resume_subscription.validation.ts b/src/validation/estimate/resume_subscription.validation.ts deleted file mode 100644 index a540f26..0000000 --- a/src/validation/estimate/resume_subscription.validation.ts +++ /dev/null @@ -1,15 +0,0 @@ -// Generated Zod validator: Estimate.resumeSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const resumeSubscriptionEstimateSubscriptionSchema = z.object({ - resume_date: z.number().int().optional(), -}); -const resumeSubscriptionEstimateBodySchema = z.looseObject({ - resume_option: z.enum(['immediately', 'specific_date']).optional(), - charges_handling: z - .enum(['invoice_immediately', 'add_to_unbilled_charges']) - .optional(), - subscription: resumeSubscriptionEstimateSubscriptionSchema.optional(), -}); -export { resumeSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/upcoming_invoices_estimate.validation.ts b/src/validation/estimate/upcoming_invoices_estimate.validation.ts deleted file mode 100644 index ab4199c..0000000 --- a/src/validation/estimate/upcoming_invoices_estimate.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Estimate.upcomingInvoicesEstimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const upcomingInvoicesEstimateEstimateBodySchema = z.looseObject({ - include_usage_charges: z.boolean().default(false).optional(), -}); -export { upcomingInvoicesEstimateEstimateBodySchema }; diff --git a/src/validation/estimate/update_subscription.validation.ts b/src/validation/estimate/update_subscription.validation.ts deleted file mode 100644 index e8b6885..0000000 --- a/src/validation/estimate/update_subscription.validation.ts +++ /dev/null @@ -1,143 +0,0 @@ -// Generated Zod validator: Estimate.updateSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateSubscriptionEstimateSubscriptionSchema = z.object({ - id: z.string().max(50), - plan_id: z.string().max(100).optional(), - plan_quantity: z.number().int().min(1).optional(), - plan_unit_price: z.number().int().min(0).optional(), - setup_fee: z.number().int().min(0).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), -}); -const updateSubscriptionEstimateBillingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionEstimateShippingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionEstimateCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), -}); -const updateSubscriptionEstimateAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - proration_type: z - .array(z.enum(['full_term', 'partial_term', 'none']).optional()) - .optional(), -}); -const updateSubscriptionEstimateEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const updateSubscriptionEstimateBodySchema = z.looseObject({ - changes_scheduled_at: z.number().int().optional(), - change_option: z - .enum(['immediately', 'end_of_term', 'specific_date']) - .optional(), - replace_addon_list: z.boolean().default(false).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - invoice_date: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - prorate: z.boolean().optional(), - end_of_term: z.boolean().default(false).optional(), - force_term_reset: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - include_delayed_charges: z.boolean().default(false).optional(), - use_existing_balances: z.boolean().default(true).optional(), - invoice_immediately: z.boolean().optional(), - subscription: updateSubscriptionEstimateSubscriptionSchema.optional(), - billing_address: updateSubscriptionEstimateBillingAddressSchema.optional(), - shipping_address: updateSubscriptionEstimateShippingAddressSchema.optional(), - customer: updateSubscriptionEstimateCustomerSchema.optional(), - addons: updateSubscriptionEstimateAddonsSchema.optional(), - event_based_addons: - updateSubscriptionEstimateEventBasedAddonsSchema.optional(), -}); -export { updateSubscriptionEstimateBodySchema }; diff --git a/src/validation/estimate/update_subscription_for_items.validation.ts b/src/validation/estimate/update_subscription_for_items.validation.ts deleted file mode 100644 index da0070e..0000000 --- a/src/validation/estimate/update_subscription_for_items.validation.ts +++ /dev/null @@ -1,174 +0,0 @@ -// Generated Zod validator: Estimate.updateSubscriptionForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateSubscriptionForItemsEstimateSubscriptionSchema = z.object({ - id: z.string().max(50), - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), -}); -const updateSubscriptionForItemsEstimateBillingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionForItemsEstimateShippingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionForItemsEstimateCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), -}); -const updateSubscriptionForItemsEstimateBillingOverrideSchema = z.object({ - max_excess_payment_usage: z.number().int().min(-1).optional(), - max_refundable_credits_usage: z.number().int().min(-1).optional(), -}); -const updateSubscriptionForItemsEstimateSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - proration_type: z - .array(z.enum(['full_term', 'partial_term', 'none']).optional()) - .optional(), -}); -const updateSubscriptionForItemsEstimateDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - operation_type: z.array(z.enum(['add', 'remove']).optional()), - id: z.array(z.string().max(50).optional()).optional(), -}); -const updateSubscriptionForItemsEstimateItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const updateSubscriptionForItemsEstimateBodySchema = z.looseObject({ - changes_scheduled_at: z.number().int().optional(), - change_option: z - .enum(['immediately', 'end_of_term', 'specific_date']) - .optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - replace_items_list: z.boolean().default(false).optional(), - invoice_date: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - prorate: z.boolean().optional(), - end_of_term: z.boolean().default(false).optional(), - force_term_reset: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - include_delayed_charges: z.boolean().default(false).optional(), - use_existing_balances: z.boolean().default(true).optional(), - invoice_immediately: z.boolean().optional(), - invoice_usages: z.boolean().default(false).optional(), - subscription: updateSubscriptionForItemsEstimateSubscriptionSchema.optional(), - billing_address: - updateSubscriptionForItemsEstimateBillingAddressSchema.optional(), - shipping_address: - updateSubscriptionForItemsEstimateShippingAddressSchema.optional(), - customer: updateSubscriptionForItemsEstimateCustomerSchema.optional(), - billing_override: - updateSubscriptionForItemsEstimateBillingOverrideSchema.optional(), - subscription_items: - updateSubscriptionForItemsEstimateSubscriptionItemsSchema.optional(), - discounts: updateSubscriptionForItemsEstimateDiscountsSchema.optional(), - item_tiers: updateSubscriptionForItemsEstimateItemTiersSchema.optional(), -}); -export { updateSubscriptionForItemsEstimateBodySchema }; diff --git a/src/validation/export/attached_items.validation.ts b/src/validation/export/attached_items.validation.ts deleted file mode 100644 index bebd31d..0000000 --- a/src/validation/export/attached_items.validation.ts +++ /dev/null @@ -1,100 +0,0 @@ -// Generated Zod validator: Export.attachedItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const attachedItemsExportItemTypeSchema = z.object({ - is: z.enum(['plan', 'addon', 'charge']).optional(), - is_not: z.enum(['plan', 'addon', 'charge']).optional(), - in: z.enum(['plan', 'addon', 'charge']).optional(), - not_in: z.enum(['plan', 'addon', 'charge']).optional(), -}); -const attachedItemsExportIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const attachedItemsExportItemIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const attachedItemsExportTypeSchema = z.object({ - is: z.enum(['recommended', 'mandatory', 'optional']).optional(), - is_not: z.enum(['recommended', 'mandatory', 'optional']).optional(), - in: z.enum(['recommended', 'mandatory', 'optional']).optional(), - not_in: z.enum(['recommended', 'mandatory', 'optional']).optional(), -}); -const attachedItemsExportChargeOnEventSchema = z.object({ - is: z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - 'on_demand', - ]) - .optional(), - is_not: z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - 'on_demand', - ]) - .optional(), - in: z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - 'on_demand', - ]) - .optional(), - not_in: z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - 'on_demand', - ]) - .optional(), -}); -const attachedItemsExportUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const attachedItemsExportParentItemIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const attachedItemsExportAttachedItemItemSchema = z.object({ - id: attachedItemsExportIdSchema.optional(), - item_id: attachedItemsExportItemIdSchema.optional(), - type: attachedItemsExportTypeSchema.optional(), - charge_on_event: attachedItemsExportChargeOnEventSchema.optional(), - updated_at: attachedItemsExportUpdatedAtSchema.optional(), - parent_item_id: attachedItemsExportParentItemIdSchema.optional(), -}); -const attachedItemsExportBodySchema = z.looseObject({ - item_type: attachedItemsExportItemTypeSchema.optional(), - attached_item: z - .array(attachedItemsExportAttachedItemItemSchema.optional()) - .optional(), -}); -export { attachedItemsExportBodySchema }; diff --git a/src/validation/export/credit_notes.validation.ts b/src/validation/export/credit_notes.validation.ts deleted file mode 100644 index ee3896e..0000000 --- a/src/validation/export/credit_notes.validation.ts +++ /dev/null @@ -1,210 +0,0 @@ -// Generated Zod validator: Export.creditNotes -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const creditNotesExportIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const creditNotesExportCustomerIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const creditNotesExportSubscriptionIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const creditNotesExportReferenceInvoiceIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const creditNotesExportTypeSchema = z.object({ - is: z.enum(['adjustment', 'refundable', 'store']).optional(), - is_not: z.enum(['adjustment', 'refundable', 'store']).optional(), - in: z.enum(['adjustment', 'refundable', 'store']).optional(), - not_in: z.enum(['adjustment', 'refundable', 'store']).optional(), -}); -const creditNotesExportReasonCodeSchema = z.object({ - is: z - .enum([ - 'write_off', - 'subscription_change', - 'subscription_cancellation', - 'subscription_pause', - 'chargeback', - 'product_unsatisfactory', - 'service_unsatisfactory', - 'order_change', - 'order_cancellation', - 'waiver', - 'other', - 'fraudulent', - ]) - .optional(), - is_not: z - .enum([ - 'write_off', - 'subscription_change', - 'subscription_cancellation', - 'subscription_pause', - 'chargeback', - 'product_unsatisfactory', - 'service_unsatisfactory', - 'order_change', - 'order_cancellation', - 'waiver', - 'other', - 'fraudulent', - ]) - .optional(), - in: z - .enum([ - 'write_off', - 'subscription_change', - 'subscription_cancellation', - 'subscription_pause', - 'chargeback', - 'product_unsatisfactory', - 'service_unsatisfactory', - 'order_change', - 'order_cancellation', - 'waiver', - 'other', - 'fraudulent', - ]) - .optional(), - not_in: z - .enum([ - 'write_off', - 'subscription_change', - 'subscription_cancellation', - 'subscription_pause', - 'chargeback', - 'product_unsatisfactory', - 'service_unsatisfactory', - 'order_change', - 'order_cancellation', - 'waiver', - 'other', - 'fraudulent', - ]) - .optional(), -}); -const creditNotesExportCreateReasonCodeSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const creditNotesExportStatusSchema = z.object({ - is: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), - is_not: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), - in: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), - not_in: z.enum(['adjusted', 'refunded', 'refund_due', 'voided']).optional(), -}); -const creditNotesExportDateSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const creditNotesExportTotalSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const creditNotesExportPriceTypeSchema = z.object({ - is: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), - is_not: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), - in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), - not_in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), -}); -const creditNotesExportAmountAllocatedSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const creditNotesExportAmountRefundedSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const creditNotesExportAmountAvailableSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const creditNotesExportVoidedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const creditNotesExportUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const creditNotesExportChannelSchema = z.object({ - is: z.enum(['web', 'app_store', 'play_store']).optional(), - is_not: z.enum(['web', 'app_store', 'play_store']).optional(), - in: z.enum(['web', 'app_store', 'play_store']).optional(), - not_in: z.enum(['web', 'app_store', 'play_store']).optional(), -}); -const creditNotesExportCreditNoteItemSchema = z.object({ - id: creditNotesExportIdSchema.optional(), - customer_id: creditNotesExportCustomerIdSchema.optional(), - subscription_id: creditNotesExportSubscriptionIdSchema.optional(), - reference_invoice_id: creditNotesExportReferenceInvoiceIdSchema.optional(), - type: creditNotesExportTypeSchema.optional(), - reason_code: creditNotesExportReasonCodeSchema.optional(), - create_reason_code: creditNotesExportCreateReasonCodeSchema.optional(), - status: creditNotesExportStatusSchema.optional(), - date: creditNotesExportDateSchema.optional(), - total: creditNotesExportTotalSchema.optional(), - price_type: creditNotesExportPriceTypeSchema.optional(), - amount_allocated: creditNotesExportAmountAllocatedSchema.optional(), - amount_refunded: creditNotesExportAmountRefundedSchema.optional(), - amount_available: creditNotesExportAmountAvailableSchema.optional(), - voided_at: creditNotesExportVoidedAtSchema.optional(), - updated_at: creditNotesExportUpdatedAtSchema.optional(), - channel: creditNotesExportChannelSchema.optional(), -}); -const creditNotesExportBodySchema = z.looseObject({ - credit_note: z - .array(creditNotesExportCreditNoteItemSchema.optional()) - .optional(), -}); -export { creditNotesExportBodySchema }; diff --git a/src/validation/export/customers.validation.ts b/src/validation/export/customers.validation.ts deleted file mode 100644 index 05882c1..0000000 --- a/src/validation/export/customers.validation.ts +++ /dev/null @@ -1,191 +0,0 @@ -// Generated Zod validator: Export.customers -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const customersExportBusinessEntityIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const customersExportIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const customersExportFirstNameSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), -}); -const customersExportLastNameSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), -}); -const customersExportEmailSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), -}); -const customersExportCompanySchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), -}); -const customersExportPhoneSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), -}); -const customersExportAutoCollectionSchema = z.object({ - is: z.enum(['on', 'off']).optional(), - is_not: z.enum(['on', 'off']).optional(), - in: z.enum(['on', 'off']).optional(), - not_in: z.enum(['on', 'off']).optional(), -}); -const customersExportTaxabilitySchema = z.object({ - is: z.enum(['taxable', 'exempt']).optional(), - is_not: z.enum(['taxable', 'exempt']).optional(), - in: z.enum(['taxable', 'exempt']).optional(), - not_in: z.enum(['taxable', 'exempt']).optional(), -}); -const customersExportCreatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const customersExportUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const customersExportOfflinePaymentMethodSchema = z.object({ - is: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - is_not: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - in: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - not_in: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), -}); -const customersExportAutoCloseInvoicesSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const customersExportChannelSchema = z.object({ - is: z.enum(['web', 'app_store', 'play_store']).optional(), - is_not: z.enum(['web', 'app_store', 'play_store']).optional(), - in: z.enum(['web', 'app_store', 'play_store']).optional(), - not_in: z.enum(['web', 'app_store', 'play_store']).optional(), -}); -const customersExportCustomerItemSchema = z.object({ - id: customersExportIdSchema.optional(), - first_name: customersExportFirstNameSchema.optional(), - last_name: customersExportLastNameSchema.optional(), - email: customersExportEmailSchema.optional(), - company: customersExportCompanySchema.optional(), - phone: customersExportPhoneSchema.optional(), - auto_collection: customersExportAutoCollectionSchema.optional(), - taxability: customersExportTaxabilitySchema.optional(), - created_at: customersExportCreatedAtSchema.optional(), - updated_at: customersExportUpdatedAtSchema.optional(), - offline_payment_method: customersExportOfflinePaymentMethodSchema.optional(), - auto_close_invoices: customersExportAutoCloseInvoicesSchema.optional(), - channel: customersExportChannelSchema.optional(), -}); -const customersExportParentIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const customersExportPaymentOwnerIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const customersExportInvoiceOwnerIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const customersExportRelationshipSchema = z.object({ - parent_id: customersExportParentIdSchema.optional(), - payment_owner_id: customersExportPaymentOwnerIdSchema.optional(), - invoice_owner_id: customersExportInvoiceOwnerIdSchema.optional(), -}); -const customersExportBodySchema = z.looseObject({ - export_type: z.enum(['data', 'import_friendly_data']).optional(), - business_entity_id: customersExportBusinessEntityIdSchema.optional(), - customer: z.array(customersExportCustomerItemSchema.optional()).optional(), - relationship: customersExportRelationshipSchema.optional(), -}); -export { customersExportBodySchema }; diff --git a/src/validation/export/item_families.validation.ts b/src/validation/export/item_families.validation.ts deleted file mode 100644 index f4f09d2..0000000 --- a/src/validation/export/item_families.validation.ts +++ /dev/null @@ -1,43 +0,0 @@ -// Generated Zod validator: Export.itemFamilies -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const itemFamiliesExportBusinessEntityIdSchema = z.object({ - is_present: z.enum(['true', 'false']).optional(), - is: z.string().min(1).optional(), -}); -const itemFamiliesExportIncludeSiteLevelResourcesSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const itemFamiliesExportIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const itemFamiliesExportNameSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const itemFamiliesExportUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const itemFamiliesExportItemFamilyItemSchema = z.object({ - id: itemFamiliesExportIdSchema.optional(), - name: itemFamiliesExportNameSchema.optional(), - updated_at: itemFamiliesExportUpdatedAtSchema.optional(), -}); -const itemFamiliesExportBodySchema = z.looseObject({ - business_entity_id: itemFamiliesExportBusinessEntityIdSchema.optional(), - include_site_level_resources: - itemFamiliesExportIncludeSiteLevelResourcesSchema.optional(), - item_family: z - .array(itemFamiliesExportItemFamilyItemSchema.optional()) - .optional(), -}); -export { itemFamiliesExportBodySchema }; diff --git a/src/validation/export/items.validation.ts b/src/validation/export/items.validation.ts deleted file mode 100644 index f4775a9..0000000 --- a/src/validation/export/items.validation.ts +++ /dev/null @@ -1,100 +0,0 @@ -// Generated Zod validator: Export.items -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const itemsExportBusinessEntityIdSchema = z.object({ - is_present: z.enum(['true', 'false']).optional(), - is: z.string().min(1).optional(), -}); -const itemsExportIncludeSiteLevelResourcesSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const itemsExportIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const itemsExportItemFamilyIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const itemsExportTypeSchema = z.object({ - is: z.enum(['plan', 'addon', 'charge']).optional(), - is_not: z.enum(['plan', 'addon', 'charge']).optional(), - in: z.enum(['plan', 'addon', 'charge']).optional(), - not_in: z.enum(['plan', 'addon', 'charge']).optional(), -}); -const itemsExportNameSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const itemsExportItemApplicabilitySchema = z.object({ - is: z.enum(['all', 'restricted']).optional(), - is_not: z.enum(['all', 'restricted']).optional(), - in: z.enum(['all', 'restricted']).optional(), - not_in: z.enum(['all', 'restricted']).optional(), -}); -const itemsExportStatusSchema = z.object({ - is: z.enum(['active', 'archived', 'deleted']).optional(), - is_not: z.enum(['active', 'archived', 'deleted']).optional(), - in: z.enum(['active', 'archived', 'deleted']).optional(), - not_in: z.enum(['active', 'archived', 'deleted']).optional(), -}); -const itemsExportIsGiftableSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const itemsExportUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const itemsExportEnabledForCheckoutSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const itemsExportEnabledInPortalSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const itemsExportMeteredSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const itemsExportUsageCalculationSchema = z.object({ - is: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), - is_not: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), - in: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), - not_in: z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), -}); -const itemsExportChannelSchema = z.object({ - is: z.enum(['web', 'app_store', 'play_store']).optional(), - is_not: z.enum(['web', 'app_store', 'play_store']).optional(), - in: z.enum(['web', 'app_store', 'play_store']).optional(), - not_in: z.enum(['web', 'app_store', 'play_store']).optional(), -}); -const itemsExportItemItemSchema = z.object({ - id: itemsExportIdSchema.optional(), - item_family_id: itemsExportItemFamilyIdSchema.optional(), - type: itemsExportTypeSchema.optional(), - name: itemsExportNameSchema.optional(), - item_applicability: itemsExportItemApplicabilitySchema.optional(), - status: itemsExportStatusSchema.optional(), - is_giftable: itemsExportIsGiftableSchema.optional(), - updated_at: itemsExportUpdatedAtSchema.optional(), - enabled_for_checkout: itemsExportEnabledForCheckoutSchema.optional(), - enabled_in_portal: itemsExportEnabledInPortalSchema.optional(), - metered: itemsExportMeteredSchema.optional(), - usage_calculation: itemsExportUsageCalculationSchema.optional(), - channel: itemsExportChannelSchema.optional(), -}); -const itemsExportBodySchema = z.looseObject({ - business_entity_id: itemsExportBusinessEntityIdSchema.optional(), - include_site_level_resources: - itemsExportIncludeSiteLevelResourcesSchema.optional(), - item: z.array(itemsExportItemItemSchema.optional()).optional(), -}); -export { itemsExportBodySchema }; diff --git a/src/validation/export/orders.validation.ts b/src/validation/export/orders.validation.ts deleted file mode 100644 index 74a3dea..0000000 --- a/src/validation/export/orders.validation.ts +++ /dev/null @@ -1,209 +0,0 @@ -// Generated Zod validator: Export.orders -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const ordersExportTotalSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const ordersExportIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const ordersExportSubscriptionIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const ordersExportCustomerIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const ordersExportStatusSchema = z.object({ - is: z - .enum([ - 'new', - 'processing', - 'complete', - 'cancelled', - 'voided', - 'queued', - 'awaiting_shipment', - 'on_hold', - 'delivered', - 'shipped', - 'partially_delivered', - 'returned', - ]) - .optional(), - is_not: z - .enum([ - 'new', - 'processing', - 'complete', - 'cancelled', - 'voided', - 'queued', - 'awaiting_shipment', - 'on_hold', - 'delivered', - 'shipped', - 'partially_delivered', - 'returned', - ]) - .optional(), - in: z - .enum([ - 'new', - 'processing', - 'complete', - 'cancelled', - 'voided', - 'queued', - 'awaiting_shipment', - 'on_hold', - 'delivered', - 'shipped', - 'partially_delivered', - 'returned', - ]) - .optional(), - not_in: z - .enum([ - 'new', - 'processing', - 'complete', - 'cancelled', - 'voided', - 'queued', - 'awaiting_shipment', - 'on_hold', - 'delivered', - 'shipped', - 'partially_delivered', - 'returned', - ]) - .optional(), -}); -const ordersExportPriceTypeSchema = z.object({ - is: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), - is_not: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), - in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), - not_in: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), -}); -const ordersExportOrderDateSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const ordersExportShippingDateSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const ordersExportShippedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const ordersExportDeliveredAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const ordersExportCancelledAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const ordersExportAmountPaidSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const ordersExportRefundableCreditsSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const ordersExportRefundableCreditsIssuedSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const ordersExportUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const ordersExportResentStatusSchema = z.object({ - is: z.enum(['fully_resent', 'partially_resent']).optional(), - is_not: z.enum(['fully_resent', 'partially_resent']).optional(), - in: z.enum(['fully_resent', 'partially_resent']).optional(), - not_in: z.enum(['fully_resent', 'partially_resent']).optional(), -}); -const ordersExportIsResentSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const ordersExportOriginalOrderIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const ordersExportOrderItemSchema = z.object({ - id: ordersExportIdSchema.optional(), - subscription_id: ordersExportSubscriptionIdSchema.optional(), - customer_id: ordersExportCustomerIdSchema.optional(), - status: ordersExportStatusSchema.optional(), - price_type: ordersExportPriceTypeSchema.optional(), - order_date: ordersExportOrderDateSchema.optional(), - shipping_date: ordersExportShippingDateSchema.optional(), - shipped_at: ordersExportShippedAtSchema.optional(), - delivered_at: ordersExportDeliveredAtSchema.optional(), - cancelled_at: ordersExportCancelledAtSchema.optional(), - amount_paid: ordersExportAmountPaidSchema.optional(), - refundable_credits: ordersExportRefundableCreditsSchema.optional(), - refundable_credits_issued: - ordersExportRefundableCreditsIssuedSchema.optional(), - updated_at: ordersExportUpdatedAtSchema.optional(), - resent_status: ordersExportResentStatusSchema.optional(), - is_resent: ordersExportIsResentSchema.optional(), - original_order_id: ordersExportOriginalOrderIdSchema.optional(), -}); -const ordersExportBodySchema = z.looseObject({ - total: ordersExportTotalSchema.optional(), - order: z.array(ordersExportOrderItemSchema.optional()).optional(), -}); -export { ordersExportBodySchema }; diff --git a/src/validation/export/price_variants.validation.ts b/src/validation/export/price_variants.validation.ts deleted file mode 100644 index 68deb4c..0000000 --- a/src/validation/export/price_variants.validation.ts +++ /dev/null @@ -1,59 +0,0 @@ -// Generated Zod validator: Export.priceVariants -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const priceVariantsExportBusinessEntityIdSchema = z.object({ - is_present: z.enum(['true', 'false']).optional(), - is: z.string().min(1).optional(), -}); -const priceVariantsExportIncludeSiteLevelResourcesSchema = z.object({ - is: z.enum(['true', 'false']).optional(), -}); -const priceVariantsExportIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const priceVariantsExportNameSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const priceVariantsExportStatusSchema = z.object({ - is: z.enum(['active', 'archived']).optional(), - is_not: z.enum(['active', 'archived']).optional(), - in: z.enum(['active', 'archived']).optional(), - not_in: z.enum(['active', 'archived']).optional(), -}); -const priceVariantsExportUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const priceVariantsExportCreatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const priceVariantsExportPriceVariantItemSchema = z.object({ - id: priceVariantsExportIdSchema.optional(), - name: priceVariantsExportNameSchema.optional(), - status: priceVariantsExportStatusSchema.optional(), - updated_at: priceVariantsExportUpdatedAtSchema.optional(), - created_at: priceVariantsExportCreatedAtSchema.optional(), -}); -const priceVariantsExportBodySchema = z.looseObject({ - business_entity_id: priceVariantsExportBusinessEntityIdSchema.optional(), - include_site_level_resources: - priceVariantsExportIncludeSiteLevelResourcesSchema.optional(), - price_variant: z - .array(priceVariantsExportPriceVariantItemSchema.optional()) - .optional(), -}); -export { priceVariantsExportBodySchema }; diff --git a/src/validation/export/transactions.validation.ts b/src/validation/export/transactions.validation.ts deleted file mode 100644 index 28d8426..0000000 --- a/src/validation/export/transactions.validation.ts +++ /dev/null @@ -1,654 +0,0 @@ -// Generated Zod validator: Export.transactions -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const transactionsExportIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const transactionsExportCustomerIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const transactionsExportSubscriptionIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const transactionsExportPaymentSourceIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const transactionsExportPaymentMethodSchema = z.object({ - is: z - .enum([ - 'card', - 'cash', - 'check', - 'chargeback', - 'bank_transfer', - 'amazon_payments', - 'paypal_express_checkout', - 'direct_debit', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ach_credit', - 'sepa_credit', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'other', - 'app_store', - 'upi', - 'netbanking_emandates', - 'play_store', - 'custom', - 'boleto', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - is_not: z - .enum([ - 'card', - 'cash', - 'check', - 'chargeback', - 'bank_transfer', - 'amazon_payments', - 'paypal_express_checkout', - 'direct_debit', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ach_credit', - 'sepa_credit', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'other', - 'app_store', - 'upi', - 'netbanking_emandates', - 'play_store', - 'custom', - 'boleto', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - in: z - .enum([ - 'card', - 'cash', - 'check', - 'chargeback', - 'bank_transfer', - 'amazon_payments', - 'paypal_express_checkout', - 'direct_debit', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ach_credit', - 'sepa_credit', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'other', - 'app_store', - 'upi', - 'netbanking_emandates', - 'play_store', - 'custom', - 'boleto', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - not_in: z - .enum([ - 'card', - 'cash', - 'check', - 'chargeback', - 'bank_transfer', - 'amazon_payments', - 'paypal_express_checkout', - 'direct_debit', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ach_credit', - 'sepa_credit', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'other', - 'app_store', - 'upi', - 'netbanking_emandates', - 'play_store', - 'custom', - 'boleto', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), -}); -const transactionsExportGatewaySchema = z.object({ - is: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - 'not_applicable', - ]) - .optional(), - is_not: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - 'not_applicable', - ]) - .optional(), - in: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - 'not_applicable', - ]) - .optional(), - not_in: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - 'not_applicable', - ]) - .optional(), -}); -const transactionsExportGatewayAccountIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), - not_in: z.string().regex(RegExp('^[(.*)(,.*)*]$')).optional(), -}); -const transactionsExportIdAtGatewaySchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const transactionsExportReferenceNumberSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), -}); -const transactionsExportTypeSchema = z.object({ - is: z - .enum(['authorization', 'payment', 'refund', 'payment_reversal']) - .optional(), - is_not: z - .enum(['authorization', 'payment', 'refund', 'payment_reversal']) - .optional(), - in: z - .enum(['authorization', 'payment', 'refund', 'payment_reversal']) - .optional(), - not_in: z - .enum(['authorization', 'payment', 'refund', 'payment_reversal']) - .optional(), -}); -const transactionsExportDateSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const transactionsExportAmountSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const transactionsExportAmountCapturableSchema = z.object({ - is: z.string().regex(RegExp('^-?d+$')).optional(), - is_not: z.string().regex(RegExp('^-?d+$')).optional(), - lt: z.string().regex(RegExp('^-?d+$')).optional(), - lte: z.string().regex(RegExp('^-?d+$')).optional(), - gt: z.string().regex(RegExp('^-?d+$')).optional(), - gte: z.string().regex(RegExp('^-?d+$')).optional(), - between: z.string().regex(RegExp('^[-?d+,-?d+]$')).optional(), -}); -const transactionsExportStatusSchema = z.object({ - is: z - .enum([ - 'in_progress', - 'success', - 'voided', - 'failure', - 'timeout', - 'needs_attention', - 'late_failure', - ]) - .optional(), - is_not: z - .enum([ - 'in_progress', - 'success', - 'voided', - 'failure', - 'timeout', - 'needs_attention', - 'late_failure', - ]) - .optional(), - in: z - .enum([ - 'in_progress', - 'success', - 'voided', - 'failure', - 'timeout', - 'needs_attention', - 'late_failure', - ]) - .optional(), - not_in: z - .enum([ - 'in_progress', - 'success', - 'voided', - 'failure', - 'timeout', - 'needs_attention', - 'late_failure', - ]) - .optional(), -}); -const transactionsExportUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const transactionsExportTransactionItemSchema = z.object({ - id: transactionsExportIdSchema.optional(), - customer_id: transactionsExportCustomerIdSchema.optional(), - subscription_id: transactionsExportSubscriptionIdSchema.optional(), - payment_source_id: transactionsExportPaymentSourceIdSchema.optional(), - payment_method: transactionsExportPaymentMethodSchema.optional(), - gateway: transactionsExportGatewaySchema.optional(), - gateway_account_id: transactionsExportGatewayAccountIdSchema.optional(), - id_at_gateway: transactionsExportIdAtGatewaySchema.optional(), - reference_number: transactionsExportReferenceNumberSchema.optional(), - type: transactionsExportTypeSchema.optional(), - date: transactionsExportDateSchema.optional(), - amount: transactionsExportAmountSchema.optional(), - amount_capturable: transactionsExportAmountCapturableSchema.optional(), - status: transactionsExportStatusSchema.optional(), - updated_at: transactionsExportUpdatedAtSchema.optional(), -}); -const transactionsExportBodySchema = z.looseObject({ - transaction: z - .array(transactionsExportTransactionItemSchema.optional()) - .optional(), -}); -export { transactionsExportBodySchema }; diff --git a/src/validation/feature/create.validation.ts b/src/validation/feature/create.validation.ts deleted file mode 100644 index 2888015..0000000 --- a/src/validation/feature/create.validation.ts +++ /dev/null @@ -1,19 +0,0 @@ -// Generated Zod validator: Feature.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createFeatureLevelsSchema = z.object({ - name: z.array(z.string().max(50).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), - is_unlimited: z.array(z.boolean().optional()).optional(), - level: z.array(z.number().int().optional()).optional(), -}); -const createFeatureBodySchema = z.looseObject({ - id: z.string().max(50).optional(), - name: z.string().max(50), - description: z.string().max(500).optional(), - type: z.enum(['switch', 'custom', 'quantity', 'range']).optional(), - unit: z.string().max(50).optional(), - levels: createFeatureLevelsSchema.optional(), -}); -export { createFeatureBodySchema }; diff --git a/src/validation/feature/update.validation.ts b/src/validation/feature/update.validation.ts deleted file mode 100644 index c3022ec..0000000 --- a/src/validation/feature/update.validation.ts +++ /dev/null @@ -1,17 +0,0 @@ -// Generated Zod validator: Feature.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateFeatureLevelsSchema = z.object({ - name: z.array(z.string().max(50).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), - is_unlimited: z.array(z.boolean().optional()).optional(), - level: z.array(z.number().int().optional()).optional(), -}); -const updateFeatureBodySchema = z.looseObject({ - name: z.string().max(50).optional(), - description: z.string().max(500).optional(), - unit: z.string().max(50).optional(), - levels: updateFeatureLevelsSchema.optional(), -}); -export { updateFeatureBodySchema }; diff --git a/src/validation/gift/create.validation.ts b/src/validation/gift/create.validation.ts deleted file mode 100644 index 393f458..0000000 --- a/src/validation/gift/create.validation.ts +++ /dev/null @@ -1,111 +0,0 @@ -// Generated Zod validator: Gift.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createGiftGifterSchema = z.object({ - customer_id: z.string().max(50), - signature: z.string().max(50), - note: z.string().max(500).optional(), - payment_src_id: z.string().max(40).optional(), -}); -const createGiftGiftReceiverSchema = z.object({ - customer_id: z.string().max(50), - first_name: z.string().max(150), - last_name: z.string().max(150), - email: z.string().email().max(70), -}); -const createGiftAdditionalInformationSchema = z.looseObject({}); -const createGiftPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: createGiftAdditionalInformationSchema.optional(), -}); -const createGiftShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createGiftSubscriptionSchema = z.looseObject({ - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), -}); -const createGiftAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), -}); -const createGiftBodySchema = z.looseObject({ - scheduled_at: z.number().int().optional(), - auto_claim: z.boolean().default(false).optional(), - no_expiry: z.boolean().optional(), - claim_expiry_date: z.number().int().optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - gifter: createGiftGifterSchema.optional(), - gift_receiver: createGiftGiftReceiverSchema.optional(), - payment_intent: createGiftPaymentIntentSchema.optional(), - shipping_address: createGiftShippingAddressSchema.optional(), - subscription: createGiftSubscriptionSchema.optional(), - addons: createGiftAddonsSchema.optional(), -}); -export { createGiftBodySchema }; diff --git a/src/validation/gift/create_for_items.validation.ts b/src/validation/gift/create_for_items.validation.ts deleted file mode 100644 index 57f8f9a..0000000 --- a/src/validation/gift/create_for_items.validation.ts +++ /dev/null @@ -1,120 +0,0 @@ -// Generated Zod validator: Gift.createForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForItemsGiftMetaDataSchema = z.looseObject({}); -const createForItemsGiftGifterSchema = z.object({ - customer_id: z.string().max(50), - signature: z.string().max(50), - note: z.string().max(500).optional(), - payment_src_id: z.string().max(40).optional(), -}); -const createForItemsGiftGiftReceiverSchema = z.object({ - customer_id: z.string().max(50), - first_name: z.string().max(150), - last_name: z.string().max(150), - email: z.string().email().max(70), -}); -const createForItemsGiftAdditionalInformationSchema = z.looseObject({}); -const createForItemsGiftPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - createForItemsGiftAdditionalInformationSchema.optional(), -}); -const createForItemsGiftShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createForItemsGiftSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const createForItemsGiftItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const createForItemsGiftBodySchema = z.looseObject({ - scheduled_at: z.number().int().optional(), - auto_claim: z.boolean().default(false).optional(), - no_expiry: z.boolean().optional(), - claim_expiry_date: z.number().int().optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - meta_data: createForItemsGiftMetaDataSchema.optional(), - gifter: createForItemsGiftGifterSchema.optional(), - gift_receiver: createForItemsGiftGiftReceiverSchema.optional(), - payment_intent: createForItemsGiftPaymentIntentSchema.optional(), - shipping_address: createForItemsGiftShippingAddressSchema.optional(), - subscription_items: createForItemsGiftSubscriptionItemsSchema.optional(), - item_tiers: createForItemsGiftItemTiersSchema.optional(), -}); -export { createForItemsGiftBodySchema }; diff --git a/src/validation/gift/list.validation.ts b/src/validation/gift/list.validation.ts deleted file mode 100644 index 570afb1..0000000 --- a/src/validation/gift/list.validation.ts +++ /dev/null @@ -1,43 +0,0 @@ -// Generated Zod validator: Gift.list -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listGiftStatusSchema = z.object({ - is: z - .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) - .optional(), - is_not: z - .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) - .optional(), - in: z - .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) - .optional(), - not_in: z - .enum(['scheduled', 'unclaimed', 'claimed', 'cancelled', 'expired']) - .optional(), -}); -const listGiftEmailSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listGiftCustomerIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listGiftGiftReceiverSchema = z.object({ - email: listGiftEmailSchema.optional(), - customer_id: listGiftCustomerIdSchema.optional(), -}); -const listGiftGifterSchema = z.object({ - customer_id: listGiftCustomerIdSchema.optional(), -}); -const listGiftBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - status: listGiftStatusSchema.optional(), - gift_receiver: listGiftGiftReceiverSchema.optional(), - gifter: listGiftGifterSchema.optional(), -}); -export { listGiftBodySchema }; diff --git a/src/validation/gift/update_gift.validation.ts b/src/validation/gift/update_gift.validation.ts deleted file mode 100644 index 635f01d..0000000 --- a/src/validation/gift/update_gift.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Gift.updateGift -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateGiftGiftBodySchema = z.looseObject({ - scheduled_at: z.number().int(), - comment: z.string().max(250).optional(), -}); -export { updateGiftGiftBodySchema }; diff --git a/src/validation/hosted_page/accept_quote.validation.ts b/src/validation/hosted_page/accept_quote.validation.ts deleted file mode 100644 index df0ae16..0000000 --- a/src/validation/hosted_page/accept_quote.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: HostedPage.acceptQuote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const acceptQuoteHostedPageQuoteSchema = z.object({ - id: z.string().max(50), -}); -const acceptQuoteHostedPageBodySchema = z.looseObject({ - redirect_url: z.string().max(250).optional(), - layout: z.enum(['in_app', 'full_page']).optional(), - quote: acceptQuoteHostedPageQuoteSchema.optional(), -}); -export { acceptQuoteHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_existing.validation.ts b/src/validation/hosted_page/checkout_existing.validation.ts deleted file mode 100644 index c2333aa..0000000 --- a/src/validation/hosted_page/checkout_existing.validation.ts +++ /dev/null @@ -1,177 +0,0 @@ -// Generated Zod validator: HostedPage.checkoutExisting -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const checkoutExistingHostedPageSubscriptionSchema = z.looseObject({ - id: z.string().max(50), - plan_id: z.string().max(100).optional(), - plan_quantity: z.number().int().min(1).optional(), - plan_unit_price: z.number().int().min(0).optional(), - setup_fee: z.number().int().min(0).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - invoice_notes: z.string().max(2000).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const checkoutExistingHostedPageCustomerSchema = z.looseObject({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), -}); -const checkoutExistingHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const checkoutExistingHostedPageContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const checkoutExistingHostedPageAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const checkoutExistingHostedPageEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const checkoutExistingHostedPageBodySchema = z.looseObject({ - replace_addon_list: z.boolean().default(false).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - invoice_date: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - force_term_reset: z.boolean().default(false).optional(), - redirect_url: z.string().max(250).optional(), - cancel_url: z.string().max(250).optional(), - pass_thru_content: z.string().max(2048).optional(), - embed: z.boolean().default(true).optional(), - iframe_messaging: z.boolean().default(false).optional(), - allow_offline_payment_methods: z.boolean().optional(), - subscription: checkoutExistingHostedPageSubscriptionSchema.optional(), - customer: checkoutExistingHostedPageCustomerSchema.optional(), - card: checkoutExistingHostedPageCardSchema.optional(), - contract_term: checkoutExistingHostedPageContractTermSchema.optional(), - addons: checkoutExistingHostedPageAddonsSchema.optional(), - event_based_addons: - checkoutExistingHostedPageEventBasedAddonsSchema.optional(), -}); -export { checkoutExistingHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_existing_for_items.validation.ts b/src/validation/hosted_page/checkout_existing_for_items.validation.ts deleted file mode 100644 index 8111381..0000000 --- a/src/validation/hosted_page/checkout_existing_for_items.validation.ts +++ /dev/null @@ -1,219 +0,0 @@ -// Generated Zod validator: HostedPage.checkoutExistingForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const checkoutExistingForItemsHostedPageSubscriptionSchema = z.looseObject({ - id: z.string().max(50), - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - invoice_notes: z.string().max(2000).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const checkoutExistingForItemsHostedPageCustomerSchema = z.looseObject({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - is_einvoice_enabled: z.boolean().optional(), - entity_identifier_scheme: z.string().max(50).optional(), - entity_identifier_standard: z.string().max(50).optional(), -}); -const checkoutExistingForItemsHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const checkoutExistingForItemsHostedPageContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const checkoutExistingForItemsHostedPageSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), -}); -const checkoutExistingForItemsHostedPageDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - operation_type: z.array(z.enum(['add', 'remove']).optional()), - id: z.array(z.string().max(50).optional()).optional(), -}); -const checkoutExistingForItemsHostedPageItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const checkoutExistingForItemsHostedPageEntityIdentifiersSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - scheme: z.array(z.string().max(50).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), - operation: z - .array(z.enum(['create', 'update', 'delete']).optional()) - .optional(), - standard: z.array(z.string().max(50).optional()).optional(), -}); -const checkoutExistingForItemsHostedPageBodySchema = z.looseObject({ - layout: z.enum(['in_app', 'full_page']).optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - replace_items_list: z.boolean().default(false).optional(), - invoice_date: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - force_term_reset: z.boolean().default(false).optional(), - change_option: z - .enum(['immediately', 'end_of_term', 'specific_date']) - .optional(), - changes_scheduled_at: z.number().int().optional(), - invoice_usages: z.boolean().default(false).optional(), - redirect_url: z.string().max(250).optional(), - cancel_url: z.string().max(250).optional(), - pass_thru_content: z.string().max(2048).optional(), - allow_offline_payment_methods: z.boolean().optional(), - subscription: checkoutExistingForItemsHostedPageSubscriptionSchema.optional(), - customer: checkoutExistingForItemsHostedPageCustomerSchema.optional(), - card: checkoutExistingForItemsHostedPageCardSchema.optional(), - contract_term: - checkoutExistingForItemsHostedPageContractTermSchema.optional(), - subscription_items: - checkoutExistingForItemsHostedPageSubscriptionItemsSchema.optional(), - discounts: checkoutExistingForItemsHostedPageDiscountsSchema.optional(), - item_tiers: checkoutExistingForItemsHostedPageItemTiersSchema.optional(), - entity_identifiers: - checkoutExistingForItemsHostedPageEntityIdentifiersSchema.optional(), -}); -export { checkoutExistingForItemsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_gift.validation.ts b/src/validation/hosted_page/checkout_gift.validation.ts deleted file mode 100644 index 16a8ffe..0000000 --- a/src/validation/hosted_page/checkout_gift.validation.ts +++ /dev/null @@ -1,26 +0,0 @@ -// Generated Zod validator: HostedPage.checkoutGift -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const checkoutGiftHostedPageGifterSchema = z.object({ - customer_id: z.string().max(50).optional(), -}); -const checkoutGiftHostedPageSubscriptionSchema = z.looseObject({ - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - coupon: z.string().max(100).optional(), -}); -const checkoutGiftHostedPageAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), -}); -const checkoutGiftHostedPageBodySchema = z.looseObject({ - redirect_url: z.string().max(250).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - gifter: checkoutGiftHostedPageGifterSchema.optional(), - subscription: checkoutGiftHostedPageSubscriptionSchema.optional(), - addons: checkoutGiftHostedPageAddonsSchema.optional(), -}); -export { checkoutGiftHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_gift_for_items.validation.ts b/src/validation/hosted_page/checkout_gift_for_items.validation.ts deleted file mode 100644 index 2bacf81..0000000 --- a/src/validation/hosted_page/checkout_gift_for_items.validation.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Generated Zod validator: HostedPage.checkoutGiftForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const checkoutGiftForItemsHostedPageGifterSchema = z.object({ - customer_id: z.string().max(50).optional(), -}); -const checkoutGiftForItemsHostedPageSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const checkoutGiftForItemsHostedPageItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const checkoutGiftForItemsHostedPageBodySchema = z.looseObject({ - business_entity_id: z.string().max(50).optional(), - redirect_url: z.string().max(250).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - gifter: checkoutGiftForItemsHostedPageGifterSchema.optional(), - subscription_items: - checkoutGiftForItemsHostedPageSubscriptionItemsSchema.optional(), - item_tiers: checkoutGiftForItemsHostedPageItemTiersSchema.optional(), -}); -export { checkoutGiftForItemsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_new.validation.ts b/src/validation/hosted_page/checkout_new.validation.ts deleted file mode 100644 index 2a7ef86..0000000 --- a/src/validation/hosted_page/checkout_new.validation.ts +++ /dev/null @@ -1,218 +0,0 @@ -// Generated Zod validator: HostedPage.checkoutNew -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const checkoutNewHostedPageSubscriptionSchema = z.looseObject({ - id: z.string().max(50).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - start_date: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - invoice_notes: z.string().max(2000).optional(), - affiliate_token: z.string().max(250).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const checkoutNewHostedPageCustomerSchema = z.looseObject({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - locale: z.string().max(50).optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - consolidated_invoicing: z.boolean().optional(), -}); -const checkoutNewHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const checkoutNewHostedPageBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const checkoutNewHostedPageShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const checkoutNewHostedPageContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const checkoutNewHostedPageAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), -}); -const checkoutNewHostedPageEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), -}); -const checkoutNewHostedPageBodySchema = z.looseObject({ - billing_cycles: z.number().int().min(0).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - redirect_url: z.string().max(250).optional(), - cancel_url: z.string().max(250).optional(), - pass_thru_content: z.string().max(2048).optional(), - embed: z.boolean().default(true).optional(), - iframe_messaging: z.boolean().default(false).optional(), - allow_offline_payment_methods: z.boolean().optional(), - subscription: checkoutNewHostedPageSubscriptionSchema.optional(), - customer: checkoutNewHostedPageCustomerSchema.optional(), - card: checkoutNewHostedPageCardSchema.optional(), - billing_address: checkoutNewHostedPageBillingAddressSchema.optional(), - shipping_address: checkoutNewHostedPageShippingAddressSchema.optional(), - contract_term: checkoutNewHostedPageContractTermSchema.optional(), - addons: checkoutNewHostedPageAddonsSchema.optional(), - event_based_addons: checkoutNewHostedPageEventBasedAddonsSchema.optional(), -}); -export { checkoutNewHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_new_for_items.validation.ts b/src/validation/hosted_page/checkout_new_for_items.validation.ts deleted file mode 100644 index 936f096..0000000 --- a/src/validation/hosted_page/checkout_new_for_items.validation.ts +++ /dev/null @@ -1,255 +0,0 @@ -// Generated Zod validator: HostedPage.checkoutNewForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const checkoutNewForItemsHostedPageSubscriptionSchema = z.looseObject({ - id: z.string().max(50).optional(), - trial_end: z.number().int().optional(), - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - invoice_notes: z.string().max(2000).optional(), - po_number: z.string().max(100).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const checkoutNewForItemsHostedPageCustomerSchema = z.looseObject({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - locale: z.string().max(50).optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - is_einvoice_enabled: z.boolean().optional(), - entity_identifier_scheme: z.string().max(50).optional(), - entity_identifier_standard: z.string().max(50).optional(), - einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), -}); -const checkoutNewForItemsHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const checkoutNewForItemsHostedPageBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const checkoutNewForItemsHostedPageShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const checkoutNewForItemsHostedPageContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const checkoutNewForItemsHostedPageSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), -}); -const checkoutNewForItemsHostedPageDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), -}); -const checkoutNewForItemsHostedPageItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const checkoutNewForItemsHostedPageEntityIdentifiersSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - scheme: z.array(z.string().max(50).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), - operation: z - .array(z.enum(['create', 'update', 'delete']).optional()) - .optional(), - standard: z.array(z.string().max(50).optional()).optional(), -}); -const checkoutNewForItemsHostedPageBodySchema = z.looseObject({ - layout: z.enum(['in_app', 'full_page']).optional(), - business_entity_id: z.string().max(50).optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - redirect_url: z.string().max(250).optional(), - cancel_url: z.string().max(250).optional(), - pass_thru_content: z.string().max(2048).optional(), - allow_offline_payment_methods: z.boolean().optional(), - subscription: checkoutNewForItemsHostedPageSubscriptionSchema.optional(), - customer: checkoutNewForItemsHostedPageCustomerSchema.optional(), - card: checkoutNewForItemsHostedPageCardSchema.optional(), - billing_address: checkoutNewForItemsHostedPageBillingAddressSchema.optional(), - shipping_address: - checkoutNewForItemsHostedPageShippingAddressSchema.optional(), - contract_term: checkoutNewForItemsHostedPageContractTermSchema.optional(), - subscription_items: - checkoutNewForItemsHostedPageSubscriptionItemsSchema.optional(), - discounts: checkoutNewForItemsHostedPageDiscountsSchema.optional(), - item_tiers: checkoutNewForItemsHostedPageItemTiersSchema.optional(), - entity_identifiers: - checkoutNewForItemsHostedPageEntityIdentifiersSchema.optional(), -}); -export { checkoutNewForItemsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_one_time.validation.ts b/src/validation/hosted_page/checkout_one_time.validation.ts deleted file mode 100644 index 7409ed1..0000000 --- a/src/validation/hosted_page/checkout_one_time.validation.ts +++ /dev/null @@ -1,167 +0,0 @@ -// Generated Zod validator: HostedPage.checkoutOneTime -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const checkoutOneTimeHostedPageCustomerSchema = z.looseObject({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - locale: z.string().max(50).optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - consolidated_invoicing: z.boolean().optional(), -}); -const checkoutOneTimeHostedPageInvoiceSchema = z.object({ - po_number: z.string().max(100).optional(), -}); -const checkoutOneTimeHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const checkoutOneTimeHostedPageBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const checkoutOneTimeHostedPageShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const checkoutOneTimeHostedPageAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const checkoutOneTimeHostedPageChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - taxable: z.array(z.boolean().default(true).optional()).optional(), - tax_profile_id: z.array(z.string().max(50).optional()).optional(), - avalara_tax_code: z.array(z.string().max(50).optional()).optional(), - hsn_code: z.array(z.string().max(50).optional()).optional(), - taxjar_product_code: z.array(z.string().max(50).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const checkoutOneTimeHostedPageBodySchema = z.looseObject({ - currency_code: z.string().max(3).optional(), - invoice_note: z.string().max(2000).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - redirect_url: z.string().max(250).optional(), - cancel_url: z.string().max(250).optional(), - pass_thru_content: z.string().max(2048).optional(), - embed: z.boolean().default(true).optional(), - iframe_messaging: z.boolean().default(false).optional(), - customer: checkoutOneTimeHostedPageCustomerSchema.optional(), - invoice: checkoutOneTimeHostedPageInvoiceSchema.optional(), - card: checkoutOneTimeHostedPageCardSchema.optional(), - billing_address: checkoutOneTimeHostedPageBillingAddressSchema.optional(), - shipping_address: checkoutOneTimeHostedPageShippingAddressSchema.optional(), - addons: checkoutOneTimeHostedPageAddonsSchema.optional(), - charges: checkoutOneTimeHostedPageChargesSchema.optional(), -}); -export { checkoutOneTimeHostedPageBodySchema }; diff --git a/src/validation/hosted_page/checkout_one_time_for_items.validation.ts b/src/validation/hosted_page/checkout_one_time_for_items.validation.ts deleted file mode 100644 index 794ba57..0000000 --- a/src/validation/hosted_page/checkout_one_time_for_items.validation.ts +++ /dev/null @@ -1,208 +0,0 @@ -// Generated Zod validator: HostedPage.checkoutOneTimeForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const checkoutOneTimeForItemsHostedPageCustomerSchema = z.looseObject({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - locale: z.string().max(50).optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), - is_einvoice_enabled: z.boolean().optional(), - entity_identifier_scheme: z.string().max(50).optional(), - entity_identifier_standard: z.string().max(50).optional(), - consolidated_invoicing: z.boolean().optional(), -}); -const checkoutOneTimeForItemsHostedPageInvoiceSchema = z.object({ - po_number: z.string().max(100).optional(), -}); -const checkoutOneTimeForItemsHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const checkoutOneTimeForItemsHostedPageBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const checkoutOneTimeForItemsHostedPageShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const checkoutOneTimeForItemsHostedPageItemPricesSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const checkoutOneTimeForItemsHostedPageItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const checkoutOneTimeForItemsHostedPageChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - taxable: z.array(z.boolean().default(true).optional()).optional(), - tax_profile_id: z.array(z.string().max(50).optional()).optional(), - avalara_tax_code: z.array(z.string().max(50).optional()).optional(), - hsn_code: z.array(z.string().max(50).optional()).optional(), - taxjar_product_code: z.array(z.string().max(50).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const checkoutOneTimeForItemsHostedPageDiscountsSchema = z.object({ - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - apply_on: z.array( - z.enum(['invoice_amount', 'specific_item_price']).optional(), - ), - item_price_id: z.array(z.string().max(100).optional()).optional(), -}); -const checkoutOneTimeForItemsHostedPageEntityIdentifiersSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - scheme: z.array(z.string().max(50).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), - operation: z - .array(z.enum(['create', 'update', 'delete']).optional()) - .optional(), - standard: z.array(z.string().max(50).optional()).optional(), -}); -const checkoutOneTimeForItemsHostedPageBodySchema = z.looseObject({ - business_entity_id: z.string().max(50).optional(), - layout: z.enum(['in_app', 'full_page']).optional(), - invoice_note: z.string().max(2000).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - currency_code: z.string().max(3).optional(), - redirect_url: z.string().max(250).optional(), - cancel_url: z.string().max(250).optional(), - pass_thru_content: z.string().max(2048).optional(), - customer: checkoutOneTimeForItemsHostedPageCustomerSchema.optional(), - invoice: checkoutOneTimeForItemsHostedPageInvoiceSchema.optional(), - card: checkoutOneTimeForItemsHostedPageCardSchema.optional(), - billing_address: - checkoutOneTimeForItemsHostedPageBillingAddressSchema.optional(), - shipping_address: - checkoutOneTimeForItemsHostedPageShippingAddressSchema.optional(), - item_prices: checkoutOneTimeForItemsHostedPageItemPricesSchema.optional(), - item_tiers: checkoutOneTimeForItemsHostedPageItemTiersSchema.optional(), - charges: checkoutOneTimeForItemsHostedPageChargesSchema.optional(), - discounts: checkoutOneTimeForItemsHostedPageDiscountsSchema.optional(), - entity_identifiers: - checkoutOneTimeForItemsHostedPageEntityIdentifiersSchema.optional(), -}); -export { checkoutOneTimeForItemsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/claim_gift.validation.ts b/src/validation/hosted_page/claim_gift.validation.ts deleted file mode 100644 index 2f9d237..0000000 --- a/src/validation/hosted_page/claim_gift.validation.ts +++ /dev/null @@ -1,16 +0,0 @@ -// Generated Zod validator: HostedPage.claimGift -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const claimGiftHostedPageGiftSchema = z.object({ - id: z.string().max(150), -}); -const claimGiftHostedPageCustomerSchema = z.object({ - locale: z.string().max(50).optional(), -}); -const claimGiftHostedPageBodySchema = z.looseObject({ - redirect_url: z.string().max(250).optional(), - gift: claimGiftHostedPageGiftSchema.optional(), - customer: claimGiftHostedPageCustomerSchema.optional(), -}); -export { claimGiftHostedPageBodySchema }; diff --git a/src/validation/hosted_page/collect_now.validation.ts b/src/validation/hosted_page/collect_now.validation.ts deleted file mode 100644 index f1af0e3..0000000 --- a/src/validation/hosted_page/collect_now.validation.ts +++ /dev/null @@ -1,81 +0,0 @@ -// Generated Zod validator: HostedPage.collectNow -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const collectNowHostedPageCustomerSchema = z.object({ - id: z.string().max(50), -}); -const collectNowHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const collectNowHostedPageBodySchema = z.looseObject({ - redirect_url: z.string().max(250).optional(), - currency_code: z.string().max(3).optional(), - payment_method_save_policy: z.enum(['always', 'ask', 'never']).optional(), - customer: collectNowHostedPageCustomerSchema.optional(), - card: collectNowHostedPageCardSchema.optional(), -}); -export { collectNowHostedPageBodySchema }; diff --git a/src/validation/hosted_page/events.validation.ts b/src/validation/hosted_page/events.validation.ts deleted file mode 100644 index 3c240c7..0000000 --- a/src/validation/hosted_page/events.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: HostedPage.events -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const eventsHostedPageEventDataSchema = z.looseObject({}); -const eventsHostedPageBodySchema = z.looseObject({ - event_name: z.enum(['cancellation_page_loaded']), - occurred_at: z.number().int().optional(), - event_data: eventsHostedPageEventDataSchema, -}); -export { eventsHostedPageBodySchema }; diff --git a/src/validation/hosted_page/extend_subscription.validation.ts b/src/validation/hosted_page/extend_subscription.validation.ts deleted file mode 100644 index 9a84903..0000000 --- a/src/validation/hosted_page/extend_subscription.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: HostedPage.extendSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const extendSubscriptionHostedPageSubscriptionSchema = z.object({ - id: z.string().max(50), -}); -const extendSubscriptionHostedPageBodySchema = z.looseObject({ - expiry: z.number().int().min(1).max(500).optional(), - billing_cycle: z.number().int().min(1).optional(), - subscription: extendSubscriptionHostedPageSubscriptionSchema.optional(), -}); -export { extendSubscriptionHostedPageBodySchema }; diff --git a/src/validation/hosted_page/manage_payment_sources.validation.ts b/src/validation/hosted_page/manage_payment_sources.validation.ts deleted file mode 100644 index 5970235..0000000 --- a/src/validation/hosted_page/manage_payment_sources.validation.ts +++ /dev/null @@ -1,80 +0,0 @@ -// Generated Zod validator: HostedPage.managePaymentSources -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const managePaymentSourcesHostedPageCustomerSchema = z.object({ - id: z.string().max(50), -}); -const managePaymentSourcesHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const managePaymentSourcesHostedPageBodySchema = z.looseObject({ - business_entity_id: z.string().max(50).optional(), - redirect_url: z.string().max(250).optional(), - customer: managePaymentSourcesHostedPageCustomerSchema.optional(), - card: managePaymentSourcesHostedPageCardSchema.optional(), -}); -export { managePaymentSourcesHostedPageBodySchema }; diff --git a/src/validation/hosted_page/pre_cancel.validation.ts b/src/validation/hosted_page/pre_cancel.validation.ts deleted file mode 100644 index 5fe48a6..0000000 --- a/src/validation/hosted_page/pre_cancel.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: HostedPage.preCancel -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const preCancelHostedPageSubscriptionSchema = z.object({ - id: z.string().max(50), -}); -const preCancelHostedPageBodySchema = z.looseObject({ - pass_thru_content: z.string().max(2048).optional(), - cancel_url: z.string().max(250).optional(), - redirect_url: z.string().max(250).optional(), - subscription: preCancelHostedPageSubscriptionSchema.optional(), -}); -export { preCancelHostedPageBodySchema }; diff --git a/src/validation/hosted_page/retrieve_agreement_pdf.validation.ts b/src/validation/hosted_page/retrieve_agreement_pdf.validation.ts deleted file mode 100644 index dd9535c..0000000 --- a/src/validation/hosted_page/retrieve_agreement_pdf.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: HostedPage.retrieveAgreementPdf -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveAgreementPdfHostedPageBodySchema = z.looseObject({ - payment_source_id: z.string().max(40), -}); -export { retrieveAgreementPdfHostedPageBodySchema }; diff --git a/src/validation/hosted_page/update_card.validation.ts b/src/validation/hosted_page/update_card.validation.ts deleted file mode 100644 index 616f8d4..0000000 --- a/src/validation/hosted_page/update_card.validation.ts +++ /dev/null @@ -1,85 +0,0 @@ -// Generated Zod validator: HostedPage.updateCard -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateCardHostedPageCustomerSchema = z.object({ - id: z.string().max(50), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), -}); -const updateCardHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const updateCardHostedPageBodySchema = z.looseObject({ - redirect_url: z.string().max(250).optional(), - cancel_url: z.string().max(250).optional(), - pass_thru_content: z.string().max(2048).optional(), - iframe_messaging: z.boolean().default(false).optional(), - customer: updateCardHostedPageCustomerSchema.optional(), - card: updateCardHostedPageCardSchema.optional(), - embed: z.boolean().default(true).optional(), -}); -export { updateCardHostedPageBodySchema }; diff --git a/src/validation/hosted_page/update_payment_method.validation.ts b/src/validation/hosted_page/update_payment_method.validation.ts deleted file mode 100644 index d2a9098..0000000 --- a/src/validation/hosted_page/update_payment_method.validation.ts +++ /dev/null @@ -1,85 +0,0 @@ -// Generated Zod validator: HostedPage.updatePaymentMethod -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updatePaymentMethodHostedPageCustomerSchema = z.object({ - id: z.string().max(50), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), -}); -const updatePaymentMethodHostedPageCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), -}); -const updatePaymentMethodHostedPageBodySchema = z.looseObject({ - redirect_url: z.string().max(250).optional(), - cancel_url: z.string().max(250).optional(), - pass_thru_content: z.string().max(2048).optional(), - iframe_messaging: z.boolean().default(false).optional(), - customer: updatePaymentMethodHostedPageCustomerSchema.optional(), - card: updatePaymentMethodHostedPageCardSchema.optional(), - embed: z.boolean().default(true).optional(), -}); -export { updatePaymentMethodHostedPageBodySchema }; diff --git a/src/validation/hosted_page/view_voucher.validation.ts b/src/validation/hosted_page/view_voucher.validation.ts deleted file mode 100644 index cc40842..0000000 --- a/src/validation/hosted_page/view_voucher.validation.ts +++ /dev/null @@ -1,15 +0,0 @@ -// Generated Zod validator: HostedPage.viewVoucher -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const viewVoucherHostedPagePaymentVoucherSchema = z.object({ - id: z.string().max(40), -}); -const viewVoucherHostedPageCustomerSchema = z.object({ - locale: z.string().max(50).optional(), -}); -const viewVoucherHostedPageBodySchema = z.looseObject({ - payment_voucher: viewVoucherHostedPagePaymentVoucherSchema.optional(), - customer: viewVoucherHostedPageCustomerSchema.optional(), -}); -export { viewVoucherHostedPageBodySchema }; diff --git a/src/validation/in_app_subscription/import_receipt.validation.ts b/src/validation/in_app_subscription/import_receipt.validation.ts deleted file mode 100644 index 53f3485..0000000 --- a/src/validation/in_app_subscription/import_receipt.validation.ts +++ /dev/null @@ -1,17 +0,0 @@ -// Generated Zod validator: InAppSubscription.importReceipt -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importReceiptInAppSubscriptionProductSchema = z.object({ - currency_code: z.string().max(3), -}); -const importReceiptInAppSubscriptionCustomerSchema = z.object({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), -}); -const importReceiptInAppSubscriptionBodySchema = z.looseObject({ - receipt: z.string().max(65000), - product: importReceiptInAppSubscriptionProductSchema.optional(), - customer: importReceiptInAppSubscriptionCustomerSchema.optional(), -}); -export { importReceiptInAppSubscriptionBodySchema }; diff --git a/src/validation/in_app_subscription/import_subscription.validation.ts b/src/validation/in_app_subscription/import_subscription.validation.ts deleted file mode 100644 index a54860b..0000000 --- a/src/validation/in_app_subscription/import_subscription.validation.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Generated Zod validator: InAppSubscription.importSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importSubscriptionInAppSubscriptionSubscriptionSchema = z.object({ - id: z.string().max(50), - started_at: z.number().int(), - term_start: z.number().int(), - term_end: z.number().int(), - product_id: z.string().max(96), - currency_code: z.string().max(3), - transaction_id: z.string().max(43), - is_trial: z.boolean().default(false).optional(), -}); -const importSubscriptionInAppSubscriptionCustomerSchema = z.object({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), -}); -const importSubscriptionInAppSubscriptionBodySchema = z.looseObject({ - subscription: - importSubscriptionInAppSubscriptionSubscriptionSchema.optional(), - customer: importSubscriptionInAppSubscriptionCustomerSchema.optional(), -}); -export { importSubscriptionInAppSubscriptionBodySchema }; diff --git a/src/validation/in_app_subscription/process_receipt.validation.ts b/src/validation/in_app_subscription/process_receipt.validation.ts deleted file mode 100644 index fee35a3..0000000 --- a/src/validation/in_app_subscription/process_receipt.validation.ts +++ /dev/null @@ -1,25 +0,0 @@ -// Generated Zod validator: InAppSubscription.processReceipt -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const processReceiptInAppSubscriptionProductSchema = z.object({ - id: z.string().max(96), - currency_code: z.string().max(3), - price: z.number().int().min(0), - name: z.string().max(46).optional(), - price_in_decimal: z.string().max(39).optional(), - period: z.string().max(3).optional(), - period_unit: z.string().max(3).optional(), -}); -const processReceiptInAppSubscriptionCustomerSchema = z.object({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), -}); -const processReceiptInAppSubscriptionBodySchema = z.looseObject({ - receipt: z.string().max(65000), - product: processReceiptInAppSubscriptionProductSchema.optional(), - customer: processReceiptInAppSubscriptionCustomerSchema.optional(), -}); -export { processReceiptInAppSubscriptionBodySchema }; diff --git a/src/validation/in_app_subscription/retrieve_store_subs.validation.ts b/src/validation/in_app_subscription/retrieve_store_subs.validation.ts deleted file mode 100644 index ff10781..0000000 --- a/src/validation/in_app_subscription/retrieve_store_subs.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: InAppSubscription.retrieveStoreSubs -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveStoreSubsInAppSubscriptionBodySchema = z.looseObject({ - receipt: z.string().max(65000), -}); -export { retrieveStoreSubsInAppSubscriptionBodySchema }; diff --git a/src/validation/index.ts b/src/validation/index.ts deleted file mode 100644 index 608368e..0000000 --- a/src/validation/index.ts +++ /dev/null @@ -1,309 +0,0 @@ -// Auto-generated barrel export for Zod validators -export * from './addon/create.validation.js'; -export * from './addon/update.validation.js'; -export * from './addon/copy.validation.js'; -export * from './address/retrieve.validation.js'; -export * from './address/update.validation.js'; -export * from './alert/create.validation.js'; -export * from './alert/update.validation.js'; -export * from './attached_item/create.validation.js'; -export * from './attached_item/update.validation.js'; -export * from './attached_item/retrieve.validation.js'; -export * from './attached_item/delete.validation.js'; -export * from './business_entity/create_transfers.validation.js'; -export * from './business_entity/get_transfers.validation.js'; -export * from './card/update_card_for_customer.validation.js'; -export * from './card/switch_gateway_for_customer.validation.js'; -export * from './card/copy_card_for_customer.validation.js'; -export * from './comment/create.validation.js'; -export * from './comment/list.validation.js'; -export * from './coupon/create.validation.js'; -export * from './coupon/create_for_items.validation.js'; -export * from './coupon/update_for_items.validation.js'; -export * from './coupon/update.validation.js'; -export * from './coupon/copy.validation.js'; -export * from './coupon_code/create.validation.js'; -export * from './coupon_set/create.validation.js'; -export * from './coupon_set/add_coupon_codes.validation.js'; -export * from './coupon_set/update.validation.js'; -export * from './credit_note/create.validation.js'; -export * from './credit_note/retrieve.validation.js'; -export * from './credit_note/pdf.validation.js'; -export * from './credit_note/refund.validation.js'; -export * from './credit_note/record_refund.validation.js'; -export * from './credit_note/void_credit_note.validation.js'; -export * from './credit_note/credit_notes_for_customer.validation.js'; -export * from './credit_note/delete.validation.js'; -export * from './credit_note/remove_tax_withheld_refund.validation.js'; -export * from './credit_note/import_credit_note.validation.js'; -export * from './currency/list.validation.js'; -export * from './currency/create.validation.js'; -export * from './currency/update.validation.js'; -export * from './currency/add_schedule.validation.js'; -export * from './customer/create.validation.js'; -export * from './customer/update.validation.js'; -export * from './customer/update_payment_method.validation.js'; -export * from './customer/update_billing_info.validation.js'; -export * from './customer/contacts_for_customer.validation.js'; -export * from './customer/assign_payment_role.validation.js'; -export * from './customer/add_contact.validation.js'; -export * from './customer/update_contact.validation.js'; -export * from './customer/delete_contact.validation.js'; -export * from './customer/add_promotional_credits.validation.js'; -export * from './customer/deduct_promotional_credits.validation.js'; -export * from './customer/set_promotional_credits.validation.js'; -export * from './customer/record_excess_payment.validation.js'; -export * from './customer/collect_payment.validation.js'; -export * from './customer/delete.validation.js'; -export * from './customer/move.validation.js'; -export * from './customer/change_billing_date.validation.js'; -export * from './customer/merge.validation.js'; -export * from './customer/relationships.validation.js'; -export * from './customer/hierarchy.validation.js'; -export * from './customer/list_hierarchy_detail.validation.js'; -export * from './customer/update_hierarchy_settings.validation.js'; -export * from './customer_entitlement/entitlements_for_customer.validation.js'; -export * from './differential_price/create.validation.js'; -export * from './differential_price/retrieve.validation.js'; -export * from './differential_price/update.validation.js'; -export * from './differential_price/delete.validation.js'; -export * from './entitlement/create.validation.js'; -export * from './entitlement_override/add_entitlement_override_for_subscription.validation.js'; -export * from './entitlement_override/list_entitlement_override_for_subscription.validation.js'; -export * from './estimate/create_subscription.validation.js'; -export * from './estimate/create_sub_item_estimate.validation.js'; -export * from './estimate/create_sub_for_customer_estimate.validation.js'; -export * from './estimate/create_sub_item_for_customer_estimate.validation.js'; -export * from './estimate/update_subscription.validation.js'; -export * from './estimate/update_subscription_for_items.validation.js'; -export * from './estimate/renewal_estimate.validation.js'; -export * from './estimate/advance_invoice_estimate.validation.js'; -export * from './estimate/regenerate_invoice_estimate.validation.js'; -export * from './estimate/upcoming_invoices_estimate.validation.js'; -export * from './estimate/change_term_end.validation.js'; -export * from './estimate/cancel_subscription.validation.js'; -export * from './estimate/cancel_subscription_for_items.validation.js'; -export * from './estimate/pause_subscription.validation.js'; -export * from './estimate/resume_subscription.validation.js'; -export * from './estimate/gift_subscription.validation.js'; -export * from './estimate/gift_subscription_for_items.validation.js'; -export * from './estimate/create_invoice.validation.js'; -export * from './estimate/create_invoice_for_items.validation.js'; -export * from './estimate/payment_schedules.validation.js'; -export * from './export/customers.validation.js'; -export * from './export/credit_notes.validation.js'; -export * from './export/transactions.validation.js'; -export * from './export/orders.validation.js'; -export * from './export/item_families.validation.js'; -export * from './export/items.validation.js'; -export * from './export/attached_items.validation.js'; -export * from './export/price_variants.validation.js'; -export * from './feature/create.validation.js'; -export * from './feature/update.validation.js'; -export * from './gift/create.validation.js'; -export * from './gift/create_for_items.validation.js'; -export * from './gift/list.validation.js'; -export * from './gift/update_gift.validation.js'; -export * from './hosted_page/checkout_new.validation.js'; -export * from './hosted_page/checkout_one_time.validation.js'; -export * from './hosted_page/checkout_one_time_for_items.validation.js'; -export * from './hosted_page/checkout_new_for_items.validation.js'; -export * from './hosted_page/checkout_existing.validation.js'; -export * from './hosted_page/checkout_existing_for_items.validation.js'; -export * from './hosted_page/update_card.validation.js'; -export * from './hosted_page/update_payment_method.validation.js'; -export * from './hosted_page/manage_payment_sources.validation.js'; -export * from './hosted_page/collect_now.validation.js'; -export * from './hosted_page/accept_quote.validation.js'; -export * from './hosted_page/extend_subscription.validation.js'; -export * from './hosted_page/checkout_gift.validation.js'; -export * from './hosted_page/checkout_gift_for_items.validation.js'; -export * from './hosted_page/claim_gift.validation.js'; -export * from './hosted_page/retrieve_agreement_pdf.validation.js'; -export * from './hosted_page/pre_cancel.validation.js'; -export * from './hosted_page/events.validation.js'; -export * from './hosted_page/view_voucher.validation.js'; -export * from './in_app_subscription/process_receipt.validation.js'; -export * from './in_app_subscription/import_receipt.validation.js'; -export * from './in_app_subscription/import_subscription.validation.js'; -export * from './in_app_subscription/retrieve_store_subs.validation.js'; -export * from './invoice/create.validation.js'; -export * from './invoice/create_for_charge_items_and_charges.validation.js'; -export * from './invoice/charge.validation.js'; -export * from './invoice/charge_addon.validation.js'; -export * from './invoice/create_for_charge_item.validation.js'; -export * from './invoice/stop_dunning.validation.js'; -export * from './invoice/pause_dunning.validation.js'; -export * from './invoice/resume_dunning.validation.js'; -export * from './invoice/import_invoice.validation.js'; -export * from './invoice/apply_payments.validation.js'; -export * from './invoice/delete_line_items.validation.js'; -export * from './invoice/apply_credits.validation.js'; -export * from './invoice/invoices_for_customer.validation.js'; -export * from './invoice/invoices_for_subscription.validation.js'; -export * from './invoice/retrieve.validation.js'; -export * from './invoice/pdf.validation.js'; -export * from './invoice/add_charge.validation.js'; -export * from './invoice/add_addon_charge.validation.js'; -export * from './invoice/add_charge_item.validation.js'; -export * from './invoice/close.validation.js'; -export * from './invoice/collect_payment.validation.js'; -export * from './invoice/record_payment.validation.js'; -export * from './invoice/record_tax_withheld.validation.js'; -export * from './invoice/remove_tax_withheld.validation.js'; -export * from './invoice/refund.validation.js'; -export * from './invoice/record_refund.validation.js'; -export * from './invoice/remove_payment.validation.js'; -export * from './invoice/remove_credit_note.validation.js'; -export * from './invoice/void_invoice.validation.js'; -export * from './invoice/write_off.validation.js'; -export * from './invoice/delete.validation.js'; -export * from './invoice/update_details.validation.js'; -export * from './invoice/apply_payment_schedule_scheme.validation.js'; -export * from './item/create.validation.js'; -export * from './item/update.validation.js'; -export * from './item_entitlement/item_entitlements_for_item.validation.js'; -export * from './item_entitlement/item_entitlements_for_feature.validation.js'; -export * from './item_entitlement/add_item_entitlements.validation.js'; -export * from './item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.js'; -export * from './item_family/create.validation.js'; -export * from './item_family/update.validation.js'; -export * from './item_price/create.validation.js'; -export * from './item_price/update.validation.js'; -export * from './item_price/find_applicable_items.validation.js'; -export * from './item_price/find_applicable_item_prices.validation.js'; -export * from './non_subscription/process_receipt.validation.js'; -export * from './offer_event/offer_events.validation.js'; -export * from './offer_fulfillment/offer_fulfillments.validation.js'; -export * from './offer_fulfillment/offer_fulfillments_update.validation.js'; -export * from './omnichannel_one_time_order/list.validation.js'; -export * from './omnichannel_subscription/list.validation.js'; -export * from './omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.js'; -export * from './omnichannel_subscription/move.validation.js'; -export * from './omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.js'; -export * from './order/create.validation.js'; -export * from './order/update.validation.js'; -export * from './order/import_order.validation.js'; -export * from './order/cancel.validation.js'; -export * from './order/create_refundable_credit_note.validation.js'; -export * from './order/reopen.validation.js'; -export * from './order/orders_for_invoice.validation.js'; -export * from './order/resend.validation.js'; -export * from './payment_intent/create.validation.js'; -export * from './payment_intent/update.validation.js'; -export * from './payment_schedule_scheme/create.validation.js'; -export * from './payment_source/create_using_temp_token.validation.js'; -export * from './payment_source/create_using_permanent_token.validation.js'; -export * from './payment_source/create_using_token.validation.js'; -export * from './payment_source/create_using_payment_intent.validation.js'; -export * from './payment_source/create_voucher_payment_source.validation.js'; -export * from './payment_source/create_card.validation.js'; -export * from './payment_source/create_bank_account.validation.js'; -export * from './payment_source/update_card.validation.js'; -export * from './payment_source/update_bank_account.validation.js'; -export * from './payment_source/verify_bank_account.validation.js'; -export * from './payment_source/switch_gateway_account.validation.js'; -export * from './payment_source/export_payment_source.validation.js'; -export * from './payment_voucher/create.validation.js'; -export * from './payment_voucher/payment_vouchersforinvoice.validation.js'; -export * from './payment_voucher/payment_vouchersforcustomer.validation.js'; -export * from './personalized_offer/personalized_offers.validation.js'; -export * from './plan/create.validation.js'; -export * from './plan/update.validation.js'; -export * from './plan/copy.validation.js'; -export * from './portal_session/create.validation.js'; -export * from './portal_session/activate.validation.js'; -export * from './price_variant/create.validation.js'; -export * from './price_variant/update.validation.js'; -export * from './pricing_page_session/create_for_new_subscription.validation.js'; -export * from './pricing_page_session/create_for_existing_subscription.validation.js'; -export * from './promotional_credit/add.validation.js'; -export * from './promotional_credit/deduct.validation.js'; -export * from './promotional_credit/set.validation.js'; -export * from './promotional_credit/list.validation.js'; -export * from './purchase/create.validation.js'; -export * from './purchase/estimate.validation.js'; -export * from './quote/create_sub_for_customer_quote.validation.js'; -export * from './quote/edit_create_sub_for_customer_quote.validation.js'; -export * from './quote/update_subscription_quote.validation.js'; -export * from './quote/edit_update_subscription_quote.validation.js'; -export * from './quote/create_for_onetime_charges.validation.js'; -export * from './quote/edit_one_time_quote.validation.js'; -export * from './quote/create_sub_items_for_customer_quote.validation.js'; -export * from './quote/edit_create_sub_customer_quote_for_items.validation.js'; -export * from './quote/update_subscription_quote_for_items.validation.js'; -export * from './quote/edit_update_subscription_quote_for_items.validation.js'; -export * from './quote/create_for_charge_items_and_charges.validation.js'; -export * from './quote/edit_for_charge_items_and_charges.validation.js'; -export * from './quote/quote_line_groups_for_quote.validation.js'; -export * from './quote/convert.validation.js'; -export * from './quote/update_status.validation.js'; -export * from './quote/extend_expiry_date.validation.js'; -export * from './quote/delete.validation.js'; -export * from './quote/pdf.validation.js'; -export * from './quote/update_signature_status.validation.js'; -export * from './ramp/create_for_subscription.validation.js'; -export * from './ramp/update.validation.js'; -export * from './recorded_purchase/create.validation.js'; -export * from './resource_migration/retrieve_latest.validation.js'; -export * from './site_migration_detail/list.validation.js'; -export * from './subscription/create.validation.js'; -export * from './subscription/create_for_customer.validation.js'; -export * from './subscription/create_with_items.validation.js'; -export * from './subscription/subscriptions_for_customer.validation.js'; -export * from './subscription/contract_terms_for_subscription.validation.js'; -export * from './subscription/list_discounts.validation.js'; -export * from './subscription/remove_scheduled_cancellation.validation.js'; -export * from './subscription/remove_coupons.validation.js'; -export * from './subscription/update.validation.js'; -export * from './subscription/update_for_items.validation.js'; -export * from './subscription/change_term_end.validation.js'; -export * from './subscription/reactivate.validation.js'; -export * from './subscription/add_charge_at_term_end.validation.js'; -export * from './subscription/charge_addon_at_term_end.validation.js'; -export * from './subscription/charge_future_renewals.validation.js'; -export * from './subscription/edit_advance_invoice_schedule.validation.js'; -export * from './subscription/remove_advance_invoice_schedule.validation.js'; -export * from './subscription/regenerate_invoice.validation.js'; -export * from './subscription/import_subscription.validation.js'; -export * from './subscription/import_for_customer.validation.js'; -export * from './subscription/import_contract_term.validation.js'; -export * from './subscription/import_unbilled_charges.validation.js'; -export * from './subscription/import_for_items.validation.js'; -export * from './subscription/override_billing_profile.validation.js'; -export * from './subscription/pause.validation.js'; -export * from './subscription/cancel.validation.js'; -export * from './subscription/cancel_for_items.validation.js'; -export * from './subscription/resume.validation.js'; -export * from './subscription/move.validation.js'; -export * from './subscription_entitlement/subscription_entitlements_for_subscription.validation.js'; -export * from './subscription_entitlement/set_subscription_entitlement_availability.validation.js'; -export * from './time_machine/start_afresh.validation.js'; -export * from './time_machine/travel_forward.validation.js'; -export * from './transaction/create_authorization.validation.js'; -export * from './transaction/record_refund.validation.js'; -export * from './transaction/reconcile.validation.js'; -export * from './transaction/refund.validation.js'; -export * from './transaction/transactions_for_customer.validation.js'; -export * from './transaction/transactions_for_subscription.validation.js'; -export * from './transaction/payments_for_invoice.validation.js'; -export * from './transaction/delete_offline_transaction.validation.js'; -export * from './unbilled_charge/create_unbilled_charge.validation.js'; -export * from './unbilled_charge/create.validation.js'; -export * from './unbilled_charge/invoice_unbilled_charges.validation.js'; -export * from './unbilled_charge/invoice_now_estimate.validation.js'; -export * from './usage/create.validation.js'; -export * from './usage/retrieve.validation.js'; -export * from './usage/delete.validation.js'; -export * from './usage/list.validation.js'; -export * from './usage/pdf.validation.js'; -export * from './usage_charge/retrieve_usage_charges_for_subscription.validation.js'; -export * from './usage_event/create.validation.js'; -export * from './usage_event/batch_ingest.validation.js'; -export * from './usage_file/upload_url.validation.js'; -export * from './usage_summary/retrieve_usage_summary_for_subscription.validation.js'; -export * from './virtual_bank_account/create_using_permanent_token.validation.js'; -export * from './virtual_bank_account/create.validation.js'; -export * from './webhook_endpoint/create.validation.js'; -export * from './webhook_endpoint/update.validation.js'; -export * from './webhook_endpoint/list.validation.js'; diff --git a/src/validation/invoice/add_addon_charge.validation.ts b/src/validation/invoice/add_addon_charge.validation.ts deleted file mode 100644 index 0058a6b..0000000 --- a/src/validation/invoice/add_addon_charge.validation.ts +++ /dev/null @@ -1,19 +0,0 @@ -// Generated Zod validator: Invoice.addAddonCharge -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addAddonChargeInvoiceLineItemSchema = z.object({ - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), -}); -const addAddonChargeInvoiceBodySchema = z.looseObject({ - addon_id: z.string().max(100), - addon_quantity: z.number().int().min(1).optional(), - addon_unit_price: z.number().int().min(0).optional(), - addon_quantity_in_decimal: z.string().max(33).optional(), - addon_unit_price_in_decimal: z.string().max(39).optional(), - comment: z.string().max(300).optional(), - subscription_id: z.string().max(50).optional(), - line_item: addAddonChargeInvoiceLineItemSchema.optional(), -}); -export { addAddonChargeInvoiceBodySchema }; diff --git a/src/validation/invoice/add_charge.validation.ts b/src/validation/invoice/add_charge.validation.ts deleted file mode 100644 index 347cfa0..0000000 --- a/src/validation/invoice/add_charge.validation.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Generated Zod validator: Invoice.addCharge -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addChargeInvoiceLineItemSchema = z.object({ - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), -}); -const addChargeInvoiceBodySchema = z.looseObject({ - amount: z.number().int().min(1), - description: z.string().max(250), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - avalara_tax_code: z.string().max(50).optional(), - hsn_code: z.string().max(50).optional(), - taxjar_product_code: z.string().max(50).optional(), - comment: z.string().max(300).optional(), - subscription_id: z.string().max(50).optional(), - line_item: addChargeInvoiceLineItemSchema.optional(), -}); -export { addChargeInvoiceBodySchema }; diff --git a/src/validation/invoice/add_charge_item.validation.ts b/src/validation/invoice/add_charge_item.validation.ts deleted file mode 100644 index 142b88c..0000000 --- a/src/validation/invoice/add_charge_item.validation.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Generated Zod validator: Invoice.addChargeItem -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addChargeItemInvoiceItemPriceSchema = z.object({ - item_price_id: z.string().max(100), - quantity: z.number().int().min(1).optional(), - quantity_in_decimal: z.string().max(33).optional(), - unit_price: z.number().int().min(0).optional(), - unit_price_in_decimal: z.string().max(39).optional(), - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), -}); -const addChargeItemInvoiceItemTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const addChargeItemInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), - subscription_id: z.string().max(50).optional(), - item_price: addChargeItemInvoiceItemPriceSchema.optional(), - item_tiers: addChargeItemInvoiceItemTiersSchema.optional(), -}); -export { addChargeItemInvoiceBodySchema }; diff --git a/src/validation/invoice/apply_credits.validation.ts b/src/validation/invoice/apply_credits.validation.ts deleted file mode 100644 index 2e55884..0000000 --- a/src/validation/invoice/apply_credits.validation.ts +++ /dev/null @@ -1,12 +0,0 @@ -// Generated Zod validator: Invoice.applyCredits -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const applyCreditsInvoiceCreditNotesSchema = z.object({ - id: z.array(z.string().max(50).optional()).optional(), -}); -const applyCreditsInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), - credit_notes: applyCreditsInvoiceCreditNotesSchema.optional(), -}); -export { applyCreditsInvoiceBodySchema }; diff --git a/src/validation/invoice/apply_payment_schedule_scheme.validation.ts b/src/validation/invoice/apply_payment_schedule_scheme.validation.ts deleted file mode 100644 index cec77cf..0000000 --- a/src/validation/invoice/apply_payment_schedule_scheme.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Invoice.applyPaymentScheduleScheme -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const applyPaymentScheduleSchemeInvoiceBodySchema = z.looseObject({ - scheme_id: z.string(), - amount: z.number().int().min(0).optional(), -}); -export { applyPaymentScheduleSchemeInvoiceBodySchema }; diff --git a/src/validation/invoice/apply_payments.validation.ts b/src/validation/invoice/apply_payments.validation.ts deleted file mode 100644 index 0c94964..0000000 --- a/src/validation/invoice/apply_payments.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: Invoice.applyPayments -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const applyPaymentsInvoiceTransactionsSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), -}); -const applyPaymentsInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), - transactions: applyPaymentsInvoiceTransactionsSchema.optional(), -}); -export { applyPaymentsInvoiceBodySchema }; diff --git a/src/validation/invoice/charge.validation.ts b/src/validation/invoice/charge.validation.ts deleted file mode 100644 index b19d488..0000000 --- a/src/validation/invoice/charge.validation.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Generated Zod validator: Invoice.charge -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const chargeInvoiceTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const chargeInvoiceBodySchema = z.looseObject({ - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - currency_code: z.string().max(3).optional(), - amount: z.number().int().min(1).optional(), - amount_in_decimal: z.string().max(39).optional(), - description: z.string().max(250), - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - coupon: z.string().max(100).optional(), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - po_number: z.string().max(100).optional(), - invoice_date: z.number().int().optional(), - payment_source_id: z.string().max(40).optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - tax_providers_fields: chargeInvoiceTaxProvidersFieldsSchema.optional(), -}); -export { chargeInvoiceBodySchema }; diff --git a/src/validation/invoice/charge_addon.validation.ts b/src/validation/invoice/charge_addon.validation.ts deleted file mode 100644 index 34400fc..0000000 --- a/src/validation/invoice/charge_addon.validation.ts +++ /dev/null @@ -1,22 +0,0 @@ -// Generated Zod validator: Invoice.chargeAddon -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const chargeAddonInvoiceBodySchema = z.looseObject({ - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - addon_id: z.string().max(100), - addon_quantity: z.number().int().min(1).optional(), - addon_unit_price: z.number().int().min(0).optional(), - addon_quantity_in_decimal: z.string().max(33).optional(), - addon_unit_price_in_decimal: z.string().max(39).optional(), - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - coupon: z.string().max(100).optional(), - po_number: z.string().max(100).optional(), - invoice_date: z.number().int().optional(), - payment_source_id: z.string().max(40).optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), -}); -export { chargeAddonInvoiceBodySchema }; diff --git a/src/validation/invoice/close.validation.ts b/src/validation/invoice/close.validation.ts deleted file mode 100644 index a813cda..0000000 --- a/src/validation/invoice/close.validation.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Generated Zod validator: Invoice.close -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const closeInvoiceNotesToRemoveSchema = z.object({ - entity_type: z - .array( - z - .enum([ - 'customer', - 'subscription', - 'coupon', - 'plan_item_price', - 'addon_item_price', - 'charge_item_price', - 'plan', - 'addon', - ]) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), -}); -const closeInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), - invoice_note: z.string().max(2000).optional(), - remove_general_note: z.boolean().default(false).optional(), - invoice_date: z.number().int().optional(), - notes_to_remove: closeInvoiceNotesToRemoveSchema.optional(), -}); -export { closeInvoiceBodySchema }; diff --git a/src/validation/invoice/collect_payment.validation.ts b/src/validation/invoice/collect_payment.validation.ts deleted file mode 100644 index 15eb8e9..0000000 --- a/src/validation/invoice/collect_payment.validation.ts +++ /dev/null @@ -1,12 +0,0 @@ -// Generated Zod validator: Invoice.collectPayment -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const collectPaymentInvoiceBodySchema = z.looseObject({ - amount: z.number().int().min(1).optional(), - authorization_transaction_id: z.string().max(40).optional(), - payment_source_id: z.string().max(40).optional(), - comment: z.string().max(300).optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), -}); -export { collectPaymentInvoiceBodySchema }; diff --git a/src/validation/invoice/create.validation.ts b/src/validation/invoice/create.validation.ts deleted file mode 100644 index 0d5737f..0000000 --- a/src/validation/invoice/create.validation.ts +++ /dev/null @@ -1,371 +0,0 @@ -// Generated Zod validator: Invoice.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createInvoiceShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createInvoiceStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const createInvoiceAdditionalInformationSchema = z.looseObject({}); -const createInvoiceCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - tmp_token: z.string().max(300).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - ip_address: z.string().max(50).optional(), - additional_information: createInvoiceAdditionalInformationSchema.optional(), -}); -const createInvoiceBillingAddressSchema = z.looseObject({}); -const createInvoiceBankAccountSchema = z.object({ - gateway_account_id: z.string().max(50).optional(), - iban: z.string().max(50).min(10).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - email: z.string().email().max(70).optional(), - phone: z.string().max(50).optional(), - bank_name: z.string().max(100).optional(), - account_number: z.string().max(17).min(4).optional(), - routing_number: z.string().max(9).min(3).optional(), - bank_code: z.string().max(20).optional(), - account_type: z - .enum(['checking', 'savings', 'business_checking', 'current']) - .optional(), - account_holder_type: z.enum(['individual', 'company']).optional(), - echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), - issuing_country: z.string().max(50).optional(), - swedish_identity_number: z.string().max(12).min(10).optional(), - billing_address: createInvoiceBillingAddressSchema.optional(), -}); -const createInvoicePaymentMethodSchema = z.object({ - type: z - .enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - tmp_token: z.string().max(65000).optional(), - issuing_country: z.string().max(50).optional(), - additional_information: createInvoiceAdditionalInformationSchema.optional(), -}); -const createInvoicePaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: createInvoiceAdditionalInformationSchema.optional(), -}); -const createInvoiceAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createInvoiceChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - taxable: z.array(z.boolean().default(true).optional()).optional(), - tax_profile_id: z.array(z.string().max(50).optional()).optional(), - avalara_tax_code: z.array(z.string().max(50).optional()).optional(), - hsn_code: z.array(z.string().max(50).optional()).optional(), - taxjar_product_code: z.array(z.string().max(50).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createInvoiceTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createInvoiceNotesToRemoveSchema = z.object({ - entity_type: z - .array( - z - .enum(['plan', 'addon', 'customer', 'subscription', 'coupon']) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), -}); -const createInvoiceBodySchema = z.looseObject({ - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - currency_code: z.string().max(3).optional(), - invoice_date: z.number().int().optional(), - invoice_note: z.string().max(2000).optional(), - remove_general_note: z.boolean().default(false).optional(), - po_number: z.string().max(100).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - authorization_transaction_id: z.string().max(40).optional(), - payment_source_id: z.string().max(40).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - token_id: z.string().max(40).optional(), - replace_primary_payment_source: z.boolean().default(false).optional(), - retain_payment_source: z.boolean().default(true).optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - shipping_address: createInvoiceShippingAddressSchema.optional(), - statement_descriptor: createInvoiceStatementDescriptorSchema.optional(), - card: createInvoiceCardSchema.optional(), - bank_account: createInvoiceBankAccountSchema.optional(), - payment_method: createInvoicePaymentMethodSchema.optional(), - payment_intent: createInvoicePaymentIntentSchema.optional(), - addons: createInvoiceAddonsSchema.optional(), - charges: createInvoiceChargesSchema.optional(), - tax_providers_fields: createInvoiceTaxProvidersFieldsSchema.optional(), - notes_to_remove: createInvoiceNotesToRemoveSchema.optional(), -}); -export { createInvoiceBodySchema }; diff --git a/src/validation/invoice/create_for_charge_item.validation.ts b/src/validation/invoice/create_for_charge_item.validation.ts deleted file mode 100644 index 2165b33..0000000 --- a/src/validation/invoice/create_for_charge_item.validation.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Generated Zod validator: Invoice.createForChargeItem -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForChargeItemInvoiceItemPriceSchema = z.object({ - item_price_id: z.string().max(100), - quantity: z.number().int().min(1).optional(), - quantity_in_decimal: z.string().max(33).optional(), - unit_price: z.number().int().min(0).optional(), - unit_price_in_decimal: z.string().max(39).optional(), - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), -}); -const createForChargeItemInvoiceItemTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createForChargeItemInvoiceBodySchema = z.looseObject({ - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - po_number: z.string().max(100).optional(), - coupon: z.string().max(100).optional(), - payment_source_id: z.string().max(40).optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - invoice_date: z.number().int().optional(), - item_price: createForChargeItemInvoiceItemPriceSchema.optional(), - item_tiers: createForChargeItemInvoiceItemTiersSchema.optional(), -}); -export { createForChargeItemInvoiceBodySchema }; diff --git a/src/validation/invoice/create_for_charge_items_and_charges.validation.ts b/src/validation/invoice/create_for_charge_items_and_charges.validation.ts deleted file mode 100644 index c97c73d..0000000 --- a/src/validation/invoice/create_for_charge_items_and_charges.validation.ts +++ /dev/null @@ -1,419 +0,0 @@ -// Generated Zod validator: Invoice.createForChargeItemsAndCharges -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForChargeItemsAndChargesInvoiceShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createForChargeItemsAndChargesInvoiceStatementDescriptorSchema = z.object( - { - descriptor: z.string().max(65000).optional(), - }, -); -const createForChargeItemsAndChargesInvoiceAdditionalInformationSchema = - z.looseObject({}); -const createForChargeItemsAndChargesInvoiceCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - tmp_token: z.string().max(300).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - ip_address: z.string().max(50).optional(), - additional_information: - createForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), -}); -const createForChargeItemsAndChargesInvoiceBillingAddressSchema = z.looseObject( - {}, -); -const createForChargeItemsAndChargesInvoiceBankAccountSchema = z.object({ - gateway_account_id: z.string().max(50).optional(), - iban: z.string().max(50).min(10).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - email: z.string().email().max(70).optional(), - phone: z.string().max(50).optional(), - bank_name: z.string().max(100).optional(), - account_number: z.string().max(17).min(4).optional(), - routing_number: z.string().max(9).min(3).optional(), - bank_code: z.string().max(20).optional(), - account_type: z - .enum(['checking', 'savings', 'business_checking', 'current']) - .optional(), - account_holder_type: z.enum(['individual', 'company']).optional(), - echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), - issuing_country: z.string().max(50).optional(), - swedish_identity_number: z.string().max(12).min(10).optional(), - billing_address: - createForChargeItemsAndChargesInvoiceBillingAddressSchema.optional(), -}); -const createForChargeItemsAndChargesInvoicePaymentMethodSchema = z.object({ - type: z - .enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - tmp_token: z.string().max(65000).optional(), - issuing_country: z.string().max(50).optional(), - additional_information: - createForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), -}); -const createForChargeItemsAndChargesInvoicePaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - createForChargeItemsAndChargesInvoiceAdditionalInformationSchema.optional(), -}); -const createForChargeItemsAndChargesInvoiceItemPricesSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createForChargeItemsAndChargesInvoiceItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createForChargeItemsAndChargesInvoiceChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - taxable: z.array(z.boolean().default(true).optional()).optional(), - tax_profile_id: z.array(z.string().max(50).optional()).optional(), - avalara_tax_code: z.array(z.string().max(50).optional()).optional(), - hsn_code: z.array(z.string().max(50).optional()).optional(), - taxjar_product_code: z.array(z.string().max(50).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createForChargeItemsAndChargesInvoiceNotesToRemoveSchema = z.object({ - entity_type: z - .array( - z - .enum([ - 'customer', - 'subscription', - 'coupon', - 'plan_item_price', - 'addon_item_price', - 'charge_item_price', - ]) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), -}); -const createForChargeItemsAndChargesInvoiceTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createForChargeItemsAndChargesInvoiceDiscountsSchema = z.object({ - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - apply_on: z.array( - z.enum(['invoice_amount', 'specific_item_price']).optional(), - ), - item_price_id: z.array(z.string().max(100).optional()).optional(), -}); -const createForChargeItemsAndChargesInvoiceBodySchema = z.looseObject({ - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - currency_code: z.string().max(3).optional(), - invoice_note: z.string().max(2000).optional(), - remove_general_note: z.boolean().default(false).optional(), - po_number: z.string().max(100).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - authorization_transaction_id: z.string().max(40).optional(), - payment_source_id: z.string().max(40).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - net_term_days: z.number().int().optional(), - invoice_date: z.number().int().optional(), - token_id: z.string().max(40).optional(), - replace_primary_payment_source: z.boolean().default(false).optional(), - retain_payment_source: z.boolean().default(true).optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - shipping_address: - createForChargeItemsAndChargesInvoiceShippingAddressSchema.optional(), - statement_descriptor: - createForChargeItemsAndChargesInvoiceStatementDescriptorSchema.optional(), - card: createForChargeItemsAndChargesInvoiceCardSchema.optional(), - bank_account: - createForChargeItemsAndChargesInvoiceBankAccountSchema.optional(), - payment_method: - createForChargeItemsAndChargesInvoicePaymentMethodSchema.optional(), - payment_intent: - createForChargeItemsAndChargesInvoicePaymentIntentSchema.optional(), - item_prices: createForChargeItemsAndChargesInvoiceItemPricesSchema.optional(), - item_tiers: createForChargeItemsAndChargesInvoiceItemTiersSchema.optional(), - charges: createForChargeItemsAndChargesInvoiceChargesSchema.optional(), - notes_to_remove: - createForChargeItemsAndChargesInvoiceNotesToRemoveSchema.optional(), - tax_providers_fields: - createForChargeItemsAndChargesInvoiceTaxProvidersFieldsSchema.optional(), - discounts: createForChargeItemsAndChargesInvoiceDiscountsSchema.optional(), -}); -export { createForChargeItemsAndChargesInvoiceBodySchema }; diff --git a/src/validation/invoice/delete.validation.ts b/src/validation/invoice/delete.validation.ts deleted file mode 100644 index 27e01bd..0000000 --- a/src/validation/invoice/delete.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Invoice.delete -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), -}); -export { deleteInvoiceBodySchema }; diff --git a/src/validation/invoice/delete_line_items.validation.ts b/src/validation/invoice/delete_line_items.validation.ts deleted file mode 100644 index 7f2675b..0000000 --- a/src/validation/invoice/delete_line_items.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Invoice.deleteLineItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteLineItemsInvoiceLineItemsSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), -}); -const deleteLineItemsInvoiceBodySchema = z.looseObject({ - line_items: deleteLineItemsInvoiceLineItemsSchema.optional(), -}); -export { deleteLineItemsInvoiceBodySchema }; diff --git a/src/validation/invoice/import_invoice.validation.ts b/src/validation/invoice/import_invoice.validation.ts deleted file mode 100644 index 1d8f634..0000000 --- a/src/validation/invoice/import_invoice.validation.ts +++ /dev/null @@ -1,265 +0,0 @@ -// Generated Zod validator: Invoice.importInvoice -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importInvoiceInvoiceCreditNoteSchema = z.object({ - id: z.string().max(50).optional(), -}); -const importInvoiceInvoiceBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const importInvoiceInvoiceShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const importInvoiceInvoiceLineItemsSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), - subscription_id: z.array(z.string().max(50).optional()).optional(), - description: z.array(z.string().max(250).optional()), - unit_amount: z.array(z.number().int().optional()).optional(), - quantity: z.array(z.number().int().optional()).optional(), - amount: z.array(z.number().int().optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - entity_type: z - .array( - z - .enum([ - 'adhoc', - 'plan_item_price', - 'addon_item_price', - 'charge_item_price', - 'plan_setup', - 'plan', - 'addon', - ]) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), - item_level_discount1_entity_id: z - .array(z.string().max(100).optional()) - .optional(), - item_level_discount1_amount: z - .array(z.number().int().min(0).optional()) - .optional(), - item_level_discount2_entity_id: z - .array(z.string().max(100).optional()) - .optional(), - item_level_discount2_amount: z - .array(z.number().int().min(0).optional()) - .optional(), - tax1_name: z.array(z.string().max(50).optional()).optional(), - tax1_amount: z.array(z.number().int().min(0).optional()).optional(), - tax2_name: z.array(z.string().max(50).optional()).optional(), - tax2_amount: z.array(z.number().int().min(0).optional()).optional(), - tax3_name: z.array(z.string().max(50).optional()).optional(), - tax3_amount: z.array(z.number().int().min(0).optional()).optional(), - tax4_name: z.array(z.string().max(50).optional()).optional(), - tax4_amount: z.array(z.number().int().min(0).optional()).optional(), - tax5_name: z.array(z.string().max(50).optional()).optional(), - tax5_amount: z.array(z.number().int().min(0).optional()).optional(), - tax6_name: z.array(z.string().max(50).optional()).optional(), - tax6_amount: z.array(z.number().int().min(0).optional()).optional(), - tax7_name: z.array(z.string().max(50).optional()).optional(), - tax7_amount: z.array(z.number().int().min(0).optional()).optional(), - tax8_name: z.array(z.string().max(50).optional()).optional(), - tax8_amount: z.array(z.number().int().min(0).optional()).optional(), - tax9_name: z.array(z.string().max(50).optional()).optional(), - tax9_amount: z.array(z.number().int().min(0).optional()).optional(), - tax10_name: z.array(z.string().max(50).optional()).optional(), - tax10_amount: z.array(z.number().int().min(0).optional()).optional(), - created_at: z.array(z.number().int().optional()).optional(), -}); -const importInvoiceInvoicePaymentReferenceNumbersSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - type: z.array( - z.enum(['kid', 'ocr', 'frn', 'fik', 'swiss_reference']).optional(), - ), - number: z.array(z.string().max(100).optional()), -}); -const importInvoiceInvoiceLineItemTiersSchema = z.object({ - line_item_id: z.array(z.string().max(40).optional()), - starting_unit: z.array(z.number().int().min(0).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - quantity_used: z.array(z.number().int().min(0).optional()).optional(), - unit_amount: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), -}); -const importInvoiceInvoiceDiscountsSchema = z.object({ - line_item_id: z.array(z.string().max(40).optional()).optional(), - entity_type: z.array( - z - .enum([ - 'item_level_coupon', - 'document_level_coupon', - 'promotional_credits', - 'item_level_discount', - 'document_level_discount', - ]) - .optional(), - ), - entity_id: z.array(z.string().max(100).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()), -}); -const importInvoiceInvoiceTaxesSchema = z.object({ - name: z.array(z.string().max(100).optional()), - rate: z.array(z.number().min(0).max(100).optional()), - amount: z.array(z.number().int().min(0).optional()).optional(), - description: z.array(z.string().max(50).optional()).optional(), - juris_type: z - .array( - z - .enum([ - 'country', - 'federal', - 'state', - 'county', - 'city', - 'special', - 'unincorporated', - 'other', - ]) - .optional(), - ) - .optional(), - juris_name: z.array(z.string().max(250).optional()).optional(), - juris_code: z.array(z.string().max(250).optional()).optional(), -}); -const importInvoiceInvoicePaymentsSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - amount: z.array(z.number().int().min(1).optional()), - payment_method: z.array( - z - .enum([ - 'cash', - 'check', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]) - .optional(), - ), - date: z.array(z.number().int().optional()).optional(), - reference_number: z.array(z.string().max(100).min(1).optional()).optional(), -}); -const importInvoiceInvoiceNotesSchema = z.object({ - entity_type: z - .array( - z - .enum([ - 'coupon', - 'plan_item_price', - 'addon_item_price', - 'charge_item_price', - 'plan', - 'addon', - ]) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(50).optional()).optional(), - note: z.array(z.string().max(65000).optional()).optional(), -}); -const importInvoiceInvoiceLineItemAddressesSchema = z.object({ - line_item_id: z.array(z.string().max(40).optional()).optional(), - first_name: z.array(z.string().max(150).optional()).optional(), - last_name: z.array(z.string().max(150).optional()).optional(), - email: z.array(z.string().email().max(70).optional()).optional(), - company: z.array(z.string().max(250).optional()).optional(), - phone: z.array(z.string().max(50).optional()).optional(), - line1: z.array(z.string().max(150).optional()).optional(), - line2: z.array(z.string().max(150).optional()).optional(), - line3: z.array(z.string().max(150).optional()).optional(), - city: z.array(z.string().max(50).optional()).optional(), - state_code: z.array(z.string().max(50).optional()).optional(), - state: z.array(z.string().max(50).optional()).optional(), - zip: z.array(z.string().max(20).optional()).optional(), - country: z.array(z.string().max(50).optional()).optional(), - validation_status: z - .array( - z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), - ) - .optional(), -}); -const importInvoiceInvoiceBodySchema = z.looseObject({ - id: z.string().max(50), - currency_code: z.string().max(3).optional(), - customer_id: z.string().max(50).optional(), - subscription_id: z.string().max(50).optional(), - po_number: z.string().max(100).optional(), - price_type: z.enum(['tax_exclusive', 'tax_inclusive']).optional(), - tax_override_reason: z - .enum(['id_exempt', 'customer_exempt', 'export']) - .optional(), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - date: z.number().int(), - total: z.number().int().min(0), - round_off: z.number().int().min(-99).max(99).optional(), - status: z - .enum(['paid', 'posted', 'payment_due', 'not_paid', 'voided', 'pending']) - .optional(), - voided_at: z.number().int().optional(), - void_reason_code: z.string().max(100).optional(), - is_written_off: z.boolean().default(false).optional(), - write_off_amount: z.number().int().min(0).optional(), - write_off_date: z.number().int().optional(), - due_date: z.number().int().optional(), - net_term_days: z.number().int().optional(), - has_advance_charges: z.boolean().default(false).optional(), - use_for_proration: z.boolean().default(false).optional(), - credit_note: importInvoiceInvoiceCreditNoteSchema.optional(), - billing_address: importInvoiceInvoiceBillingAddressSchema.optional(), - shipping_address: importInvoiceInvoiceShippingAddressSchema.optional(), - line_items: importInvoiceInvoiceLineItemsSchema.optional(), - payment_reference_numbers: - importInvoiceInvoicePaymentReferenceNumbersSchema.optional(), - line_item_tiers: importInvoiceInvoiceLineItemTiersSchema.optional(), - discounts: importInvoiceInvoiceDiscountsSchema.optional(), - taxes: importInvoiceInvoiceTaxesSchema.optional(), - payments: importInvoiceInvoicePaymentsSchema.optional(), - notes: importInvoiceInvoiceNotesSchema.optional(), - line_item_addresses: importInvoiceInvoiceLineItemAddressesSchema.optional(), -}); -export { importInvoiceInvoiceBodySchema }; diff --git a/src/validation/invoice/invoices_for_customer.validation.ts b/src/validation/invoice/invoices_for_customer.validation.ts deleted file mode 100644 index a360ca6..0000000 --- a/src/validation/invoice/invoices_for_customer.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Invoice.invoicesForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const invoicesForCustomerInvoiceBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { invoicesForCustomerInvoiceBodySchema }; diff --git a/src/validation/invoice/invoices_for_subscription.validation.ts b/src/validation/invoice/invoices_for_subscription.validation.ts deleted file mode 100644 index 774c3b3..0000000 --- a/src/validation/invoice/invoices_for_subscription.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Invoice.invoicesForSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const invoicesForSubscriptionInvoiceBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { invoicesForSubscriptionInvoiceBodySchema }; diff --git a/src/validation/invoice/pause_dunning.validation.ts b/src/validation/invoice/pause_dunning.validation.ts deleted file mode 100644 index ebdc0fb..0000000 --- a/src/validation/invoice/pause_dunning.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Invoice.pauseDunning -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const pauseDunningInvoiceBodySchema = z.looseObject({ - expected_payment_date: z.number().int(), - comment: z.string().max(300).optional(), -}); -export { pauseDunningInvoiceBodySchema }; diff --git a/src/validation/invoice/pdf.validation.ts b/src/validation/invoice/pdf.validation.ts deleted file mode 100644 index 2f435cf..0000000 --- a/src/validation/invoice/pdf.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Invoice.pdf -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const pdfInvoiceBodySchema = z.looseObject({ - disposition_type: z.enum(['attachment', 'inline']).optional(), -}); -export { pdfInvoiceBodySchema }; diff --git a/src/validation/invoice/record_payment.validation.ts b/src/validation/invoice/record_payment.validation.ts deleted file mode 100644 index e405edf..0000000 --- a/src/validation/invoice/record_payment.validation.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Generated Zod validator: Invoice.recordPayment -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const recordPaymentInvoiceTransactionSchema = z.object({ - amount: z.number().int().min(0).optional(), - payment_method: z.enum([ - 'cash', - 'check', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]), - reference_number: z.string().max(100).optional(), - custom_payment_method_id: z.string().max(50).optional(), - id_at_gateway: z.string().max(100).optional(), - status: z.enum(['success', 'failure', 'late_failure']).optional(), - date: z.number().int().optional(), - error_code: z.string().max(100).optional(), - error_text: z.string().max(65000).optional(), -}); -const recordPaymentInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), - transaction: recordPaymentInvoiceTransactionSchema.optional(), -}); -export { recordPaymentInvoiceBodySchema }; diff --git a/src/validation/invoice/record_refund.validation.ts b/src/validation/invoice/record_refund.validation.ts deleted file mode 100644 index f93d94c..0000000 --- a/src/validation/invoice/record_refund.validation.ts +++ /dev/null @@ -1,41 +0,0 @@ -// Generated Zod validator: Invoice.recordRefund -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const recordRefundInvoiceTransactionSchema = z.object({ - amount: z.number().int().min(0).optional(), - payment_method: z.enum([ - 'cash', - 'check', - 'chargeback', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]), - reference_number: z.string().max(100).optional(), - custom_payment_method_id: z.string().max(50).optional(), - date: z.number().int(), -}); -const recordRefundInvoiceCreditNoteSchema = z.object({ - reason_code: z - .enum([ - 'chargeback', - 'product_unsatisfactory', - 'service_unsatisfactory', - 'order_change', - 'order_cancellation', - 'waiver', - 'other', - ]) - .optional(), - create_reason_code: z.string().max(100).optional(), -}); -const recordRefundInvoiceBodySchema = z.looseObject({ - comment: z.string().max(65000).optional(), - customer_notes: z.string().max(2000).optional(), - transaction: recordRefundInvoiceTransactionSchema.optional(), - credit_note: recordRefundInvoiceCreditNoteSchema.optional(), -}); -export { recordRefundInvoiceBodySchema }; diff --git a/src/validation/invoice/record_tax_withheld.validation.ts b/src/validation/invoice/record_tax_withheld.validation.ts deleted file mode 100644 index fd54bfa..0000000 --- a/src/validation/invoice/record_tax_withheld.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Invoice.recordTaxWithheld -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const recordTaxWithheldInvoiceTaxWithheldSchema = z.object({ - amount: z.number().int().min(1), - reference_number: z.string().max(100).optional(), - date: z.number().int().optional(), - description: z.string().max(65000).optional(), -}); -const recordTaxWithheldInvoiceBodySchema = z.looseObject({ - tax_withheld: recordTaxWithheldInvoiceTaxWithheldSchema.optional(), -}); -export { recordTaxWithheldInvoiceBodySchema }; diff --git a/src/validation/invoice/refund.validation.ts b/src/validation/invoice/refund.validation.ts deleted file mode 100644 index ec3ab74..0000000 --- a/src/validation/invoice/refund.validation.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Generated Zod validator: Invoice.refund -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const refundInvoiceCreditNoteSchema = z.object({ - reason_code: z - .enum([ - 'product_unsatisfactory', - 'service_unsatisfactory', - 'order_change', - 'order_cancellation', - 'waiver', - 'other', - ]) - .optional(), - create_reason_code: z.string().max(100).optional(), -}); -const refundInvoiceBodySchema = z.looseObject({ - refund_amount: z.number().int().min(1).optional(), - comment: z.string().max(300).optional(), - customer_notes: z.string().max(2000).optional(), - credit_note: refundInvoiceCreditNoteSchema.optional(), -}); -export { refundInvoiceBodySchema }; diff --git a/src/validation/invoice/remove_credit_note.validation.ts b/src/validation/invoice/remove_credit_note.validation.ts deleted file mode 100644 index 6af757d..0000000 --- a/src/validation/invoice/remove_credit_note.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Invoice.removeCreditNote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const removeCreditNoteInvoiceCreditNoteSchema = z.object({ - id: z.string().max(50), -}); -const removeCreditNoteInvoiceBodySchema = z.looseObject({ - credit_note: removeCreditNoteInvoiceCreditNoteSchema.optional(), -}); -export { removeCreditNoteInvoiceBodySchema }; diff --git a/src/validation/invoice/remove_payment.validation.ts b/src/validation/invoice/remove_payment.validation.ts deleted file mode 100644 index 8735a4e..0000000 --- a/src/validation/invoice/remove_payment.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Invoice.removePayment -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const removePaymentInvoiceTransactionSchema = z.object({ - id: z.string().max(40), -}); -const removePaymentInvoiceBodySchema = z.looseObject({ - transaction: removePaymentInvoiceTransactionSchema.optional(), -}); -export { removePaymentInvoiceBodySchema }; diff --git a/src/validation/invoice/remove_tax_withheld.validation.ts b/src/validation/invoice/remove_tax_withheld.validation.ts deleted file mode 100644 index 4968a8a..0000000 --- a/src/validation/invoice/remove_tax_withheld.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Invoice.removeTaxWithheld -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const removeTaxWithheldInvoiceTaxWithheldSchema = z.object({ - id: z.string().max(40), -}); -const removeTaxWithheldInvoiceBodySchema = z.looseObject({ - tax_withheld: removeTaxWithheldInvoiceTaxWithheldSchema.optional(), -}); -export { removeTaxWithheldInvoiceBodySchema }; diff --git a/src/validation/invoice/resume_dunning.validation.ts b/src/validation/invoice/resume_dunning.validation.ts deleted file mode 100644 index 381f0dd..0000000 --- a/src/validation/invoice/resume_dunning.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Invoice.resumeDunning -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const resumeDunningInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), -}); -export { resumeDunningInvoiceBodySchema }; diff --git a/src/validation/invoice/retrieve.validation.ts b/src/validation/invoice/retrieve.validation.ts deleted file mode 100644 index e0f2dc4..0000000 --- a/src/validation/invoice/retrieve.validation.ts +++ /dev/null @@ -1,20 +0,0 @@ -// Generated Zod validator: Invoice.retrieve -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveInvoiceSubscriptionIdSchema = z.object({ - is: z.string().min(1).optional(), -}); -const retrieveInvoiceCustomerIdSchema = z.object({ - is: z.string().min(1).optional(), -}); -const retrieveInvoiceLineItemSchema = z.object({ - subscription_id: retrieveInvoiceSubscriptionIdSchema.optional(), - customer_id: retrieveInvoiceCustomerIdSchema.optional(), -}); -const retrieveInvoiceBodySchema = z.looseObject({ - line_items_limit: z.number().int().min(1).max(300).optional(), - line_items_offset: z.string().max(1000).optional(), - line_item: retrieveInvoiceLineItemSchema.optional(), -}); -export { retrieveInvoiceBodySchema }; diff --git a/src/validation/invoice/stop_dunning.validation.ts b/src/validation/invoice/stop_dunning.validation.ts deleted file mode 100644 index 2f9fcae..0000000 --- a/src/validation/invoice/stop_dunning.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Invoice.stopDunning -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const stopDunningInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), -}); -export { stopDunningInvoiceBodySchema }; diff --git a/src/validation/invoice/update_details.validation.ts b/src/validation/invoice/update_details.validation.ts deleted file mode 100644 index db9563a..0000000 --- a/src/validation/invoice/update_details.validation.ts +++ /dev/null @@ -1,54 +0,0 @@ -// Generated Zod validator: Invoice.updateDetails -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateDetailsInvoiceBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateDetailsInvoiceShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateDetailsInvoiceStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const updateDetailsInvoiceBodySchema = z.looseObject({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - po_number: z.string().max(100).optional(), - comment: z.string().max(300).optional(), - billing_address: updateDetailsInvoiceBillingAddressSchema.optional(), - shipping_address: updateDetailsInvoiceShippingAddressSchema.optional(), - statement_descriptor: - updateDetailsInvoiceStatementDescriptorSchema.optional(), -}); -export { updateDetailsInvoiceBodySchema }; diff --git a/src/validation/invoice/void_invoice.validation.ts b/src/validation/invoice/void_invoice.validation.ts deleted file mode 100644 index 4822598..0000000 --- a/src/validation/invoice/void_invoice.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Invoice.voidInvoice -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const voidInvoiceInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), - void_reason_code: z.string().max(100).optional(), -}); -export { voidInvoiceInvoiceBodySchema }; diff --git a/src/validation/invoice/write_off.validation.ts b/src/validation/invoice/write_off.validation.ts deleted file mode 100644 index ae8d950..0000000 --- a/src/validation/invoice/write_off.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Invoice.writeOff -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const writeOffInvoiceBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), -}); -export { writeOffInvoiceBodySchema }; diff --git a/src/validation/item/create.validation.ts b/src/validation/item/create.validation.ts deleted file mode 100644 index 23d8963..0000000 --- a/src/validation/item/create.validation.ts +++ /dev/null @@ -1,42 +0,0 @@ -// Generated Zod validator: Item.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createItemMetadataSchema = z.looseObject({}); -const createItemBundleConfigurationSchema = z.object({ - type: z.enum(['fixed']).optional(), -}); -const createItemBundleItemsToAddSchema = z.object({ - item_id: z.array(z.string().max(100).optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), -}); -const createItemBodySchema = z.looseObject({ - id: z.string().max(100), - name: z.string().max(100), - type: z.enum(['plan', 'addon', 'charge']), - description: z.string().max(2000).optional(), - item_family_id: z.string().max(100), - is_giftable: z.boolean().default(false).optional(), - is_shippable: z.boolean().default(false).optional(), - external_name: z.string().max(100).optional(), - enabled_in_portal: z.boolean().default(true).optional(), - redirect_url: z.string().max(500).optional(), - enabled_for_checkout: z.boolean().default(true).optional(), - item_applicability: z.enum(['all', 'restricted']).optional(), - applicable_items: z.array(z.string().max(100).optional()).optional(), - unit: z.string().max(30).optional(), - gift_claim_redirect_url: z.string().max(500).optional(), - included_in_mrr: z.boolean().optional(), - metered: z.boolean().default(false).optional(), - usage_calculation: z - .enum(['sum_of_usages', 'last_usage', 'max_usage']) - .optional(), - is_percentage_pricing: z.boolean().default(false).optional(), - metadata: createItemMetadataSchema.optional(), - business_entity_id: z.string().max(50).optional(), - bundle_configuration: createItemBundleConfigurationSchema.optional(), - bundle_items_to_add: createItemBundleItemsToAddSchema.optional(), -}); -export { createItemBodySchema }; diff --git a/src/validation/item/update.validation.ts b/src/validation/item/update.validation.ts deleted file mode 100644 index f90e2e9..0000000 --- a/src/validation/item/update.validation.ts +++ /dev/null @@ -1,48 +0,0 @@ -// Generated Zod validator: Item.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateItemMetadataSchema = z.looseObject({}); -const updateItemBundleConfigurationSchema = z.object({ - type: z.enum(['fixed']).optional(), -}); -const updateItemBundleItemsToAddSchema = z.object({ - item_id: z.array(z.string().max(100).optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), -}); -const updateItemBundleItemsToUpdateSchema = z.object({ - item_id: z.array(z.string().max(100).optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - price_allocation: z.array(z.number().min(0).max(100).optional()).optional(), -}); -const updateItemBundleItemsToRemoveSchema = z.object({ - item_id: z.array(z.string().max(100).optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), -}); -const updateItemBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - description: z.string().max(2000).optional(), - is_shippable: z.boolean().default(false).optional(), - external_name: z.string().max(100).optional(), - item_family_id: z.string().max(100).optional(), - enabled_in_portal: z.boolean().default(true).optional(), - redirect_url: z.string().max(500).optional(), - enabled_for_checkout: z.boolean().default(true).optional(), - item_applicability: z.enum(['all', 'restricted']).optional(), - clear_applicable_items: z.boolean().default(false).optional(), - applicable_items: z.array(z.string().max(100).optional()).optional(), - unit: z.string().max(30).optional(), - gift_claim_redirect_url: z.string().max(500).optional(), - metadata: updateItemMetadataSchema.optional(), - included_in_mrr: z.boolean().optional(), - status: z.enum(['active', 'archived']).optional(), - is_percentage_pricing: z.boolean().default(false).optional(), - bundle_configuration: updateItemBundleConfigurationSchema.optional(), - bundle_items_to_add: updateItemBundleItemsToAddSchema.optional(), - bundle_items_to_update: updateItemBundleItemsToUpdateSchema.optional(), - bundle_items_to_remove: updateItemBundleItemsToRemoveSchema.optional(), -}); -export { updateItemBodySchema }; diff --git a/src/validation/item_entitlement/add_item_entitlements.validation.ts b/src/validation/item_entitlement/add_item_entitlements.validation.ts deleted file mode 100644 index 5c7c832..0000000 --- a/src/validation/item_entitlement/add_item_entitlements.validation.ts +++ /dev/null @@ -1,19 +0,0 @@ -// Generated Zod validator: ItemEntitlement.addItemEntitlements -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addItemEntitlementsItemEntitlementItemEntitlementsSchema = z.object({ - item_id: z.array(z.string().max(100).optional()), - item_type: z - .array( - z.enum(['plan', 'addon', 'charge', 'subscription', 'item']).optional(), - ) - .optional(), - value: z.array(z.string().max(50).optional()).optional(), -}); -const addItemEntitlementsItemEntitlementBodySchema = z.looseObject({ - action: z.enum(['upsert', 'remove']), - item_entitlements: - addItemEntitlementsItemEntitlementItemEntitlementsSchema.optional(), -}); -export { addItemEntitlementsItemEntitlementBodySchema }; diff --git a/src/validation/item_entitlement/item_entitlements_for_feature.validation.ts b/src/validation/item_entitlement/item_entitlements_for_feature.validation.ts deleted file mode 100644 index 3ed9c5f..0000000 --- a/src/validation/item_entitlement/item_entitlements_for_feature.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: ItemEntitlement.itemEntitlementsForFeature -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const itemEntitlementsForFeatureItemEntitlementBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - include_drafts: z.boolean().default(false).optional(), -}); -export { itemEntitlementsForFeatureItemEntitlementBodySchema }; diff --git a/src/validation/item_entitlement/item_entitlements_for_item.validation.ts b/src/validation/item_entitlement/item_entitlements_for_item.validation.ts deleted file mode 100644 index ebe0284..0000000 --- a/src/validation/item_entitlement/item_entitlements_for_item.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: ItemEntitlement.itemEntitlementsForItem -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const itemEntitlementsForItemItemEntitlementBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - include_drafts: z.boolean().default(false).optional(), - embed: z.string().max(1000).optional(), -}); -export { itemEntitlementsForItemItemEntitlementBodySchema }; diff --git a/src/validation/item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.ts b/src/validation/item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.ts deleted file mode 100644 index 743d192..0000000 --- a/src/validation/item_entitlement/upsert_or_remove_item_entitlements_for_item.validation.ts +++ /dev/null @@ -1,16 +0,0 @@ -// Generated Zod validator: ItemEntitlement.upsertOrRemoveItemEntitlementsForItem -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const upsertOrRemoveItemEntitlementsForItemItemEntitlementItemEntitlementsSchema = - z.object({ - feature_id: z.array(z.string().max(50).optional()), - value: z.array(z.string().max(50).optional()).optional(), - }); -const upsertOrRemoveItemEntitlementsForItemItemEntitlementBodySchema = - z.looseObject({ - action: z.enum(['upsert', 'remove']), - item_entitlements: - upsertOrRemoveItemEntitlementsForItemItemEntitlementItemEntitlementsSchema.optional(), - }); -export { upsertOrRemoveItemEntitlementsForItemItemEntitlementBodySchema }; diff --git a/src/validation/item_family/create.validation.ts b/src/validation/item_family/create.validation.ts deleted file mode 100644 index 717782a..0000000 --- a/src/validation/item_family/create.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: ItemFamily.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createItemFamilyBodySchema = z.looseObject({ - id: z.string().max(50), - name: z.string().max(50), - description: z.string().max(500).optional(), - business_entity_id: z.string().max(50).optional(), -}); -export { createItemFamilyBodySchema }; diff --git a/src/validation/item_family/update.validation.ts b/src/validation/item_family/update.validation.ts deleted file mode 100644 index 7279837..0000000 --- a/src/validation/item_family/update.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: ItemFamily.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateItemFamilyBodySchema = z.looseObject({ - name: z.string().max(50).optional(), - description: z.string().max(500).optional(), -}); -export { updateItemFamilyBodySchema }; diff --git a/src/validation/item_price/create.validation.ts b/src/validation/item_price/create.validation.ts deleted file mode 100644 index c307fba..0000000 --- a/src/validation/item_price/create.validation.ts +++ /dev/null @@ -1,84 +0,0 @@ -// Generated Zod validator: ItemPrice.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createItemPriceMetadataSchema = z.looseObject({}); -const createItemPriceTaxDetailSchema = z.object({ - tax_profile_id: z.string().max(50).optional(), - avalara_tax_code: z.string().max(50).optional(), - hsn_code: z.string().max(50).optional(), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - taxjar_product_code: z.string().max(50).optional(), -}); -const createItemPriceAccountingDetailSchema = z.object({ - sku: z.string().max(100).optional(), - accounting_code: z.string().max(100).optional(), - accounting_category1: z.string().max(100).optional(), - accounting_category2: z.string().max(100).optional(), - accounting_category3: z.string().max(100).optional(), - accounting_category4: z.string().max(100).optional(), -}); -const createItemPriceTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createItemPriceTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()), - field_id: z.array(z.string().max(50).optional()), - field_value: z.array(z.string().max(50).optional()), -}); -const createItemPriceBodySchema = z.looseObject({ - id: z.string().max(100), - name: z.string().max(100), - description: z.string().max(2000).optional(), - item_id: z.string().max(100), - invoice_notes: z.string().max(2000).optional(), - proration_type: z - .enum(['site_default', 'partial_term', 'full_term']) - .optional(), - external_name: z.string().max(100).optional(), - currency_code: z.string().max(3).optional(), - price_variant_id: z.string().max(100).optional(), - is_taxable: z.boolean().default(true).optional(), - free_quantity: z.number().int().min(0).optional(), - free_quantity_in_decimal: z.string().max(33).optional(), - metadata: createItemPriceMetadataSchema.optional(), - show_description_in_invoices: z.boolean().default(false).optional(), - show_description_in_quotes: z.boolean().default(false).optional(), - usage_accumulation_reset_frequency: z - .enum(['never', 'subscription_billing_frequency']) - .optional(), - business_entity_id: z.string().max(50).optional(), - pricing_model: z - .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) - .optional(), - price: z.number().int().min(0).optional(), - price_in_decimal: z.string().max(39).optional(), - period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - period: z.number().int().min(1).optional(), - trial_period_unit: z.enum(['day', 'month']).optional(), - trial_period: z.number().int().min(0).optional(), - shipping_period: z.number().int().min(1).optional(), - shipping_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - billing_cycles: z.number().int().min(1).optional(), - trial_end_action: z - .enum(['site_default', 'activate_subscription', 'cancel_subscription']) - .optional(), - tax_detail: createItemPriceTaxDetailSchema.optional(), - accounting_detail: createItemPriceAccountingDetailSchema.optional(), - tiers: createItemPriceTiersSchema.optional(), - tax_providers_fields: createItemPriceTaxProvidersFieldsSchema.optional(), -}); -export { createItemPriceBodySchema }; diff --git a/src/validation/item_price/find_applicable_item_prices.validation.ts b/src/validation/item_price/find_applicable_item_prices.validation.ts deleted file mode 100644 index 4fcdc83..0000000 --- a/src/validation/item_price/find_applicable_item_prices.validation.ts +++ /dev/null @@ -1,15 +0,0 @@ -// Generated Zod validator: ItemPrice.findApplicableItemPrices -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const findApplicableItemPricesItemPriceSortBySchema = z.looseObject({ - asc: z.enum(['name', 'id', 'updated_at']).optional(), - desc: z.enum(['name', 'id', 'updated_at']).optional(), -}); -const findApplicableItemPricesItemPriceBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - item_id: z.string().max(100).optional(), - sort_by: findApplicableItemPricesItemPriceSortBySchema.optional(), -}); -export { findApplicableItemPricesItemPriceBodySchema }; diff --git a/src/validation/item_price/find_applicable_items.validation.ts b/src/validation/item_price/find_applicable_items.validation.ts deleted file mode 100644 index e14d8da..0000000 --- a/src/validation/item_price/find_applicable_items.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: ItemPrice.findApplicableItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const findApplicableItemsItemPriceSortBySchema = z.looseObject({ - asc: z.enum(['name', 'id', 'updated_at']).optional(), - desc: z.enum(['name', 'id', 'updated_at']).optional(), -}); -const findApplicableItemsItemPriceBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - sort_by: findApplicableItemsItemPriceSortBySchema.optional(), -}); -export { findApplicableItemsItemPriceBodySchema }; diff --git a/src/validation/item_price/update.validation.ts b/src/validation/item_price/update.validation.ts deleted file mode 100644 index 0a9bd09..0000000 --- a/src/validation/item_price/update.validation.ts +++ /dev/null @@ -1,82 +0,0 @@ -// Generated Zod validator: ItemPrice.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateItemPriceMetadataSchema = z.looseObject({}); -const updateItemPriceTaxDetailSchema = z.object({ - tax_profile_id: z.string().max(50).optional(), - avalara_tax_code: z.string().max(50).optional(), - hsn_code: z.string().max(50).optional(), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - taxjar_product_code: z.string().max(50).optional(), -}); -const updateItemPriceAccountingDetailSchema = z.object({ - sku: z.string().max(100).optional(), - accounting_code: z.string().max(100).optional(), - accounting_category1: z.string().max(100).optional(), - accounting_category2: z.string().max(100).optional(), - accounting_category3: z.string().max(100).optional(), - accounting_category4: z.string().max(100).optional(), -}); -const updateItemPriceTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const updateItemPriceTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()), - field_id: z.array(z.string().max(50).optional()), - field_value: z.array(z.string().max(50).optional()), -}); -const updateItemPriceBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - description: z.string().max(2000).optional(), - proration_type: z - .enum(['site_default', 'partial_term', 'full_term']) - .optional(), - price_variant_id: z.string().max(100).optional(), - status: z.enum(['active', 'archived']).optional(), - external_name: z.string().max(100).optional(), - usage_accumulation_reset_frequency: z - .enum(['never', 'subscription_billing_frequency']) - .optional(), - currency_code: z.string().max(3).optional(), - invoice_notes: z.string().max(2000).optional(), - is_taxable: z.boolean().default(true).optional(), - free_quantity: z.number().int().min(0).optional(), - free_quantity_in_decimal: z.string().max(33).optional(), - metadata: updateItemPriceMetadataSchema.optional(), - pricing_model: z - .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) - .optional(), - price: z.number().int().min(0).optional(), - price_in_decimal: z.string().max(39).optional(), - period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - period: z.number().int().min(1).optional(), - trial_period_unit: z.enum(['day', 'month']).optional(), - trial_period: z.number().int().min(0).optional(), - shipping_period: z.number().int().min(1).optional(), - shipping_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - billing_cycles: z.number().int().min(1).optional(), - trial_end_action: z - .enum(['site_default', 'activate_subscription', 'cancel_subscription']) - .optional(), - show_description_in_invoices: z.boolean().optional(), - show_description_in_quotes: z.boolean().optional(), - tax_detail: updateItemPriceTaxDetailSchema.optional(), - accounting_detail: updateItemPriceAccountingDetailSchema.optional(), - tiers: updateItemPriceTiersSchema.optional(), - tax_providers_fields: updateItemPriceTaxProvidersFieldsSchema.optional(), -}); -export { updateItemPriceBodySchema }; diff --git a/src/validation/non_subscription/process_receipt.validation.ts b/src/validation/non_subscription/process_receipt.validation.ts deleted file mode 100644 index e01d6d7..0000000 --- a/src/validation/non_subscription/process_receipt.validation.ts +++ /dev/null @@ -1,24 +0,0 @@ -// Generated Zod validator: NonSubscription.processReceipt -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const processReceiptNonSubscriptionProductSchema = z.object({ - id: z.string().max(96), - currency_code: z.string().max(3), - price: z.number().int().min(0), - type: z.enum(['consumable', 'non_consumable', 'non_renewing_subscription']), - name: z.string().max(96).optional(), - price_in_decimal: z.string().max(39).optional(), -}); -const processReceiptNonSubscriptionCustomerSchema = z.object({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), -}); -const processReceiptNonSubscriptionBodySchema = z.looseObject({ - receipt: z.string().max(65000), - product: processReceiptNonSubscriptionProductSchema.optional(), - customer: processReceiptNonSubscriptionCustomerSchema.optional(), -}); -export { processReceiptNonSubscriptionBodySchema }; diff --git a/src/validation/offer_event/offer_events.validation.ts b/src/validation/offer_event/offer_events.validation.ts deleted file mode 100644 index 764645c..0000000 --- a/src/validation/offer_event/offer_events.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: OfferEvent.offerEvents -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const offerEventsOfferEventBodySchema = z.looseObject({ - personalized_offer_id: z.string().max(50), - type: z.enum(['viewed', 'dismissed']), -}); -export { offerEventsOfferEventBodySchema }; diff --git a/src/validation/offer_fulfillment/offer_fulfillments.validation.ts b/src/validation/offer_fulfillment/offer_fulfillments.validation.ts deleted file mode 100644 index 80a8a4a..0000000 --- a/src/validation/offer_fulfillment/offer_fulfillments.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: OfferFulfillment.offerFulfillments -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const offerFulfillmentsOfferFulfillmentBodySchema = z.looseObject({ - personalized_offer_id: z.string().max(50), - option_id: z.string().max(50), -}); -export { offerFulfillmentsOfferFulfillmentBodySchema }; diff --git a/src/validation/offer_fulfillment/offer_fulfillments_update.validation.ts b/src/validation/offer_fulfillment/offer_fulfillments_update.validation.ts deleted file mode 100644 index b940424..0000000 --- a/src/validation/offer_fulfillment/offer_fulfillments_update.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: OfferFulfillment.offerFulfillmentsUpdate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const offerFulfillmentsUpdateOfferFulfillmentBodySchema = z.looseObject({ - id: z.string().max(50), - status: z.enum(['completed', 'failed']), - failure_reason: z.string().max(100).optional(), -}); -export { offerFulfillmentsUpdateOfferFulfillmentBodySchema }; diff --git a/src/validation/omnichannel_subscription/list.validation.ts b/src/validation/omnichannel_subscription/list.validation.ts deleted file mode 100644 index baf6edd..0000000 --- a/src/validation/omnichannel_subscription/list.validation.ts +++ /dev/null @@ -1,75 +0,0 @@ -// Generated Zod validator: OmnichannelSubscription.list -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listOmnichannelSubscriptionSourceSchema = z.object({ - is: z.enum(['apple_app_store', 'google_play_store']).optional(), - is_not: z.enum(['apple_app_store', 'google_play_store']).optional(), - in: z.enum(['apple_app_store', 'google_play_store']).optional(), - not_in: z.enum(['apple_app_store', 'google_play_store']).optional(), -}); -const listOmnichannelSubscriptionCustomerIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listOmnichannelSubscriptionStatusSchema = z.object({ - is: z - .enum([ - 'active', - 'expired', - 'cancelled', - 'in_dunning', - 'in_grace_period', - 'paused', - ]) - .optional(), - is_not: z - .enum([ - 'active', - 'expired', - 'cancelled', - 'in_dunning', - 'in_grace_period', - 'paused', - ]) - .optional(), - in: z - .enum([ - 'active', - 'expired', - 'cancelled', - 'in_dunning', - 'in_grace_period', - 'paused', - ]) - .optional(), - not_in: z - .enum([ - 'active', - 'expired', - 'cancelled', - 'in_dunning', - 'in_grace_period', - 'paused', - ]) - .optional(), -}); -const listOmnichannelSubscriptionItemIdAtSourceSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listOmnichannelSubscriptionOmnichannelSubscriptionItemSchema = z.object({ - status: listOmnichannelSubscriptionStatusSchema.optional(), - item_id_at_source: listOmnichannelSubscriptionItemIdAtSourceSchema.optional(), -}); -const listOmnichannelSubscriptionBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - source: listOmnichannelSubscriptionSourceSchema.optional(), - customer_id: listOmnichannelSubscriptionCustomerIdSchema.optional(), - omnichannel_subscription_item: - listOmnichannelSubscriptionOmnichannelSubscriptionItemSchema.optional(), -}); -export { listOmnichannelSubscriptionBodySchema }; diff --git a/src/validation/omnichannel_subscription/move.validation.ts b/src/validation/omnichannel_subscription/move.validation.ts deleted file mode 100644 index 361f699..0000000 --- a/src/validation/omnichannel_subscription/move.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: OmnichannelSubscription.move -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const moveOmnichannelSubscriptionBodySchema = z.looseObject({ - to_customer_id: z.string().max(50), -}); -export { moveOmnichannelSubscriptionBodySchema }; diff --git a/src/validation/omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.ts b/src/validation/omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.ts deleted file mode 100644 index 9fb6ae6..0000000 --- a/src/validation/omnichannel_subscription/omnichannel_transactionsforomnichannelsubscription.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: OmnichannelSubscription.omnichannel_transactionsForOmnichannelSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const omnichannelTransactionsforomnichannelsubscriptionOmnichannelSubscriptionBodySchema = - z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - }); -export { omnichannelTransactionsforomnichannelsubscriptionOmnichannelSubscriptionBodySchema }; diff --git a/src/validation/omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.ts b/src/validation/omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.ts deleted file mode 100644 index 2463957..0000000 --- a/src/validation/omnichannel_subscription_item/list_omni_sub_item_schedule_changes.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: OmnichannelSubscriptionItem.listOmniSubItemScheduleChanges -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listOmniSubItemScheduleChangesOmnichannelSubscriptionItemBodySchema = - z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - }); -export { listOmniSubItemScheduleChangesOmnichannelSubscriptionItemBodySchema }; diff --git a/src/validation/order/cancel.validation.ts b/src/validation/order/cancel.validation.ts deleted file mode 100644 index 74ce541..0000000 --- a/src/validation/order/cancel.validation.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Generated Zod validator: Order.cancel -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const cancelOrderCreditNoteSchema = z.object({ - total: z.number().int().min(0).optional(), -}); -const cancelOrderBodySchema = z.looseObject({ - cancellation_reason: z.enum([ - 'shipping_cut_off_passed', - 'product_unsatisfactory', - 'third_party_cancellation', - 'product_not_required', - 'delivery_date_missed', - 'alternative_found', - 'invoice_written_off', - 'invoice_voided', - 'fraudulent_transaction', - 'payment_declined', - 'subscription_cancelled', - 'product_not_available', - 'others', - 'order_resent', - ]), - customer_notes: z.string().max(2000).optional(), - comment: z.string().max(300).optional(), - cancelled_at: z.number().int().optional(), - credit_note: cancelOrderCreditNoteSchema.optional(), -}); -export { cancelOrderBodySchema }; diff --git a/src/validation/order/create.validation.ts b/src/validation/order/create.validation.ts deleted file mode 100644 index 05c92a5..0000000 --- a/src/validation/order/create.validation.ts +++ /dev/null @@ -1,18 +0,0 @@ -// Generated Zod validator: Order.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createOrderBodySchema = z.looseObject({ - id: z.string().max(40).optional(), - invoice_id: z.string().max(50), - status: z - .enum(['new', 'processing', 'complete', 'cancelled', 'voided']) - .optional(), - reference_id: z.string().max(50).optional(), - fulfillment_status: z.string().max(50).optional(), - note: z.string().max(600).optional(), - tracking_id: z.string().max(50).optional(), - tracking_url: z.string().max(255).optional(), - batch_id: z.string().max(50).optional(), -}); -export { createOrderBodySchema }; diff --git a/src/validation/order/create_refundable_credit_note.validation.ts b/src/validation/order/create_refundable_credit_note.validation.ts deleted file mode 100644 index 740b7de..0000000 --- a/src/validation/order/create_refundable_credit_note.validation.ts +++ /dev/null @@ -1,27 +0,0 @@ -// Generated Zod validator: Order.createRefundableCreditNote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createRefundableCreditNoteOrderCreditNoteSchema = z.object({ - reason_code: z.enum([ - 'write_off', - 'subscription_change', - 'subscription_cancellation', - 'subscription_pause', - 'chargeback', - 'product_unsatisfactory', - 'service_unsatisfactory', - 'order_change', - 'order_cancellation', - 'waiver', - 'other', - 'fraudulent', - ]), - total: z.number().int().min(0), -}); -const createRefundableCreditNoteOrderBodySchema = z.looseObject({ - customer_notes: z.string().max(2000).optional(), - comment: z.string().max(300).optional(), - credit_note: createRefundableCreditNoteOrderCreditNoteSchema.optional(), -}); -export { createRefundableCreditNoteOrderBodySchema }; diff --git a/src/validation/order/import_order.validation.ts b/src/validation/order/import_order.validation.ts deleted file mode 100644 index d8cd0db..0000000 --- a/src/validation/order/import_order.validation.ts +++ /dev/null @@ -1,93 +0,0 @@ -// Generated Zod validator: Order.importOrder -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importOrderOrderShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const importOrderOrderBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const importOrderOrderBodySchema = z.looseObject({ - id: z.string().max(40).optional(), - document_number: z.string().max(50).optional(), - invoice_id: z.string().max(50), - status: z.enum([ - 'cancelled', - 'queued', - 'awaiting_shipment', - 'on_hold', - 'delivered', - 'shipped', - 'partially_delivered', - 'returned', - ]), - subscription_id: z.string().max(50).optional(), - customer_id: z.string().max(50).optional(), - created_at: z.number().int(), - order_date: z.number().int(), - shipping_date: z.number().int(), - reference_id: z.string().max(50).optional(), - fulfillment_status: z.string().max(50).optional(), - note: z.string().max(600).optional(), - tracking_id: z.string().max(50).optional(), - tracking_url: z.string().max(255).optional(), - batch_id: z.string().max(50).optional(), - shipment_carrier: z.string().max(50).optional(), - shipping_cut_off_date: z.number().int().optional(), - delivered_at: z.number().int().optional(), - shipped_at: z.number().int().optional(), - cancelled_at: z.number().int().optional(), - cancellation_reason: z - .enum([ - 'shipping_cut_off_passed', - 'product_unsatisfactory', - 'third_party_cancellation', - 'product_not_required', - 'delivery_date_missed', - 'alternative_found', - 'invoice_written_off', - 'invoice_voided', - 'fraudulent_transaction', - 'payment_declined', - 'subscription_cancelled', - 'product_not_available', - 'others', - 'order_resent', - ]) - .optional(), - refundable_credits_issued: z.number().int().min(0).optional(), - shipping_address: importOrderOrderShippingAddressSchema.optional(), - billing_address: importOrderOrderBillingAddressSchema.optional(), -}); -export { importOrderOrderBodySchema }; diff --git a/src/validation/order/orders_for_invoice.validation.ts b/src/validation/order/orders_for_invoice.validation.ts deleted file mode 100644 index 4f0d033..0000000 --- a/src/validation/order/orders_for_invoice.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Order.ordersForInvoice -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const ordersForInvoiceOrderBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { ordersForInvoiceOrderBodySchema }; diff --git a/src/validation/order/reopen.validation.ts b/src/validation/order/reopen.validation.ts deleted file mode 100644 index 3a68479..0000000 --- a/src/validation/order/reopen.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Order.reopen -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const reopenOrderBodySchema = z.looseObject({ - void_cancellation_credit_notes: z.boolean().optional(), -}); -export { reopenOrderBodySchema }; diff --git a/src/validation/order/resend.validation.ts b/src/validation/order/resend.validation.ts deleted file mode 100644 index 9356740..0000000 --- a/src/validation/order/resend.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Order.resend -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const resendOrderOrderLineItemsSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - fulfillment_quantity: z.array(z.number().int().min(0).optional()).optional(), -}); -const resendOrderBodySchema = z.looseObject({ - shipping_date: z.number().int().optional(), - resend_reason: z.string().max(100).optional(), - order_line_items: resendOrderOrderLineItemsSchema.optional(), -}); -export { resendOrderBodySchema }; diff --git a/src/validation/order/update.validation.ts b/src/validation/order/update.validation.ts deleted file mode 100644 index 9db7ae6..0000000 --- a/src/validation/order/update.validation.ts +++ /dev/null @@ -1,93 +0,0 @@ -// Generated Zod validator: Order.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateOrderShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateOrderOrderLineItemsSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - status: z - .array( - z - .enum([ - 'queued', - 'awaiting_shipment', - 'on_hold', - 'delivered', - 'shipped', - 'partially_delivered', - 'returned', - 'cancelled', - ]) - .optional(), - ) - .optional(), - sku: z.array(z.string().max(250).optional()).optional(), -}); -const updateOrderBodySchema = z.looseObject({ - reference_id: z.string().max(50).optional(), - batch_id: z.string().max(50).optional(), - note: z.string().max(600).optional(), - shipping_date: z.number().int().optional(), - order_date: z.number().int().optional(), - cancelled_at: z.number().int().optional(), - cancellation_reason: z - .enum([ - 'shipping_cut_off_passed', - 'product_unsatisfactory', - 'third_party_cancellation', - 'product_not_required', - 'delivery_date_missed', - 'alternative_found', - 'invoice_written_off', - 'invoice_voided', - 'fraudulent_transaction', - 'payment_declined', - 'subscription_cancelled', - 'product_not_available', - 'others', - 'order_resent', - ]) - .optional(), - shipped_at: z.number().int().optional(), - delivered_at: z.number().int().optional(), - tracking_url: z.string().max(255).optional(), - tracking_id: z.string().max(50).optional(), - shipment_carrier: z.string().max(50).optional(), - fulfillment_status: z.string().max(50).optional(), - status: z - .enum([ - 'new', - 'processing', - 'complete', - 'cancelled', - 'voided', - 'queued', - 'awaiting_shipment', - 'on_hold', - 'delivered', - 'shipped', - 'partially_delivered', - 'returned', - ]) - .optional(), - shipping_address: updateOrderShippingAddressSchema.optional(), - order_line_items: updateOrderOrderLineItemsSchema.optional(), -}); -export { updateOrderBodySchema }; diff --git a/src/validation/payment_intent/create.validation.ts b/src/validation/payment_intent/create.validation.ts deleted file mode 100644 index 8a7813c..0000000 --- a/src/validation/payment_intent/create.validation.ts +++ /dev/null @@ -1,60 +0,0 @@ -// Generated Zod validator: PaymentIntent.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createPaymentIntentBodySchema = z.looseObject({ - business_entity_id: z.string().max(50).optional(), - customer_id: z.string().max(50).optional(), - amount: z.number().int().min(0), - currency_code: z.string().max(3), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - defer_payment_method_type: z.boolean().default(false).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - success_url: z.string().max(250).optional(), - failure_url: z.string().max(250).optional(), -}); -export { createPaymentIntentBodySchema }; diff --git a/src/validation/payment_intent/update.validation.ts b/src/validation/payment_intent/update.validation.ts deleted file mode 100644 index 679c744..0000000 --- a/src/validation/payment_intent/update.validation.ts +++ /dev/null @@ -1,56 +0,0 @@ -// Generated Zod validator: PaymentIntent.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updatePaymentIntentBodySchema = z.looseObject({ - amount: z.number().int().min(0).optional(), - currency_code: z.string().max(3).optional(), - gateway_account_id: z.string().max(50).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - success_url: z.string().max(250).optional(), - failure_url: z.string().max(250).optional(), -}); -export { updatePaymentIntentBodySchema }; diff --git a/src/validation/payment_source/create_bank_account.validation.ts b/src/validation/payment_source/create_bank_account.validation.ts deleted file mode 100644 index 718caab..0000000 --- a/src/validation/payment_source/create_bank_account.validation.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Generated Zod validator: PaymentSource.createBankAccount -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createBankAccountPaymentSourceBillingAddressSchema = z.looseObject({}); -const createBankAccountPaymentSourceBankAccountSchema = z.object({ - gateway_account_id: z.string().max(50).optional(), - iban: z.string().max(50).min(10).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - email: z.string().email().max(70).optional(), - phone: z.string().max(50).optional(), - bank_name: z.string().max(100).optional(), - account_number: z.string().max(17).min(4).optional(), - routing_number: z.string().max(9).min(3).optional(), - bank_code: z.string().max(20).optional(), - account_type: z - .enum(['checking', 'savings', 'business_checking', 'current']) - .optional(), - account_holder_type: z.enum(['individual', 'company']).optional(), - echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), - swedish_identity_number: z.string().max(12).min(10).optional(), - billing_address: - createBankAccountPaymentSourceBillingAddressSchema.optional(), -}); -const createBankAccountPaymentSourceBodySchema = z.looseObject({ - customer_id: z.string().max(50), - issuing_country: z.string().max(50).optional(), - replace_primary_payment_source: z.boolean().default(false).optional(), - bank_account: createBankAccountPaymentSourceBankAccountSchema.optional(), -}); -export { createBankAccountPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_card.validation.ts b/src/validation/payment_source/create_card.validation.ts deleted file mode 100644 index 3e4f3f0..0000000 --- a/src/validation/payment_source/create_card.validation.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Generated Zod validator: PaymentSource.createCard -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createCardPaymentSourceAdditionalInformationSchema = z.looseObject({}); -const createCardPaymentSourceCardSchema = z.object({ - gateway_account_id: z.string().max(50).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500), - expiry_month: z.number().int().min(1).max(12), - expiry_year: z.number().int(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - additional_information: - createCardPaymentSourceAdditionalInformationSchema.optional(), -}); -const createCardPaymentSourceBodySchema = z.looseObject({ - customer_id: z.string().max(50), - replace_primary_payment_source: z.boolean().default(false).optional(), - card: createCardPaymentSourceCardSchema.optional(), -}); -export { createCardPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_using_payment_intent.validation.ts b/src/validation/payment_source/create_using_payment_intent.validation.ts deleted file mode 100644 index 10b1923..0000000 --- a/src/validation/payment_source/create_using_payment_intent.validation.ts +++ /dev/null @@ -1,71 +0,0 @@ -// Generated Zod validator: PaymentSource.createUsingPaymentIntent -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUsingPaymentIntentPaymentSourceAdditionalInfoSchema = z.looseObject( - {}, -); -const createUsingPaymentIntentPaymentSourceAdditionalInformationSchema = - z.looseObject({}); -const createUsingPaymentIntentPaymentSourcePaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_info: - createUsingPaymentIntentPaymentSourceAdditionalInfoSchema.optional(), - additional_information: - createUsingPaymentIntentPaymentSourceAdditionalInformationSchema.optional(), -}); -const createUsingPaymentIntentPaymentSourceBodySchema = z.looseObject({ - customer_id: z.string().max(50), - replace_primary_payment_source: z.boolean().default(false).optional(), - payment_intent: - createUsingPaymentIntentPaymentSourcePaymentIntentSchema.optional(), -}); -export { createUsingPaymentIntentPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_using_permanent_token.validation.ts b/src/validation/payment_source/create_using_permanent_token.validation.ts deleted file mode 100644 index 3225e79..0000000 --- a/src/validation/payment_source/create_using_permanent_token.validation.ts +++ /dev/null @@ -1,114 +0,0 @@ -// Generated Zod validator: PaymentSource.createUsingPermanentToken -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUsingPermanentTokenPaymentSourceAdditionalInformationSchema = - z.looseObject({}); -const createUsingPermanentTokenPaymentSourceCardSchema = z.object({ - last4: z.string().max(4).min(4).optional(), - iin: z.string().max(6).min(6).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - brand: z - .enum([ - 'visa', - 'mastercard', - 'american_express', - 'discover', - 'jcb', - 'diners_club', - 'other', - 'bancontact', - 'cmr_falabella', - 'tarjeta_naranja', - 'nativa', - 'cencosud', - 'cabal', - 'argencard', - 'elo', - 'hipercard', - 'carnet', - 'rupay', - 'maestro', - 'dankort', - 'cartes_bancaires', - 'mada', - ]) - .optional(), - funding_type: z.enum(['credit', 'debit', 'prepaid', 'not_known']).optional(), -}); -const createUsingPermanentTokenPaymentSourceBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), -}); -const createUsingPermanentTokenPaymentSourceBodySchema = z.looseObject({ - customer_id: z.string().max(50), - type: z.enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - issuing_country: z.string().max(50).optional(), - replace_primary_payment_source: z.boolean().default(false).optional(), - payment_method_token: z.string().max(100).optional(), - customer_profile_token: z.string().max(100).optional(), - network_transaction_id: z.string().max(100).optional(), - mandate_id: z.string().max(100).optional(), - skip_retrieval: z.boolean().default(false).optional(), - additional_information: - createUsingPermanentTokenPaymentSourceAdditionalInformationSchema.optional(), - card: createUsingPermanentTokenPaymentSourceCardSchema.optional(), - billing_address: - createUsingPermanentTokenPaymentSourceBillingAddressSchema.optional(), -}); -export { createUsingPermanentTokenPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_using_temp_token.validation.ts b/src/validation/payment_source/create_using_temp_token.validation.ts deleted file mode 100644 index 5ece9bc..0000000 --- a/src/validation/payment_source/create_using_temp_token.validation.ts +++ /dev/null @@ -1,60 +0,0 @@ -// Generated Zod validator: PaymentSource.createUsingTempToken -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUsingTempTokenPaymentSourceAdditionalInformationSchema = - z.looseObject({}); -const createUsingTempTokenPaymentSourceBodySchema = z.looseObject({ - customer_id: z.string().max(50), - gateway_account_id: z.string().max(50).optional(), - type: z.enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]), - tmp_token: z.string().max(65000), - issuing_country: z.string().max(50).optional(), - replace_primary_payment_source: z.boolean().default(false).optional(), - additional_information: - createUsingTempTokenPaymentSourceAdditionalInformationSchema.optional(), -}); -export { createUsingTempTokenPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_using_token.validation.ts b/src/validation/payment_source/create_using_token.validation.ts deleted file mode 100644 index bc1ff39..0000000 --- a/src/validation/payment_source/create_using_token.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: PaymentSource.createUsingToken -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUsingTokenPaymentSourceBodySchema = z.looseObject({ - customer_id: z.string().max(50), - replace_primary_payment_source: z.boolean().default(false).optional(), - token_id: z.string().max(40), -}); -export { createUsingTokenPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/create_voucher_payment_source.validation.ts b/src/validation/payment_source/create_voucher_payment_source.validation.ts deleted file mode 100644 index 7379e8a..0000000 --- a/src/validation/payment_source/create_voucher_payment_source.validation.ts +++ /dev/null @@ -1,20 +0,0 @@ -// Generated Zod validator: PaymentSource.createVoucherPaymentSource -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createVoucherPaymentSourcePaymentSourceBillingAddressSchema = - z.looseObject({}); -const createVoucherPaymentSourcePaymentSourceVoucherPaymentSourceSchema = - z.object({ - voucher_type: z.enum(['boleto']), - gateway_account_id: z.string().max(50).optional(), - tax_id: z.string().max(20).optional(), - billing_address: - createVoucherPaymentSourcePaymentSourceBillingAddressSchema.optional(), - }); -const createVoucherPaymentSourcePaymentSourceBodySchema = z.looseObject({ - customer_id: z.string().max(50), - voucher_payment_source: - createVoucherPaymentSourcePaymentSourceVoucherPaymentSourceSchema.optional(), -}); -export { createVoucherPaymentSourcePaymentSourceBodySchema }; diff --git a/src/validation/payment_source/export_payment_source.validation.ts b/src/validation/payment_source/export_payment_source.validation.ts deleted file mode 100644 index ca7ba6c..0000000 --- a/src/validation/payment_source/export_payment_source.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: PaymentSource.exportPaymentSource -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const exportPaymentSourcePaymentSourceBodySchema = z.looseObject({ - gateway_account_id: z.string().max(50), -}); -export { exportPaymentSourcePaymentSourceBodySchema }; diff --git a/src/validation/payment_source/switch_gateway_account.validation.ts b/src/validation/payment_source/switch_gateway_account.validation.ts deleted file mode 100644 index b7013bb..0000000 --- a/src/validation/payment_source/switch_gateway_account.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: PaymentSource.switchGatewayAccount -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const switchGatewayAccountPaymentSourceBodySchema = z.looseObject({ - gateway_account_id: z.string().max(50), -}); -export { switchGatewayAccountPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/update_bank_account.validation.ts b/src/validation/payment_source/update_bank_account.validation.ts deleted file mode 100644 index d3cf216..0000000 --- a/src/validation/payment_source/update_bank_account.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: PaymentSource.updateBankAccount -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateBankAccountPaymentSourceBankAccountSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), -}); -const updateBankAccountPaymentSourceBodySchema = z.looseObject({ - bank_account: updateBankAccountPaymentSourceBankAccountSchema.optional(), -}); -export { updateBankAccountPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/update_card.validation.ts b/src/validation/payment_source/update_card.validation.ts deleted file mode 100644 index 0d9d93b..0000000 --- a/src/validation/payment_source/update_card.validation.ts +++ /dev/null @@ -1,27 +0,0 @@ -// Generated Zod validator: PaymentSource.updateCard -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateCardPaymentSourceGatewayMetaDataSchema = z.looseObject({}); -const updateCardPaymentSourceAdditionalInformationSchema = z.looseObject({}); -const updateCardPaymentSourceCardSchema = z.object({ - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_country: z.string().max(50).optional(), - additional_information: - updateCardPaymentSourceAdditionalInformationSchema.optional(), -}); -const updateCardPaymentSourceBodySchema = z.looseObject({ - gateway_meta_data: updateCardPaymentSourceGatewayMetaDataSchema.optional(), - reference_transaction: z.string().max(50).optional(), - card: updateCardPaymentSourceCardSchema.optional(), -}); -export { updateCardPaymentSourceBodySchema }; diff --git a/src/validation/payment_source/verify_bank_account.validation.ts b/src/validation/payment_source/verify_bank_account.validation.ts deleted file mode 100644 index 3d62c11..0000000 --- a/src/validation/payment_source/verify_bank_account.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: PaymentSource.verifyBankAccount -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const verifyBankAccountPaymentSourceBodySchema = z.looseObject({ - amount1: z.number().int().min(0), - amount2: z.number().int().min(0), -}); -export { verifyBankAccountPaymentSourceBodySchema }; diff --git a/src/validation/payment_voucher/create.validation.ts b/src/validation/payment_voucher/create.validation.ts deleted file mode 100644 index cebe386..0000000 --- a/src/validation/payment_voucher/create.validation.ts +++ /dev/null @@ -1,18 +0,0 @@ -// Generated Zod validator: PaymentVoucher.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createPaymentVoucherVoucherPaymentSourceSchema = z.object({ - voucher_type: z.enum(['boleto']), -}); -const createPaymentVoucherInvoiceAllocationsSchema = z.object({ - invoice_id: z.array(z.string().max(50).optional()), -}); -const createPaymentVoucherBodySchema = z.looseObject({ - customer_id: z.string().max(50), - payment_source_id: z.string().max(40).optional(), - voucher_payment_source: - createPaymentVoucherVoucherPaymentSourceSchema.optional(), - invoice_allocations: createPaymentVoucherInvoiceAllocationsSchema.optional(), -}); -export { createPaymentVoucherBodySchema }; diff --git a/src/validation/payment_voucher/payment_vouchersforcustomer.validation.ts b/src/validation/payment_voucher/payment_vouchersforcustomer.validation.ts deleted file mode 100644 index d98b6f7..0000000 --- a/src/validation/payment_voucher/payment_vouchersforcustomer.validation.ts +++ /dev/null @@ -1,21 +0,0 @@ -// Generated Zod validator: PaymentVoucher.payment_vouchersForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const paymentVouchersforcustomerPaymentVoucherStatusSchema = z.object({ - is: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), - is_not: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), - in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), - not_in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), -}); -const paymentVouchersforcustomerPaymentVoucherSortBySchema = z.looseObject({ - asc: z.enum(['date', 'updated_at']).optional(), - desc: z.enum(['date', 'updated_at']).optional(), -}); -const paymentVouchersforcustomerPaymentVoucherBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - status: paymentVouchersforcustomerPaymentVoucherStatusSchema.optional(), - sort_by: paymentVouchersforcustomerPaymentVoucherSortBySchema.optional(), -}); -export { paymentVouchersforcustomerPaymentVoucherBodySchema }; diff --git a/src/validation/payment_voucher/payment_vouchersforinvoice.validation.ts b/src/validation/payment_voucher/payment_vouchersforinvoice.validation.ts deleted file mode 100644 index 1c24007..0000000 --- a/src/validation/payment_voucher/payment_vouchersforinvoice.validation.ts +++ /dev/null @@ -1,21 +0,0 @@ -// Generated Zod validator: PaymentVoucher.payment_vouchersForInvoice -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const paymentVouchersforinvoicePaymentVoucherStatusSchema = z.object({ - is: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), - is_not: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), - in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), - not_in: z.enum(['active', 'consumed', 'expired', 'failure']).optional(), -}); -const paymentVouchersforinvoicePaymentVoucherSortBySchema = z.looseObject({ - asc: z.enum(['date', 'updated_at']).optional(), - desc: z.enum(['date', 'updated_at']).optional(), -}); -const paymentVouchersforinvoicePaymentVoucherBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - status: paymentVouchersforinvoicePaymentVoucherStatusSchema.optional(), - sort_by: paymentVouchersforinvoicePaymentVoucherSortBySchema.optional(), -}); -export { paymentVouchersforinvoicePaymentVoucherBodySchema }; diff --git a/src/validation/plan/copy.validation.ts b/src/validation/plan/copy.validation.ts deleted file mode 100644 index 35e157a..0000000 --- a/src/validation/plan/copy.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Plan.copy -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const copyPlanBodySchema = z.looseObject({ - from_site: z.string().max(50), - id_at_from_site: z.string().max(100), - id: z.string().max(100).optional(), - for_site_merging: z.boolean().default(false).optional(), -}); -export { copyPlanBodySchema }; diff --git a/src/validation/plan/create.validation.ts b/src/validation/plan/create.validation.ts deleted file mode 100644 index 1254957..0000000 --- a/src/validation/plan/create.validation.ts +++ /dev/null @@ -1,112 +0,0 @@ -// Generated Zod validator: Plan.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createPlanMetaDataSchema = z.looseObject({}); -const createPlanTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const createPlanTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()), - field_id: z.array(z.string().max(50).optional()), - field_value: z.array(z.string().max(50).optional()), -}); -const createPlanApplicableAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), -}); -const createPlanEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), -}); -const createPlanAttachedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - billing_cycles: z.array(z.number().int().min(1).optional()).optional(), - type: z.array(z.enum(['recommended', 'mandatory']).optional()).optional(), -}); -const createPlanBodySchema = z.looseObject({ - id: z.string().max(100), - name: z.string().max(100), - invoice_name: z.string().max(100).optional(), - description: z.string().max(2000).optional(), - trial_period: z.number().int().min(1).optional(), - trial_period_unit: z.enum(['day', 'month']).optional(), - trial_end_action: z - .enum(['site_default', 'activate_subscription', 'cancel_subscription']) - .optional(), - period: z.number().int().min(1).optional(), - period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - setup_cost: z.number().int().min(1).optional(), - price: z.number().int().min(0).optional(), - price_in_decimal: z.string().max(39).optional(), - currency_code: z.string().max(3).optional(), - billing_cycles: z.number().int().min(1).optional(), - pricing_model: z - .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) - .optional(), - charge_model: z - .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) - .optional(), - free_quantity: z.number().int().min(0).optional(), - free_quantity_in_decimal: z.string().max(33).optional(), - addon_applicability: z.enum(['all', 'restricted']).optional(), - downgrade_penalty: z.number().min(0.01).max(100).optional(), - redirect_url: z.string().max(500).optional(), - enabled_in_hosted_pages: z.boolean().default(true).optional(), - enabled_in_portal: z.boolean().default(true).optional(), - taxable: z.boolean().default(true).optional(), - tax_profile_id: z.string().max(50).optional(), - tax_code: z.string().max(50).optional(), - hsn_code: z.string().max(50).optional(), - taxjar_product_code: z.string().max(50).optional(), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - sku: z.string().max(100).optional(), - accounting_code: z.string().max(100).optional(), - accounting_category1: z.string().max(100).optional(), - accounting_category2: z.string().max(100).optional(), - accounting_category3: z.string().max(100).optional(), - accounting_category4: z.string().max(100).optional(), - is_shippable: z.boolean().default(false).optional(), - shipping_frequency_period: z.number().int().min(1).optional(), - shipping_frequency_period_unit: z - .enum(['year', 'month', 'week', 'day']) - .optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: createPlanMetaDataSchema.optional(), - show_description_in_invoices: z.boolean().default(false).optional(), - show_description_in_quotes: z.boolean().default(false).optional(), - giftable: z.boolean().default(false).optional(), - status: z.enum(['active', 'archived']).optional(), - claim_url: z.string().max(500).optional(), - tiers: createPlanTiersSchema.optional(), - tax_providers_fields: createPlanTaxProvidersFieldsSchema.optional(), - applicable_addons: createPlanApplicableAddonsSchema.optional(), - event_based_addons: createPlanEventBasedAddonsSchema.optional(), - attached_addons: createPlanAttachedAddonsSchema.optional(), -}); -export { createPlanBodySchema }; diff --git a/src/validation/plan/update.validation.ts b/src/validation/plan/update.validation.ts deleted file mode 100644 index 71ba5dd..0000000 --- a/src/validation/plan/update.validation.ts +++ /dev/null @@ -1,108 +0,0 @@ -// Generated Zod validator: Plan.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updatePlanMetaDataSchema = z.looseObject({}); -const updatePlanTiersSchema = z.object({ - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const updatePlanTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()), - field_id: z.array(z.string().max(50).optional()), - field_value: z.array(z.string().max(50).optional()), -}); -const updatePlanApplicableAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), -}); -const updatePlanEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), -}); -const updatePlanAttachedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - billing_cycles: z.array(z.number().int().min(1).optional()).optional(), - type: z.array(z.enum(['recommended', 'mandatory']).optional()).optional(), -}); -const updatePlanBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - invoice_name: z.string().max(100).optional(), - description: z.string().max(2000).optional(), - trial_period: z.number().int().min(0).optional(), - trial_period_unit: z.enum(['day', 'month']).optional(), - trial_end_action: z - .enum(['site_default', 'activate_subscription', 'cancel_subscription']) - .optional(), - period: z.number().int().min(1).optional(), - period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - setup_cost: z.number().int().min(1).optional(), - price: z.number().int().min(0).optional(), - price_in_decimal: z.string().max(39).optional(), - currency_code: z.string().max(3).optional(), - billing_cycles: z.number().int().min(1).optional(), - pricing_model: z - .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) - .optional(), - charge_model: z - .enum(['flat_fee', 'per_unit', 'tiered', 'volume', 'stairstep']) - .optional(), - free_quantity: z.number().int().min(0).optional(), - free_quantity_in_decimal: z.string().max(33).optional(), - addon_applicability: z.enum(['all', 'restricted']).optional(), - downgrade_penalty: z.number().min(0.01).max(100).optional(), - redirect_url: z.string().max(500).optional(), - enabled_in_hosted_pages: z.boolean().default(true).optional(), - enabled_in_portal: z.boolean().default(true).optional(), - taxable: z.boolean().default(true).optional(), - tax_profile_id: z.string().max(50).optional(), - tax_code: z.string().max(50).optional(), - hsn_code: z.string().max(50).optional(), - taxjar_product_code: z.string().max(50).optional(), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - sku: z.string().max(100).optional(), - accounting_code: z.string().max(100).optional(), - accounting_category1: z.string().max(100).optional(), - accounting_category2: z.string().max(100).optional(), - accounting_category3: z.string().max(100).optional(), - accounting_category4: z.string().max(100).optional(), - is_shippable: z.boolean().default(false).optional(), - shipping_frequency_period: z.number().int().min(1).optional(), - shipping_frequency_period_unit: z - .enum(['year', 'month', 'week', 'day']) - .optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: updatePlanMetaDataSchema.optional(), - show_description_in_invoices: z.boolean().default(false).optional(), - show_description_in_quotes: z.boolean().default(false).optional(), - tiers: updatePlanTiersSchema.optional(), - tax_providers_fields: updatePlanTaxProvidersFieldsSchema.optional(), - applicable_addons: updatePlanApplicableAddonsSchema.optional(), - event_based_addons: updatePlanEventBasedAddonsSchema.optional(), - attached_addons: updatePlanAttachedAddonsSchema.optional(), -}); -export { updatePlanBodySchema }; diff --git a/src/validation/portal_session/activate.validation.ts b/src/validation/portal_session/activate.validation.ts deleted file mode 100644 index cc5e79d..0000000 --- a/src/validation/portal_session/activate.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: PortalSession.activate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const activatePortalSessionBodySchema = z.looseObject({ - token: z.string().max(70), -}); -export { activatePortalSessionBodySchema }; diff --git a/src/validation/portal_session/create.validation.ts b/src/validation/portal_session/create.validation.ts deleted file mode 100644 index 19282c8..0000000 --- a/src/validation/portal_session/create.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: PortalSession.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createPortalSessionCustomerSchema = z.object({ - id: z.string().max(50), -}); -const createPortalSessionBodySchema = z.looseObject({ - redirect_url: z.string().max(250).optional(), - forward_url: z.string().max(250).optional(), - customer: createPortalSessionCustomerSchema.optional(), -}); -export { createPortalSessionBodySchema }; diff --git a/src/validation/price_variant/create.validation.ts b/src/validation/price_variant/create.validation.ts deleted file mode 100644 index 6990aa5..0000000 --- a/src/validation/price_variant/create.validation.ts +++ /dev/null @@ -1,18 +0,0 @@ -// Generated Zod validator: PriceVariant.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createPriceVariantAttributesSchema = z.object({ - name: z.array(z.string().max(100).optional()), - value: z.array(z.string().max(100).optional()), -}); -const createPriceVariantBodySchema = z.looseObject({ - id: z.string().max(100), - name: z.string().max(100), - external_name: z.string().max(100).optional(), - description: z.string().max(500).optional(), - variant_group: z.string().max(100).optional(), - business_entity_id: z.string().max(50).optional(), - attributes: createPriceVariantAttributesSchema.optional(), -}); -export { createPriceVariantBodySchema }; diff --git a/src/validation/price_variant/update.validation.ts b/src/validation/price_variant/update.validation.ts deleted file mode 100644 index 984ca5f..0000000 --- a/src/validation/price_variant/update.validation.ts +++ /dev/null @@ -1,17 +0,0 @@ -// Generated Zod validator: PriceVariant.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updatePriceVariantAttributesSchema = z.object({ - name: z.array(z.string().max(100).optional()), - value: z.array(z.string().max(100).optional()), -}); -const updatePriceVariantBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - external_name: z.string().max(100).optional(), - description: z.string().max(500).optional(), - variant_group: z.string().max(100).optional(), - status: z.enum(['active', 'archived']).optional(), - attributes: updatePriceVariantAttributesSchema.optional(), -}); -export { updatePriceVariantBodySchema }; diff --git a/src/validation/pricing_page_session/create_for_existing_subscription.validation.ts b/src/validation/pricing_page_session/create_for_existing_subscription.validation.ts deleted file mode 100644 index 99e951f..0000000 --- a/src/validation/pricing_page_session/create_for_existing_subscription.validation.ts +++ /dev/null @@ -1,57 +0,0 @@ -// Generated Zod validator: PricingPageSession.createForExistingSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForExistingSubscriptionPricingPageSessionCustomSchema = - z.looseObject({}); -const createForExistingSubscriptionPricingPageSessionPricingPageSchema = - z.object({ - id: z.string().max(50).optional(), - }); -const createForExistingSubscriptionPricingPageSessionSubscriptionSchema = - z.looseObject({ - id: z.string().max(50), - }); -const createForExistingSubscriptionPricingPageSessionContractTermSchema = - z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), - }); -const createForExistingSubscriptionPricingPageSessionDiscountsSchema = z.object( - { - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - label: z.array(z.string().max(100).optional()).optional(), - }, -); -const createForExistingSubscriptionPricingPageSessionBodySchema = z.looseObject( - { - redirect_url: z.string().max(250).optional(), - custom: - createForExistingSubscriptionPricingPageSessionCustomSchema.optional(), - pricing_page: - createForExistingSubscriptionPricingPageSessionPricingPageSchema.optional(), - subscription: - createForExistingSubscriptionPricingPageSessionSubscriptionSchema.optional(), - contract_term: - createForExistingSubscriptionPricingPageSessionContractTermSchema.optional(), - discounts: - createForExistingSubscriptionPricingPageSessionDiscountsSchema.optional(), - }, -); -export { createForExistingSubscriptionPricingPageSessionBodySchema }; diff --git a/src/validation/pricing_page_session/create_for_new_subscription.validation.ts b/src/validation/pricing_page_session/create_for_new_subscription.validation.ts deleted file mode 100644 index e9da306..0000000 --- a/src/validation/pricing_page_session/create_for_new_subscription.validation.ts +++ /dev/null @@ -1,106 +0,0 @@ -// Generated Zod validator: PricingPageSession.createForNewSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForNewSubscriptionPricingPageSessionCustomSchema = z.looseObject( - {}, -); -const createForNewSubscriptionPricingPageSessionPricingPageSchema = z.object({ - id: z.string().max(50), -}); -const createForNewSubscriptionPricingPageSessionSubscriptionSchema = - z.looseObject({ - id: z.string().max(50).optional(), - }); -const createForNewSubscriptionPricingPageSessionCustomerSchema = z.looseObject({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - locale: z.string().max(50).optional(), -}); -const createForNewSubscriptionPricingPageSessionBillingAddressSchema = z.object( - { - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), - }, -); -const createForNewSubscriptionPricingPageSessionShippingAddressSchema = - z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), - }); -const createForNewSubscriptionPricingPageSessionContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createForNewSubscriptionPricingPageSessionDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - label: z.array(z.string().max(100).optional()).optional(), -}); -const createForNewSubscriptionPricingPageSessionBodySchema = z.looseObject({ - redirect_url: z.string().max(250).optional(), - business_entity_id: z.string().max(50).optional(), - auto_select_local_currency: z.boolean().default(false).optional(), - custom: createForNewSubscriptionPricingPageSessionCustomSchema.optional(), - pricing_page: - createForNewSubscriptionPricingPageSessionPricingPageSchema.optional(), - subscription: - createForNewSubscriptionPricingPageSessionSubscriptionSchema.optional(), - customer: createForNewSubscriptionPricingPageSessionCustomerSchema.optional(), - billing_address: - createForNewSubscriptionPricingPageSessionBillingAddressSchema.optional(), - shipping_address: - createForNewSubscriptionPricingPageSessionShippingAddressSchema.optional(), - contract_term: - createForNewSubscriptionPricingPageSessionContractTermSchema.optional(), - discounts: - createForNewSubscriptionPricingPageSessionDiscountsSchema.optional(), -}); -export { createForNewSubscriptionPricingPageSessionBodySchema }; diff --git a/src/validation/promotional_credit/add.validation.ts b/src/validation/promotional_credit/add.validation.ts deleted file mode 100644 index f2c29e7..0000000 --- a/src/validation/promotional_credit/add.validation.ts +++ /dev/null @@ -1,16 +0,0 @@ -// Generated Zod validator: PromotionalCredit.add -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addPromotionalCreditBodySchema = z.looseObject({ - customer_id: z.string().max(50), - amount: z.number().int().min(0).optional(), - amount_in_decimal: z.string().max(33).optional(), - currency_code: z.string().max(3).optional(), - description: z.string().max(250), - credit_type: z - .enum(['loyalty_credits', 'referral_rewards', 'general']) - .optional(), - reference: z.string().max(500).optional(), -}); -export { addPromotionalCreditBodySchema }; diff --git a/src/validation/promotional_credit/deduct.validation.ts b/src/validation/promotional_credit/deduct.validation.ts deleted file mode 100644 index 227ef88..0000000 --- a/src/validation/promotional_credit/deduct.validation.ts +++ /dev/null @@ -1,16 +0,0 @@ -// Generated Zod validator: PromotionalCredit.deduct -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deductPromotionalCreditBodySchema = z.looseObject({ - customer_id: z.string().max(50), - amount: z.number().int().min(0).optional(), - amount_in_decimal: z.string().max(33).optional(), - currency_code: z.string().max(3).optional(), - description: z.string().max(250), - credit_type: z - .enum(['loyalty_credits', 'referral_rewards', 'general']) - .optional(), - reference: z.string().max(500).optional(), -}); -export { deductPromotionalCreditBodySchema }; diff --git a/src/validation/promotional_credit/list.validation.ts b/src/validation/promotional_credit/list.validation.ts deleted file mode 100644 index 84052b6..0000000 --- a/src/validation/promotional_credit/list.validation.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Generated Zod validator: PromotionalCredit.list -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listPromotionalCreditIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listPromotionalCreditCreatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const listPromotionalCreditTypeSchema = z.object({ - is: z.enum(['increment', 'decrement']).optional(), - is_not: z.enum(['increment', 'decrement']).optional(), - in: z.enum(['increment', 'decrement']).optional(), - not_in: z.enum(['increment', 'decrement']).optional(), -}); -const listPromotionalCreditCustomerIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listPromotionalCreditBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - id: listPromotionalCreditIdSchema.optional(), - created_at: listPromotionalCreditCreatedAtSchema.optional(), - type: listPromotionalCreditTypeSchema.optional(), - customer_id: listPromotionalCreditCustomerIdSchema.optional(), -}); -export { listPromotionalCreditBodySchema }; diff --git a/src/validation/promotional_credit/set.validation.ts b/src/validation/promotional_credit/set.validation.ts deleted file mode 100644 index df7a527..0000000 --- a/src/validation/promotional_credit/set.validation.ts +++ /dev/null @@ -1,16 +0,0 @@ -// Generated Zod validator: PromotionalCredit.set -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const setPromotionalCreditBodySchema = z.looseObject({ - customer_id: z.string().max(50), - amount: z.number().int().min(0).optional(), - amount_in_decimal: z.string().max(33).optional(), - currency_code: z.string().max(3).optional(), - description: z.string().max(250), - credit_type: z - .enum(['loyalty_credits', 'referral_rewards', 'general']) - .optional(), - reference: z.string().max(500).optional(), -}); -export { setPromotionalCreditBodySchema }; diff --git a/src/validation/purchase/create.validation.ts b/src/validation/purchase/create.validation.ts deleted file mode 100644 index fc536e4..0000000 --- a/src/validation/purchase/create.validation.ts +++ /dev/null @@ -1,149 +0,0 @@ -// Generated Zod validator: Purchase.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createPurchaseInvoiceInfoSchema = z.object({ - po_number: z.string().max(100).optional(), - notes: z.string().max(2000).optional(), -}); -const createPurchasePaymentScheduleSchema = z.object({ - scheme_id: z.string().max(40).optional(), - amount: z.number().int().min(0).optional(), -}); -const createPurchaseStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const createPurchaseAdditionalInformationSchema = z.looseObject({}); -const createPurchasePaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: createPurchaseAdditionalInformationSchema.optional(), -}); -const createPurchasePurchaseItemsSchema = z.object({ - index: z.array(z.number().int().min(0).optional()), - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_amount: z.array(z.number().int().min(0).optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), -}); -const createPurchaseItemTiersSchema = z.object({ - index: z.array(z.number().int().min(0).optional()), - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const createPurchaseShippingAddressesSchema = z.object({ - first_name: z.array(z.string().max(150).optional()).optional(), - last_name: z.array(z.string().max(150).optional()).optional(), - email: z.array(z.string().email().max(70).optional()).optional(), - company: z.array(z.string().max(250).optional()).optional(), - phone: z.array(z.string().max(50).optional()).optional(), - line1: z.array(z.string().max(150).optional()).optional(), - line2: z.array(z.string().max(150).optional()).optional(), - line3: z.array(z.string().max(150).optional()).optional(), - city: z.array(z.string().max(50).optional()).optional(), - state: z.array(z.string().max(50).optional()).optional(), - state_code: z.array(z.string().max(50).optional()).optional(), - country: z.array(z.string().max(50).optional()).optional(), - zip: z.array(z.string().max(20).optional()).optional(), - validation_status: z - .array( - z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), - ) - .optional(), -}); -const createPurchaseDiscountsSchema = z.object({ - index: z.array(z.number().int().min(0).optional()).optional(), - coupon_id: z.array(z.string().max(100).optional()).optional(), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), -}); -const createPurchaseMetaDataItemSchema = z.looseObject({}); -const createPurchaseSubscriptionInfoSchema = z.object({ - index: z.array(z.number().int().min(0).optional()), - subscription_id: z.array(z.string().max(50).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - contract_term_billing_cycle_on_renewal: z - .array(z.number().int().min(1).max(100).optional()) - .optional(), - meta_data: z.array(createPurchaseMetaDataItemSchema.optional()).optional(), -}); -const createPurchaseContractTermsSchema = z.object({ - index: z.array(z.number().int().min(0).optional()), - action_at_term_end: z - .array(z.enum(['renew', 'evergreen', 'cancel', 'renew_once']).optional()) - .optional(), - cancellation_cutoff_period: z.array(z.number().int().optional()).optional(), -}); -const createPurchaseBodySchema = z.looseObject({ - customer_id: z.string().max(50), - payment_source_id: z.string().max(40).optional(), - replace_primary_payment_source: z.boolean().default(true).optional(), - invoice_info: createPurchaseInvoiceInfoSchema.optional(), - payment_schedule: createPurchasePaymentScheduleSchema.optional(), - statement_descriptor: createPurchaseStatementDescriptorSchema.optional(), - payment_intent: createPurchasePaymentIntentSchema.optional(), - purchase_items: createPurchasePurchaseItemsSchema.optional(), - item_tiers: createPurchaseItemTiersSchema.optional(), - shipping_addresses: createPurchaseShippingAddressesSchema.optional(), - discounts: createPurchaseDiscountsSchema.optional(), - subscription_info: createPurchaseSubscriptionInfoSchema.optional(), - contract_terms: createPurchaseContractTermsSchema.optional(), -}); -export { createPurchaseBodySchema }; diff --git a/src/validation/purchase/estimate.validation.ts b/src/validation/purchase/estimate.validation.ts deleted file mode 100644 index f8720f8..0000000 --- a/src/validation/purchase/estimate.validation.ts +++ /dev/null @@ -1,126 +0,0 @@ -// Generated Zod validator: Purchase.estimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const estimatePurchaseCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - entity_code: z - .enum([ - 'a', - 'b', - 'c', - 'd', - 'e', - 'f', - 'g', - 'h', - 'i', - 'j', - 'k', - 'l', - 'm', - 'n', - 'p', - 'q', - 'r', - 'med1', - 'med2', - ]) - .optional(), - exempt_number: z.string().max(100).optional(), - exemption_details: z.array(z.string().optional()).optional(), - customer_type: z - .enum(['residential', 'business', 'senior_citizen', 'industrial']) - .optional(), -}); -const estimatePurchaseBillingAddressSchema = z.object({ - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const estimatePurchasePurchaseItemsSchema = z.object({ - index: z.array(z.number().int().min(0).optional()), - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_amount: z.array(z.number().int().min(0).optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), -}); -const estimatePurchaseItemTiersSchema = z.object({ - index: z.array(z.number().int().min(0).optional()), - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const estimatePurchaseShippingAddressesSchema = z.object({ - first_name: z.array(z.string().max(150).optional()).optional(), - last_name: z.array(z.string().max(150).optional()).optional(), - email: z.array(z.string().email().max(70).optional()).optional(), - company: z.array(z.string().max(250).optional()).optional(), - phone: z.array(z.string().max(50).optional()).optional(), - line1: z.array(z.string().max(150).optional()).optional(), - line2: z.array(z.string().max(150).optional()).optional(), - line3: z.array(z.string().max(150).optional()).optional(), - city: z.array(z.string().max(50).optional()).optional(), - state: z.array(z.string().max(50).optional()).optional(), - state_code: z.array(z.string().max(50).optional()).optional(), - country: z.array(z.string().max(50).optional()).optional(), - zip: z.array(z.string().max(20).optional()).optional(), - validation_status: z - .array( - z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), - ) - .optional(), -}); -const estimatePurchaseDiscountsSchema = z.object({ - index: z.array(z.number().int().min(0).optional()).optional(), - coupon_id: z.array(z.string().max(100).optional()).optional(), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), -}); -const estimatePurchaseSubscriptionInfoSchema = z.object({ - index: z.array(z.number().int().min(0).optional()), - subscription_id: z.array(z.string().max(50).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - contract_term_billing_cycle_on_renewal: z - .array(z.number().int().min(1).max(100).optional()) - .optional(), -}); -const estimatePurchaseContractTermsSchema = z.object({ - index: z.array(z.number().int().min(0).optional()), - action_at_term_end: z - .array(z.enum(['renew', 'evergreen', 'cancel', 'renew_once']).optional()) - .optional(), - cancellation_cutoff_period: z.array(z.number().int().optional()).optional(), -}); -const estimatePurchaseBodySchema = z.looseObject({ - client_profile_id: z.string().max(50).optional(), - customer_id: z.string().max(50).optional(), - customer: estimatePurchaseCustomerSchema.optional(), - billing_address: estimatePurchaseBillingAddressSchema.optional(), - purchase_items: estimatePurchasePurchaseItemsSchema.optional(), - item_tiers: estimatePurchaseItemTiersSchema.optional(), - shipping_addresses: estimatePurchaseShippingAddressesSchema.optional(), - discounts: estimatePurchaseDiscountsSchema.optional(), - subscription_info: estimatePurchaseSubscriptionInfoSchema.optional(), - contract_terms: estimatePurchaseContractTermsSchema.optional(), -}); -export { estimatePurchaseBodySchema }; diff --git a/src/validation/quote/convert.validation.ts b/src/validation/quote/convert.validation.ts deleted file mode 100644 index dc94901..0000000 --- a/src/validation/quote/convert.validation.ts +++ /dev/null @@ -1,18 +0,0 @@ -// Generated Zod validator: Quote.convert -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const convertQuoteSubscriptionSchema = z.object({ - id: z.string().max(50).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - po_number: z.string().max(100).optional(), - auto_close_invoices: z.boolean().optional(), -}); -const convertQuoteBodySchema = z.looseObject({ - invoice_date: z.number().int().optional(), - invoice_immediately: z.boolean().optional(), - create_pending_invoices: z.boolean().optional(), - first_invoice_pending: z.boolean().default(false).optional(), - subscription: convertQuoteSubscriptionSchema.optional(), -}); -export { convertQuoteBodySchema }; diff --git a/src/validation/quote/create_for_charge_items_and_charges.validation.ts b/src/validation/quote/create_for_charge_items_and_charges.validation.ts deleted file mode 100644 index 0957e2a..0000000 --- a/src/validation/quote/create_for_charge_items_and_charges.validation.ts +++ /dev/null @@ -1,110 +0,0 @@ -// Generated Zod validator: Quote.createForChargeItemsAndCharges -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForChargeItemsAndChargesQuoteBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createForChargeItemsAndChargesQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createForChargeItemsAndChargesQuoteItemPricesSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), -}); -const createForChargeItemsAndChargesQuoteItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createForChargeItemsAndChargesQuoteChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - service_period: z.array(z.number().int().optional()).optional(), -}); -const createForChargeItemsAndChargesQuoteDiscountsSchema = z.object({ - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - apply_on: z.array( - z.enum(['invoice_amount', 'specific_item_price']).optional(), - ), - item_price_id: z.array(z.string().max(100).optional()).optional(), -}); -const createForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createForChargeItemsAndChargesQuoteBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - customer_id: z.string().max(50), - po_number: z.string().max(100).optional(), - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - currency_code: z.string().max(3).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - net_term_days: z.number().int().optional(), - billing_address: - createForChargeItemsAndChargesQuoteBillingAddressSchema.optional(), - shipping_address: - createForChargeItemsAndChargesQuoteShippingAddressSchema.optional(), - item_prices: createForChargeItemsAndChargesQuoteItemPricesSchema.optional(), - item_tiers: createForChargeItemsAndChargesQuoteItemTiersSchema.optional(), - charges: createForChargeItemsAndChargesQuoteChargesSchema.optional(), - discounts: createForChargeItemsAndChargesQuoteDiscountsSchema.optional(), - tax_providers_fields: - createForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema.optional(), -}); -export { createForChargeItemsAndChargesQuoteBodySchema }; diff --git a/src/validation/quote/create_for_onetime_charges.validation.ts b/src/validation/quote/create_for_onetime_charges.validation.ts deleted file mode 100644 index d09b17e..0000000 --- a/src/validation/quote/create_for_onetime_charges.validation.ts +++ /dev/null @@ -1,63 +0,0 @@ -// Generated Zod validator: Quote.createForOnetimeCharges -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForOnetimeChargesQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createForOnetimeChargesQuoteAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period: z.array(z.number().int().optional()).optional(), -}); -const createForOnetimeChargesQuoteChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - service_period: z.array(z.number().int().optional()).optional(), -}); -const createForOnetimeChargesQuoteTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createForOnetimeChargesQuoteBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - customer_id: z.string().max(50), - po_number: z.string().max(100).optional(), - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - currency_code: z.string().max(3).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - shipping_address: - createForOnetimeChargesQuoteShippingAddressSchema.optional(), - addons: createForOnetimeChargesQuoteAddonsSchema.optional(), - charges: createForOnetimeChargesQuoteChargesSchema.optional(), - tax_providers_fields: - createForOnetimeChargesQuoteTaxProvidersFieldsSchema.optional(), -}); -export { createForOnetimeChargesQuoteBodySchema }; diff --git a/src/validation/quote/create_sub_for_customer_quote.validation.ts b/src/validation/quote/create_sub_for_customer_quote.validation.ts deleted file mode 100644 index d0226cb..0000000 --- a/src/validation/quote/create_sub_for_customer_quote.validation.ts +++ /dev/null @@ -1,115 +0,0 @@ -// Generated Zod validator: Quote.createSubForCustomerQuote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createSubForCustomerQuoteQuoteSubscriptionSchema = z.object({ - id: z.string().max(50).optional(), - po_number: z.string().max(100).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - start_date: z.number().int().optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const createSubForCustomerQuoteQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubForCustomerQuoteQuoteContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createSubForCustomerQuoteQuoteAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), -}); -const createSubForCustomerQuoteQuoteEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), -}); -const createSubForCustomerQuoteQuoteBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - subscription: createSubForCustomerQuoteQuoteSubscriptionSchema.optional(), - shipping_address: - createSubForCustomerQuoteQuoteShippingAddressSchema.optional(), - contract_term: createSubForCustomerQuoteQuoteContractTermSchema.optional(), - addons: createSubForCustomerQuoteQuoteAddonsSchema.optional(), - event_based_addons: - createSubForCustomerQuoteQuoteEventBasedAddonsSchema.optional(), -}); -export { createSubForCustomerQuoteQuoteBodySchema }; diff --git a/src/validation/quote/create_sub_items_for_customer_quote.validation.ts b/src/validation/quote/create_sub_items_for_customer_quote.validation.ts deleted file mode 100644 index 7860192..0000000 --- a/src/validation/quote/create_sub_items_for_customer_quote.validation.ts +++ /dev/null @@ -1,173 +0,0 @@ -// Generated Zod validator: Quote.createSubItemsForCustomerQuote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createSubItemsForCustomerQuoteQuoteSubscriptionSchema = z.looseObject({ - id: z.string().max(50).optional(), - po_number: z.string().max(100).optional(), - trial_end: z.number().int().optional(), - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), -}); -const createSubItemsForCustomerQuoteQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubItemsForCustomerQuoteQuoteContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createSubItemsForCustomerQuoteQuoteBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubItemsForCustomerQuoteQuoteSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), - ramp_tier_id: z.array(z.string().max(105).optional()).optional(), -}); -const createSubItemsForCustomerQuoteQuoteDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), -}); -const createSubItemsForCustomerQuoteQuoteItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), - ramp_tier_id: z.array(z.string().max(105).optional()).optional(), -}); -const createSubItemsForCustomerQuoteQuoteCouponsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), -}); -const createSubItemsForCustomerQuoteQuoteBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - billing_start_option: z.enum(['immediately', 'on_specific_date']).optional(), - net_term_days: z.number().int().optional(), - subscription: - createSubItemsForCustomerQuoteQuoteSubscriptionSchema.optional(), - shipping_address: - createSubItemsForCustomerQuoteQuoteShippingAddressSchema.optional(), - contract_term: - createSubItemsForCustomerQuoteQuoteContractTermSchema.optional(), - billing_address: - createSubItemsForCustomerQuoteQuoteBillingAddressSchema.optional(), - subscription_items: - createSubItemsForCustomerQuoteQuoteSubscriptionItemsSchema.optional(), - discounts: createSubItemsForCustomerQuoteQuoteDiscountsSchema.optional(), - item_tiers: createSubItemsForCustomerQuoteQuoteItemTiersSchema.optional(), - coupons: createSubItemsForCustomerQuoteQuoteCouponsSchema.optional(), -}); -export { createSubItemsForCustomerQuoteQuoteBodySchema }; diff --git a/src/validation/quote/delete.validation.ts b/src/validation/quote/delete.validation.ts deleted file mode 100644 index c498273..0000000 --- a/src/validation/quote/delete.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Quote.delete -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteQuoteBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), -}); -export { deleteQuoteBodySchema }; diff --git a/src/validation/quote/edit_create_sub_customer_quote_for_items.validation.ts b/src/validation/quote/edit_create_sub_customer_quote_for_items.validation.ts deleted file mode 100644 index 7c2aeee..0000000 --- a/src/validation/quote/edit_create_sub_customer_quote_for_items.validation.ts +++ /dev/null @@ -1,178 +0,0 @@ -// Generated Zod validator: Quote.editCreateSubCustomerQuoteForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const editCreateSubCustomerQuoteForItemsQuoteSubscriptionSchema = z.looseObject( - { - id: z.string().max(50).optional(), - po_number: z.string().max(100).optional(), - trial_end: z.number().int().optional(), - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - }, -); -const editCreateSubCustomerQuoteForItemsQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editCreateSubCustomerQuoteForItemsQuoteContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const editCreateSubCustomerQuoteForItemsQuoteBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editCreateSubCustomerQuoteForItemsQuoteSubscriptionItemsSchema = z.object( - { - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - item_type: z - .array(z.enum(['plan', 'addon', 'charge']).optional()) - .optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), - ramp_tier_id: z.array(z.string().max(105).optional()).optional(), - }, -); -const editCreateSubCustomerQuoteForItemsQuoteDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), -}); -const editCreateSubCustomerQuoteForItemsQuoteItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), - ramp_tier_id: z.array(z.string().max(105).optional()).optional(), -}); -const editCreateSubCustomerQuoteForItemsQuoteCouponsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), -}); -const editCreateSubCustomerQuoteForItemsQuoteBodySchema = z.looseObject({ - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - billing_start_option: z.enum(['immediately', 'on_specific_date']).optional(), - net_term_days: z.number().int().optional(), - subscription: - editCreateSubCustomerQuoteForItemsQuoteSubscriptionSchema.optional(), - shipping_address: - editCreateSubCustomerQuoteForItemsQuoteShippingAddressSchema.optional(), - contract_term: - editCreateSubCustomerQuoteForItemsQuoteContractTermSchema.optional(), - billing_address: - editCreateSubCustomerQuoteForItemsQuoteBillingAddressSchema.optional(), - subscription_items: - editCreateSubCustomerQuoteForItemsQuoteSubscriptionItemsSchema.optional(), - discounts: editCreateSubCustomerQuoteForItemsQuoteDiscountsSchema.optional(), - item_tiers: editCreateSubCustomerQuoteForItemsQuoteItemTiersSchema.optional(), - coupons: editCreateSubCustomerQuoteForItemsQuoteCouponsSchema.optional(), -}); -export { editCreateSubCustomerQuoteForItemsQuoteBodySchema }; diff --git a/src/validation/quote/edit_create_sub_for_customer_quote.validation.ts b/src/validation/quote/edit_create_sub_for_customer_quote.validation.ts deleted file mode 100644 index 4659d72..0000000 --- a/src/validation/quote/edit_create_sub_for_customer_quote.validation.ts +++ /dev/null @@ -1,115 +0,0 @@ -// Generated Zod validator: Quote.editCreateSubForCustomerQuote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const editCreateSubForCustomerQuoteQuoteSubscriptionSchema = z.object({ - id: z.string().max(50).optional(), - po_number: z.string().max(100).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - start_date: z.number().int().optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const editCreateSubForCustomerQuoteQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editCreateSubForCustomerQuoteQuoteContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const editCreateSubForCustomerQuoteQuoteAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), -}); -const editCreateSubForCustomerQuoteQuoteEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), -}); -const editCreateSubForCustomerQuoteQuoteBodySchema = z.looseObject({ - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - subscription: editCreateSubForCustomerQuoteQuoteSubscriptionSchema.optional(), - shipping_address: - editCreateSubForCustomerQuoteQuoteShippingAddressSchema.optional(), - contract_term: - editCreateSubForCustomerQuoteQuoteContractTermSchema.optional(), - addons: editCreateSubForCustomerQuoteQuoteAddonsSchema.optional(), - event_based_addons: - editCreateSubForCustomerQuoteQuoteEventBasedAddonsSchema.optional(), -}); -export { editCreateSubForCustomerQuoteQuoteBodySchema }; diff --git a/src/validation/quote/edit_for_charge_items_and_charges.validation.ts b/src/validation/quote/edit_for_charge_items_and_charges.validation.ts deleted file mode 100644 index 96324df..0000000 --- a/src/validation/quote/edit_for_charge_items_and_charges.validation.ts +++ /dev/null @@ -1,108 +0,0 @@ -// Generated Zod validator: Quote.editForChargeItemsAndCharges -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const editForChargeItemsAndChargesQuoteBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editForChargeItemsAndChargesQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editForChargeItemsAndChargesQuoteItemPricesSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), -}); -const editForChargeItemsAndChargesQuoteItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const editForChargeItemsAndChargesQuoteChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - service_period: z.array(z.number().int().optional()).optional(), -}); -const editForChargeItemsAndChargesQuoteDiscountsSchema = z.object({ - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - apply_on: z.array( - z.enum(['invoice_amount', 'specific_item_price']).optional(), - ), - item_price_id: z.array(z.string().max(100).optional()).optional(), -}); -const editForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const editForChargeItemsAndChargesQuoteBodySchema = z.looseObject({ - po_number: z.string().max(100).optional(), - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - currency_code: z.string().max(3).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - net_term_days: z.number().int().optional(), - billing_address: - editForChargeItemsAndChargesQuoteBillingAddressSchema.optional(), - shipping_address: - editForChargeItemsAndChargesQuoteShippingAddressSchema.optional(), - item_prices: editForChargeItemsAndChargesQuoteItemPricesSchema.optional(), - item_tiers: editForChargeItemsAndChargesQuoteItemTiersSchema.optional(), - charges: editForChargeItemsAndChargesQuoteChargesSchema.optional(), - discounts: editForChargeItemsAndChargesQuoteDiscountsSchema.optional(), - tax_providers_fields: - editForChargeItemsAndChargesQuoteTaxProvidersFieldsSchema.optional(), -}); -export { editForChargeItemsAndChargesQuoteBodySchema }; diff --git a/src/validation/quote/edit_one_time_quote.validation.ts b/src/validation/quote/edit_one_time_quote.validation.ts deleted file mode 100644 index bc0a70a..0000000 --- a/src/validation/quote/edit_one_time_quote.validation.ts +++ /dev/null @@ -1,60 +0,0 @@ -// Generated Zod validator: Quote.editOneTimeQuote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const editOneTimeQuoteQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editOneTimeQuoteQuoteAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period: z.array(z.number().int().optional()).optional(), -}); -const editOneTimeQuoteQuoteChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - service_period: z.array(z.number().int().optional()).optional(), -}); -const editOneTimeQuoteQuoteTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const editOneTimeQuoteQuoteBodySchema = z.looseObject({ - po_number: z.string().max(100).optional(), - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - currency_code: z.string().max(3).optional(), - coupon: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - shipping_address: editOneTimeQuoteQuoteShippingAddressSchema.optional(), - addons: editOneTimeQuoteQuoteAddonsSchema.optional(), - charges: editOneTimeQuoteQuoteChargesSchema.optional(), - tax_providers_fields: - editOneTimeQuoteQuoteTaxProvidersFieldsSchema.optional(), -}); -export { editOneTimeQuoteQuoteBodySchema }; diff --git a/src/validation/quote/edit_update_subscription_quote.validation.ts b/src/validation/quote/edit_update_subscription_quote.validation.ts deleted file mode 100644 index 09b1447..0000000 --- a/src/validation/quote/edit_update_subscription_quote.validation.ts +++ /dev/null @@ -1,149 +0,0 @@ -// Generated Zod validator: Quote.editUpdateSubscriptionQuote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const editUpdateSubscriptionQuoteQuoteSubscriptionSchema = z.object({ - plan_id: z.string().max(100).optional(), - plan_quantity: z.number().int().min(1).optional(), - plan_unit_price: z.number().int().min(0).optional(), - setup_fee: z.number().int().min(0).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const editUpdateSubscriptionQuoteQuoteBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editUpdateSubscriptionQuoteQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editUpdateSubscriptionQuoteQuoteCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), -}); -const editUpdateSubscriptionQuoteQuoteContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const editUpdateSubscriptionQuoteQuoteAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), -}); -const editUpdateSubscriptionQuoteQuoteEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const editUpdateSubscriptionQuoteQuoteBodySchema = z.looseObject({ - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - replace_addon_list: z.boolean().default(false).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - billing_cycles: z.number().int().min(0).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - change_option: z.enum(['immediately', 'specific_date']).optional(), - changes_scheduled_at: z.number().int().optional(), - force_term_reset: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - subscription: editUpdateSubscriptionQuoteQuoteSubscriptionSchema.optional(), - billing_address: - editUpdateSubscriptionQuoteQuoteBillingAddressSchema.optional(), - shipping_address: - editUpdateSubscriptionQuoteQuoteShippingAddressSchema.optional(), - customer: editUpdateSubscriptionQuoteQuoteCustomerSchema.optional(), - contract_term: editUpdateSubscriptionQuoteQuoteContractTermSchema.optional(), - addons: editUpdateSubscriptionQuoteQuoteAddonsSchema.optional(), - event_based_addons: - editUpdateSubscriptionQuoteQuoteEventBasedAddonsSchema.optional(), -}); -export { editUpdateSubscriptionQuoteQuoteBodySchema }; diff --git a/src/validation/quote/edit_update_subscription_quote_for_items.validation.ts b/src/validation/quote/edit_update_subscription_quote_for_items.validation.ts deleted file mode 100644 index 09c9c26..0000000 --- a/src/validation/quote/edit_update_subscription_quote_for_items.validation.ts +++ /dev/null @@ -1,191 +0,0 @@ -// Generated Zod validator: Quote.editUpdateSubscriptionQuoteForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const editUpdateSubscriptionQuoteForItemsQuoteSubscriptionSchema = - z.looseObject({ - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - }); -const editUpdateSubscriptionQuoteForItemsQuoteBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editUpdateSubscriptionQuoteForItemsQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const editUpdateSubscriptionQuoteForItemsQuoteCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), -}); -const editUpdateSubscriptionQuoteForItemsQuoteContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const editUpdateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema = - z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - item_type: z - .array(z.enum(['plan', 'addon', 'charge']).optional()) - .optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), - ramp_tier_id: z.array(z.string().max(105).optional()).optional(), - }); -const editUpdateSubscriptionQuoteForItemsQuoteDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - operation_type: z.array(z.enum(['add', 'remove']).optional()), - id: z.array(z.string().max(50).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), -}); -const editUpdateSubscriptionQuoteForItemsQuoteItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), - ramp_tier_id: z.array(z.string().max(105).optional()).optional(), -}); -const editUpdateSubscriptionQuoteForItemsQuoteCouponsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), -}); -const editUpdateSubscriptionQuoteForItemsQuoteBodySchema = z.looseObject({ - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - replace_items_list: z.boolean().default(false).optional(), - billing_cycles: z.number().int().min(0).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - change_option: z.enum(['immediately', 'specific_date']).optional(), - changes_scheduled_at: z.number().int().optional(), - force_term_reset: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - net_term_days: z.number().int().optional(), - subscription: - editUpdateSubscriptionQuoteForItemsQuoteSubscriptionSchema.optional(), - billing_address: - editUpdateSubscriptionQuoteForItemsQuoteBillingAddressSchema.optional(), - shipping_address: - editUpdateSubscriptionQuoteForItemsQuoteShippingAddressSchema.optional(), - customer: editUpdateSubscriptionQuoteForItemsQuoteCustomerSchema.optional(), - contract_term: - editUpdateSubscriptionQuoteForItemsQuoteContractTermSchema.optional(), - subscription_items: - editUpdateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema.optional(), - discounts: editUpdateSubscriptionQuoteForItemsQuoteDiscountsSchema.optional(), - item_tiers: - editUpdateSubscriptionQuoteForItemsQuoteItemTiersSchema.optional(), - coupons: editUpdateSubscriptionQuoteForItemsQuoteCouponsSchema.optional(), -}); -export { editUpdateSubscriptionQuoteForItemsQuoteBodySchema }; diff --git a/src/validation/quote/extend_expiry_date.validation.ts b/src/validation/quote/extend_expiry_date.validation.ts deleted file mode 100644 index 9836adc..0000000 --- a/src/validation/quote/extend_expiry_date.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Quote.extendExpiryDate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const extendExpiryDateQuoteBodySchema = z.looseObject({ - valid_till: z.number().int(), -}); -export { extendExpiryDateQuoteBodySchema }; diff --git a/src/validation/quote/pdf.validation.ts b/src/validation/quote/pdf.validation.ts deleted file mode 100644 index e966c85..0000000 --- a/src/validation/quote/pdf.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Quote.pdf -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const pdfQuoteBodySchema = z.looseObject({ - consolidated_view: z.boolean().default(false).optional(), - disposition_type: z.enum(['attachment', 'inline']).optional(), -}); -export { pdfQuoteBodySchema }; diff --git a/src/validation/quote/quote_line_groups_for_quote.validation.ts b/src/validation/quote/quote_line_groups_for_quote.validation.ts deleted file mode 100644 index c46e950..0000000 --- a/src/validation/quote/quote_line_groups_for_quote.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Quote.quoteLineGroupsForQuote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const quoteLineGroupsForQuoteQuoteBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { quoteLineGroupsForQuoteQuoteBodySchema }; diff --git a/src/validation/quote/update_signature_status.validation.ts b/src/validation/quote/update_signature_status.validation.ts deleted file mode 100644 index 77d8a47..0000000 --- a/src/validation/quote/update_signature_status.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Quote.updateSignatureStatus -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateSignatureStatusQuoteCpqQuoteSignatureSchema = z.object({ - status: z - .enum(['draft', 'active', 'signed', 'expired', 'cancelled', 'declined']) - .optional(), -}); -const updateSignatureStatusQuoteBodySchema = z.looseObject({ - cpq_quote_signature: - updateSignatureStatusQuoteCpqQuoteSignatureSchema.optional(), -}); -export { updateSignatureStatusQuoteBodySchema }; diff --git a/src/validation/quote/update_status.validation.ts b/src/validation/quote/update_status.validation.ts deleted file mode 100644 index 1bec015..0000000 --- a/src/validation/quote/update_status.validation.ts +++ /dev/null @@ -1,16 +0,0 @@ -// Generated Zod validator: Quote.updateStatus -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateStatusQuoteBodySchema = z.looseObject({ - status: z.enum([ - 'open', - 'accepted', - 'declined', - 'proposed', - 'voided', - 'closed', - ]), - comment: z.string().max(300).optional(), -}); -export { updateStatusQuoteBodySchema }; diff --git a/src/validation/quote/update_subscription_quote.validation.ts b/src/validation/quote/update_subscription_quote.validation.ts deleted file mode 100644 index 6d68ada..0000000 --- a/src/validation/quote/update_subscription_quote.validation.ts +++ /dev/null @@ -1,150 +0,0 @@ -// Generated Zod validator: Quote.updateSubscriptionQuote -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateSubscriptionQuoteQuoteSubscriptionSchema = z.object({ - id: z.string().max(50), - plan_id: z.string().max(100).optional(), - plan_quantity: z.number().int().min(1).optional(), - plan_unit_price: z.number().int().min(0).optional(), - setup_fee: z.number().int().min(0).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const updateSubscriptionQuoteQuoteBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionQuoteQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionQuoteQuoteCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), -}); -const updateSubscriptionQuoteQuoteContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const updateSubscriptionQuoteQuoteAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), -}); -const updateSubscriptionQuoteQuoteEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const updateSubscriptionQuoteQuoteBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - replace_addon_list: z.boolean().default(false).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - billing_cycles: z.number().int().min(0).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - change_option: z.enum(['immediately', 'specific_date']).optional(), - changes_scheduled_at: z.number().int().optional(), - force_term_reset: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - subscription: updateSubscriptionQuoteQuoteSubscriptionSchema.optional(), - billing_address: updateSubscriptionQuoteQuoteBillingAddressSchema.optional(), - shipping_address: - updateSubscriptionQuoteQuoteShippingAddressSchema.optional(), - customer: updateSubscriptionQuoteQuoteCustomerSchema.optional(), - contract_term: updateSubscriptionQuoteQuoteContractTermSchema.optional(), - addons: updateSubscriptionQuoteQuoteAddonsSchema.optional(), - event_based_addons: - updateSubscriptionQuoteQuoteEventBasedAddonsSchema.optional(), -}); -export { updateSubscriptionQuoteQuoteBodySchema }; diff --git a/src/validation/quote/update_subscription_quote_for_items.validation.ts b/src/validation/quote/update_subscription_quote_for_items.validation.ts deleted file mode 100644 index 832b0f4..0000000 --- a/src/validation/quote/update_subscription_quote_for_items.validation.ts +++ /dev/null @@ -1,188 +0,0 @@ -// Generated Zod validator: Quote.updateSubscriptionQuoteForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateSubscriptionQuoteForItemsQuoteSubscriptionSchema = z.looseObject({ - id: z.string().max(50), - setup_fee: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), -}); -const updateSubscriptionQuoteForItemsQuoteBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionQuoteForItemsQuoteShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionQuoteForItemsQuoteCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - registered_for_gst: z.boolean().optional(), -}); -const updateSubscriptionQuoteForItemsQuoteContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const updateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), - ramp_tier_id: z.array(z.string().max(105).optional()).optional(), -}); -const updateSubscriptionQuoteForItemsQuoteDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - operation_type: z.array(z.enum(['add', 'remove']).optional()), - id: z.array(z.string().max(50).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), -}); -const updateSubscriptionQuoteForItemsQuoteItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), - ramp_tier_id: z.array(z.string().max(105).optional()).optional(), -}); -const updateSubscriptionQuoteForItemsQuoteCouponsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - start_date: z.array(z.number().int().optional()).optional(), - end_date: z.array(z.number().int().optional()).optional(), -}); -const updateSubscriptionQuoteForItemsQuoteBodySchema = z.looseObject({ - name: z.string().max(100).optional(), - notes: z.string().max(10000).optional(), - expires_at: z.number().int().optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - replace_items_list: z.boolean().default(false).optional(), - billing_cycles: z.number().int().min(0).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - change_option: z.enum(['immediately', 'specific_date']).optional(), - changes_scheduled_at: z.number().int().optional(), - force_term_reset: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - net_term_days: z.number().int().optional(), - subscription: - updateSubscriptionQuoteForItemsQuoteSubscriptionSchema.optional(), - billing_address: - updateSubscriptionQuoteForItemsQuoteBillingAddressSchema.optional(), - shipping_address: - updateSubscriptionQuoteForItemsQuoteShippingAddressSchema.optional(), - customer: updateSubscriptionQuoteForItemsQuoteCustomerSchema.optional(), - contract_term: - updateSubscriptionQuoteForItemsQuoteContractTermSchema.optional(), - subscription_items: - updateSubscriptionQuoteForItemsQuoteSubscriptionItemsSchema.optional(), - discounts: updateSubscriptionQuoteForItemsQuoteDiscountsSchema.optional(), - item_tiers: updateSubscriptionQuoteForItemsQuoteItemTiersSchema.optional(), - coupons: updateSubscriptionQuoteForItemsQuoteCouponsSchema.optional(), -}); -export { updateSubscriptionQuoteForItemsQuoteBodySchema }; diff --git a/src/validation/ramp/create_for_subscription.validation.ts b/src/validation/ramp/create_for_subscription.validation.ts deleted file mode 100644 index 0218863..0000000 --- a/src/validation/ramp/create_for_subscription.validation.ts +++ /dev/null @@ -1,112 +0,0 @@ -// Generated Zod validator: Ramp.createForSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForSubscriptionRampContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), - renewal_billing_cycles: z.number().int().optional(), -}); -const createForSubscriptionRampItemsToAddSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), -}); -const createForSubscriptionRampItemsToUpdateSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), -}); -const createForSubscriptionRampItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createForSubscriptionRampCouponsToAddSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const createForSubscriptionRampDiscountsToAddSchema = z.object({ - apply_on: z.array( - z.enum(['invoice_amount', 'specific_item_price']).optional(), - ), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), -}); -const createForSubscriptionRampBodySchema = z.looseObject({ - effective_from: z.number().int(), - description: z.string().max(250).optional(), - coupons_to_remove: z.array(z.string().max(100).optional()).optional(), - discounts_to_remove: z.array(z.string().max(100).optional()).optional(), - items_to_remove: z.array(z.string().max(100).optional()).optional(), - contract_term: createForSubscriptionRampContractTermSchema.optional(), - items_to_add: createForSubscriptionRampItemsToAddSchema.optional(), - items_to_update: createForSubscriptionRampItemsToUpdateSchema.optional(), - item_tiers: createForSubscriptionRampItemTiersSchema.optional(), - coupons_to_add: createForSubscriptionRampCouponsToAddSchema.optional(), - discounts_to_add: createForSubscriptionRampDiscountsToAddSchema.optional(), -}); -export { createForSubscriptionRampBodySchema }; diff --git a/src/validation/ramp/update.validation.ts b/src/validation/ramp/update.validation.ts deleted file mode 100644 index 9678415..0000000 --- a/src/validation/ramp/update.validation.ts +++ /dev/null @@ -1,112 +0,0 @@ -// Generated Zod validator: Ramp.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateRampContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), - renewal_billing_cycles: z.number().int().optional(), -}); -const updateRampItemsToAddSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), -}); -const updateRampItemsToUpdateSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), -}); -const updateRampItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const updateRampCouponsToAddSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const updateRampDiscountsToAddSchema = z.object({ - apply_on: z.array( - z.enum(['invoice_amount', 'specific_item_price']).optional(), - ), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), -}); -const updateRampBodySchema = z.looseObject({ - effective_from: z.number().int(), - description: z.string().max(250).optional(), - coupons_to_remove: z.array(z.string().max(100).optional()).optional(), - discounts_to_remove: z.array(z.string().max(100).optional()).optional(), - items_to_remove: z.array(z.string().max(100).optional()).optional(), - contract_term: updateRampContractTermSchema.optional(), - items_to_add: updateRampItemsToAddSchema.optional(), - items_to_update: updateRampItemsToUpdateSchema.optional(), - item_tiers: updateRampItemTiersSchema.optional(), - coupons_to_add: updateRampCouponsToAddSchema.optional(), - discounts_to_add: updateRampDiscountsToAddSchema.optional(), -}); -export { updateRampBodySchema }; diff --git a/src/validation/recorded_purchase/create.validation.ts b/src/validation/recorded_purchase/create.validation.ts deleted file mode 100644 index b03ad3c..0000000 --- a/src/validation/recorded_purchase/create.validation.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Generated Zod validator: RecordedPurchase.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createRecordedPurchaseCustomerSchema = z.object({ - id: z.string().max(50), -}); -const createRecordedPurchaseAppleAppStoreSchema = z.object({ - transaction_id: z.string().max(100).optional(), - receipt: z.string().max(65000).optional(), - product_id: z.string().max(255).optional(), -}); -const createRecordedPurchaseGooglePlayStoreSchema = z.object({ - purchase_token: z.string().max(500).optional(), - product_id: z.string().max(255).optional(), - order_id: z.string().max(100).optional(), -}); -const createRecordedPurchaseOmnichannelSubscriptionSchema = z.object({ - id: z.string().max(50).optional(), -}); -const createRecordedPurchaseBodySchema = z.looseObject({ - app_id: z.string().max(100), - customer: createRecordedPurchaseCustomerSchema.optional(), - apple_app_store: createRecordedPurchaseAppleAppStoreSchema.optional(), - google_play_store: createRecordedPurchaseGooglePlayStoreSchema.optional(), - omnichannel_subscription: - createRecordedPurchaseOmnichannelSubscriptionSchema.optional(), -}); -export { createRecordedPurchaseBodySchema }; diff --git a/src/validation/resource_migration/retrieve_latest.validation.ts b/src/validation/resource_migration/retrieve_latest.validation.ts deleted file mode 100644 index 6d31005..0000000 --- a/src/validation/resource_migration/retrieve_latest.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: ResourceMigration.retrieveLatest -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveLatestResourceMigrationBodySchema = z.looseObject({ - from_site: z.string().max(50).min(4), - entity_type: z.enum(['customer']), - entity_id: z.string().max(100), -}); -export { retrieveLatestResourceMigrationBodySchema }; diff --git a/src/validation/subscription/add_charge_at_term_end.validation.ts b/src/validation/subscription/add_charge_at_term_end.validation.ts deleted file mode 100644 index 8da3666..0000000 --- a/src/validation/subscription/add_charge_at_term_end.validation.ts +++ /dev/null @@ -1,17 +0,0 @@ -// Generated Zod validator: Subscription.addChargeAtTermEnd -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const addChargeAtTermEndSubscriptionBodySchema = z.looseObject({ - amount: z.number().int().min(1).optional(), - description: z.string().max(250), - amount_in_decimal: z.string().max(39).optional(), - avalara_sale_type: z - .enum(['wholesale', 'retail', 'consumed', 'vendor_use']) - .optional(), - avalara_transaction_type: z.number().int().optional(), - avalara_service_type: z.number().int().optional(), - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), -}); -export { addChargeAtTermEndSubscriptionBodySchema }; diff --git a/src/validation/subscription/cancel.validation.ts b/src/validation/subscription/cancel.validation.ts deleted file mode 100644 index 8c0ee4f..0000000 --- a/src/validation/subscription/cancel.validation.ts +++ /dev/null @@ -1,46 +0,0 @@ -// Generated Zod validator: Subscription.cancel -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const cancelSubscriptionEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), -}); -const cancelSubscriptionBodySchema = z.looseObject({ - cancel_option: z - .enum([ - 'immediately', - 'end_of_term', - 'specific_date', - 'end_of_billing_term', - ]) - .optional(), - end_of_term: z.boolean().default(false).optional(), - cancel_at: z.number().int().optional(), - credit_option_for_current_term_charges: z - .enum(['none', 'prorate', 'full']) - .optional(), - unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), - account_receivables_handling: z - .enum(['no_action', 'schedule_payment_collection', 'write_off']) - .optional(), - refundable_credits_handling: z - .enum(['no_action', 'schedule_refund']) - .optional(), - contract_term_cancel_option: z - .enum([ - 'terminate_immediately', - 'end_of_contract_term', - 'specific_date', - 'end_of_subscription_billing_term', - ]) - .optional(), - invoice_date: z.number().int().optional(), - cancel_reason_code: z.string().max(100).optional(), - event_based_addons: cancelSubscriptionEventBasedAddonsSchema.optional(), -}); -export { cancelSubscriptionBodySchema }; diff --git a/src/validation/subscription/cancel_for_items.validation.ts b/src/validation/subscription/cancel_for_items.validation.ts deleted file mode 100644 index 8e377a2..0000000 --- a/src/validation/subscription/cancel_for_items.validation.ts +++ /dev/null @@ -1,50 +0,0 @@ -// Generated Zod validator: Subscription.cancelForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const cancelForItemsSubscriptionSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), -}); -const cancelForItemsSubscriptionBodySchema = z.looseObject({ - cancel_option: z - .enum([ - 'immediately', - 'end_of_term', - 'specific_date', - 'end_of_billing_term', - ]) - .optional(), - end_of_term: z.boolean().default(false).optional(), - cancel_at: z.number().int().optional(), - credit_option_for_current_term_charges: z - .enum(['none', 'prorate', 'full']) - .optional(), - unbilled_charges_option: z.enum(['invoice', 'delete']).optional(), - account_receivables_handling: z - .enum(['no_action', 'schedule_payment_collection', 'write_off']) - .optional(), - refundable_credits_handling: z - .enum(['no_action', 'schedule_refund']) - .optional(), - contract_term_cancel_option: z - .enum([ - 'terminate_immediately', - 'end_of_contract_term', - 'specific_date', - 'end_of_subscription_billing_term', - ]) - .optional(), - invoice_date: z.number().int().optional(), - cancel_reason_code: z.string().max(100).optional(), - decommissioned: z.boolean().default(false).optional(), - subscription_items: - cancelForItemsSubscriptionSubscriptionItemsSchema.optional(), -}); -export { cancelForItemsSubscriptionBodySchema }; diff --git a/src/validation/subscription/change_term_end.validation.ts b/src/validation/subscription/change_term_end.validation.ts deleted file mode 100644 index 6bf9654..0000000 --- a/src/validation/subscription/change_term_end.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: Subscription.changeTermEnd -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const changeTermEndSubscriptionBodySchema = z.looseObject({ - term_ends_at: z.number().int(), - prorate: z.boolean().optional(), - invoice_immediately: z.boolean().optional(), -}); -export { changeTermEndSubscriptionBodySchema }; diff --git a/src/validation/subscription/charge_addon_at_term_end.validation.ts b/src/validation/subscription/charge_addon_at_term_end.validation.ts deleted file mode 100644 index e84a3aa..0000000 --- a/src/validation/subscription/charge_addon_at_term_end.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Subscription.chargeAddonAtTermEnd -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const chargeAddonAtTermEndSubscriptionBodySchema = z.looseObject({ - addon_id: z.string().max(100), - addon_quantity: z.number().int().min(1).optional(), - addon_unit_price: z.number().int().min(0).optional(), - addon_quantity_in_decimal: z.string().max(33).optional(), - addon_unit_price_in_decimal: z.string().max(39).optional(), - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), -}); -export { chargeAddonAtTermEndSubscriptionBodySchema }; diff --git a/src/validation/subscription/charge_future_renewals.validation.ts b/src/validation/subscription/charge_future_renewals.validation.ts deleted file mode 100644 index 0a40e99..0000000 --- a/src/validation/subscription/charge_future_renewals.validation.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Generated Zod validator: Subscription.chargeFutureRenewals -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const chargeFutureRenewalsSubscriptionFixedIntervalScheduleSchema = z.object({ - number_of_occurrences: z.number().int().min(1).optional(), - days_before_renewal: z.number().int().min(1).optional(), - end_schedule_on: z - .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) - .optional(), - end_date: z.number().int().optional(), -}); -const chargeFutureRenewalsSubscriptionSpecificDatesScheduleSchema = z.object({ - terms_to_charge: z.array(z.number().int().optional()).optional(), - date: z.array(z.number().int().optional()).optional(), -}); -const chargeFutureRenewalsSubscriptionBodySchema = z.looseObject({ - terms_to_charge: z.number().int().min(1).optional(), - invoice_immediately: z.boolean().optional(), - schedule_type: z - .enum(['immediate', 'specific_dates', 'fixed_intervals']) - .optional(), - fixed_interval_schedule: - chargeFutureRenewalsSubscriptionFixedIntervalScheduleSchema.optional(), - specific_dates_schedule: - chargeFutureRenewalsSubscriptionSpecificDatesScheduleSchema.optional(), -}); -export { chargeFutureRenewalsSubscriptionBodySchema }; diff --git a/src/validation/subscription/contract_terms_for_subscription.validation.ts b/src/validation/subscription/contract_terms_for_subscription.validation.ts deleted file mode 100644 index 5b18426..0000000 --- a/src/validation/subscription/contract_terms_for_subscription.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: Subscription.contractTermsForSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const contractTermsForSubscriptionSubscriptionSortBySchema = z.looseObject({ - asc: z.enum(['created_at']).optional(), - desc: z.enum(['created_at']).optional(), -}); -const contractTermsForSubscriptionSubscriptionBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - sort_by: contractTermsForSubscriptionSubscriptionSortBySchema.optional(), -}); -export { contractTermsForSubscriptionSubscriptionBodySchema }; diff --git a/src/validation/subscription/create.validation.ts b/src/validation/subscription/create.validation.ts deleted file mode 100644 index 8bb766f..0000000 --- a/src/validation/subscription/create.validation.ts +++ /dev/null @@ -1,506 +0,0 @@ -// Generated Zod validator: Subscription.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createSubscriptionMetaDataSchema = z.looseObject({}); -const createSubscriptionCustomerSchema = z.looseObject({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - locale: z.string().max(50).optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - entity_code: z - .enum([ - 'a', - 'b', - 'c', - 'd', - 'e', - 'f', - 'g', - 'h', - 'i', - 'j', - 'k', - 'l', - 'm', - 'n', - 'p', - 'q', - 'r', - 'med1', - 'med2', - ]) - .optional(), - exempt_number: z.string().max(100).optional(), - net_term_days: z.number().int().optional(), - taxjar_exemption_category: z - .enum(['wholesale', 'government', 'other']) - .optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - allow_direct_debit: z.boolean().default(false).optional(), - consolidated_invoicing: z.boolean().optional(), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - entity_identifier_scheme: z.string().max(50).optional(), - entity_identifier_standard: z.string().max(50).optional(), - is_einvoice_enabled: z.boolean().optional(), - einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), - registered_for_gst: z.boolean().optional(), - business_customer_without_vat_number: z.boolean().optional(), - exemption_details: z.array(z.string().optional()).optional(), - customer_type: z - .enum(['residential', 'business', 'senior_citizen', 'industrial']) - .optional(), -}); -const createSubscriptionAdditionalInformationSchema = z.looseObject({}); -const createSubscriptionCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - tmp_token: z.string().max(300).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - ip_address: z.string().max(50).optional(), - additional_information: - createSubscriptionAdditionalInformationSchema.optional(), -}); -const createSubscriptionBillingAddressSchema = z.looseObject({}); -const createSubscriptionBankAccountSchema = z.object({ - gateway_account_id: z.string().max(50).optional(), - iban: z.string().max(50).min(10).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - email: z.string().email().max(70).optional(), - phone: z.string().max(50).optional(), - bank_name: z.string().max(100).optional(), - account_number: z.string().max(17).min(4).optional(), - routing_number: z.string().max(9).min(3).optional(), - bank_code: z.string().max(20).optional(), - account_type: z - .enum(['checking', 'savings', 'business_checking', 'current']) - .optional(), - account_holder_type: z.enum(['individual', 'company']).optional(), - echeck_type: z.enum(['web', 'ppd', 'ccd']).optional(), - issuing_country: z.string().max(50).optional(), - swedish_identity_number: z.string().max(12).min(10).optional(), - billing_address: createSubscriptionBillingAddressSchema.optional(), -}); -const createSubscriptionPaymentMethodSchema = z.object({ - type: z - .enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - tmp_token: z.string().max(65000).optional(), - issuing_country: z.string().max(50).optional(), - additional_information: - createSubscriptionAdditionalInformationSchema.optional(), -}); -const createSubscriptionPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - createSubscriptionAdditionalInformationSchema.optional(), -}); -const createSubscriptionShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createSubscriptionStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const createSubscriptionContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createSubscriptionEntityIdentifiersSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - scheme: z.array(z.string().max(50).optional()).optional(), - value: z.array(z.string().max(50).optional()).optional(), - standard: z.array(z.string().max(50).optional()).optional(), -}); -const createSubscriptionTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createSubscriptionAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), -}); -const createSubscriptionEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), -}); -const createSubscriptionCouponsSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const createSubscriptionBodySchema = z.looseObject({ - id: z.string().max(50).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - start_date: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - po_number: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - token_id: z.string().max(40).optional(), - affiliate_token: z.string().max(250).optional(), - created_from_ip: z.string().max(50).optional(), - invoice_notes: z.string().max(2000).optional(), - invoice_date: z.number().int().optional(), - meta_data: createSubscriptionMetaDataSchema.optional(), - invoice_immediately: z.boolean().optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), - client_profile_id: z.string().max(50).optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - customer: createSubscriptionCustomerSchema.optional(), - card: createSubscriptionCardSchema.optional(), - bank_account: createSubscriptionBankAccountSchema.optional(), - payment_method: createSubscriptionPaymentMethodSchema.optional(), - payment_intent: createSubscriptionPaymentIntentSchema.optional(), - billing_address: createSubscriptionBillingAddressSchema.optional(), - shipping_address: createSubscriptionShippingAddressSchema.optional(), - statement_descriptor: createSubscriptionStatementDescriptorSchema.optional(), - contract_term: createSubscriptionContractTermSchema.optional(), - entity_identifiers: createSubscriptionEntityIdentifiersSchema.optional(), - tax_providers_fields: createSubscriptionTaxProvidersFieldsSchema.optional(), - addons: createSubscriptionAddonsSchema.optional(), - event_based_addons: createSubscriptionEventBasedAddonsSchema.optional(), - coupons: createSubscriptionCouponsSchema.optional(), -}); -export { createSubscriptionBodySchema }; diff --git a/src/validation/subscription/create_for_customer.validation.ts b/src/validation/subscription/create_for_customer.validation.ts deleted file mode 100644 index f322c7e..0000000 --- a/src/validation/subscription/create_for_customer.validation.ts +++ /dev/null @@ -1,197 +0,0 @@ -// Generated Zod validator: Subscription.createForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createForCustomerSubscriptionMetaDataSchema = z.looseObject({}); -const createForCustomerSubscriptionShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createForCustomerSubscriptionStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const createForCustomerSubscriptionAdditionalInformationSchema = z.looseObject( - {}, -); -const createForCustomerSubscriptionPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - createForCustomerSubscriptionAdditionalInformationSchema.optional(), -}); -const createForCustomerSubscriptionContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createForCustomerSubscriptionAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), -}); -const createForCustomerSubscriptionEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), -}); -const createForCustomerSubscriptionCouponsSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const createForCustomerSubscriptionBodySchema = z.looseObject({ - id: z.string().max(50).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - start_date: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - po_number: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - payment_source_id: z.string().max(40).optional(), - override_relationship: z.boolean().optional(), - invoice_notes: z.string().max(2000).optional(), - invoice_date: z.number().int().optional(), - meta_data: createForCustomerSubscriptionMetaDataSchema.optional(), - invoice_immediately: z.boolean().optional(), - replace_primary_payment_source: z.boolean().default(true).optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - shipping_address: - createForCustomerSubscriptionShippingAddressSchema.optional(), - statement_descriptor: - createForCustomerSubscriptionStatementDescriptorSchema.optional(), - payment_intent: createForCustomerSubscriptionPaymentIntentSchema.optional(), - contract_term: createForCustomerSubscriptionContractTermSchema.optional(), - addons: createForCustomerSubscriptionAddonsSchema.optional(), - event_based_addons: - createForCustomerSubscriptionEventBasedAddonsSchema.optional(), - coupons: createForCustomerSubscriptionCouponsSchema.optional(), -}); -export { createForCustomerSubscriptionBodySchema }; diff --git a/src/validation/subscription/create_with_items.validation.ts b/src/validation/subscription/create_with_items.validation.ts deleted file mode 100644 index 3a85a02..0000000 --- a/src/validation/subscription/create_with_items.validation.ts +++ /dev/null @@ -1,230 +0,0 @@ -// Generated Zod validator: Subscription.createWithItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createWithItemsSubscriptionMetaDataSchema = z.looseObject({}); -const createWithItemsSubscriptionShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const createWithItemsSubscriptionStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const createWithItemsSubscriptionAdditionalInformationSchema = z.looseObject( - {}, -); -const createWithItemsSubscriptionPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - createWithItemsSubscriptionAdditionalInformationSchema.optional(), -}); -const createWithItemsSubscriptionContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - contract_start: z.number().int().optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const createWithItemsSubscriptionBillingOverrideSchema = z.object({ - max_excess_payment_usage: z.number().int().min(-1).optional(), - max_refundable_credits_usage: z.number().int().min(-1).optional(), -}); -const createWithItemsSubscriptionSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - usage_accumulation_reset_frequency: z - .array(z.enum(['never', 'subscription_billing_frequency']).optional()) - .optional(), -}); -const createWithItemsSubscriptionDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), -}); -const createWithItemsSubscriptionItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createWithItemsSubscriptionCouponsSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const createWithItemsSubscriptionBodySchema = z.looseObject({ - id: z.string().max(50).optional(), - business_entity_id: z.string().max(50).optional(), - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - setup_fee: z.number().int().min(0).optional(), - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - net_term_days: z.number().int().optional(), - start_date: z.number().int().optional(), - coupon: z.string().max(100).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - terms_to_charge: z.number().int().min(1).optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - po_number: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - payment_source_id: z.string().max(40).optional(), - override_relationship: z.boolean().optional(), - invoice_notes: z.string().max(2000).optional(), - invoice_date: z.number().int().optional(), - meta_data: createWithItemsSubscriptionMetaDataSchema.optional(), - invoice_immediately: z.boolean().optional(), - replace_primary_payment_source: z.boolean().default(true).optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - create_pending_invoices: z.boolean().optional(), - auto_close_invoices: z.boolean().optional(), - first_invoice_pending: z.boolean().default(false).optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - shipping_address: createWithItemsSubscriptionShippingAddressSchema.optional(), - statement_descriptor: - createWithItemsSubscriptionStatementDescriptorSchema.optional(), - payment_intent: createWithItemsSubscriptionPaymentIntentSchema.optional(), - contract_term: createWithItemsSubscriptionContractTermSchema.optional(), - billing_override: createWithItemsSubscriptionBillingOverrideSchema.optional(), - subscription_items: - createWithItemsSubscriptionSubscriptionItemsSchema.optional(), - discounts: createWithItemsSubscriptionDiscountsSchema.optional(), - item_tiers: createWithItemsSubscriptionItemTiersSchema.optional(), - coupons: createWithItemsSubscriptionCouponsSchema.optional(), -}); -export { createWithItemsSubscriptionBodySchema }; diff --git a/src/validation/subscription/edit_advance_invoice_schedule.validation.ts b/src/validation/subscription/edit_advance_invoice_schedule.validation.ts deleted file mode 100644 index 1bd0c96..0000000 --- a/src/validation/subscription/edit_advance_invoice_schedule.validation.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Generated Zod validator: Subscription.editAdvanceInvoiceSchedule -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const editAdvanceInvoiceScheduleSubscriptionFixedIntervalScheduleSchema = - z.object({ - number_of_occurrences: z.number().int().min(1).optional(), - days_before_renewal: z.number().int().min(1).optional(), - end_schedule_on: z - .enum(['after_number_of_intervals', 'specific_date', 'subscription_end']) - .optional(), - end_date: z.number().int().optional(), - }); -const editAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema = - z.object({ - id: z.array(z.string().max(50).optional()).optional(), - terms_to_charge: z.array(z.number().int().optional()).optional(), - date: z.array(z.number().int().optional()).optional(), - }); -const editAdvanceInvoiceScheduleSubscriptionBodySchema = z.looseObject({ - terms_to_charge: z.number().int().min(1).optional(), - schedule_type: z.enum(['specific_dates', 'fixed_intervals']).optional(), - fixed_interval_schedule: - editAdvanceInvoiceScheduleSubscriptionFixedIntervalScheduleSchema.optional(), - specific_dates_schedule: - editAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema.optional(), -}); -export { editAdvanceInvoiceScheduleSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_contract_term.validation.ts b/src/validation/subscription/import_contract_term.validation.ts deleted file mode 100644 index 99fcd27..0000000 --- a/src/validation/subscription/import_contract_term.validation.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Generated Zod validator: Subscription.importContractTerm -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importContractTermSubscriptionContractTermSchema = z.object({ - id: z.string().max(50).optional(), - created_at: z.number().int().optional(), - contract_start: z.number().int().optional(), - contract_end: z.number().int().optional(), - status: z.enum(['active', 'completed', 'cancelled', 'terminated']).optional(), - total_amount_raised: z.number().int().min(0).optional(), - total_amount_raised_before_tax: z.number().int().min(0).optional(), - total_contract_value: z.number().int().min(0).optional(), - total_contract_value_before_tax: z.number().int().min(0).optional(), - billing_cycle: z.number().int().min(0).optional(), - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const importContractTermSubscriptionBodySchema = z.looseObject({ - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - contract_term: importContractTermSubscriptionContractTermSchema.optional(), -}); -export { importContractTermSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_for_customer.validation.ts b/src/validation/subscription/import_for_customer.validation.ts deleted file mode 100644 index f1845d9..0000000 --- a/src/validation/subscription/import_for_customer.validation.ts +++ /dev/null @@ -1,144 +0,0 @@ -// Generated Zod validator: Subscription.importForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importForCustomerSubscriptionMetaDataSchema = z.looseObject({}); -const importForCustomerSubscriptionContractTermSchema = z.object({ - id: z.string().max(50).optional(), - created_at: z.number().int().optional(), - contract_start: z.number().int().optional(), - billing_cycle: z.number().int().min(0).optional(), - total_amount_raised: z.number().int().min(0).optional(), - total_amount_raised_before_tax: z.number().int().min(0).optional(), - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const importForCustomerSubscriptionTransactionSchema = z.object({ - amount: z.number().int().min(0).optional(), - payment_method: z - .enum([ - 'cash', - 'check', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]) - .optional(), - reference_number: z.string().max(100).optional(), - date: z.number().int().optional(), -}); -const importForCustomerSubscriptionShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const importForCustomerSubscriptionAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), -}); -const importForCustomerSubscriptionEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), -}); -const importForCustomerSubscriptionChargedEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - last_charged_at: z.array(z.number().int().optional()).optional(), -}); -const importForCustomerSubscriptionCouponsSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const importForCustomerSubscriptionBodySchema = z.looseObject({ - id: z.string().max(50).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - auto_collection: z.enum(['on', 'off']).optional(), - po_number: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - payment_source_id: z.string().max(40).optional(), - status: z.enum([ - 'future', - 'in_trial', - 'active', - 'non_renewing', - 'paused', - 'cancelled', - 'transferred', - ]), - current_term_end: z.number().int().optional(), - current_term_start: z.number().int().optional(), - trial_start: z.number().int().optional(), - cancelled_at: z.number().int().optional(), - started_at: z.number().int().optional(), - activated_at: z.number().int().optional(), - pause_date: z.number().int().optional(), - resume_date: z.number().int().optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - create_current_term_invoice: z.boolean().default(false).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: importForCustomerSubscriptionMetaDataSchema.optional(), - contract_term: importForCustomerSubscriptionContractTermSchema.optional(), - transaction: importForCustomerSubscriptionTransactionSchema.optional(), - shipping_address: - importForCustomerSubscriptionShippingAddressSchema.optional(), - addons: importForCustomerSubscriptionAddonsSchema.optional(), - event_based_addons: - importForCustomerSubscriptionEventBasedAddonsSchema.optional(), - charged_event_based_addons: - importForCustomerSubscriptionChargedEventBasedAddonsSchema.optional(), - coupons: importForCustomerSubscriptionCouponsSchema.optional(), -}); -export { importForCustomerSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_for_items.validation.ts b/src/validation/subscription/import_for_items.validation.ts deleted file mode 100644 index 5237969..0000000 --- a/src/validation/subscription/import_for_items.validation.ts +++ /dev/null @@ -1,168 +0,0 @@ -// Generated Zod validator: Subscription.importForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importForItemsSubscriptionMetaDataSchema = z.looseObject({}); -const importForItemsSubscriptionContractTermSchema = z.object({ - id: z.string().max(50).optional(), - created_at: z.number().int().optional(), - contract_start: z.number().int().optional(), - billing_cycle: z.number().int().min(0).optional(), - total_amount_raised: z.number().int().min(0).optional(), - total_amount_raised_before_tax: z.number().int().min(0).optional(), - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const importForItemsSubscriptionTransactionSchema = z.object({ - amount: z.number().int().min(0).optional(), - payment_method: z - .enum([ - 'cash', - 'check', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]) - .optional(), - reference_number: z.string().max(100).optional(), - date: z.number().int().optional(), -}); -const importForItemsSubscriptionShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const importForItemsSubscriptionSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), -}); -const importForItemsSubscriptionDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), -}); -const importForItemsSubscriptionChargedItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - last_charged_at: z.array(z.number().int().optional()).optional(), -}); -const importForItemsSubscriptionItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const importForItemsSubscriptionCouponsSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const importForItemsSubscriptionBodySchema = z.looseObject({ - exhausted_coupon_ids: z.array(z.string().max(100).optional()).optional(), - id: z.string().max(50).optional(), - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - setup_fee: z.number().int().min(0).optional(), - net_term_days: z.number().int().optional(), - start_date: z.number().int().optional(), - auto_collection: z.enum(['on', 'off']).optional(), - po_number: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - payment_source_id: z.string().max(40).optional(), - status: z.enum([ - 'future', - 'in_trial', - 'active', - 'non_renewing', - 'paused', - 'cancelled', - 'transferred', - ]), - current_term_end: z.number().int().optional(), - current_term_start: z.number().int().optional(), - trial_start: z.number().int().optional(), - cancelled_at: z.number().int().optional(), - started_at: z.number().int().optional(), - activated_at: z.number().int().optional(), - pause_date: z.number().int().optional(), - resume_date: z.number().int().optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - create_current_term_invoice: z.boolean().default(false).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: importForItemsSubscriptionMetaDataSchema.optional(), - cancel_reason_code: z.string().max(100).optional(), - create_pending_invoices: z.boolean().optional(), - auto_close_invoices: z.boolean().optional(), - contract_term: importForItemsSubscriptionContractTermSchema.optional(), - transaction: importForItemsSubscriptionTransactionSchema.optional(), - shipping_address: importForItemsSubscriptionShippingAddressSchema.optional(), - subscription_items: - importForItemsSubscriptionSubscriptionItemsSchema.optional(), - discounts: importForItemsSubscriptionDiscountsSchema.optional(), - charged_items: importForItemsSubscriptionChargedItemsSchema.optional(), - item_tiers: importForItemsSubscriptionItemTiersSchema.optional(), - coupons: importForItemsSubscriptionCouponsSchema.optional(), -}); -export { importForItemsSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_subscription.validation.ts b/src/validation/subscription/import_subscription.validation.ts deleted file mode 100644 index 06baf95..0000000 --- a/src/validation/subscription/import_subscription.validation.ts +++ /dev/null @@ -1,417 +0,0 @@ -// Generated Zod validator: Subscription.importSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importSubscriptionSubscriptionMetaDataSchema = z.looseObject({}); -const importSubscriptionSubscriptionCustomerSchema = z.looseObject({ - id: z.string().max(50).optional(), - email: z.string().email().max(70).optional(), - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - locale: z.string().max(50).optional(), - taxability: z.enum(['taxable', 'exempt']).optional(), - entity_code: z - .enum([ - 'a', - 'b', - 'c', - 'd', - 'e', - 'f', - 'g', - 'h', - 'i', - 'j', - 'k', - 'l', - 'm', - 'n', - 'p', - 'q', - 'r', - 'med1', - 'med2', - ]) - .optional(), - exempt_number: z.string().max(100).optional(), - net_term_days: z.number().int().optional(), - taxjar_exemption_category: z - .enum(['wholesale', 'government', 'other']) - .optional(), - customer_type: z - .enum(['residential', 'business', 'senior_citizen', 'industrial']) - .optional(), - auto_collection: z.enum(['on', 'off']).optional(), - allow_direct_debit: z.boolean().default(false).optional(), - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), -}); -const importSubscriptionSubscriptionContractTermSchema = z.object({ - id: z.string().max(50).optional(), - created_at: z.number().int().optional(), - contract_start: z.number().int().optional(), - billing_cycle: z.number().int().min(0).optional(), - total_amount_raised: z.number().int().min(0).optional(), - total_amount_raised_before_tax: z.number().int().min(0).optional(), - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const importSubscriptionSubscriptionAdditionalInformationSchema = z.looseObject( - {}, -); -const importSubscriptionSubscriptionCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - tmp_token: z.string().max(300).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - additional_information: - importSubscriptionSubscriptionAdditionalInformationSchema.optional(), -}); -const importSubscriptionSubscriptionPaymentMethodSchema = z.object({ - type: z - .enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - issuing_country: z.string().max(50).optional(), - additional_information: - importSubscriptionSubscriptionAdditionalInformationSchema.optional(), -}); -const importSubscriptionSubscriptionBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const importSubscriptionSubscriptionShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const importSubscriptionSubscriptionTransactionSchema = z.object({ - amount: z.number().int().min(0).optional(), - payment_method: z - .enum([ - 'cash', - 'check', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]) - .optional(), - reference_number: z.string().max(100).optional(), - date: z.number().int().optional(), -}); -const importSubscriptionSubscriptionAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), -}); -const importSubscriptionSubscriptionEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), -}); -const importSubscriptionSubscriptionChargedEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - last_charged_at: z.array(z.number().int().optional()).optional(), -}); -const importSubscriptionSubscriptionCouponsSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const importSubscriptionSubscriptionBodySchema = z.looseObject({ - id: z.string().max(50).optional(), - client_profile_id: z.string().max(50).optional(), - plan_id: z.string().max(100), - plan_quantity: z.number().int().min(1).optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price: z.number().int().min(0).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - setup_fee: z.number().int().min(0).optional(), - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - start_date: z.number().int().optional(), - auto_collection: z.enum(['on', 'off']).optional(), - po_number: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - status: z.enum([ - 'future', - 'in_trial', - 'active', - 'non_renewing', - 'paused', - 'cancelled', - 'transferred', - ]), - current_term_end: z.number().int().optional(), - current_term_start: z.number().int().optional(), - trial_start: z.number().int().optional(), - cancelled_at: z.number().int().optional(), - started_at: z.number().int().optional(), - activated_at: z.number().int().optional(), - pause_date: z.number().int().optional(), - resume_date: z.number().int().optional(), - create_current_term_invoice: z.boolean().default(false).optional(), - affiliate_token: z.string().max(250).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: importSubscriptionSubscriptionMetaDataSchema.optional(), - customer: importSubscriptionSubscriptionCustomerSchema.optional(), - contract_term: importSubscriptionSubscriptionContractTermSchema.optional(), - card: importSubscriptionSubscriptionCardSchema.optional(), - payment_method: importSubscriptionSubscriptionPaymentMethodSchema.optional(), - billing_address: - importSubscriptionSubscriptionBillingAddressSchema.optional(), - shipping_address: - importSubscriptionSubscriptionShippingAddressSchema.optional(), - transaction: importSubscriptionSubscriptionTransactionSchema.optional(), - addons: importSubscriptionSubscriptionAddonsSchema.optional(), - event_based_addons: - importSubscriptionSubscriptionEventBasedAddonsSchema.optional(), - charged_event_based_addons: - importSubscriptionSubscriptionChargedEventBasedAddonsSchema.optional(), - coupons: importSubscriptionSubscriptionCouponsSchema.optional(), -}); -export { importSubscriptionSubscriptionBodySchema }; diff --git a/src/validation/subscription/import_unbilled_charges.validation.ts b/src/validation/subscription/import_unbilled_charges.validation.ts deleted file mode 100644 index b400e54..0000000 --- a/src/validation/subscription/import_unbilled_charges.validation.ts +++ /dev/null @@ -1,69 +0,0 @@ -// Generated Zod validator: Subscription.importUnbilledCharges -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const importUnbilledChargesSubscriptionUnbilledChargesSchema = z.object({ - id: z.array(z.string().max(40).optional()).optional(), - date_from: z.array(z.number().int().optional()), - date_to: z.array(z.number().int().optional()), - entity_type: z.array( - z - .enum([ - 'adhoc', - 'plan_item_price', - 'addon_item_price', - 'charge_item_price', - 'plan_setup', - 'plan', - 'addon', - ]) - .optional(), - ), - entity_id: z.array(z.string().max(100).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - unit_amount: z.array(z.number().int().min(0).optional()).optional(), - quantity: z.array(z.number().int().min(0).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - discount_amount: z.array(z.number().int().min(0).optional()).optional(), - use_for_proration: z.array(z.boolean().default(false).optional()).optional(), - is_advance_charge: z.array(z.boolean().default(false).optional()).optional(), -}); -const importUnbilledChargesSubscriptionDiscountsSchema = z.object({ - unbilled_charge_id: z.array(z.string().max(40).optional()).optional(), - entity_type: z - .array( - z - .enum([ - 'item_level_coupon', - 'document_level_coupon', - 'item_level_discount', - 'document_level_discount', - ]) - .optional(), - ) - .optional(), - entity_id: z.array(z.string().max(100).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()), -}); -const importUnbilledChargesSubscriptionTiersSchema = z.object({ - unbilled_charge_id: z.array(z.string().max(40).optional()), - starting_unit: z.array(z.number().int().min(0).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - quantity_used: z.array(z.number().int().min(0).optional()).optional(), - unit_amount: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - quantity_used_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_amount_in_decimal: z.array(z.string().max(40).optional()).optional(), -}); -const importUnbilledChargesSubscriptionBodySchema = z.looseObject({ - unbilled_charges: - importUnbilledChargesSubscriptionUnbilledChargesSchema.optional(), - discounts: importUnbilledChargesSubscriptionDiscountsSchema.optional(), - tiers: importUnbilledChargesSubscriptionTiersSchema.optional(), -}); -export { importUnbilledChargesSubscriptionBodySchema }; diff --git a/src/validation/subscription/list_discounts.validation.ts b/src/validation/subscription/list_discounts.validation.ts deleted file mode 100644 index b24e9b5..0000000 --- a/src/validation/subscription/list_discounts.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Subscription.listDiscounts -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listDiscountsSubscriptionBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { listDiscountsSubscriptionBodySchema }; diff --git a/src/validation/subscription/move.validation.ts b/src/validation/subscription/move.validation.ts deleted file mode 100644 index 6ce741e..0000000 --- a/src/validation/subscription/move.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Subscription.move -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const moveSubscriptionBodySchema = z.looseObject({ - to_customer_id: z.string().max(50), - copy_payment_source: z.boolean().default(false).optional(), -}); -export { moveSubscriptionBodySchema }; diff --git a/src/validation/subscription/override_billing_profile.validation.ts b/src/validation/subscription/override_billing_profile.validation.ts deleted file mode 100644 index 8f6cea7..0000000 --- a/src/validation/subscription/override_billing_profile.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Subscription.overrideBillingProfile -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const overrideBillingProfileSubscriptionBodySchema = z.looseObject({ - payment_source_id: z.string().max(40).optional(), - auto_collection: z.enum(['on', 'off']).optional(), -}); -export { overrideBillingProfileSubscriptionBodySchema }; diff --git a/src/validation/subscription/pause.validation.ts b/src/validation/subscription/pause.validation.ts deleted file mode 100644 index 1b5f01c..0000000 --- a/src/validation/subscription/pause.validation.ts +++ /dev/null @@ -1,15 +0,0 @@ -// Generated Zod validator: Subscription.pause -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const pauseSubscriptionBodySchema = z.looseObject({ - pause_option: z - .enum(['immediately', 'end_of_term', 'specific_date', 'billing_cycles']) - .optional(), - pause_date: z.number().int().optional(), - unbilled_charges_handling: z.enum(['no_action', 'invoice']).optional(), - invoice_dunning_handling: z.enum(['continue', 'stop']).optional(), - skip_billing_cycles: z.number().int().min(1).optional(), - resume_date: z.number().int().optional(), -}); -export { pauseSubscriptionBodySchema }; diff --git a/src/validation/subscription/reactivate.validation.ts b/src/validation/subscription/reactivate.validation.ts deleted file mode 100644 index 8ad3d7b..0000000 --- a/src/validation/subscription/reactivate.validation.ts +++ /dev/null @@ -1,87 +0,0 @@ -// Generated Zod validator: Subscription.reactivate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const reactivateSubscriptionContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const reactivateSubscriptionStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const reactivateSubscriptionAdditionalInformationSchema = z.looseObject({}); -const reactivateSubscriptionPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - reactivateSubscriptionAdditionalInformationSchema.optional(), -}); -const reactivateSubscriptionBodySchema = z.looseObject({ - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - trial_period_days: z.number().int().min(1).max(365).optional(), - reactivate_from: z.number().int().optional(), - invoice_immediately: z.boolean().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - terms_to_charge: z.number().int().min(1).optional(), - invoice_date: z.number().int().optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - contract_term: reactivateSubscriptionContractTermSchema.optional(), - statement_descriptor: - reactivateSubscriptionStatementDescriptorSchema.optional(), - payment_intent: reactivateSubscriptionPaymentIntentSchema.optional(), -}); -export { reactivateSubscriptionBodySchema }; diff --git a/src/validation/subscription/regenerate_invoice.validation.ts b/src/validation/subscription/regenerate_invoice.validation.ts deleted file mode 100644 index 96bd632..0000000 --- a/src/validation/subscription/regenerate_invoice.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Subscription.regenerateInvoice -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const regenerateInvoiceSubscriptionBodySchema = z.looseObject({ - date_from: z.number().int().optional(), - date_to: z.number().int().optional(), - prorate: z.boolean().optional(), - invoice_immediately: z.boolean().optional(), -}); -export { regenerateInvoiceSubscriptionBodySchema }; diff --git a/src/validation/subscription/remove_advance_invoice_schedule.validation.ts b/src/validation/subscription/remove_advance_invoice_schedule.validation.ts deleted file mode 100644 index 0a92403..0000000 --- a/src/validation/subscription/remove_advance_invoice_schedule.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: Subscription.removeAdvanceInvoiceSchedule -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const removeAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema = - z.object({ - id: z.array(z.string().max(50).optional()).optional(), - }); -const removeAdvanceInvoiceScheduleSubscriptionBodySchema = z.looseObject({ - specific_dates_schedule: - removeAdvanceInvoiceScheduleSubscriptionSpecificDatesScheduleSchema.optional(), -}); -export { removeAdvanceInvoiceScheduleSubscriptionBodySchema }; diff --git a/src/validation/subscription/remove_coupons.validation.ts b/src/validation/subscription/remove_coupons.validation.ts deleted file mode 100644 index 91d60a4..0000000 --- a/src/validation/subscription/remove_coupons.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Subscription.removeCoupons -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const removeCouponsSubscriptionBodySchema = z.looseObject({ - coupon_ids: z.array(z.string().max(100).optional()).optional(), -}); -export { removeCouponsSubscriptionBodySchema }; diff --git a/src/validation/subscription/remove_scheduled_cancellation.validation.ts b/src/validation/subscription/remove_scheduled_cancellation.validation.ts deleted file mode 100644 index ddb90d5..0000000 --- a/src/validation/subscription/remove_scheduled_cancellation.validation.ts +++ /dev/null @@ -1,20 +0,0 @@ -// Generated Zod validator: Subscription.removeScheduledCancellation -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const removeScheduledCancellationSubscriptionContractTermSchema = z.object({ - action_at_term_end: z.enum(['renew', 'evergreen', 'cancel']).optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const removeScheduledCancellationSubscriptionBodySchema = z.looseObject({ - billing_cycles: z.number().int().min(0).optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - contract_term: - removeScheduledCancellationSubscriptionContractTermSchema.optional(), -}); -export { removeScheduledCancellationSubscriptionBodySchema }; diff --git a/src/validation/subscription/resume.validation.ts b/src/validation/subscription/resume.validation.ts deleted file mode 100644 index 25c3833..0000000 --- a/src/validation/subscription/resume.validation.ts +++ /dev/null @@ -1,71 +0,0 @@ -// Generated Zod validator: Subscription.resume -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const resumeSubscriptionAdditionalInformationSchema = z.looseObject({}); -const resumeSubscriptionPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - resumeSubscriptionAdditionalInformationSchema.optional(), -}); -const resumeSubscriptionBodySchema = z.looseObject({ - resume_option: z.enum(['immediately', 'specific_date']).optional(), - resume_date: z.number().int().optional(), - charges_handling: z - .enum(['invoice_immediately', 'add_to_unbilled_charges']) - .optional(), - unpaid_invoices_handling: z - .enum(['no_action', 'schedule_payment_collection']) - .optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - payment_intent: resumeSubscriptionPaymentIntentSchema.optional(), -}); -export { resumeSubscriptionBodySchema }; diff --git a/src/validation/subscription/subscriptions_for_customer.validation.ts b/src/validation/subscription/subscriptions_for_customer.validation.ts deleted file mode 100644 index c82f16c..0000000 --- a/src/validation/subscription/subscriptions_for_customer.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Subscription.subscriptionsForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const subscriptionsForCustomerSubscriptionBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { subscriptionsForCustomerSubscriptionBodySchema }; diff --git a/src/validation/subscription/update.validation.ts b/src/validation/subscription/update.validation.ts deleted file mode 100644 index 5cf74be..0000000 --- a/src/validation/subscription/update.validation.ts +++ /dev/null @@ -1,440 +0,0 @@ -// Generated Zod validator: Subscription.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateSubscriptionMetaDataSchema = z.looseObject({}); -const updateSubscriptionAdditionalInformationSchema = z.looseObject({}); -const updateSubscriptionCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - tmp_token: z.string().max(300).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - ip_address: z.string().max(50).optional(), - additional_information: - updateSubscriptionAdditionalInformationSchema.optional(), -}); -const updateSubscriptionPaymentMethodSchema = z.object({ - type: z - .enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - tmp_token: z.string().max(65000).optional(), - issuing_country: z.string().max(50).optional(), - additional_information: - updateSubscriptionAdditionalInformationSchema.optional(), -}); -const updateSubscriptionPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - updateSubscriptionAdditionalInformationSchema.optional(), -}); -const updateSubscriptionBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateSubscriptionStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const updateSubscriptionCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - entity_identifier_scheme: z.string().max(50).optional(), - is_einvoice_enabled: z.boolean().optional(), - einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), - entity_identifier_standard: z.string().max(50).optional(), - business_customer_without_vat_number: z.boolean().optional(), - registered_for_gst: z.boolean().optional(), -}); -const updateSubscriptionContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), -}); -const updateSubscriptionAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - proration_type: z - .array(z.enum(['full_term', 'partial_term', 'none']).optional()) - .optional(), -}); -const updateSubscriptionEventBasedAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - service_period_in_days: z - .array(z.number().int().min(1).max(4000).optional()) - .optional(), - charge_on: z.array(z.enum(['immediately', 'on_event']).optional()).optional(), - on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().default(true).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), -}); -const updateSubscriptionCouponsSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const updateSubscriptionBodySchema = z.looseObject({ - plan_id: z.string().max(100).optional(), - plan_quantity: z.number().int().min(1).optional(), - plan_unit_price: z.number().int().min(0).optional(), - setup_fee: z.number().int().min(0).optional(), - replace_addon_list: z.boolean().default(false).optional(), - mandatory_addons_to_remove: z - .array(z.string().max(100).optional()) - .optional(), - plan_quantity_in_decimal: z.string().max(33).optional(), - plan_unit_price_in_decimal: z.string().max(39).optional(), - invoice_date: z.number().int().optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - coupon: z.string().max(100).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - po_number: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - prorate: z.boolean().optional(), - end_of_term: z.boolean().default(false).optional(), - force_term_reset: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - token_id: z.string().max(40).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: updateSubscriptionMetaDataSchema.optional(), - invoice_immediately: z.boolean().optional(), - override_relationship: z.boolean().optional(), - changes_scheduled_at: z.number().int().optional(), - change_option: z - .enum(['immediately', 'end_of_term', 'specific_date']) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), - card: updateSubscriptionCardSchema.optional(), - payment_method: updateSubscriptionPaymentMethodSchema.optional(), - payment_intent: updateSubscriptionPaymentIntentSchema.optional(), - billing_address: updateSubscriptionBillingAddressSchema.optional(), - shipping_address: updateSubscriptionShippingAddressSchema.optional(), - statement_descriptor: updateSubscriptionStatementDescriptorSchema.optional(), - customer: updateSubscriptionCustomerSchema.optional(), - contract_term: updateSubscriptionContractTermSchema.optional(), - addons: updateSubscriptionAddonsSchema.optional(), - event_based_addons: updateSubscriptionEventBasedAddonsSchema.optional(), - coupons: updateSubscriptionCouponsSchema.optional(), -}); -export { updateSubscriptionBodySchema }; diff --git a/src/validation/subscription/update_for_items.validation.ts b/src/validation/subscription/update_for_items.validation.ts deleted file mode 100644 index a331e6f..0000000 --- a/src/validation/subscription/update_for_items.validation.ts +++ /dev/null @@ -1,478 +0,0 @@ -// Generated Zod validator: Subscription.updateForItems -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateForItemsSubscriptionMetaDataSchema = z.looseObject({}); -const updateForItemsSubscriptionAdditionalInformationSchema = z.looseObject({}); -const updateForItemsSubscriptionCardSchema = z.object({ - gateway: z - .enum([ - 'chargebee', - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - tmp_token: z.string().max(300).optional(), - first_name: z.string().max(50).optional(), - last_name: z.string().max(50).optional(), - number: z.string().max(1500).optional(), - expiry_month: z.number().int().min(1).max(12).optional(), - expiry_year: z.number().int().optional(), - cvv: z.string().max(520).optional(), - preferred_scheme: z - .enum(['cartes_bancaires', 'mastercard', 'visa']) - .optional(), - billing_addr1: z.string().max(150).optional(), - billing_addr2: z.string().max(150).optional(), - billing_city: z.string().max(50).optional(), - billing_state_code: z.string().max(50).optional(), - billing_state: z.string().max(50).optional(), - billing_zip: z.string().max(20).optional(), - billing_country: z.string().max(50).optional(), - ip_address: z.string().max(50).optional(), - additional_information: - updateForItemsSubscriptionAdditionalInformationSchema.optional(), -}); -const updateForItemsSubscriptionPaymentMethodSchema = z.object({ - type: z - .enum([ - 'card', - 'paypal_express_checkout', - 'amazon_payments', - 'direct_debit', - 'generic', - 'alipay', - 'unionpay', - 'apple_pay', - 'wechat_pay', - 'ideal', - 'google_pay', - 'sofort', - 'bancontact', - 'giropay', - 'dotpay', - 'upi', - 'netbanking_emandates', - 'venmo', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'automated_bank_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - gateway: z - .enum([ - 'chargebee_payments', - 'adyen', - 'stripe', - 'wepay', - 'braintree', - 'authorize_net', - 'paypal_pro', - 'pin', - 'eway', - 'eway_rapid', - 'worldpay', - 'balanced_payments', - 'beanstream', - 'bluepay', - 'elavon', - 'first_data_global', - 'hdfc', - 'migs', - 'nmi', - 'ogone', - 'paymill', - 'paypal_payflow_pro', - 'sage_pay', - 'tco', - 'wirecard', - 'amazon_payments', - 'paypal_express_checkout', - 'gocardless', - 'orbital', - 'moneris_us', - 'moneris', - 'bluesnap', - 'cybersource', - 'vantiv', - 'checkout_com', - 'paypal', - 'ingenico_direct', - 'exact', - 'mollie', - 'quickbooks', - 'razorpay', - 'global_payments', - 'bank_of_america', - 'ecentric', - 'metrics_global', - 'windcave', - 'pay_com', - 'ebanx', - 'dlocal', - 'nuvei', - 'solidgate', - 'paystack', - 'jp_morgan', - 'deutsche_bank', - 'ezidebit', - 'twikey', - 'tempus', - 'moyasar', - 'payway', - ]) - .optional(), - gateway_account_id: z.string().max(50).optional(), - reference_id: z.string().max(200).optional(), - tmp_token: z.string().max(65000).optional(), - issuing_country: z.string().max(50).optional(), - additional_information: - updateForItemsSubscriptionAdditionalInformationSchema.optional(), -}); -const updateForItemsSubscriptionPaymentIntentSchema = z.object({ - id: z.string().max(150).optional(), - gateway_account_id: z.string().max(50).optional(), - gw_token: z.string().max(65000).optional(), - payment_method_type: z - .enum([ - 'card', - 'ideal', - 'sofort', - 'bancontact', - 'google_pay', - 'dotpay', - 'giropay', - 'apple_pay', - 'upi', - 'netbanking_emandates', - 'paypal_express_checkout', - 'direct_debit', - 'boleto', - 'venmo', - 'amazon_payments', - 'pay_to', - 'faster_payments', - 'sepa_instant_transfer', - 'klarna_pay_now', - 'online_banking_poland', - 'payconiq_by_bancontact', - 'electronic_payment_standard', - 'kbc_payment_button', - 'pay_by_bank', - 'trustly', - 'stablecoin', - 'kakao_pay', - 'naver_pay', - 'revolut_pay', - 'cash_app_pay', - 'wechat_pay', - 'alipay', - 'pix', - 'twint', - 'go_pay', - 'grab_pay', - 'pay_co', - 'after_pay', - 'swish', - 'payme', - ]) - .optional(), - reference_id: z.string().max(65000).optional(), - gw_payment_method_id: z.string().max(65000).optional(), - additional_information: - updateForItemsSubscriptionAdditionalInformationSchema.optional(), -}); -const updateForItemsSubscriptionBillingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateForItemsSubscriptionShippingAddressSchema = z.object({ - first_name: z.string().max(150).optional(), - last_name: z.string().max(150).optional(), - email: z.string().email().max(70).optional(), - company: z.string().max(250).optional(), - phone: z.string().max(50).optional(), - line1: z.string().max(150).optional(), - line2: z.string().max(150).optional(), - line3: z.string().max(150).optional(), - city: z.string().max(50).optional(), - state_code: z.string().max(50).optional(), - state: z.string().max(50).optional(), - zip: z.string().max(20).optional(), - country: z.string().max(50).optional(), - validation_status: z - .enum(['not_validated', 'valid', 'partially_valid', 'invalid']) - .optional(), -}); -const updateForItemsSubscriptionStatementDescriptorSchema = z.object({ - descriptor: z.string().max(65000).optional(), -}); -const updateForItemsSubscriptionCustomerSchema = z.object({ - vat_number: z.string().max(20).optional(), - vat_number_prefix: z.string().max(10).optional(), - entity_identifier_scheme: z.string().max(50).optional(), - is_einvoice_enabled: z.boolean().optional(), - einvoicing_method: z.enum(['automatic', 'manual', 'site_default']).optional(), - entity_identifier_standard: z.string().max(50).optional(), - business_customer_without_vat_number: z.boolean().optional(), - registered_for_gst: z.boolean().optional(), -}); -const updateForItemsSubscriptionContractTermSchema = z.object({ - action_at_term_end: z - .enum(['renew', 'evergreen', 'cancel', 'renew_once']) - .optional(), - cancellation_cutoff_period: z.number().int().optional(), - contract_start: z.number().int().optional(), -}); -const updateForItemsSubscriptionBillingOverrideSchema = z.object({ - max_excess_payment_usage: z.number().int().min(-1).optional(), - max_refundable_credits_usage: z.number().int().min(-1).optional(), -}); -const updateForItemsSubscriptionSubscriptionItemsSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - billing_cycles: z.array(z.number().int().min(0).optional()).optional(), - trial_end: z.array(z.number().int().optional()).optional(), - service_period_days: z - .array(z.number().int().min(1).max(730).optional()) - .optional(), - charge_on_event: z - .array( - z - .enum([ - 'subscription_creation', - 'subscription_trial_start', - 'plan_activation', - 'subscription_activation', - 'contract_termination', - ]) - .optional(), - ) - .optional(), - charge_once: z.array(z.boolean().optional()).optional(), - charge_on_option: z - .array(z.enum(['immediately', 'on_event']).optional()) - .optional(), - item_type: z.array(z.enum(['plan', 'addon', 'charge']).optional()).optional(), - proration_type: z - .array(z.enum(['full_term', 'partial_term', 'none']).optional()) - .optional(), - usage_accumulation_reset_frequency: z - .array(z.enum(['never', 'subscription_billing_frequency']).optional()) - .optional(), -}); -const updateForItemsSubscriptionDiscountsSchema = z.object({ - apply_on: z - .array(z.enum(['invoice_amount', 'specific_item_price']).optional()) - .optional(), - duration_type: z.array( - z.enum(['one_time', 'forever', 'limited_period']).optional(), - ), - percentage: z.array(z.number().min(0.01).max(100).optional()).optional(), - amount: z.array(z.number().int().min(0).optional()).optional(), - period: z.array(z.number().int().min(1).optional()).optional(), - period_unit: z - .array(z.enum(['day', 'week', 'month', 'year']).optional()) - .optional(), - included_in_mrr: z.array(z.boolean().optional()).optional(), - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - operation_type: z.array(z.enum(['add', 'remove']).optional()), - id: z.array(z.string().max(50).optional()).optional(), -}); -const updateForItemsSubscriptionItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const updateForItemsSubscriptionCouponsSchema = z.object({ - coupon_id: z.array(z.string().max(100).optional()).optional(), - apply_till: z.array(z.number().int().optional()).optional(), -}); -const updateForItemsSubscriptionBodySchema = z.looseObject({ - mandatory_items_to_remove: z.array(z.string().max(100).optional()).optional(), - replace_items_list: z.boolean().default(false).optional(), - setup_fee: z.number().int().min(0).optional(), - net_term_days: z.number().int().optional(), - invoice_date: z.number().int().optional(), - start_date: z.number().int().optional(), - trial_end: z.number().int().optional(), - billing_cycles: z.number().int().min(0).optional(), - coupon: z.string().max(100).optional(), - terms_to_charge: z.number().int().min(1).optional(), - reactivate_from: z.number().int().optional(), - billing_alignment_mode: z.enum(['immediate', 'delayed']).optional(), - auto_collection: z.enum(['on', 'off']).optional(), - offline_payment_method: z - .enum([ - 'no_preference', - 'cash', - 'check', - 'bank_transfer', - 'ach_credit', - 'sepa_credit', - 'boleto', - 'us_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'uk_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - 'custom', - ]) - .optional(), - po_number: z.string().max(100).optional(), - coupon_ids: z.array(z.string().max(100).optional()).optional(), - replace_coupon_list: z.boolean().default(false).optional(), - prorate: z.boolean().optional(), - end_of_term: z.boolean().default(false).optional(), - force_term_reset: z.boolean().default(false).optional(), - reactivate: z.boolean().optional(), - token_id: z.string().max(40).optional(), - invoice_notes: z.string().max(2000).optional(), - meta_data: updateForItemsSubscriptionMetaDataSchema.optional(), - invoice_immediately: z.boolean().optional(), - override_relationship: z.boolean().optional(), - changes_scheduled_at: z.number().int().optional(), - change_option: z - .enum(['immediately', 'end_of_term', 'specific_date']) - .optional(), - contract_term_billing_cycle_on_renewal: z - .number() - .int() - .min(1) - .max(100) - .optional(), - free_period: z.number().int().min(1).optional(), - free_period_unit: z.enum(['day', 'week', 'month', 'year']).optional(), - create_pending_invoices: z.boolean().optional(), - auto_close_invoices: z.boolean().optional(), - trial_end_action: z - .enum([ - 'site_default', - 'plan_default', - 'activate_subscription', - 'cancel_subscription', - ]) - .optional(), - payment_initiator: z.enum(['customer', 'merchant']).optional(), - invoice_usages: z.boolean().default(false).optional(), - card: updateForItemsSubscriptionCardSchema.optional(), - payment_method: updateForItemsSubscriptionPaymentMethodSchema.optional(), - payment_intent: updateForItemsSubscriptionPaymentIntentSchema.optional(), - billing_address: updateForItemsSubscriptionBillingAddressSchema.optional(), - shipping_address: updateForItemsSubscriptionShippingAddressSchema.optional(), - statement_descriptor: - updateForItemsSubscriptionStatementDescriptorSchema.optional(), - customer: updateForItemsSubscriptionCustomerSchema.optional(), - contract_term: updateForItemsSubscriptionContractTermSchema.optional(), - billing_override: updateForItemsSubscriptionBillingOverrideSchema.optional(), - subscription_items: - updateForItemsSubscriptionSubscriptionItemsSchema.optional(), - discounts: updateForItemsSubscriptionDiscountsSchema.optional(), - item_tiers: updateForItemsSubscriptionItemTiersSchema.optional(), - coupons: updateForItemsSubscriptionCouponsSchema.optional(), -}); -export { updateForItemsSubscriptionBodySchema }; diff --git a/src/validation/subscription_entitlement/set_subscription_entitlement_availability.validation.ts b/src/validation/subscription_entitlement/set_subscription_entitlement_availability.validation.ts deleted file mode 100644 index 7956e2b..0000000 --- a/src/validation/subscription_entitlement/set_subscription_entitlement_availability.validation.ts +++ /dev/null @@ -1,15 +0,0 @@ -// Generated Zod validator: SubscriptionEntitlement.setSubscriptionEntitlementAvailability -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const setSubscriptionEntitlementAvailabilitySubscriptionEntitlementSubscriptionEntitlementsSchema = - z.object({ - feature_id: z.array(z.string().max(50).optional()), - }); -const setSubscriptionEntitlementAvailabilitySubscriptionEntitlementBodySchema = - z.looseObject({ - is_enabled: z.boolean(), - subscription_entitlements: - setSubscriptionEntitlementAvailabilitySubscriptionEntitlementSubscriptionEntitlementsSchema.optional(), - }); -export { setSubscriptionEntitlementAvailabilitySubscriptionEntitlementBodySchema }; diff --git a/src/validation/subscription_entitlement/subscription_entitlements_for_subscription.validation.ts b/src/validation/subscription_entitlement/subscription_entitlements_for_subscription.validation.ts deleted file mode 100644 index 7f05ab4..0000000 --- a/src/validation/subscription_entitlement/subscription_entitlements_for_subscription.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: SubscriptionEntitlement.subscriptionEntitlementsForSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const subscriptionEntitlementsForSubscriptionSubscriptionEntitlementBodySchema = - z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - include_drafts: z.boolean().default(false).optional(), - embed: z.string().max(1000).optional(), - include_scheduled_overrides: z.boolean().default(false).optional(), - }); -export { subscriptionEntitlementsForSubscriptionSubscriptionEntitlementBodySchema }; diff --git a/src/validation/time_machine/start_afresh.validation.ts b/src/validation/time_machine/start_afresh.validation.ts deleted file mode 100644 index 6936ee2..0000000 --- a/src/validation/time_machine/start_afresh.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: TimeMachine.startAfresh -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const startAfreshTimeMachineBodySchema = z.looseObject({ - genesis_time: z.number().int().optional(), -}); -export { startAfreshTimeMachineBodySchema }; diff --git a/src/validation/time_machine/travel_forward.validation.ts b/src/validation/time_machine/travel_forward.validation.ts deleted file mode 100644 index cea73a9..0000000 --- a/src/validation/time_machine/travel_forward.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: TimeMachine.travelForward -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const travelForwardTimeMachineBodySchema = z.looseObject({ - destination_time: z.number().int().optional(), -}); -export { travelForwardTimeMachineBodySchema }; diff --git a/src/validation/transaction/create_authorization.validation.ts b/src/validation/transaction/create_authorization.validation.ts deleted file mode 100644 index a71a95b..0000000 --- a/src/validation/transaction/create_authorization.validation.ts +++ /dev/null @@ -1,11 +0,0 @@ -// Generated Zod validator: Transaction.createAuthorization -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createAuthorizationTransactionBodySchema = z.looseObject({ - customer_id: z.string().max(50), - payment_source_id: z.string().max(40).optional(), - currency_code: z.string().max(3).optional(), - amount: z.number().int().min(1), -}); -export { createAuthorizationTransactionBodySchema }; diff --git a/src/validation/transaction/delete_offline_transaction.validation.ts b/src/validation/transaction/delete_offline_transaction.validation.ts deleted file mode 100644 index bfab8c3..0000000 --- a/src/validation/transaction/delete_offline_transaction.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Transaction.deleteOfflineTransaction -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteOfflineTransactionTransactionBodySchema = z.looseObject({ - comment: z.string().max(300).optional(), -}); -export { deleteOfflineTransactionTransactionBodySchema }; diff --git a/src/validation/transaction/payments_for_invoice.validation.ts b/src/validation/transaction/payments_for_invoice.validation.ts deleted file mode 100644 index 7c7cb00..0000000 --- a/src/validation/transaction/payments_for_invoice.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Transaction.paymentsForInvoice -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const paymentsForInvoiceTransactionBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { paymentsForInvoiceTransactionBodySchema }; diff --git a/src/validation/transaction/reconcile.validation.ts b/src/validation/transaction/reconcile.validation.ts deleted file mode 100644 index 81deaaa..0000000 --- a/src/validation/transaction/reconcile.validation.ts +++ /dev/null @@ -1,10 +0,0 @@ -// Generated Zod validator: Transaction.reconcile -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const reconcileTransactionBodySchema = z.looseObject({ - id_at_gateway: z.string().max(100).optional(), - customer_id: z.string().max(50).optional(), - status: z.enum(['success', 'failure']).optional(), -}); -export { reconcileTransactionBodySchema }; diff --git a/src/validation/transaction/record_refund.validation.ts b/src/validation/transaction/record_refund.validation.ts deleted file mode 100644 index c9ac699..0000000 --- a/src/validation/transaction/record_refund.validation.ts +++ /dev/null @@ -1,22 +0,0 @@ -// Generated Zod validator: Transaction.recordRefund -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const recordRefundTransactionBodySchema = z.looseObject({ - amount: z.number().int().min(1).optional(), - payment_method: z.enum([ - 'cash', - 'check', - 'chargeback', - 'bank_transfer', - 'other', - 'app_store', - 'play_store', - 'custom', - ]), - date: z.number().int(), - reference_number: z.string().max(100).optional(), - custom_payment_method_id: z.string().max(50).optional(), - comment: z.string().max(300).optional(), -}); -export { recordRefundTransactionBodySchema }; diff --git a/src/validation/transaction/refund.validation.ts b/src/validation/transaction/refund.validation.ts deleted file mode 100644 index e80168f..0000000 --- a/src/validation/transaction/refund.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Transaction.refund -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const refundTransactionBodySchema = z.looseObject({ - amount: z.number().int().min(1).optional(), - comment: z.string().max(300).optional(), -}); -export { refundTransactionBodySchema }; diff --git a/src/validation/transaction/transactions_for_customer.validation.ts b/src/validation/transaction/transactions_for_customer.validation.ts deleted file mode 100644 index 49f7fcf..0000000 --- a/src/validation/transaction/transactions_for_customer.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Transaction.transactionsForCustomer -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const transactionsForCustomerTransactionBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { transactionsForCustomerTransactionBodySchema }; diff --git a/src/validation/transaction/transactions_for_subscription.validation.ts b/src/validation/transaction/transactions_for_subscription.validation.ts deleted file mode 100644 index 027a3f6..0000000 --- a/src/validation/transaction/transactions_for_subscription.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: Transaction.transactionsForSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const transactionsForSubscriptionTransactionBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { transactionsForSubscriptionTransactionBodySchema }; diff --git a/src/validation/unbilled_charge/create.validation.ts b/src/validation/unbilled_charge/create.validation.ts deleted file mode 100644 index cd7949f..0000000 --- a/src/validation/unbilled_charge/create.validation.ts +++ /dev/null @@ -1,57 +0,0 @@ -// Generated Zod validator: UnbilledCharge.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUnbilledChargeItemPricesSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createUnbilledChargeItemTiersSchema = z.object({ - item_price_id: z.array(z.string().max(100).optional()).optional(), - starting_unit: z.array(z.number().int().min(1).optional()).optional(), - ending_unit: z.array(z.number().int().optional()).optional(), - price: z.array(z.number().int().min(0).optional()).optional(), - starting_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - ending_unit_in_decimal: z.array(z.string().max(33).optional()).optional(), - price_in_decimal: z.array(z.string().max(39).optional()).optional(), - pricing_type: z - .array(z.enum(['per_unit', 'flat_fee', 'package']).optional()) - .optional(), - package_size: z.array(z.number().int().min(1).optional()).optional(), -}); -const createUnbilledChargeChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - taxable: z.array(z.boolean().default(true).optional()).optional(), - tax_profile_id: z.array(z.string().max(50).optional()).optional(), - avalara_tax_code: z.array(z.string().max(50).optional()).optional(), - hsn_code: z.array(z.string().max(50).optional()).optional(), - taxjar_product_code: z.array(z.string().max(50).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createUnbilledChargeTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createUnbilledChargeBodySchema = z.looseObject({ - subscription_id: z.string().max(50), - currency_code: z.string().max(3).optional(), - item_prices: createUnbilledChargeItemPricesSchema.optional(), - item_tiers: createUnbilledChargeItemTiersSchema.optional(), - charges: createUnbilledChargeChargesSchema.optional(), - tax_providers_fields: createUnbilledChargeTaxProvidersFieldsSchema.optional(), -}); -export { createUnbilledChargeBodySchema }; diff --git a/src/validation/unbilled_charge/create_unbilled_charge.validation.ts b/src/validation/unbilled_charge/create_unbilled_charge.validation.ts deleted file mode 100644 index d2b7751..0000000 --- a/src/validation/unbilled_charge/create_unbilled_charge.validation.ts +++ /dev/null @@ -1,44 +0,0 @@ -// Generated Zod validator: UnbilledCharge.createUnbilledCharge -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUnbilledChargeUnbilledChargeAddonsSchema = z.object({ - id: z.array(z.string().max(100).optional()).optional(), - quantity: z.array(z.number().int().min(1).optional()).optional(), - unit_price: z.array(z.number().int().min(0).optional()).optional(), - quantity_in_decimal: z.array(z.string().max(33).optional()).optional(), - unit_price_in_decimal: z.array(z.string().max(39).optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createUnbilledChargeUnbilledChargeChargesSchema = z.object({ - amount: z.array(z.number().int().min(1).optional()).optional(), - amount_in_decimal: z.array(z.string().max(39).optional()).optional(), - description: z.array(z.string().max(250).optional()).optional(), - taxable: z.array(z.boolean().default(true).optional()).optional(), - tax_profile_id: z.array(z.string().max(50).optional()).optional(), - avalara_tax_code: z.array(z.string().max(50).optional()).optional(), - hsn_code: z.array(z.string().max(50).optional()).optional(), - taxjar_product_code: z.array(z.string().max(50).optional()).optional(), - avalara_sale_type: z - .array(z.enum(['wholesale', 'retail', 'consumed', 'vendor_use']).optional()) - .optional(), - avalara_transaction_type: z.array(z.number().int().optional()).optional(), - avalara_service_type: z.array(z.number().int().optional()).optional(), - date_from: z.array(z.number().int().optional()).optional(), - date_to: z.array(z.number().int().optional()).optional(), -}); -const createUnbilledChargeUnbilledChargeTaxProvidersFieldsSchema = z.object({ - provider_name: z.array(z.string().max(50).optional()).optional(), - field_id: z.array(z.string().max(50).optional()).optional(), - field_value: z.array(z.string().max(50).optional()).optional(), -}); -const createUnbilledChargeUnbilledChargeBodySchema = z.looseObject({ - subscription_id: z.string().max(50), - currency_code: z.string().max(3).optional(), - addons: createUnbilledChargeUnbilledChargeAddonsSchema.optional(), - charges: createUnbilledChargeUnbilledChargeChargesSchema.optional(), - tax_providers_fields: - createUnbilledChargeUnbilledChargeTaxProvidersFieldsSchema.optional(), -}); -export { createUnbilledChargeUnbilledChargeBodySchema }; diff --git a/src/validation/unbilled_charge/invoice_now_estimate.validation.ts b/src/validation/unbilled_charge/invoice_now_estimate.validation.ts deleted file mode 100644 index 440fc3e..0000000 --- a/src/validation/unbilled_charge/invoice_now_estimate.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: UnbilledCharge.invoiceNowEstimate -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const invoiceNowEstimateUnbilledChargeBodySchema = z.looseObject({ - subscription_id: z.string().max(50).optional(), - customer_id: z.string().max(50).optional(), -}); -export { invoiceNowEstimateUnbilledChargeBodySchema }; diff --git a/src/validation/unbilled_charge/invoice_unbilled_charges.validation.ts b/src/validation/unbilled_charge/invoice_unbilled_charges.validation.ts deleted file mode 100644 index 531cc19..0000000 --- a/src/validation/unbilled_charge/invoice_unbilled_charges.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: UnbilledCharge.invoiceUnbilledCharges -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const invoiceUnbilledChargesUnbilledChargeBodySchema = z.looseObject({ - subscription_id: z.string().max(50).optional(), - customer_id: z.string().max(50).optional(), -}); -export { invoiceUnbilledChargesUnbilledChargeBodySchema }; diff --git a/src/validation/usage/create.validation.ts b/src/validation/usage/create.validation.ts deleted file mode 100644 index 80385f1..0000000 --- a/src/validation/usage/create.validation.ts +++ /dev/null @@ -1,13 +0,0 @@ -// Generated Zod validator: Usage.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUsageBodySchema = z.looseObject({ - id: z.string().max(100).optional(), - item_price_id: z.string().max(100), - quantity: z.string().max(40), - usage_date: z.number().int(), - dedupe_option: z.enum(['skip', 'update_existing']).optional(), - note: z.string().max(500).optional(), -}); -export { createUsageBodySchema }; diff --git a/src/validation/usage/delete.validation.ts b/src/validation/usage/delete.validation.ts deleted file mode 100644 index c0efb94..0000000 --- a/src/validation/usage/delete.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Usage.delete -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const deleteUsageBodySchema = z.looseObject({ - id: z.string().max(100), -}); -export { deleteUsageBodySchema }; diff --git a/src/validation/usage/list.validation.ts b/src/validation/usage/list.validation.ts deleted file mode 100644 index 08ca94d..0000000 --- a/src/validation/usage/list.validation.ts +++ /dev/null @@ -1,60 +0,0 @@ -// Generated Zod validator: Usage.list -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listUsageIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listUsageSubscriptionIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listUsageUsageDateSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const listUsageUpdatedAtSchema = z.object({ - after: z.string().regex(RegExp('^d{10}$')).optional(), - before: z.string().regex(RegExp('^d{10}$')).optional(), - on: z.string().regex(RegExp('^d{10}$')).optional(), - between: z.string().regex(RegExp('^[d{10},d{10}]$')).optional(), -}); -const listUsageItemPriceIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), -}); -const listUsageInvoiceIdSchema = z.object({ - is: z.string().min(1).optional(), - is_not: z.string().min(1).optional(), - starts_with: z.string().min(1).optional(), - is_present: z.enum(['true', 'false']).optional(), -}); -const listUsageSourceSchema = z.object({ - is: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), - is_not: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), - in: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), - not_in: z.enum(['admin_console', 'api', 'bulk_operation']).optional(), -}); -const listUsageSortBySchema = z.looseObject({ - asc: z.enum(['usage_date', 'updated_at']).optional(), - desc: z.enum(['usage_date', 'updated_at']).optional(), -}); -const listUsageBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - id: listUsageIdSchema.optional(), - subscription_id: listUsageSubscriptionIdSchema.optional(), - usage_date: listUsageUsageDateSchema.optional(), - updated_at: listUsageUpdatedAtSchema.optional(), - item_price_id: listUsageItemPriceIdSchema.optional(), - invoice_id: listUsageInvoiceIdSchema.optional(), - source: listUsageSourceSchema.optional(), - sort_by: listUsageSortBySchema.optional(), -}); -export { listUsageBodySchema }; diff --git a/src/validation/usage/pdf.validation.ts b/src/validation/usage/pdf.validation.ts deleted file mode 100644 index 3faac6a..0000000 --- a/src/validation/usage/pdf.validation.ts +++ /dev/null @@ -1,12 +0,0 @@ -// Generated Zod validator: Usage.pdf -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const pdfUsageInvoiceSchema = z.object({ - id: z.string().max(50), -}); -const pdfUsageBodySchema = z.looseObject({ - disposition_type: z.enum(['attachment', 'inline']).optional(), - invoice: pdfUsageInvoiceSchema.optional(), -}); -export { pdfUsageBodySchema }; diff --git a/src/validation/usage/retrieve.validation.ts b/src/validation/usage/retrieve.validation.ts deleted file mode 100644 index fc3bf66..0000000 --- a/src/validation/usage/retrieve.validation.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Generated Zod validator: Usage.retrieve -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveUsageBodySchema = z.looseObject({ - id: z.string().max(100), -}); -export { retrieveUsageBodySchema }; diff --git a/src/validation/usage_charge/retrieve_usage_charges_for_subscription.validation.ts b/src/validation/usage_charge/retrieve_usage_charges_for_subscription.validation.ts deleted file mode 100644 index 1b8b665..0000000 --- a/src/validation/usage_charge/retrieve_usage_charges_for_subscription.validation.ts +++ /dev/null @@ -1,14 +0,0 @@ -// Generated Zod validator: UsageCharge.retrieveUsageChargesForSubscription -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const retrieveUsageChargesForSubscriptionUsageChargeFeatureIdSchema = z.object({ - is: z.string().min(1).optional(), -}); -const retrieveUsageChargesForSubscriptionUsageChargeBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), - feature_id: - retrieveUsageChargesForSubscriptionUsageChargeFeatureIdSchema.optional(), -}); -export { retrieveUsageChargesForSubscriptionUsageChargeBodySchema }; diff --git a/src/validation/usage_event/batch_ingest.validation.ts b/src/validation/usage_event/batch_ingest.validation.ts deleted file mode 100644 index 81496e0..0000000 --- a/src/validation/usage_event/batch_ingest.validation.ts +++ /dev/null @@ -1,15 +0,0 @@ -// Generated Zod validator: UsageEvent.batchIngest -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const batchIngestUsageEventPropertiesItemSchema = z.looseObject({}); -const batchIngestUsageEventEventsSchema = z.object({ - deduplication_id: z.array(z.string().max(36).optional()), - subscription_id: z.array(z.string().max(50).optional()), - usage_timestamp: z.array(z.number().int().optional()), - properties: z.array(batchIngestUsageEventPropertiesItemSchema.optional()), -}); -const batchIngestUsageEventBodySchema = z.looseObject({ - events: batchIngestUsageEventEventsSchema.optional(), -}); -export { batchIngestUsageEventBodySchema }; diff --git a/src/validation/usage_event/create.validation.ts b/src/validation/usage_event/create.validation.ts deleted file mode 100644 index 301a01e..0000000 --- a/src/validation/usage_event/create.validation.ts +++ /dev/null @@ -1,12 +0,0 @@ -// Generated Zod validator: UsageEvent.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUsageEventPropertiesSchema = z.looseObject({}); -const createUsageEventBodySchema = z.looseObject({ - deduplication_id: z.string().max(36), - subscription_id: z.string().max(50), - usage_timestamp: z.number().int(), - properties: createUsageEventPropertiesSchema, -}); -export { createUsageEventBodySchema }; diff --git a/src/validation/usage_file/upload_url.validation.ts b/src/validation/usage_file/upload_url.validation.ts deleted file mode 100644 index 1573048..0000000 --- a/src/validation/usage_file/upload_url.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: UsageFile.uploadUrl -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const uploadUrlUsageFileBodySchema = z.looseObject({ - file_name: z.string().max(150), - mime_type: z.string().max(100), -}); -export { uploadUrlUsageFileBodySchema }; diff --git a/src/validation/virtual_bank_account/create.validation.ts b/src/validation/virtual_bank_account/create.validation.ts deleted file mode 100644 index 6965c1a..0000000 --- a/src/validation/virtual_bank_account/create.validation.ts +++ /dev/null @@ -1,21 +0,0 @@ -// Generated Zod validator: VirtualBankAccount.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createVirtualBankAccountBodySchema = z.looseObject({ - customer_id: z.string().max(50), - email: z.string().email().max(70).optional(), - gateway_account_id: z.string().max(50).optional(), - scheme: z - .enum([ - 'ach_credit', - 'sepa_credit', - 'us_automated_bank_transfer', - 'gb_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - ]) - .optional(), -}); -export { createVirtualBankAccountBodySchema }; diff --git a/src/validation/virtual_bank_account/create_using_permanent_token.validation.ts b/src/validation/virtual_bank_account/create_using_permanent_token.validation.ts deleted file mode 100644 index 3df2af7..0000000 --- a/src/validation/virtual_bank_account/create_using_permanent_token.validation.ts +++ /dev/null @@ -1,21 +0,0 @@ -// Generated Zod validator: VirtualBankAccount.createUsingPermanentToken -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createUsingPermanentTokenVirtualBankAccountBodySchema = z.looseObject({ - customer_id: z.string().max(50), - reference_id: z.string().max(150), - gateway_account_id: z.string().max(50).optional(), - scheme: z - .enum([ - 'ach_credit', - 'sepa_credit', - 'us_automated_bank_transfer', - 'gb_automated_bank_transfer', - 'eu_automated_bank_transfer', - 'jp_automated_bank_transfer', - 'mx_automated_bank_transfer', - ]) - .optional(), -}); -export { createUsingPermanentTokenVirtualBankAccountBodySchema }; diff --git a/src/validation/webhook_endpoint/create.validation.ts b/src/validation/webhook_endpoint/create.validation.ts deleted file mode 100644 index ab71f14..0000000 --- a/src/validation/webhook_endpoint/create.validation.ts +++ /dev/null @@ -1,252 +0,0 @@ -// Generated Zod validator: WebhookEndpoint.create -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const createWebhookEndpointBodySchema = z.looseObject({ - name: z.string().max(50), - api_version: z.enum(['v1', 'v2']).optional(), - url: z.string().max(512), - primary_url: z.boolean().default(false).optional(), - disabled: z.boolean().default(false).optional(), - basic_auth_password: z.string().max(250).optional(), - basic_auth_username: z.string().max(250).optional(), - send_card_resource: z.boolean().default(false).optional(), - chargebee_response_schema_type: z - .enum(['plans_addons', 'items', 'compat']) - .optional(), - enabled_events: z - .array( - z - .enum([ - 'coupon_created', - 'coupon_updated', - 'coupon_deleted', - 'coupon_set_created', - 'coupon_set_updated', - 'coupon_set_deleted', - 'coupon_codes_added', - 'coupon_codes_deleted', - 'coupon_codes_updated', - 'customer_created', - 'customer_changed', - 'customer_deleted', - 'customer_moved_out', - 'customer_moved_in', - 'promotional_credits_added', - 'promotional_credits_deducted', - 'subscription_created', - 'subscription_created_with_backdating', - 'subscription_started', - 'subscription_trial_end_reminder', - 'subscription_activated', - 'subscription_activated_with_backdating', - 'subscription_changed', - 'subscription_trial_extended', - 'mrr_updated', - 'subscription_changed_with_backdating', - 'subscription_cancellation_scheduled', - 'subscription_cancellation_reminder', - 'subscription_cancelled', - 'subscription_canceled_with_backdating', - 'subscription_reactivated', - 'subscription_reactivated_with_backdating', - 'subscription_renewed', - 'subscription_items_renewed', - 'subscription_scheduled_cancellation_removed', - 'subscription_changes_scheduled', - 'subscription_scheduled_changes_removed', - 'subscription_shipping_address_updated', - 'subscription_deleted', - 'subscription_paused', - 'subscription_pause_scheduled', - 'subscription_scheduled_pause_removed', - 'subscription_resumed', - 'subscription_resumption_scheduled', - 'subscription_scheduled_resumption_removed', - 'subscription_advance_invoice_schedule_added', - 'subscription_advance_invoice_schedule_updated', - 'subscription_advance_invoice_schedule_removed', - 'pending_invoice_created', - 'pending_invoice_updated', - 'invoice_generated', - 'invoice_generated_with_backdating', - 'invoice_updated', - 'invoice_deleted', - 'credit_note_created', - 'credit_note_created_with_backdating', - 'credit_note_updated', - 'credit_note_deleted', - 'payment_schedules_created', - 'payment_schedules_updated', - 'payment_schedule_scheme_created', - 'payment_schedule_scheme_deleted', - 'subscription_renewal_reminder', - 'add_usages_reminder', - 'payment_due_reminder', - 'transaction_created', - 'transaction_updated', - 'transaction_deleted', - 'payment_succeeded', - 'payment_failed', - 'dunning_updated', - 'payment_refunded', - 'payment_initiated', - 'refund_initiated', - 'netd_payment_due_reminder', - 'authorization_succeeded', - 'authorization_voided', - 'card_added', - 'card_updated', - 'card_expiry_reminder', - 'card_expired', - 'card_deleted', - 'payment_source_added', - 'payment_source_updated', - 'payment_source_deleted', - 'payment_source_expiring', - 'payment_source_expired', - 'payment_source_locally_deleted', - 'virtual_bank_account_added', - 'virtual_bank_account_updated', - 'virtual_bank_account_deleted', - 'token_created', - 'token_consumed', - 'token_expired', - 'unbilled_charges_created', - 'unbilled_charges_voided', - 'unbilled_charges_deleted', - 'unbilled_charges_invoiced', - 'order_created', - 'order_updated', - 'order_cancelled', - 'order_delivered', - 'order_returned', - 'order_ready_to_process', - 'order_ready_to_ship', - 'order_deleted', - 'order_resent', - 'quote_created', - 'quote_updated', - 'quote_deleted', - 'tax_withheld_recorded', - 'tax_withheld_deleted', - 'tax_withheld_refunded', - 'gift_scheduled', - 'gift_unclaimed', - 'gift_claimed', - 'gift_expired', - 'gift_cancelled', - 'gift_updated', - 'hierarchy_created', - 'hierarchy_deleted', - 'payment_intent_created', - 'payment_intent_updated', - 'contract_term_created', - 'contract_term_renewed', - 'contract_term_terminated', - 'contract_term_completed', - 'contract_term_cancelled', - 'item_family_created', - 'item_family_updated', - 'item_family_deleted', - 'item_created', - 'item_updated', - 'item_deleted', - 'item_price_created', - 'item_price_updated', - 'item_price_deleted', - 'attached_item_created', - 'attached_item_updated', - 'attached_item_deleted', - 'differential_price_created', - 'differential_price_updated', - 'differential_price_deleted', - 'feature_created', - 'feature_updated', - 'feature_deleted', - 'feature_activated', - 'feature_reactivated', - 'feature_archived', - 'item_entitlements_updated', - 'entitlement_overrides_updated', - 'entitlement_overrides_removed', - 'item_entitlements_removed', - 'entitlement_overrides_auto_removed', - 'subscription_entitlements_created', - 'subscription_entitlements_updated', - 'business_entity_created', - 'business_entity_updated', - 'business_entity_deleted', - 'customer_business_entity_changed', - 'subscription_business_entity_changed', - 'purchase_created', - 'voucher_created', - 'voucher_expired', - 'voucher_create_failed', - 'product_created', - 'product_updated', - 'product_deleted', - 'variant_created', - 'variant_updated', - 'variant_deleted', - 'item_price_entitlements_updated', - 'item_price_entitlements_removed', - 'subscription_ramp_created', - 'subscription_ramp_deleted', - 'subscription_ramp_applied', - 'subscription_ramp_drafted', - 'subscription_ramp_updated', - 'price_variant_created', - 'price_variant_updated', - 'price_variant_deleted', - 'customer_entitlements_updated', - 'subscription_moved_in', - 'subscription_moved_out', - 'subscription_movement_failed', - 'omnichannel_subscription_created', - 'omnichannel_subscription_item_renewed', - 'omnichannel_subscription_item_downgrade_scheduled', - 'omnichannel_subscription_item_scheduled_downgrade_removed', - 'omnichannel_subscription_item_downgraded', - 'omnichannel_subscription_item_expired', - 'omnichannel_subscription_item_cancellation_scheduled', - 'omnichannel_subscription_item_scheduled_cancellation_removed', - 'omnichannel_subscription_item_resubscribed', - 'omnichannel_subscription_item_upgraded', - 'omnichannel_subscription_item_cancelled', - 'omnichannel_subscription_imported', - 'omnichannel_subscription_item_grace_period_started', - 'omnichannel_subscription_item_grace_period_expired', - 'omnichannel_subscription_item_dunning_started', - 'omnichannel_subscription_item_dunning_expired', - 'rule_created', - 'rule_updated', - 'rule_deleted', - 'record_purchase_failed', - 'omnichannel_subscription_item_change_scheduled', - 'omnichannel_subscription_item_scheduled_change_removed', - 'omnichannel_subscription_item_reactivated', - 'sales_order_created', - 'sales_order_updated', - 'omnichannel_subscription_item_changed', - 'omnichannel_subscription_item_paused', - 'omnichannel_subscription_item_resumed', - 'omnichannel_one_time_order_created', - 'omnichannel_one_time_order_item_cancelled', - 'usage_file_ingested', - 'omnichannel_subscription_item_pause_scheduled', - 'omnichannel_subscription_moved_in', - 'omnichannel_transaction_created', - 'alert_status_changed', - 'plan_created', - 'plan_updated', - 'plan_deleted', - 'addon_created', - 'addon_updated', - 'addon_deleted', - ]) - .optional(), - ) - .optional(), -}); -export { createWebhookEndpointBodySchema }; diff --git a/src/validation/webhook_endpoint/list.validation.ts b/src/validation/webhook_endpoint/list.validation.ts deleted file mode 100644 index 57e7b6f..0000000 --- a/src/validation/webhook_endpoint/list.validation.ts +++ /dev/null @@ -1,9 +0,0 @@ -// Generated Zod validator: WebhookEndpoint.list -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const listWebhookEndpointBodySchema = z.looseObject({ - limit: z.number().int().min(1).max(100).optional(), - offset: z.string().max(1000).optional(), -}); -export { listWebhookEndpointBodySchema }; diff --git a/src/validation/webhook_endpoint/update.validation.ts b/src/validation/webhook_endpoint/update.validation.ts deleted file mode 100644 index 9319c29..0000000 --- a/src/validation/webhook_endpoint/update.validation.ts +++ /dev/null @@ -1,249 +0,0 @@ -// Generated Zod validator: WebhookEndpoint.update -// Do not edit manually – regenerate via sdk-generator - -import { z } from 'zod'; -const updateWebhookEndpointBodySchema = z.looseObject({ - name: z.string().max(50).optional(), - api_version: z.enum(['v1', 'v2']).optional(), - url: z.string().max(512).optional(), - primary_url: z.boolean().default(false).optional(), - send_card_resource: z.boolean().default(false).optional(), - basic_auth_password: z.string().max(250).optional(), - basic_auth_username: z.string().max(250).optional(), - disabled: z.boolean().default(false).optional(), - enabled_events: z - .array( - z - .enum([ - 'coupon_created', - 'coupon_updated', - 'coupon_deleted', - 'coupon_set_created', - 'coupon_set_updated', - 'coupon_set_deleted', - 'coupon_codes_added', - 'coupon_codes_deleted', - 'coupon_codes_updated', - 'customer_created', - 'customer_changed', - 'customer_deleted', - 'customer_moved_out', - 'customer_moved_in', - 'promotional_credits_added', - 'promotional_credits_deducted', - 'subscription_created', - 'subscription_created_with_backdating', - 'subscription_started', - 'subscription_trial_end_reminder', - 'subscription_activated', - 'subscription_activated_with_backdating', - 'subscription_changed', - 'subscription_trial_extended', - 'mrr_updated', - 'subscription_changed_with_backdating', - 'subscription_cancellation_scheduled', - 'subscription_cancellation_reminder', - 'subscription_cancelled', - 'subscription_canceled_with_backdating', - 'subscription_reactivated', - 'subscription_reactivated_with_backdating', - 'subscription_renewed', - 'subscription_items_renewed', - 'subscription_scheduled_cancellation_removed', - 'subscription_changes_scheduled', - 'subscription_scheduled_changes_removed', - 'subscription_shipping_address_updated', - 'subscription_deleted', - 'subscription_paused', - 'subscription_pause_scheduled', - 'subscription_scheduled_pause_removed', - 'subscription_resumed', - 'subscription_resumption_scheduled', - 'subscription_scheduled_resumption_removed', - 'subscription_advance_invoice_schedule_added', - 'subscription_advance_invoice_schedule_updated', - 'subscription_advance_invoice_schedule_removed', - 'pending_invoice_created', - 'pending_invoice_updated', - 'invoice_generated', - 'invoice_generated_with_backdating', - 'invoice_updated', - 'invoice_deleted', - 'credit_note_created', - 'credit_note_created_with_backdating', - 'credit_note_updated', - 'credit_note_deleted', - 'payment_schedules_created', - 'payment_schedules_updated', - 'payment_schedule_scheme_created', - 'payment_schedule_scheme_deleted', - 'subscription_renewal_reminder', - 'add_usages_reminder', - 'payment_due_reminder', - 'transaction_created', - 'transaction_updated', - 'transaction_deleted', - 'payment_succeeded', - 'payment_failed', - 'dunning_updated', - 'payment_refunded', - 'payment_initiated', - 'refund_initiated', - 'netd_payment_due_reminder', - 'authorization_succeeded', - 'authorization_voided', - 'card_added', - 'card_updated', - 'card_expiry_reminder', - 'card_expired', - 'card_deleted', - 'payment_source_added', - 'payment_source_updated', - 'payment_source_deleted', - 'payment_source_expiring', - 'payment_source_expired', - 'payment_source_locally_deleted', - 'virtual_bank_account_added', - 'virtual_bank_account_updated', - 'virtual_bank_account_deleted', - 'token_created', - 'token_consumed', - 'token_expired', - 'unbilled_charges_created', - 'unbilled_charges_voided', - 'unbilled_charges_deleted', - 'unbilled_charges_invoiced', - 'order_created', - 'order_updated', - 'order_cancelled', - 'order_delivered', - 'order_returned', - 'order_ready_to_process', - 'order_ready_to_ship', - 'order_deleted', - 'order_resent', - 'quote_created', - 'quote_updated', - 'quote_deleted', - 'tax_withheld_recorded', - 'tax_withheld_deleted', - 'tax_withheld_refunded', - 'gift_scheduled', - 'gift_unclaimed', - 'gift_claimed', - 'gift_expired', - 'gift_cancelled', - 'gift_updated', - 'hierarchy_created', - 'hierarchy_deleted', - 'payment_intent_created', - 'payment_intent_updated', - 'contract_term_created', - 'contract_term_renewed', - 'contract_term_terminated', - 'contract_term_completed', - 'contract_term_cancelled', - 'item_family_created', - 'item_family_updated', - 'item_family_deleted', - 'item_created', - 'item_updated', - 'item_deleted', - 'item_price_created', - 'item_price_updated', - 'item_price_deleted', - 'attached_item_created', - 'attached_item_updated', - 'attached_item_deleted', - 'differential_price_created', - 'differential_price_updated', - 'differential_price_deleted', - 'feature_created', - 'feature_updated', - 'feature_deleted', - 'feature_activated', - 'feature_reactivated', - 'feature_archived', - 'item_entitlements_updated', - 'entitlement_overrides_updated', - 'entitlement_overrides_removed', - 'item_entitlements_removed', - 'entitlement_overrides_auto_removed', - 'subscription_entitlements_created', - 'subscription_entitlements_updated', - 'business_entity_created', - 'business_entity_updated', - 'business_entity_deleted', - 'customer_business_entity_changed', - 'subscription_business_entity_changed', - 'purchase_created', - 'voucher_created', - 'voucher_expired', - 'voucher_create_failed', - 'product_created', - 'product_updated', - 'product_deleted', - 'variant_created', - 'variant_updated', - 'variant_deleted', - 'item_price_entitlements_updated', - 'item_price_entitlements_removed', - 'subscription_ramp_created', - 'subscription_ramp_deleted', - 'subscription_ramp_applied', - 'subscription_ramp_drafted', - 'subscription_ramp_updated', - 'price_variant_created', - 'price_variant_updated', - 'price_variant_deleted', - 'customer_entitlements_updated', - 'subscription_moved_in', - 'subscription_moved_out', - 'subscription_movement_failed', - 'omnichannel_subscription_created', - 'omnichannel_subscription_item_renewed', - 'omnichannel_subscription_item_downgrade_scheduled', - 'omnichannel_subscription_item_scheduled_downgrade_removed', - 'omnichannel_subscription_item_downgraded', - 'omnichannel_subscription_item_expired', - 'omnichannel_subscription_item_cancellation_scheduled', - 'omnichannel_subscription_item_scheduled_cancellation_removed', - 'omnichannel_subscription_item_resubscribed', - 'omnichannel_subscription_item_upgraded', - 'omnichannel_subscription_item_cancelled', - 'omnichannel_subscription_imported', - 'omnichannel_subscription_item_grace_period_started', - 'omnichannel_subscription_item_grace_period_expired', - 'omnichannel_subscription_item_dunning_started', - 'omnichannel_subscription_item_dunning_expired', - 'rule_created', - 'rule_updated', - 'rule_deleted', - 'record_purchase_failed', - 'omnichannel_subscription_item_change_scheduled', - 'omnichannel_subscription_item_scheduled_change_removed', - 'omnichannel_subscription_item_reactivated', - 'sales_order_created', - 'sales_order_updated', - 'omnichannel_subscription_item_changed', - 'omnichannel_subscription_item_paused', - 'omnichannel_subscription_item_resumed', - 'omnichannel_one_time_order_created', - 'omnichannel_one_time_order_item_cancelled', - 'usage_file_ingested', - 'omnichannel_subscription_item_pause_scheduled', - 'omnichannel_subscription_moved_in', - 'omnichannel_transaction_created', - 'alert_status_changed', - 'plan_created', - 'plan_updated', - 'plan_deleted', - 'addon_created', - 'addon_updated', - 'addon_deleted', - ]) - .optional(), - ) - .optional(), -}); -export { updateWebhookEndpointBodySchema }; diff --git a/src/validationLoader.ts b/src/validationLoader.ts index 58fd52a..2e2cd8a 100644 --- a/src/validationLoader.ts +++ b/src/validationLoader.ts @@ -1,9 +1,11 @@ /** * Lazy schema loader for opt-in Zod validation. * - * Schemas are loaded on first use and cached. The schema const name follows the - * convention: `{camelAction}{PascalResource}BodySchema` - * e.g. resource=customer, action=create → createCustomerBodySchema + * Schemas are loaded on first use and cached. Each resource module lives at + * {@code schema/.schema.ts} and exports one body schema per action. + * + * The body schema const name follows {@code ZodNamingStrategy.bodySchemaName} in sdk-generator: + * {@code {PascalAction}{PascalResource}BodySchema} */ import type { ZodObject, ZodRawShape } from 'zod'; @@ -16,7 +18,7 @@ import * as nodePath from 'node:path'; // so we must pass the entry file (e.g. cjs/chargebee.cjs.js), not the folder. // // Strategy: resolve 'chargebee' (the default CJS entry) from the caller's -// working directory, then createRequire(entryFile) so ./validation/... loads +// working directory, then createRequire(entryFile) so ./schema/... loads // from the cjs/ directory next to that file. const _cwdRequire = createRequire( nodePath.resolve(process.cwd(), 'package.json'), @@ -36,27 +38,19 @@ function toPascal(s: string): string { return camel.charAt(0).toUpperCase() + camel.slice(1); } -/** Matches JoiNamingStrategy.bodySchemaName() in sdk-generator. */ +/** Matches ZodNamingStrategy.bodySchemaName() in sdk-generator. */ function schemaConstName(resourceKey: string, actionName: string): string { - return toCamel(actionName) + toPascal(resourceKey) + 'BodySchema'; + return toPascal(actionName) + toPascal(resourceKey) + 'BodySchema'; } -/** camelCase resource key → snake_case directory name. */ -function resourceDir(resourceKey: string): string { +/** camelCase resource key → snake_case module basename (e.g. virtualBankAccount → virtual_bank_account). */ +function resourceSchemaBasename(resourceKey: string): string { return resourceKey .replace(/([A-Z])/g, '_$1') .toLowerCase() .replace(/^_/, ''); } -/** camelCase action name → snake_case file name. */ -function actionFileName(actionName: string): string { - return actionName - .replace(/([A-Z])/g, '_$1') - .toLowerCase() - .replace(/^_/, ''); -} - /** * Load and cache the Zod schema for a given resource + action. * Returns null if no schema file exists for this combination. @@ -70,13 +64,11 @@ export function getSchema( return schemaCache.get(cacheKey)!; } - const dir = resourceDir(resourceKey); - const fileName = actionFileName(actionName); + const base = resourceSchemaBasename(resourceKey); const constName = schemaConstName(resourceKey, actionName); try { - // Load from cjs/validation/ using _require (works in both CJS and ESM). - const mod = _require(`./validation/${dir}/${fileName}.validation.js`); + const mod = _require(`./schema/${base}.schema.js`); const schema = (mod[constName] as AnyZodObject) ?? null; schemaCache.set(cacheKey, schema); return schema; From 4f0782b7a813265f630e659a3d4a181f3667c714 Mon Sep 17 00:00:00 2001 From: cb-alish Date: Mon, 11 May 2026 12:05:02 +0530 Subject: [PATCH 4/7] refactor(validation): use native import() for schema loading, defer to API call time Replace manual createRequire-based module resolution with native dynamic import(), allowing TypeScript compiler to handle ESM/CJS transpilation automatically. Schema loading is now deferred to API call time (lazy), preserving synchronous SDK initialization while maintaining validation functionality in both module systems. Co-authored-by: Cursor --- src/RequestWrapper.ts | 38 +++++++++++++++++++---------- src/createChargebee.ts | 6 ++--- src/types.d.ts | 4 +++ src/validationLoader.ts | 54 ++++++++++++++++++----------------------- 4 files changed, 56 insertions(+), 46 deletions(-) diff --git a/src/RequestWrapper.ts b/src/RequestWrapper.ts index e6e29a6..da2a0a6 100644 --- a/src/RequestWrapper.ts +++ b/src/RequestWrapper.ts @@ -20,6 +20,7 @@ import { handleResponse } from './coreCommon.js'; import { Buffer } from 'node:buffer'; import type { ZodObject, ZodRawShape } from 'zod'; import { ChargebeeZodValidationError } from './chargebeeZodValidationError.js'; +import { getSchema } from './validationLoader.js'; export class RequestWrapper { private readonly args: IArguments; @@ -89,19 +90,30 @@ export class RequestWrapper { : this.args[0]; let headers = this.apiCall.hasIdInUrl ? this.args[2] : this.args[1]; - if (env.enableValidation && this.apiCall.validationSchema) { - if (this.apiCall.httpMethod === 'GET') { - RequestWrapper._validateParams( - params ?? {}, - this.apiCall.validationSchema as ZodObject, - this.apiCall.methodName, - ); - } else if (params != null) { - RequestWrapper._validateParams( - params, - this.apiCall.validationSchema as ZodObject, - this.apiCall.methodName, - ); + // Lazy-load Zod schema when enableValidation is true + if ( + env.enableValidation && + this.apiCall.resourceKey && + this.apiCall.actionName + ) { + const schema = await getSchema( + this.apiCall.resourceKey, + this.apiCall.actionName, + ); + if (schema) { + if (this.apiCall.httpMethod === 'GET') { + RequestWrapper._validateParams( + params ?? {}, + schema, + this.apiCall.methodName, + ); + } else if (params != null) { + RequestWrapper._validateParams( + params, + schema, + this.apiCall.methodName, + ); + } } } diff --git a/src/createChargebee.ts b/src/createChargebee.ts index d7da3ee..094a29d 100644 --- a/src/createChargebee.ts +++ b/src/createChargebee.ts @@ -2,7 +2,6 @@ import { RequestWrapper } from './RequestWrapper.js'; import { Environment } from './environment.js'; import { Endpoints } from './resources/api_endpoints.js'; import { extend, sleep } from './util.js'; -import { getSchema } from './validationLoader.js'; import { waitForProcessToComplete } from './asyncApiSupport.js'; import { ResourceType, @@ -107,8 +106,9 @@ export const CreateChargebee = (httpClient: HttpClientInterface) => { options: metaArr[8], }; if (this._env.enableValidation) { - apiCall.validationSchema = - getSchema(res, metaArr[0] as string) ?? undefined; + // Store resource and action for lazy schema loading in RequestWrapper + apiCall.resourceKey = res; + apiCall.actionName = metaArr[0] as string; } this[res][apiCall.methodName] = this._createApiFunc( apiCall, diff --git a/src/types.d.ts b/src/types.d.ts index f06c1e1..ae6626f 100644 --- a/src/types.d.ts +++ b/src/types.d.ts @@ -66,6 +66,10 @@ export type ResourceType = { options?: { isIdempotent?: boolean; }; + /** Resource key for lazy schema loading (set when enableValidation is true). */ + resourceKey?: string; + /** Action name for lazy schema loading (set when enableValidation is true). */ + actionName?: string; /** Optional Zod schema for opt-in request param validation. */ validationSchema?: import('zod').ZodObject; }; diff --git a/src/validationLoader.ts b/src/validationLoader.ts index 2e2cd8a..49f67ca 100644 --- a/src/validationLoader.ts +++ b/src/validationLoader.ts @@ -6,28 +6,14 @@ * * The body schema const name follows {@code ZodNamingStrategy.bodySchemaName} in sdk-generator: * {@code {PascalAction}{PascalResource}BodySchema} + * + * Uses native dynamic import() - TypeScript transpiles appropriately for ESM/CJS targets. */ import type { ZodObject, ZodRawShape } from 'zod'; -import { createRequire } from 'node:module'; -import * as nodePath from 'node:path'; - -// Locate the chargebee package's CJS entry file and build a require function -// anchored there. createRequire() resolves relative paths from dirname(filename); -// passing a directory path ending with a separator makes dirname() skip past `cjs`, -// so we must pass the entry file (e.g. cjs/chargebee.cjs.js), not the folder. -// -// Strategy: resolve 'chargebee' (the default CJS entry) from the caller's -// working directory, then createRequire(entryFile) so ./schema/... loads -// from the cjs/ directory next to that file. -const _cwdRequire = createRequire( - nodePath.resolve(process.cwd(), 'package.json'), -); -const _cjsEntry: string = _cwdRequire.resolve('chargebee'); -const _require: NodeRequire = createRequire(_cjsEntry); type AnyZodObject = ZodObject; -const schemaCache = new Map(); +const schemaCache = new Map>(); function toCamel(s: string): string { return s.replace(/_([a-z])/g, (_, c: string) => c.toUpperCase()); @@ -54,26 +40,34 @@ function resourceSchemaBasename(resourceKey: string): string { /** * Load and cache the Zod schema for a given resource + action. * Returns null if no schema file exists for this combination. + * + * TypeScript compiler handles module system differences: + * - ESM build: keeps await import() as-is + * - CJS build: transpiles to require() or Promise-based equivalent */ -export function getSchema( +export async function getSchema( resourceKey: string, actionName: string, -): AnyZodObject | null { +): Promise { const cacheKey = `${resourceKey}:${actionName}`; + if (schemaCache.has(cacheKey)) { return schemaCache.get(cacheKey)!; } - const base = resourceSchemaBasename(resourceKey); - const constName = schemaConstName(resourceKey, actionName); + const loadPromise = (async () => { + const base = resourceSchemaBasename(resourceKey); + const constName = schemaConstName(resourceKey, actionName); - try { - const mod = _require(`./schema/${base}.schema.js`); - const schema = (mod[constName] as AnyZodObject) ?? null; - schemaCache.set(cacheKey, schema); - return schema; - } catch { - schemaCache.set(cacheKey, null); - return null; - } + try { + const mod = await import(`./schema/${base}.schema.js`); + const schema = (mod[constName] as AnyZodObject) ?? null; + return schema; + } catch { + return null; + } + })(); + + schemaCache.set(cacheKey, loadPromise); + return loadPromise; } From 79f5e187a9cb1a3b30997e48de63cc321579087a Mon Sep 17 00:00:00 2001 From: cb-alish Date: Mon, 11 May 2026 12:21:20 +0530 Subject: [PATCH 5/7] chore: regenerate SDK with ChargebeeZodValidationError export Co-authored-by: Cursor --- src/chargebee.cjs.ts | 1 + src/chargebee.esm.ts | 2 ++ types/index.d.ts | 3 +-- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/chargebee.cjs.ts b/src/chargebee.cjs.ts index 19921a7..76cb6f5 100644 --- a/src/chargebee.cjs.ts +++ b/src/chargebee.cjs.ts @@ -28,6 +28,7 @@ module.exports.WebhookAuthenticationError = WebhookAuthenticationError; module.exports.WebhookPayloadValidationError = WebhookPayloadValidationError; module.exports.WebhookPayloadParseError = WebhookPayloadParseError; +// Export validation error class module.exports.ChargebeeZodValidationError = ChargebeeZodValidationError; // Export webhook types diff --git a/src/chargebee.esm.ts b/src/chargebee.esm.ts index 5ebf702..8e3e36b 100644 --- a/src/chargebee.esm.ts +++ b/src/chargebee.esm.ts @@ -18,6 +18,8 @@ export { WebhookPayloadValidationError, WebhookPayloadParseError, } from './resources/webhook/handler.js'; + +// Export validation error class export { ChargebeeZodValidationError } from './chargebeeZodValidationError.js'; // Export webhook types diff --git a/types/index.d.ts b/types/index.d.ts index b02438c..b377110 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -167,8 +167,7 @@ declare module 'chargebee' { httpClient?: HttpClientInterface; /** - * @enableValidation when true, parameters for every API request are validated against Zod schemas - * before the HTTP call (for actions that ship with a schema). + * @enableValidation When true, every request's parameters are validated against each endpoint's generated Zod schema before the HTTP request is sent. Violations throw `ChargebeeZodValidationError` with structured Zod issues. Calls with no params argument are validated as `{}`. Required resource ids in the URL path are still checked separately. */ enableValidation?: boolean; }; From d141f5b385e2015aeeeccf7b256cb9fca0f35721 Mon Sep 17 00:00:00 2001 From: cb-alish Date: Mon, 11 May 2026 12:22:54 +0530 Subject: [PATCH 6/7] fix: restore async validation tests Co-authored-by: Cursor --- test/validation.test.ts | 146 ++++++++++++++++++++++------------------ 1 file changed, 82 insertions(+), 64 deletions(-) diff --git a/test/validation.test.ts b/test/validation.test.ts index 9466c95..81a4120 100644 --- a/test/validation.test.ts +++ b/test/validation.test.ts @@ -43,20 +43,20 @@ describe('Validation – schema unit tests', () => { // ── customer.create ──────────────────────────────────────────────────────── describe('customer.create schema', () => { - // Load once – schemas are cached so repeated calls are cheap. - const schema = getSchema('customer', 'create')!; - - it('loads a schema for customer.create', () => { + it('loads a schema for customer.create', async () => { + const schema = await getSchema('customer', 'create'); expect(schema).to.not.be.null; }); - it('accepts an empty object (all fields are optional)', () => { - expect(schema.safeParse({}).success).to.be.true; + it('accepts an empty object (all fields are optional)', async () => { + const schema = await getSchema('customer', 'create'); + expect(schema!.safeParse({}).success).to.be.true; }); - it('accepts valid string fields', () => { + it('accepts valid string fields', async () => { + const schema = await getSchema('customer', 'create'); expect( - schema.safeParse({ + schema!.safeParse({ first_name: 'Jane', last_name: 'Doe', company: 'Acme Inc', @@ -65,49 +65,58 @@ describe('Validation – schema unit tests', () => { ).to.be.true; }); - it('accepts a valid email address', () => { - expect(schema.safeParse({ email: 'jane@example.com' }).success).to.be.true; + it('accepts a valid email address', async () => { + const schema = await getSchema('customer', 'create'); + expect(schema!.safeParse({ email: 'jane@example.com' }).success).to.be.true; }); - it('accepts valid enum values for auto_collection', () => { - expect(schema.safeParse({ auto_collection: 'on' }).success).to.be.true; - expect(schema.safeParse({ auto_collection: 'off' }).success).to.be.true; + it('accepts valid enum values for auto_collection', async () => { + const schema = await getSchema('customer', 'create'); + expect(schema!.safeParse({ auto_collection: 'on' }).success).to.be.true; + expect(schema!.safeParse({ auto_collection: 'off' }).success).to.be.true; }); - it('accepts an integer for net_term_days', () => { - expect(schema.safeParse({ net_term_days: 30 }).success).to.be.true; + it('accepts an integer for net_term_days', async () => { + const schema = await getSchema('customer', 'create'); + expect(schema!.safeParse({ net_term_days: 30 }).success).to.be.true; }); - it('passes unknown keys through (looseObject / allow extra keys)', () => { - expect(schema.safeParse({ undocumented_cf: 'value' }).success).to.be.true; + it('passes unknown keys through (looseObject / allow extra keys)', async () => { + const schema = await getSchema('customer', 'create'); + expect(schema!.safeParse({ undocumented_cf: 'value' }).success).to.be.true; }); - it('rejects an invalid email address', () => { - const result = schema.safeParse({ email: 'not-an-email' }); + it('rejects an invalid email address', async () => { + const schema = await getSchema('customer', 'create'); + const result = schema!.safeParse({ email: 'not-an-email' }); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['email']); }); - it('rejects first_name exceeding maxLength(150)', () => { - const result = schema.safeParse({ first_name: 'a'.repeat(151) }); + it('rejects first_name exceeding maxLength(150)', async () => { + const schema = await getSchema('customer', 'create'); + const result = schema!.safeParse({ first_name: 'a'.repeat(151) }); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['first_name']); }); - it('rejects an invalid enum value for auto_collection', () => { - const result = schema.safeParse({ auto_collection: 'maybe' }); + it('rejects an invalid enum value for auto_collection', async () => { + const schema = await getSchema('customer', 'create'); + const result = schema!.safeParse({ auto_collection: 'maybe' }); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['auto_collection']); }); - it('rejects a non-integer for net_term_days', () => { - const result = schema.safeParse({ net_term_days: 1.5 }); + it('rejects a non-integer for net_term_days', async () => { + const schema = await getSchema('customer', 'create'); + const result = schema!.safeParse({ net_term_days: 1.5 }); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['net_term_days']); }); - it('reports all violated fields in a single parse (fail-all)', () => { - const result = schema.safeParse({ + it('reports all violated fields in a single parse (fail-all)', async () => { + const schema = await getSchema('customer', 'create'); + const result = schema!.safeParse({ email: 'bad-email', first_name: 'x'.repeat(200), auto_collection: 'invalid', @@ -125,28 +134,30 @@ describe('Validation – schema unit tests', () => { // ── customer.create – nested card sub-object ─────────────────────────────── describe('customer.create – nested card sub-object', () => { - const schema = getSchema('customer', 'create')!; - - it('accepts a valid card sub-object', () => { + it('accepts a valid card sub-object', async () => { + const schema = await getSchema('customer', 'create'); expect( - schema.safeParse({ card: { number: '4111111111111111', cvv: '123' } }).success, + schema!.safeParse({ card: { number: '4111111111111111', cvv: '123' } }).success, ).to.be.true; }); - it('rejects card.expiry_month > 12 (max constraint)', () => { - const result = schema.safeParse({ card: { expiry_month: 13 } }); + it('rejects card.expiry_month > 12 (max constraint)', async () => { + const schema = await getSchema('customer', 'create'); + const result = schema!.safeParse({ card: { expiry_month: 13 } }); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['card', 'expiry_month']); }); - it('rejects card.expiry_month < 1 (min constraint)', () => { - const result = schema.safeParse({ card: { expiry_month: 0 } }); + it('rejects card.expiry_month < 1 (min constraint)', async () => { + const schema = await getSchema('customer', 'create'); + const result = schema!.safeParse({ card: { expiry_month: 0 } }); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['card', 'expiry_month']); }); - it('rejects card.gateway_account_id exceeding maxLength(50)', () => { - const result = schema.safeParse({ + it('rejects card.gateway_account_id exceeding maxLength(50)', async () => { + const schema = await getSchema('customer', 'create'); + const result = schema!.safeParse({ card: { gateway_account_id: 'x'.repeat(51) }, }); expect(result.success).to.be.false; @@ -158,18 +169,19 @@ describe('Validation – schema unit tests', () => { // ── customer.update ──────────────────────────────────────────────────────── describe('customer.update schema', () => { - const schema = getSchema('customer', 'update')!; - - it('loads a schema for customer.update', () => { + it('loads a schema for customer.update', async () => { + const schema = await getSchema('customer', 'update'); expect(schema).to.not.be.null; }); - it('accepts a valid email for update', () => { - expect(schema.safeParse({ email: 'updated@example.com' }).success).to.be.true; + it('accepts a valid email for update', async () => { + const schema = await getSchema('customer', 'update'); + expect(schema!.safeParse({ email: 'updated@example.com' }).success).to.be.true; }); - it('rejects an invalid email in update', () => { - const result = schema.safeParse({ email: 'not-valid' }); + it('rejects an invalid email in update', async () => { + const schema = await getSchema('customer', 'update'); + const result = schema!.safeParse({ email: 'not-valid' }); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['email']); }); @@ -178,36 +190,40 @@ describe('Validation – schema unit tests', () => { // ── invoice.charge (has a required field: description) ──────────────────── describe('invoice.charge schema', () => { - const schema = getSchema('invoice', 'charge')!; - - it('loads a schema for invoice.charge', () => { + it('loads a schema for invoice.charge', async () => { + const schema = await getSchema('invoice', 'charge'); expect(schema).to.not.be.null; }); - it('accepts a payload that includes the required description', () => { - expect(schema.safeParse({ description: 'Consulting fee' }).success).to.be.true; + it('accepts a payload that includes the required description', async () => { + const schema = await getSchema('invoice', 'charge'); + expect(schema!.safeParse({ description: 'Consulting fee' }).success).to.be.true; }); - it('accepts description alongside optional fields', () => { + it('accepts description alongside optional fields', async () => { + const schema = await getSchema('invoice', 'charge'); expect( - schema.safeParse({ description: 'Fee', amount: 500, currency_code: 'USD' }).success, + schema!.safeParse({ description: 'Fee', amount: 500, currency_code: 'USD' }).success, ).to.be.true; }); - it('rejects a payload missing the required description field', () => { - const result = schema.safeParse({}); + it('rejects a payload missing the required description field', async () => { + const schema = await getSchema('invoice', 'charge'); + const result = schema!.safeParse({}); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['description']); }); - it('rejects amount = 0 (min constraint is 1)', () => { - const result = schema.safeParse({ description: 'Fee', amount: 0 }); + it('rejects amount = 0 (min constraint is 1)', async () => { + const schema = await getSchema('invoice', 'charge'); + const result = schema!.safeParse({ description: 'Fee', amount: 0 }); expect(result.success).to.be.false; expect(result.error!.issues[0].path).to.deep.equal(['amount']); }); - it('rejects a negative amount', () => { - const result = schema.safeParse({ description: 'Fee', amount: -100 }); + it('rejects a negative amount', async () => { + const schema = await getSchema('invoice', 'charge'); + const result = schema!.safeParse({ description: 'Fee', amount: -100 }); expect(result.success).to.be.false; }); }); @@ -215,17 +231,19 @@ describe('Validation – schema unit tests', () => { // ── getSchema – loader behaviour ─────────────────────────────────────────── describe('getSchema() loader', () => { - it('returns null for an action that has no schema', () => { - expect(getSchema('customer', 'nonexistent_action_xyz')).to.be.null; + it('returns null for an action that has no schema', async () => { + const schema = await getSchema('customer', 'nonexistent_action_xyz'); + expect(schema).to.be.null; }); - it('returns null for an unknown resource', () => { - expect(getSchema('nonexistent_resource_xyz', 'create')).to.be.null; + it('returns null for an unknown resource', async () => { + const schema = await getSchema('nonexistent_resource_xyz', 'create'); + expect(schema).to.be.null; }); - it('returns the same cached object on repeated calls', () => { - const a = getSchema('customer', 'create'); - const b = getSchema('customer', 'create'); + it('returns the same cached object on repeated calls', async () => { + const a = await getSchema('customer', 'create'); + const b = await getSchema('customer', 'create'); expect(a).to.equal(b); // strict reference equality → cached }); }); From daca6c683bfbf5e3eade09dba18bb1a547e8fb2b Mon Sep 17 00:00:00 2001 From: cb-alish Date: Tue, 12 May 2026 12:04:46 +0530 Subject: [PATCH 7/7] refactor: remove manual schema cache, rely on Node.js module caching Node.js automatically caches imported modules, making the manual Map-based cache redundant. This simplifies the code while maintaining the same performance characteristics. Co-authored-by: Cursor --- src/validationLoader.ts | 40 +++++++++++++++++----------------------- 1 file changed, 17 insertions(+), 23 deletions(-) diff --git a/src/validationLoader.ts b/src/validationLoader.ts index 49f67ca..c1e8533 100644 --- a/src/validationLoader.ts +++ b/src/validationLoader.ts @@ -1,8 +1,11 @@ /** * Lazy schema loader for opt-in Zod validation. * - * Schemas are loaded on first use and cached. Each resource module lives at - * {@code schema/.schema.ts} and exports one body schema per action. + * Schemas are loaded on first use. Node.js automatically caches imported modules, + * so repeated imports of the same schema file are efficient. + * + * Each resource module lives at {@code schema/.schema.ts} + * and exports one body schema per action. * * The body schema const name follows {@code ZodNamingStrategy.bodySchemaName} in sdk-generator: * {@code {PascalAction}{PascalResource}BodySchema} @@ -13,7 +16,6 @@ import type { ZodObject, ZodRawShape } from 'zod'; type AnyZodObject = ZodObject; -const schemaCache = new Map>(); function toCamel(s: string): string { return s.replace(/_([a-z])/g, (_, c: string) => c.toUpperCase()); @@ -38,9 +40,12 @@ function resourceSchemaBasename(resourceKey: string): string { } /** - * Load and cache the Zod schema for a given resource + action. + * Load the Zod schema for a given resource + action. * Returns null if no schema file exists for this combination. * + * Node.js automatically caches the imported modules, so repeated calls + * for the same resource will reuse the cached module. + * * TypeScript compiler handles module system differences: * - ESM build: keeps await import() as-is * - CJS build: transpiles to require() or Promise-based equivalent @@ -49,25 +54,14 @@ export async function getSchema( resourceKey: string, actionName: string, ): Promise { - const cacheKey = `${resourceKey}:${actionName}`; + const base = resourceSchemaBasename(resourceKey); + const constName = schemaConstName(resourceKey, actionName); - if (schemaCache.has(cacheKey)) { - return schemaCache.get(cacheKey)!; + try { + const mod = await import(`./schema/${base}.schema.js`); + const schema = (mod[constName] as AnyZodObject) ?? null; + return schema; + } catch { + return null; } - - const loadPromise = (async () => { - const base = resourceSchemaBasename(resourceKey); - const constName = schemaConstName(resourceKey, actionName); - - try { - const mod = await import(`./schema/${base}.schema.js`); - const schema = (mod[constName] as AnyZodObject) ?? null; - return schema; - } catch { - return null; - } - })(); - - schemaCache.set(cacheKey, loadPromise); - return loadPromise; }