dodopayments 1.20.0 → 1.47.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +45 -0
- data/README.md +144 -60
- data/SECURITY.md +2 -2
- data/lib/dodopayments/client.rb +25 -12
- data/lib/dodopayments/errors.rb +23 -1
- data/lib/dodopayments/file_part.rb +2 -2
- data/lib/dodopayments/internal/cursor_page_pagination.rb +90 -0
- data/lib/dodopayments/internal/default_page_number_pagination.rb +2 -2
- data/lib/dodopayments/internal/transport/base_client.rb +90 -10
- data/lib/dodopayments/internal/transport/pooled_net_requester.rb +17 -1
- data/lib/dodopayments/internal/type/array_of.rb +16 -2
- data/lib/dodopayments/internal/type/base_model.rb +152 -59
- data/lib/dodopayments/internal/type/boolean.rb +15 -1
- data/lib/dodopayments/internal/type/converter.rb +86 -33
- data/lib/dodopayments/internal/type/enum.rb +30 -6
- data/lib/dodopayments/internal/type/file_input.rb +13 -1
- data/lib/dodopayments/internal/type/hash_of.rb +16 -2
- data/lib/dodopayments/internal/type/request_parameters.rb +6 -12
- data/lib/dodopayments/internal/type/union.rb +44 -31
- data/lib/dodopayments/internal/type/unknown.rb +15 -1
- data/lib/dodopayments/internal/util.rb +136 -12
- data/lib/dodopayments/internal.rb +9 -0
- data/lib/dodopayments/models/addon_create_params.rb +6 -10
- data/lib/dodopayments/models/addon_list_params.rb +4 -4
- data/lib/dodopayments/models/addon_response.rb +6 -10
- data/lib/dodopayments/models/addon_update_params.rb +6 -10
- data/lib/dodopayments/models/attach_addon.rb +21 -0
- data/lib/dodopayments/models/billing_address.rb +3 -3
- data/lib/dodopayments/models/brand.rb +107 -0
- data/lib/dodopayments/models/brand_create_params.rb +44 -0
- data/lib/dodopayments/models/{webhook_event_retrieve_params.rb → brand_list_params.rb} +2 -2
- data/lib/dodopayments/models/brand_list_response.rb +17 -0
- data/lib/dodopayments/models/brand_retrieve_params.rb +14 -0
- data/lib/dodopayments/models/brand_update_images_params.rb +14 -0
- data/lib/dodopayments/models/brand_update_images_response.rb +25 -0
- data/lib/dodopayments/models/brand_update_params.rb +43 -0
- data/lib/dodopayments/models/create_new_customer.rb +0 -1
- data/lib/dodopayments/models/customer_list_params.rb +13 -5
- data/lib/dodopayments/models/customer_request.rb +3 -3
- data/lib/dodopayments/models/customers/customer_portal_create_params.rb +2 -2
- data/lib/dodopayments/models/discount.rb +15 -4
- data/lib/dodopayments/models/discount_create_params.rb +17 -6
- data/lib/dodopayments/models/discount_list_params.rb +4 -4
- data/lib/dodopayments/models/discount_update_params.rb +16 -5
- data/lib/dodopayments/models/dispute.rb +15 -7
- data/lib/dodopayments/models/dispute_list_params.rb +44 -16
- data/lib/dodopayments/models/dispute_list_response.rb +77 -0
- data/lib/dodopayments/models/get_dispute.rb +101 -0
- data/lib/dodopayments/models/license_key.rb +3 -3
- data/lib/dodopayments/models/license_key_duration.rb +1 -1
- data/lib/dodopayments/models/license_key_list_params.rb +23 -11
- data/lib/dodopayments/models/license_key_update_params.rb +3 -3
- data/lib/dodopayments/models/misc_list_supported_countries_response.rb +1 -1
- data/lib/dodopayments/models/new_customer.rb +27 -0
- data/lib/dodopayments/models/one_time_product_cart_item.rb +0 -1
- data/lib/dodopayments/models/payment.rb +79 -18
- data/lib/dodopayments/models/payment_create_params.rb +22 -41
- data/lib/dodopayments/models/payment_create_response.rb +16 -6
- data/lib/dodopayments/models/payment_list_params.rb +44 -16
- data/lib/dodopayments/models/payment_list_response.rb +16 -4
- data/lib/dodopayments/models/payment_method_types.rb +31 -0
- data/lib/dodopayments/models/payment_retrieve_line_items_params.rb +14 -0
- data/lib/dodopayments/models/payment_retrieve_line_items_response.rb +63 -0
- data/lib/dodopayments/models/payout_list_params.rb +4 -4
- data/lib/dodopayments/models/payout_list_response.rb +7 -3
- data/lib/dodopayments/models/price.rb +57 -30
- data/lib/dodopayments/models/product.rb +85 -12
- data/lib/dodopayments/models/product_create_params.rb +61 -12
- data/lib/dodopayments/models/product_list_params.rb +15 -7
- data/lib/dodopayments/models/product_list_response.rb +19 -11
- data/lib/dodopayments/models/product_update_files_params.rb +20 -0
- data/lib/dodopayments/models/product_update_files_response.rb +22 -0
- data/lib/dodopayments/models/product_update_params.rb +70 -13
- data/lib/dodopayments/models/products/image_update_params.rb +2 -2
- data/lib/dodopayments/models/refund.rb +15 -5
- data/lib/dodopayments/models/refund_create_params.rb +38 -1
- data/lib/dodopayments/models/refund_list_params.rb +26 -13
- data/lib/dodopayments/models/subscription.rb +38 -18
- data/lib/dodopayments/models/subscription_change_plan_params.rb +19 -3
- data/lib/dodopayments/models/subscription_charge_params.rb +38 -2
- data/lib/dodopayments/models/subscription_create_params.rb +53 -66
- data/lib/dodopayments/models/subscription_create_response.rb +24 -8
- data/lib/dodopayments/models/subscription_list_params.rb +37 -14
- data/lib/dodopayments/models/subscription_list_response.rb +37 -16
- data/lib/dodopayments/models/subscription_status.rb +0 -1
- data/lib/dodopayments/models/subscription_update_params.rb +10 -6
- data/lib/dodopayments/models/webhook_create_params.rb +86 -0
- data/lib/dodopayments/models/webhook_create_response.rb +88 -0
- data/lib/dodopayments/models/webhook_delete_params.rb +14 -0
- data/lib/dodopayments/models/webhook_event_type.rb +35 -0
- data/lib/dodopayments/models/webhook_list_params.rb +30 -0
- data/lib/dodopayments/models/webhook_list_response.rb +88 -0
- data/lib/dodopayments/models/webhook_payload.rb +161 -0
- data/lib/dodopayments/models/webhook_retrieve_params.rb +14 -0
- data/lib/dodopayments/models/webhook_retrieve_response.rb +88 -0
- data/lib/dodopayments/models/webhook_update_params.rb +69 -0
- data/lib/dodopayments/models/webhook_update_response.rb +88 -0
- data/lib/dodopayments/models/webhooks/header_retrieve_params.rb +16 -0
- data/lib/dodopayments/models/webhooks/header_retrieve_response.rb +31 -0
- data/lib/dodopayments/models/webhooks/header_update_params.rb +24 -0
- data/lib/dodopayments/models/your_webhook_url_create_params.rb +32 -0
- data/lib/dodopayments/models.rb +241 -0
- data/lib/dodopayments/request_options.rb +4 -0
- data/lib/dodopayments/resources/addons.rb +13 -21
- data/lib/dodopayments/resources/brands.rb +119 -0
- data/lib/dodopayments/resources/customers/customer_portal.rb +3 -3
- data/lib/dodopayments/resources/customers.rb +12 -10
- data/lib/dodopayments/resources/discounts.rb +24 -19
- data/lib/dodopayments/resources/disputes.rb +12 -12
- data/lib/dodopayments/resources/invoices/payments.rb +3 -2
- data/lib/dodopayments/resources/license_key_instances.rb +5 -5
- data/lib/dodopayments/resources/license_keys.rb +13 -13
- data/lib/dodopayments/resources/licenses.rb +4 -4
- data/lib/dodopayments/resources/misc.rb +1 -1
- data/lib/dodopayments/resources/payments.rb +38 -19
- data/lib/dodopayments/resources/payouts.rb +3 -3
- data/lib/dodopayments/resources/products/images.rb +2 -2
- data/lib/dodopayments/resources/products.rb +58 -24
- data/lib/dodopayments/resources/refunds.rb +14 -12
- data/lib/dodopayments/resources/subscriptions.rb +44 -29
- data/lib/dodopayments/resources/webhook_events.rb +0 -52
- data/lib/dodopayments/resources/webhooks/headers.rb +59 -0
- data/lib/dodopayments/resources/webhooks.rb +157 -0
- data/lib/dodopayments/resources/your_webhook_url.rb +56 -0
- data/lib/dodopayments/version.rb +1 -1
- data/lib/dodopayments.rb +47 -8
- data/rbi/dodopayments/client.rbi +24 -10
- data/rbi/dodopayments/errors.rbi +51 -16
- data/rbi/dodopayments/file_part.rbi +9 -6
- data/rbi/dodopayments/internal/cursor_page_pagination.rbi +25 -0
- data/rbi/dodopayments/internal/default_page_number_pagination.rbi +2 -1
- data/rbi/dodopayments/internal/transport/base_client.rbi +165 -77
- data/rbi/dodopayments/internal/transport/pooled_net_requester.rbi +33 -13
- data/rbi/dodopayments/internal/type/array_of.rbi +40 -24
- data/rbi/dodopayments/internal/type/base_model.rbi +160 -70
- data/rbi/dodopayments/internal/type/base_page.rbi +13 -8
- data/rbi/dodopayments/internal/type/boolean.rbi +24 -14
- data/rbi/dodopayments/internal/type/converter.rbi +135 -33
- data/rbi/dodopayments/internal/type/enum.rbi +29 -13
- data/rbi/dodopayments/internal/type/file_input.rbi +13 -4
- data/rbi/dodopayments/internal/type/hash_of.rbi +40 -24
- data/rbi/dodopayments/internal/type/request_parameters.rbi +14 -4
- data/rbi/dodopayments/internal/type/union.rbi +71 -23
- data/rbi/dodopayments/internal/type/unknown.rbi +24 -6
- data/rbi/dodopayments/internal/util.rbi +274 -89
- data/rbi/dodopayments/internal.rbi +7 -0
- data/rbi/dodopayments/models/addon_cart_response_item.rbi +16 -4
- data/rbi/dodopayments/models/addon_create_params.rbi +33 -24
- data/rbi/dodopayments/models/addon_list_params.rbi +29 -17
- data/rbi/dodopayments/models/addon_response.rbi +33 -27
- data/rbi/dodopayments/models/addon_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/addon_update_images_params.rbi +18 -5
- data/rbi/dodopayments/models/addon_update_images_response.rbi +13 -3
- data/rbi/dodopayments/models/addon_update_params.rbi +34 -25
- data/rbi/dodopayments/models/attach_addon.rbi +28 -0
- data/rbi/dodopayments/models/attach_existing_customer.rbi +13 -3
- data/rbi/dodopayments/models/billing_address.rbi +24 -12
- data/rbi/dodopayments/models/brand.rbi +132 -0
- data/rbi/dodopayments/models/brand_create_params.rbi +68 -0
- data/rbi/dodopayments/models/brand_list_params.rbi +29 -0
- data/rbi/dodopayments/models/brand_list_response.rbi +34 -0
- data/rbi/dodopayments/models/brand_retrieve_params.rbi +32 -0
- data/rbi/dodopayments/models/brand_update_images_params.rbi +32 -0
- data/rbi/dodopayments/models/brand_update_images_response.rbi +36 -0
- data/rbi/dodopayments/models/brand_update_params.rbi +64 -0
- data/rbi/dodopayments/models/country_code.rbi +255 -252
- data/rbi/dodopayments/models/create_new_customer.rbi +27 -11
- data/rbi/dodopayments/models/currency.rbi +149 -148
- data/rbi/dodopayments/models/customer.rbi +27 -15
- data/rbi/dodopayments/models/customer_create_params.rbi +22 -14
- data/rbi/dodopayments/models/customer_limited_details.rbi +21 -4
- data/rbi/dodopayments/models/customer_list_params.rbi +43 -17
- data/rbi/dodopayments/models/customer_portal_session.rbi +13 -3
- data/rbi/dodopayments/models/customer_request.rbi +10 -2
- data/rbi/dodopayments/models/customer_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/customer_update_params.rbi +21 -13
- data/rbi/dodopayments/models/customers/customer_portal_create_params.rbi +26 -8
- data/rbi/dodopayments/models/discount.rbi +42 -22
- data/rbi/dodopayments/models/discount_create_params.rbi +43 -20
- data/rbi/dodopayments/models/discount_delete_params.rbi +18 -5
- data/rbi/dodopayments/models/discount_list_params.rbi +32 -17
- data/rbi/dodopayments/models/discount_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/discount_type.rbi +7 -4
- data/rbi/dodopayments/models/discount_update_params.rbi +43 -20
- data/rbi/dodopayments/models/dispute.rbi +41 -23
- data/rbi/dodopayments/models/dispute_list_params.rbi +178 -33
- data/rbi/dodopayments/models/dispute_list_response.rbi +98 -0
- data/rbi/dodopayments/models/dispute_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/dispute_stage.rbi +11 -6
- data/rbi/dodopayments/models/dispute_status.rbi +20 -10
- data/rbi/dodopayments/models/get_dispute.rbi +124 -0
- data/rbi/dodopayments/models/intent_status.rbi +32 -14
- data/rbi/dodopayments/models/invoices/payment_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/license_activate_params.rbi +21 -6
- data/rbi/dodopayments/models/license_deactivate_params.rbi +21 -13
- data/rbi/dodopayments/models/license_key.rbi +31 -23
- data/rbi/dodopayments/models/license_key_duration.rbi +24 -5
- data/rbi/dodopayments/models/license_key_instance.rbi +19 -4
- data/rbi/dodopayments/models/license_key_instance_list_params.rbi +23 -14
- data/rbi/dodopayments/models/license_key_instance_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/license_key_instance_update_params.rbi +19 -6
- data/rbi/dodopayments/models/license_key_list_params.rbi +91 -26
- data/rbi/dodopayments/models/license_key_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/license_key_status.rbi +10 -6
- data/rbi/dodopayments/models/license_key_update_params.rbi +23 -14
- data/rbi/dodopayments/models/license_validate_params.rbi +25 -13
- data/rbi/dodopayments/models/license_validate_response.rbi +13 -3
- data/rbi/dodopayments/models/misc_list_supported_countries_params.rbi +18 -5
- data/rbi/dodopayments/models/misc_list_supported_countries_response.rbi +1 -1
- data/rbi/dodopayments/models/new_customer.rbi +39 -0
- data/rbi/dodopayments/models/one_time_product_cart_item.rbi +23 -4
- data/rbi/dodopayments/models/payment.rbi +149 -54
- data/rbi/dodopayments/models/payment_create_params.rbi +67 -87
- data/rbi/dodopayments/models/payment_create_response.rbi +45 -22
- data/rbi/dodopayments/models/payment_list_params.rbi +149 -32
- data/rbi/dodopayments/models/payment_list_response.rbi +47 -26
- data/rbi/dodopayments/models/payment_method_types.rbi +52 -0
- data/rbi/dodopayments/models/payment_retrieve_line_items_params.rbi +32 -0
- data/rbi/dodopayments/models/payment_retrieve_line_items_response.rbi +114 -0
- data/rbi/dodopayments/models/payment_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/payout_list_params.rbi +29 -17
- data/rbi/dodopayments/models/payout_list_response.rbi +82 -35
- data/rbi/dodopayments/models/price.rbi +142 -55
- data/rbi/dodopayments/models/product.rbi +177 -38
- data/rbi/dodopayments/models/product_create_params.rbi +151 -36
- data/rbi/dodopayments/models/product_delete_params.rbi +18 -5
- data/rbi/dodopayments/models/product_list_params.rbi +50 -21
- data/rbi/dodopayments/models/product_list_response.rbi +57 -42
- data/rbi/dodopayments/models/product_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/product_unarchive_params.rbi +18 -5
- data/rbi/dodopayments/models/product_update_files_params.rbi +38 -0
- data/rbi/dodopayments/models/product_update_files_response.rbi +29 -0
- data/rbi/dodopayments/models/product_update_params.rbi +160 -37
- data/rbi/dodopayments/models/products/image_update_params.rbi +20 -8
- data/rbi/dodopayments/models/products/image_update_response.rbi +18 -4
- data/rbi/dodopayments/models/refund.rbi +39 -21
- data/rbi/dodopayments/models/refund_create_params.rbi +87 -11
- data/rbi/dodopayments/models/refund_list_params.rbi +86 -29
- data/rbi/dodopayments/models/refund_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/refund_status.rbi +10 -7
- data/rbi/dodopayments/models/subscription.rbi +83 -47
- data/rbi/dodopayments/models/subscription_change_plan_params.rbi +68 -21
- data/rbi/dodopayments/models/subscription_charge_params.rbi +65 -6
- data/rbi/dodopayments/models/subscription_charge_response.rbi +13 -3
- data/rbi/dodopayments/models/subscription_create_params.rbi +136 -128
- data/rbi/dodopayments/models/subscription_create_response.rbi +51 -22
- data/rbi/dodopayments/models/subscription_list_params.rbi +125 -29
- data/rbi/dodopayments/models/subscription_list_response.rbi +85 -44
- data/rbi/dodopayments/models/subscription_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/subscription_status.rbi +16 -10
- data/rbi/dodopayments/models/subscription_update_params.rbi +63 -33
- data/rbi/dodopayments/models/tax_category.rbi +11 -7
- data/rbi/dodopayments/models/time_interval.rbi +10 -7
- data/rbi/dodopayments/models/webhook_create_params.rbi +115 -0
- data/rbi/dodopayments/models/webhook_create_response.rbi +112 -0
- data/rbi/dodopayments/models/webhook_delete_params.rbi +32 -0
- data/rbi/dodopayments/models/webhook_event_type.rbi +102 -0
- data/rbi/dodopayments/models/webhook_list_params.rbi +54 -0
- data/rbi/dodopayments/models/webhook_list_response.rbi +112 -0
- data/rbi/dodopayments/models/webhook_payload.rbi +440 -0
- data/rbi/dodopayments/models/webhook_retrieve_params.rbi +32 -0
- data/rbi/dodopayments/models/webhook_retrieve_response.rbi +112 -0
- data/rbi/dodopayments/models/webhook_update_params.rbi +94 -0
- data/rbi/dodopayments/models/webhook_update_response.rbi +112 -0
- data/rbi/dodopayments/models/webhooks/header_retrieve_params.rbi +34 -0
- data/rbi/dodopayments/models/webhooks/header_retrieve_response.rbi +50 -0
- data/rbi/dodopayments/models/webhooks/header_update_params.rbi +48 -0
- data/rbi/dodopayments/models/your_webhook_url_create_params.rbi +56 -0
- data/rbi/dodopayments/models.rbi +209 -0
- data/rbi/dodopayments/request_options.rbi +18 -7
- data/rbi/dodopayments/resources/addons.rbi +44 -27
- data/rbi/dodopayments/resources/brands.rbi +89 -0
- data/rbi/dodopayments/resources/customers/customer_portal.rbi +8 -6
- data/rbi/dodopayments/resources/customers.rbi +31 -17
- data/rbi/dodopayments/resources/discounts.rbi +54 -22
- data/rbi/dodopayments/resources/disputes.rbi +26 -14
- data/rbi/dodopayments/resources/invoices/payments.rbi +10 -3
- data/rbi/dodopayments/resources/invoices.rbi +2 -1
- data/rbi/dodopayments/resources/license_key_instances.rbi +25 -10
- data/rbi/dodopayments/resources/license_keys.rbi +29 -15
- data/rbi/dodopayments/resources/licenses.rbi +25 -12
- data/rbi/dodopayments/resources/misc.rbi +7 -4
- data/rbi/dodopayments/resources/payments.rbi +61 -27
- data/rbi/dodopayments/resources/payouts.rbi +12 -6
- data/rbi/dodopayments/resources/products/images.rbi +10 -4
- data/rbi/dodopayments/resources/products.rbi +118 -41
- data/rbi/dodopayments/resources/refunds.rbi +35 -15
- data/rbi/dodopayments/resources/subscriptions.rbi +98 -50
- data/rbi/dodopayments/resources/webhook_events.rbi +2 -34
- data/rbi/dodopayments/resources/webhooks/headers.rbi +40 -0
- data/rbi/dodopayments/resources/webhooks.rbi +127 -0
- data/rbi/dodopayments/resources/your_webhook_url.rbi +51 -0
- data/sig/dodopayments/client.rbs +8 -2
- data/sig/dodopayments/errors.rbs +9 -0
- data/sig/dodopayments/internal/cursor_page_pagination.rbs +15 -0
- data/sig/dodopayments/internal/transport/base_client.rbs +17 -2
- data/sig/dodopayments/internal/transport/pooled_net_requester.rbs +4 -0
- data/sig/dodopayments/internal/type/array_of.rbs +3 -0
- data/sig/dodopayments/internal/type/base_model.rbs +13 -5
- data/sig/dodopayments/internal/type/base_page.rbs +1 -1
- data/sig/dodopayments/internal/type/boolean.rbs +3 -0
- data/sig/dodopayments/internal/type/converter.rbs +26 -1
- data/sig/dodopayments/internal/type/enum.rbs +3 -0
- data/sig/dodopayments/internal/type/file_input.rbs +2 -0
- data/sig/dodopayments/internal/type/hash_of.rbs +3 -0
- data/sig/dodopayments/internal/type/request_parameters.rbs +5 -1
- data/sig/dodopayments/internal/type/union.rbs +5 -2
- data/sig/dodopayments/internal/type/unknown.rbs +3 -0
- data/sig/dodopayments/internal/util.rbs +27 -0
- data/sig/dodopayments/internal.rbs +4 -0
- data/sig/dodopayments/models/addon_cart_response_item.rbs +1 -1
- data/sig/dodopayments/models/addon_create_params.rbs +8 -1
- data/sig/dodopayments/models/addon_list_params.rbs +14 -6
- data/sig/dodopayments/models/addon_response.rbs +12 -1
- data/sig/dodopayments/models/addon_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/addon_update_images_params.rbs +1 -1
- data/sig/dodopayments/models/addon_update_images_response.rbs +1 -1
- data/sig/dodopayments/models/addon_update_params.rbs +9 -1
- data/sig/dodopayments/models/attach_addon.rbs +15 -0
- data/sig/dodopayments/models/attach_existing_customer.rbs +1 -1
- data/sig/dodopayments/models/billing_address.rbs +7 -1
- data/sig/dodopayments/models/brand.rbs +88 -0
- data/sig/dodopayments/models/brand_create_params.rbs +46 -0
- data/sig/dodopayments/models/{webhook_event_retrieve_params.rbs → brand_list_params.rbs} +3 -3
- data/sig/dodopayments/models/brand_list_response.rbs +13 -0
- data/sig/dodopayments/models/brand_retrieve_params.rbs +15 -0
- data/sig/dodopayments/models/brand_update_images_params.rbs +15 -0
- data/sig/dodopayments/models/brand_update_images_response.rbs +15 -0
- data/sig/dodopayments/models/brand_update_params.rbs +41 -0
- data/sig/dodopayments/models/create_new_customer.rbs +6 -1
- data/sig/dodopayments/models/customer.rbs +8 -1
- data/sig/dodopayments/models/customer_create_params.rbs +6 -1
- data/sig/dodopayments/models/customer_limited_details.rbs +1 -1
- data/sig/dodopayments/models/customer_list_params.rbs +20 -6
- data/sig/dodopayments/models/customer_portal_session.rbs +1 -1
- data/sig/dodopayments/models/customer_request.rbs +2 -3
- data/sig/dodopayments/models/customer_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/customer_update_params.rbs +5 -1
- data/sig/dodopayments/models/customers/customer_portal_create_params.rbs +9 -4
- data/sig/dodopayments/models/discount.rbs +18 -1
- data/sig/dodopayments/models/discount_create_params.rbs +15 -1
- data/sig/dodopayments/models/discount_delete_params.rbs +1 -1
- data/sig/dodopayments/models/discount_list_params.rbs +14 -6
- data/sig/dodopayments/models/discount_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/discount_update_params.rbs +15 -1
- data/sig/dodopayments/models/dispute.rbs +17 -3
- data/sig/dodopayments/models/dispute_list_params.rbs +84 -22
- data/sig/dodopayments/models/dispute_list_response.rbs +55 -0
- data/sig/dodopayments/models/dispute_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/get_dispute.rbs +70 -0
- data/sig/dodopayments/models/invoices/payment_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/license_activate_params.rbs +5 -1
- data/sig/dodopayments/models/license_deactivate_params.rbs +5 -1
- data/sig/dodopayments/models/license_key.rbs +14 -1
- data/sig/dodopayments/models/license_key_duration.rbs +4 -1
- data/sig/dodopayments/models/license_key_instance.rbs +7 -1
- data/sig/dodopayments/models/license_key_instance_list_params.rbs +6 -1
- data/sig/dodopayments/models/license_key_instance_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/license_key_instance_update_params.rbs +4 -1
- data/sig/dodopayments/models/license_key_list_params.rbs +47 -16
- data/sig/dodopayments/models/license_key_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/license_key_update_params.rbs +6 -1
- data/sig/dodopayments/models/license_validate_params.rbs +5 -1
- data/sig/dodopayments/models/license_validate_response.rbs +1 -1
- data/sig/dodopayments/models/misc_list_supported_countries_params.rbs +1 -1
- data/sig/dodopayments/models/new_customer.rbs +21 -0
- data/sig/dodopayments/models/one_time_product_cart_item.rbs +5 -1
- data/sig/dodopayments/models/payment.rbs +76 -17
- data/sig/dodopayments/models/payment_create_params.rbs +23 -55
- data/sig/dodopayments/models/payment_create_response.rbs +21 -7
- data/sig/dodopayments/models/payment_list_params.rbs +85 -22
- data/sig/dodopayments/models/payment_list_response.rbs +25 -4
- data/sig/dodopayments/models/payment_method_types.rbs +48 -0
- data/sig/dodopayments/models/payment_retrieve_line_items_params.rbs +15 -0
- data/sig/dodopayments/models/payment_retrieve_line_items_response.rbs +67 -0
- data/sig/dodopayments/models/payment_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/payout_list_params.rbs +14 -6
- data/sig/dodopayments/models/payout_list_response.rbs +17 -1
- data/sig/dodopayments/models/price.rbs +53 -13
- data/sig/dodopayments/models/product.rbs +80 -4
- data/sig/dodopayments/models/product_create_params.rbs +45 -4
- data/sig/dodopayments/models/product_delete_params.rbs +1 -1
- data/sig/dodopayments/models/product_list_params.rbs +29 -10
- data/sig/dodopayments/models/product_list_response.rbs +20 -1
- data/sig/dodopayments/models/product_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/product_unarchive_params.rbs +1 -1
- data/sig/dodopayments/models/product_update_files_params.rbs +23 -0
- data/sig/dodopayments/models/product_update_files_response.rbs +15 -0
- data/sig/dodopayments/models/product_update_params.rbs +58 -4
- data/sig/dodopayments/models/products/image_update_params.rbs +9 -4
- data/sig/dodopayments/models/products/image_update_response.rbs +1 -1
- data/sig/dodopayments/models/refund.rbs +15 -1
- data/sig/dodopayments/models/refund_create_params.rbs +38 -2
- data/sig/dodopayments/models/refund_list_params.rbs +54 -19
- data/sig/dodopayments/models/refund_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/subscription.rbs +43 -10
- data/sig/dodopayments/models/subscription_change_plan_params.rbs +16 -3
- data/sig/dodopayments/models/subscription_charge_params.rbs +27 -2
- data/sig/dodopayments/models/subscription_charge_response.rbs +1 -1
- data/sig/dodopayments/models/subscription_create_params.rbs +58 -73
- data/sig/dodopayments/models/subscription_create_response.rbs +26 -7
- data/sig/dodopayments/models/subscription_list_params.rbs +64 -19
- data/sig/dodopayments/models/subscription_list_response.rbs +39 -7
- data/sig/dodopayments/models/subscription_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/subscription_status.rbs +1 -2
- data/sig/dodopayments/models/subscription_update_params.rbs +20 -8
- data/sig/dodopayments/models/webhook_create_params.rbs +65 -0
- data/sig/dodopayments/models/webhook_create_response.rbs +60 -0
- data/sig/dodopayments/models/webhook_delete_params.rbs +15 -0
- data/sig/dodopayments/models/webhook_event_type.rbs +54 -0
- data/sig/dodopayments/models/webhook_list_params.rbs +28 -0
- data/sig/dodopayments/models/webhook_list_response.rbs +60 -0
- data/sig/dodopayments/models/webhook_payload.rbs +203 -0
- data/sig/dodopayments/models/webhook_retrieve_params.rbs +15 -0
- data/sig/dodopayments/models/webhook_retrieve_response.rbs +60 -0
- data/sig/dodopayments/models/webhook_update_params.rbs +51 -0
- data/sig/dodopayments/models/webhook_update_response.rbs +60 -0
- data/sig/dodopayments/models/webhooks/header_retrieve_params.rbs +17 -0
- data/sig/dodopayments/models/webhooks/header_retrieve_response.rbs +24 -0
- data/sig/dodopayments/models/webhooks/header_update_params.rbs +26 -0
- data/sig/dodopayments/models/your_webhook_url_create_params.rbs +42 -0
- data/sig/dodopayments/models.rbs +201 -0
- data/sig/dodopayments/request_options.rbs +1 -1
- data/sig/dodopayments/resources/addons.rbs +6 -6
- data/sig/dodopayments/resources/brands.rbs +39 -0
- data/sig/dodopayments/resources/customers/customer_portal.rbs +2 -2
- data/sig/dodopayments/resources/customers.rbs +7 -6
- data/sig/dodopayments/resources/discounts.rbs +8 -6
- data/sig/dodopayments/resources/disputes.rbs +9 -9
- data/sig/dodopayments/resources/invoices/payments.rbs +1 -1
- data/sig/dodopayments/resources/license_key_instances.rbs +3 -3
- data/sig/dodopayments/resources/license_keys.rbs +8 -8
- data/sig/dodopayments/resources/licenses.rbs +1 -1
- data/sig/dodopayments/resources/payments.rbs +17 -11
- data/sig/dodopayments/resources/payouts.rbs +2 -2
- data/sig/dodopayments/resources/products/images.rbs +1 -1
- data/sig/dodopayments/resources/products.rbs +20 -7
- data/sig/dodopayments/resources/refunds.rbs +10 -9
- data/sig/dodopayments/resources/subscriptions.rbs +21 -14
- data/sig/dodopayments/resources/webhook_events.rbs +0 -15
- data/sig/dodopayments/resources/webhooks/headers.rbs +20 -0
- data/sig/dodopayments/resources/webhooks.rbs +48 -0
- data/sig/dodopayments/resources/your_webhook_url.rbs +18 -0
- metadata +116 -11
- data/lib/dodopayments/models/webhook_event.rb +0 -58
- data/lib/dodopayments/models/webhook_event_list_params.rb +0 -66
- data/rbi/dodopayments/models/webhook_event.rbi +0 -71
- data/rbi/dodopayments/models/webhook_event_list_params.rbi +0 -77
- data/rbi/dodopayments/models/webhook_event_retrieve_params.rbi +0 -19
- data/sig/dodopayments/models/webhook_event.rbs +0 -46
- data/sig/dodopayments/models/webhook_event_list_params.rbs +0 -43
@@ -6,41 +6,67 @@ module Dodopayments
|
|
6
6
|
extend Dodopayments::Internal::Type::RequestParameters::Converter
|
7
7
|
include Dodopayments::Internal::Type::RequestParameters
|
8
8
|
|
9
|
+
OrHash =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(Dodopayments::RefundListParams, Dodopayments::Internal::AnyHash)
|
12
|
+
end
|
13
|
+
|
9
14
|
# Get events after this created time
|
10
15
|
sig { returns(T.nilable(Time)) }
|
11
|
-
|
16
|
+
attr_reader :created_at_gte
|
17
|
+
|
18
|
+
sig { params(created_at_gte: Time).void }
|
19
|
+
attr_writer :created_at_gte
|
12
20
|
|
13
21
|
# Get events created before this time
|
14
22
|
sig { returns(T.nilable(Time)) }
|
15
|
-
|
23
|
+
attr_reader :created_at_lte
|
24
|
+
|
25
|
+
sig { params(created_at_lte: Time).void }
|
26
|
+
attr_writer :created_at_lte
|
16
27
|
|
17
28
|
# Filter by customer_id
|
18
29
|
sig { returns(T.nilable(String)) }
|
19
|
-
|
30
|
+
attr_reader :customer_id
|
31
|
+
|
32
|
+
sig { params(customer_id: String).void }
|
33
|
+
attr_writer :customer_id
|
20
34
|
|
21
35
|
# Page number default is 0
|
22
36
|
sig { returns(T.nilable(Integer)) }
|
23
|
-
|
37
|
+
attr_reader :page_number
|
38
|
+
|
39
|
+
sig { params(page_number: Integer).void }
|
40
|
+
attr_writer :page_number
|
24
41
|
|
25
42
|
# Page size default is 10 max is 100
|
26
43
|
sig { returns(T.nilable(Integer)) }
|
27
|
-
|
44
|
+
attr_reader :page_size
|
45
|
+
|
46
|
+
sig { params(page_size: Integer).void }
|
47
|
+
attr_writer :page_size
|
28
48
|
|
29
49
|
# Filter by status
|
30
|
-
sig
|
31
|
-
|
50
|
+
sig do
|
51
|
+
returns(T.nilable(Dodopayments::RefundListParams::Status::OrSymbol))
|
52
|
+
end
|
53
|
+
attr_reader :status
|
54
|
+
|
55
|
+
sig do
|
56
|
+
params(status: Dodopayments::RefundListParams::Status::OrSymbol).void
|
57
|
+
end
|
58
|
+
attr_writer :status
|
32
59
|
|
33
60
|
sig do
|
34
61
|
params(
|
35
|
-
created_at_gte:
|
36
|
-
created_at_lte:
|
37
|
-
customer_id:
|
38
|
-
page_number:
|
39
|
-
page_size:
|
40
|
-
status:
|
41
|
-
request_options:
|
42
|
-
)
|
43
|
-
.returns(T.attached_class)
|
62
|
+
created_at_gte: Time,
|
63
|
+
created_at_lte: Time,
|
64
|
+
customer_id: String,
|
65
|
+
page_number: Integer,
|
66
|
+
page_size: Integer,
|
67
|
+
status: Dodopayments::RefundListParams::Status::OrSymbol,
|
68
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
69
|
+
).returns(T.attached_class)
|
44
70
|
end
|
45
71
|
def self.new(
|
46
72
|
# Get events after this created time
|
@@ -56,22 +82,53 @@ module Dodopayments
|
|
56
82
|
# Filter by status
|
57
83
|
status: nil,
|
58
84
|
request_options: {}
|
59
|
-
)
|
85
|
+
)
|
86
|
+
end
|
87
|
+
|
60
88
|
sig do
|
61
|
-
override
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
89
|
+
override.returns(
|
90
|
+
{
|
91
|
+
created_at_gte: Time,
|
92
|
+
created_at_lte: Time,
|
93
|
+
customer_id: String,
|
94
|
+
page_number: Integer,
|
95
|
+
page_size: Integer,
|
96
|
+
status: Dodopayments::RefundListParams::Status::OrSymbol,
|
97
|
+
request_options: Dodopayments::RequestOptions
|
98
|
+
}
|
99
|
+
)
|
100
|
+
end
|
101
|
+
def to_hash
|
102
|
+
end
|
103
|
+
|
104
|
+
# Filter by status
|
105
|
+
module Status
|
106
|
+
extend Dodopayments::Internal::Type::Enum
|
107
|
+
|
108
|
+
TaggedSymbol =
|
109
|
+
T.type_alias { T.all(Symbol, Dodopayments::RefundListParams::Status) }
|
110
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
111
|
+
|
112
|
+
SUCCEEDED =
|
113
|
+
T.let(
|
114
|
+
:succeeded,
|
115
|
+
Dodopayments::RefundListParams::Status::TaggedSymbol
|
116
|
+
)
|
117
|
+
FAILED =
|
118
|
+
T.let(:failed, Dodopayments::RefundListParams::Status::TaggedSymbol)
|
119
|
+
PENDING =
|
120
|
+
T.let(:pending, Dodopayments::RefundListParams::Status::TaggedSymbol)
|
121
|
+
REVIEW =
|
122
|
+
T.let(:review, Dodopayments::RefundListParams::Status::TaggedSymbol)
|
123
|
+
|
124
|
+
sig do
|
125
|
+
override.returns(
|
126
|
+
T::Array[Dodopayments::RefundListParams::Status::TaggedSymbol]
|
72
127
|
)
|
128
|
+
end
|
129
|
+
def self.values
|
130
|
+
end
|
73
131
|
end
|
74
|
-
def to_hash; end
|
75
132
|
end
|
76
133
|
end
|
77
134
|
end
|
@@ -6,14 +6,27 @@ module Dodopayments
|
|
6
6
|
extend Dodopayments::Internal::Type::RequestParameters::Converter
|
7
7
|
include Dodopayments::Internal::Type::RequestParameters
|
8
8
|
|
9
|
+
OrHash =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(
|
12
|
+
Dodopayments::RefundRetrieveParams,
|
13
|
+
Dodopayments::Internal::AnyHash
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
9
17
|
sig do
|
10
|
-
params(request_options:
|
11
|
-
|
18
|
+
params(request_options: Dodopayments::RequestOptions::OrHash).returns(
|
19
|
+
T.attached_class
|
20
|
+
)
|
21
|
+
end
|
22
|
+
def self.new(request_options: {})
|
12
23
|
end
|
13
|
-
def self.new(request_options: {}); end
|
14
24
|
|
15
|
-
sig
|
16
|
-
|
25
|
+
sig do
|
26
|
+
override.returns({ request_options: Dodopayments::RequestOptions })
|
27
|
+
end
|
28
|
+
def to_hash
|
29
|
+
end
|
17
30
|
end
|
18
31
|
end
|
19
32
|
end
|
@@ -5,16 +5,19 @@ module Dodopayments
|
|
5
5
|
module RefundStatus
|
6
6
|
extend Dodopayments::Internal::Type::Enum
|
7
7
|
|
8
|
-
TaggedSymbol = T.type_alias { T.all(Symbol, Dodopayments::
|
8
|
+
TaggedSymbol = T.type_alias { T.all(Symbol, Dodopayments::RefundStatus) }
|
9
9
|
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
10
10
|
|
11
|
-
SUCCEEDED = T.let(:succeeded, Dodopayments::
|
12
|
-
FAILED = T.let(:failed, Dodopayments::
|
13
|
-
PENDING = T.let(:pending, Dodopayments::
|
14
|
-
REVIEW = T.let(:review, Dodopayments::
|
11
|
+
SUCCEEDED = T.let(:succeeded, Dodopayments::RefundStatus::TaggedSymbol)
|
12
|
+
FAILED = T.let(:failed, Dodopayments::RefundStatus::TaggedSymbol)
|
13
|
+
PENDING = T.let(:pending, Dodopayments::RefundStatus::TaggedSymbol)
|
14
|
+
REVIEW = T.let(:review, Dodopayments::RefundStatus::TaggedSymbol)
|
15
15
|
|
16
|
-
sig
|
17
|
-
|
16
|
+
sig do
|
17
|
+
override.returns(T::Array[Dodopayments::RefundStatus::TaggedSymbol])
|
18
|
+
end
|
19
|
+
def self.values
|
20
|
+
end
|
18
21
|
end
|
19
22
|
end
|
20
23
|
end
|
@@ -3,31 +3,44 @@
|
|
3
3
|
module Dodopayments
|
4
4
|
module Models
|
5
5
|
class Subscription < Dodopayments::Internal::Type::BaseModel
|
6
|
+
OrHash =
|
7
|
+
T.type_alias do
|
8
|
+
T.any(Dodopayments::Subscription, Dodopayments::Internal::AnyHash)
|
9
|
+
end
|
10
|
+
|
6
11
|
# Addons associated with this subscription
|
7
|
-
sig { returns(T::Array[Dodopayments::
|
12
|
+
sig { returns(T::Array[Dodopayments::AddonCartResponseItem]) }
|
8
13
|
attr_accessor :addons
|
9
14
|
|
10
|
-
|
15
|
+
# Billing address details for payments
|
16
|
+
sig { returns(Dodopayments::BillingAddress) }
|
11
17
|
attr_reader :billing
|
12
18
|
|
13
|
-
sig { params(billing:
|
19
|
+
sig { params(billing: Dodopayments::BillingAddress::OrHash).void }
|
14
20
|
attr_writer :billing
|
15
21
|
|
22
|
+
# Indicates if the subscription will cancel at the next billing date
|
23
|
+
sig { returns(T::Boolean) }
|
24
|
+
attr_accessor :cancel_at_next_billing_date
|
25
|
+
|
16
26
|
# Timestamp when the subscription was created
|
17
27
|
sig { returns(Time) }
|
18
28
|
attr_accessor :created_at
|
19
29
|
|
20
|
-
|
30
|
+
# Currency used for the subscription payments
|
31
|
+
sig { returns(Dodopayments::Currency::OrSymbol) }
|
21
32
|
attr_accessor :currency
|
22
33
|
|
23
|
-
|
34
|
+
# Customer details associated with the subscription
|
35
|
+
sig { returns(Dodopayments::CustomerLimitedDetails) }
|
24
36
|
attr_reader :customer
|
25
37
|
|
26
38
|
sig do
|
27
|
-
params(customer:
|
39
|
+
params(customer: Dodopayments::CustomerLimitedDetails::OrHash).void
|
28
40
|
end
|
29
41
|
attr_writer :customer
|
30
42
|
|
43
|
+
# Additional custom data associated with the subscription
|
31
44
|
sig { returns(T::Hash[Symbol, String]) }
|
32
45
|
attr_accessor :metadata
|
33
46
|
|
@@ -44,7 +57,8 @@ module Dodopayments
|
|
44
57
|
sig { returns(Integer) }
|
45
58
|
attr_accessor :payment_frequency_count
|
46
59
|
|
47
|
-
|
60
|
+
# Time interval for payment frequency (e.g. month, year)
|
61
|
+
sig { returns(Dodopayments::TimeInterval::OrSymbol) }
|
48
62
|
attr_accessor :payment_frequency_interval
|
49
63
|
|
50
64
|
# Timestamp of the last payment. Indicates the start of current billing period
|
@@ -64,7 +78,8 @@ module Dodopayments
|
|
64
78
|
sig { returns(Integer) }
|
65
79
|
attr_accessor :recurring_pre_tax_amount
|
66
80
|
|
67
|
-
|
81
|
+
# Current status of the subscription
|
82
|
+
sig { returns(Dodopayments::SubscriptionStatus::OrSymbol) }
|
68
83
|
attr_accessor :status
|
69
84
|
|
70
85
|
# Unique identifier for the subscription
|
@@ -75,7 +90,8 @@ module Dodopayments
|
|
75
90
|
sig { returns(Integer) }
|
76
91
|
attr_accessor :subscription_period_count
|
77
92
|
|
78
|
-
|
93
|
+
# Time interval for the subscription period (e.g. month, year)
|
94
|
+
sig { returns(Dodopayments::TimeInterval::OrSymbol) }
|
79
95
|
attr_accessor :subscription_period_interval
|
80
96
|
|
81
97
|
# Indicates if the recurring_pre_tax_amount is tax inclusive
|
@@ -90,6 +106,10 @@ module Dodopayments
|
|
90
106
|
sig { returns(T.nilable(Time)) }
|
91
107
|
attr_accessor :cancelled_at
|
92
108
|
|
109
|
+
# Number of remaining discount cycles if discount is applied
|
110
|
+
sig { returns(T.nilable(Integer)) }
|
111
|
+
attr_accessor :discount_cycles_remaining
|
112
|
+
|
93
113
|
# The discount id if discount is applied
|
94
114
|
sig { returns(T.nilable(String)) }
|
95
115
|
attr_accessor :discount_id
|
@@ -97,39 +117,46 @@ module Dodopayments
|
|
97
117
|
# Response struct representing subscription details
|
98
118
|
sig do
|
99
119
|
params(
|
100
|
-
addons: T::Array[
|
101
|
-
billing:
|
120
|
+
addons: T::Array[Dodopayments::AddonCartResponseItem::OrHash],
|
121
|
+
billing: Dodopayments::BillingAddress::OrHash,
|
122
|
+
cancel_at_next_billing_date: T::Boolean,
|
102
123
|
created_at: Time,
|
103
|
-
currency: Dodopayments::
|
104
|
-
customer:
|
124
|
+
currency: Dodopayments::Currency::OrSymbol,
|
125
|
+
customer: Dodopayments::CustomerLimitedDetails::OrHash,
|
105
126
|
metadata: T::Hash[Symbol, String],
|
106
127
|
next_billing_date: Time,
|
107
128
|
on_demand: T::Boolean,
|
108
129
|
payment_frequency_count: Integer,
|
109
|
-
payment_frequency_interval: Dodopayments::
|
130
|
+
payment_frequency_interval: Dodopayments::TimeInterval::OrSymbol,
|
110
131
|
previous_billing_date: Time,
|
111
132
|
product_id: String,
|
112
133
|
quantity: Integer,
|
113
134
|
recurring_pre_tax_amount: Integer,
|
114
|
-
status: Dodopayments::
|
135
|
+
status: Dodopayments::SubscriptionStatus::OrSymbol,
|
115
136
|
subscription_id: String,
|
116
137
|
subscription_period_count: Integer,
|
117
|
-
subscription_period_interval: Dodopayments::
|
138
|
+
subscription_period_interval: Dodopayments::TimeInterval::OrSymbol,
|
118
139
|
tax_inclusive: T::Boolean,
|
119
140
|
trial_period_days: Integer,
|
120
141
|
cancelled_at: T.nilable(Time),
|
142
|
+
discount_cycles_remaining: T.nilable(Integer),
|
121
143
|
discount_id: T.nilable(String)
|
122
|
-
)
|
123
|
-
.returns(T.attached_class)
|
144
|
+
).returns(T.attached_class)
|
124
145
|
end
|
125
146
|
def self.new(
|
126
147
|
# Addons associated with this subscription
|
127
148
|
addons:,
|
149
|
+
# Billing address details for payments
|
128
150
|
billing:,
|
151
|
+
# Indicates if the subscription will cancel at the next billing date
|
152
|
+
cancel_at_next_billing_date:,
|
129
153
|
# Timestamp when the subscription was created
|
130
154
|
created_at:,
|
155
|
+
# Currency used for the subscription payments
|
131
156
|
currency:,
|
157
|
+
# Customer details associated with the subscription
|
132
158
|
customer:,
|
159
|
+
# Additional custom data associated with the subscription
|
133
160
|
metadata:,
|
134
161
|
# Timestamp of the next scheduled billing. Indicates the end of current billing
|
135
162
|
# period
|
@@ -138,6 +165,7 @@ module Dodopayments
|
|
138
165
|
on_demand:,
|
139
166
|
# Number of payment frequency intervals
|
140
167
|
payment_frequency_count:,
|
168
|
+
# Time interval for payment frequency (e.g. month, year)
|
141
169
|
payment_frequency_interval:,
|
142
170
|
# Timestamp of the last payment. Indicates the start of current billing period
|
143
171
|
previous_billing_date:,
|
@@ -148,11 +176,13 @@ module Dodopayments
|
|
148
176
|
# Amount charged before tax for each recurring payment in smallest currency unit
|
149
177
|
# (e.g. cents)
|
150
178
|
recurring_pre_tax_amount:,
|
179
|
+
# Current status of the subscription
|
151
180
|
status:,
|
152
181
|
# Unique identifier for the subscription
|
153
182
|
subscription_id:,
|
154
183
|
# Number of subscription period intervals
|
155
184
|
subscription_period_count:,
|
185
|
+
# Time interval for the subscription period (e.g. month, year)
|
156
186
|
subscription_period_interval:,
|
157
187
|
# Indicates if the recurring_pre_tax_amount is tax inclusive
|
158
188
|
tax_inclusive:,
|
@@ -160,39 +190,45 @@ module Dodopayments
|
|
160
190
|
trial_period_days:,
|
161
191
|
# Cancelled timestamp if the subscription is cancelled
|
162
192
|
cancelled_at: nil,
|
193
|
+
# Number of remaining discount cycles if discount is applied
|
194
|
+
discount_cycles_remaining: nil,
|
163
195
|
# The discount id if discount is applied
|
164
196
|
discount_id: nil
|
165
|
-
)
|
197
|
+
)
|
198
|
+
end
|
199
|
+
|
166
200
|
sig do
|
167
|
-
override
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
201
|
+
override.returns(
|
202
|
+
{
|
203
|
+
addons: T::Array[Dodopayments::AddonCartResponseItem],
|
204
|
+
billing: Dodopayments::BillingAddress,
|
205
|
+
cancel_at_next_billing_date: T::Boolean,
|
206
|
+
created_at: Time,
|
207
|
+
currency: Dodopayments::Currency::OrSymbol,
|
208
|
+
customer: Dodopayments::CustomerLimitedDetails,
|
209
|
+
metadata: T::Hash[Symbol, String],
|
210
|
+
next_billing_date: Time,
|
211
|
+
on_demand: T::Boolean,
|
212
|
+
payment_frequency_count: Integer,
|
213
|
+
payment_frequency_interval: Dodopayments::TimeInterval::OrSymbol,
|
214
|
+
previous_billing_date: Time,
|
215
|
+
product_id: String,
|
216
|
+
quantity: Integer,
|
217
|
+
recurring_pre_tax_amount: Integer,
|
218
|
+
status: Dodopayments::SubscriptionStatus::OrSymbol,
|
219
|
+
subscription_id: String,
|
220
|
+
subscription_period_count: Integer,
|
221
|
+
subscription_period_interval: Dodopayments::TimeInterval::OrSymbol,
|
222
|
+
tax_inclusive: T::Boolean,
|
223
|
+
trial_period_days: Integer,
|
224
|
+
cancelled_at: T.nilable(Time),
|
225
|
+
discount_cycles_remaining: T.nilable(Integer),
|
226
|
+
discount_id: T.nilable(String)
|
227
|
+
}
|
228
|
+
)
|
229
|
+
end
|
230
|
+
def to_hash
|
194
231
|
end
|
195
|
-
def to_hash; end
|
196
232
|
end
|
197
233
|
end
|
198
234
|
end
|
@@ -6,65 +6,112 @@ module Dodopayments
|
|
6
6
|
extend Dodopayments::Internal::Type::RequestParameters::Converter
|
7
7
|
include Dodopayments::Internal::Type::RequestParameters
|
8
8
|
|
9
|
+
OrHash =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(
|
12
|
+
Dodopayments::SubscriptionChangePlanParams,
|
13
|
+
Dodopayments::Internal::AnyHash
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
9
17
|
# Unique identifier of the product to subscribe to
|
10
18
|
sig { returns(String) }
|
11
19
|
attr_accessor :product_id
|
12
20
|
|
13
|
-
|
21
|
+
# Proration Billing Mode
|
22
|
+
sig do
|
23
|
+
returns(
|
24
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::OrSymbol
|
25
|
+
)
|
26
|
+
end
|
14
27
|
attr_accessor :proration_billing_mode
|
15
28
|
|
16
29
|
# Number of units to subscribe for. Must be at least 1.
|
17
30
|
sig { returns(Integer) }
|
18
31
|
attr_accessor :quantity
|
19
32
|
|
33
|
+
# Addons for the new plan. Note : Leaving this empty would remove any existing
|
34
|
+
# addons
|
35
|
+
sig { returns(T.nilable(T::Array[Dodopayments::AttachAddon])) }
|
36
|
+
attr_accessor :addons
|
37
|
+
|
20
38
|
sig do
|
21
39
|
params(
|
22
40
|
product_id: String,
|
23
|
-
proration_billing_mode:
|
41
|
+
proration_billing_mode:
|
42
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::OrSymbol,
|
24
43
|
quantity: Integer,
|
25
|
-
|
26
|
-
|
27
|
-
|
44
|
+
addons: T.nilable(T::Array[Dodopayments::AttachAddon::OrHash]),
|
45
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
46
|
+
).returns(T.attached_class)
|
28
47
|
end
|
29
48
|
def self.new(
|
30
49
|
# Unique identifier of the product to subscribe to
|
31
50
|
product_id:,
|
51
|
+
# Proration Billing Mode
|
32
52
|
proration_billing_mode:,
|
33
53
|
# Number of units to subscribe for. Must be at least 1.
|
34
54
|
quantity:,
|
55
|
+
# Addons for the new plan. Note : Leaving this empty would remove any existing
|
56
|
+
# addons
|
57
|
+
addons: nil,
|
35
58
|
request_options: {}
|
36
|
-
)
|
59
|
+
)
|
60
|
+
end
|
61
|
+
|
37
62
|
sig do
|
38
|
-
override
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
63
|
+
override.returns(
|
64
|
+
{
|
65
|
+
product_id: String,
|
66
|
+
proration_billing_mode:
|
67
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::OrSymbol,
|
68
|
+
quantity: Integer,
|
69
|
+
addons: T.nilable(T::Array[Dodopayments::AttachAddon]),
|
70
|
+
request_options: Dodopayments::RequestOptions
|
71
|
+
}
|
72
|
+
)
|
73
|
+
end
|
74
|
+
def to_hash
|
47
75
|
end
|
48
|
-
def to_hash; end
|
49
76
|
|
77
|
+
# Proration Billing Mode
|
50
78
|
module ProrationBillingMode
|
51
79
|
extend Dodopayments::Internal::Type::Enum
|
52
80
|
|
53
81
|
TaggedSymbol =
|
54
|
-
T.type_alias
|
82
|
+
T.type_alias do
|
83
|
+
T.all(
|
84
|
+
Symbol,
|
85
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode
|
86
|
+
)
|
87
|
+
end
|
55
88
|
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
56
89
|
|
57
90
|
PRORATED_IMMEDIATELY =
|
58
91
|
T.let(
|
59
92
|
:prorated_immediately,
|
60
|
-
Dodopayments::
|
93
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::TaggedSymbol
|
94
|
+
)
|
95
|
+
FULL_IMMEDIATELY =
|
96
|
+
T.let(
|
97
|
+
:full_immediately,
|
98
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::TaggedSymbol
|
99
|
+
)
|
100
|
+
DIFFERENCE_IMMEDIATELY =
|
101
|
+
T.let(
|
102
|
+
:difference_immediately,
|
103
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::TaggedSymbol
|
61
104
|
)
|
62
105
|
|
63
106
|
sig do
|
64
|
-
override
|
65
|
-
|
107
|
+
override.returns(
|
108
|
+
T::Array[
|
109
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::TaggedSymbol
|
110
|
+
]
|
111
|
+
)
|
112
|
+
end
|
113
|
+
def self.values
|
66
114
|
end
|
67
|
-
def self.values; end
|
68
115
|
end
|
69
116
|
end
|
70
117
|
end
|
@@ -6,26 +6,85 @@ module Dodopayments
|
|
6
6
|
extend Dodopayments::Internal::Type::RequestParameters::Converter
|
7
7
|
include Dodopayments::Internal::Type::RequestParameters
|
8
8
|
|
9
|
+
OrHash =
|
10
|
+
T.type_alias do
|
11
|
+
T.any(
|
12
|
+
Dodopayments::SubscriptionChargeParams,
|
13
|
+
Dodopayments::Internal::AnyHash
|
14
|
+
)
|
15
|
+
end
|
16
|
+
|
9
17
|
# The product price. Represented in the lowest denomination of the currency (e.g.,
|
10
18
|
# cents for USD). For example, to charge $1.00, pass `100`.
|
11
19
|
sig { returns(Integer) }
|
12
20
|
attr_accessor :product_price
|
13
21
|
|
22
|
+
# Whether adaptive currency fees should be included in the product_price (true) or
|
23
|
+
# added on top (false). This field is ignored if adaptive pricing is not enabled
|
24
|
+
# for the business.
|
25
|
+
sig { returns(T.nilable(T::Boolean)) }
|
26
|
+
attr_accessor :adaptive_currency_fees_inclusive
|
27
|
+
|
28
|
+
# Metadata for the payment. If not passed, the metadata of the subscription will
|
29
|
+
# be taken
|
30
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
31
|
+
attr_accessor :metadata
|
32
|
+
|
33
|
+
# Optional currency of the product price. If not specified, defaults to the
|
34
|
+
# currency of the product.
|
35
|
+
sig { returns(T.nilable(Dodopayments::Currency::OrSymbol)) }
|
36
|
+
attr_accessor :product_currency
|
37
|
+
|
38
|
+
# Optional product description override for billing and line items. If not
|
39
|
+
# specified, the stored description of the product will be used.
|
40
|
+
sig { returns(T.nilable(String)) }
|
41
|
+
attr_accessor :product_description
|
42
|
+
|
14
43
|
sig do
|
15
44
|
params(
|
16
45
|
product_price: Integer,
|
17
|
-
|
18
|
-
|
19
|
-
.
|
46
|
+
adaptive_currency_fees_inclusive: T.nilable(T::Boolean),
|
47
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
48
|
+
product_currency: T.nilable(Dodopayments::Currency::OrSymbol),
|
49
|
+
product_description: T.nilable(String),
|
50
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
51
|
+
).returns(T.attached_class)
|
20
52
|
end
|
21
53
|
def self.new(
|
22
54
|
# The product price. Represented in the lowest denomination of the currency (e.g.,
|
23
55
|
# cents for USD). For example, to charge $1.00, pass `100`.
|
24
56
|
product_price:,
|
57
|
+
# Whether adaptive currency fees should be included in the product_price (true) or
|
58
|
+
# added on top (false). This field is ignored if adaptive pricing is not enabled
|
59
|
+
# for the business.
|
60
|
+
adaptive_currency_fees_inclusive: nil,
|
61
|
+
# Metadata for the payment. If not passed, the metadata of the subscription will
|
62
|
+
# be taken
|
63
|
+
metadata: nil,
|
64
|
+
# Optional currency of the product price. If not specified, defaults to the
|
65
|
+
# currency of the product.
|
66
|
+
product_currency: nil,
|
67
|
+
# Optional product description override for billing and line items. If not
|
68
|
+
# specified, the stored description of the product will be used.
|
69
|
+
product_description: nil,
|
25
70
|
request_options: {}
|
26
|
-
)
|
27
|
-
|
28
|
-
|
71
|
+
)
|
72
|
+
end
|
73
|
+
|
74
|
+
sig do
|
75
|
+
override.returns(
|
76
|
+
{
|
77
|
+
product_price: Integer,
|
78
|
+
adaptive_currency_fees_inclusive: T.nilable(T::Boolean),
|
79
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
80
|
+
product_currency: T.nilable(Dodopayments::Currency::OrSymbol),
|
81
|
+
product_description: T.nilable(String),
|
82
|
+
request_options: Dodopayments::RequestOptions
|
83
|
+
}
|
84
|
+
)
|
85
|
+
end
|
86
|
+
def to_hash
|
87
|
+
end
|
29
88
|
end
|
30
89
|
end
|
31
90
|
end
|