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.
Files changed (452) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +45 -0
  3. data/README.md +144 -60
  4. data/SECURITY.md +2 -2
  5. data/lib/dodopayments/client.rb +25 -12
  6. data/lib/dodopayments/errors.rb +23 -1
  7. data/lib/dodopayments/file_part.rb +2 -2
  8. data/lib/dodopayments/internal/cursor_page_pagination.rb +90 -0
  9. data/lib/dodopayments/internal/default_page_number_pagination.rb +2 -2
  10. data/lib/dodopayments/internal/transport/base_client.rb +90 -10
  11. data/lib/dodopayments/internal/transport/pooled_net_requester.rb +17 -1
  12. data/lib/dodopayments/internal/type/array_of.rb +16 -2
  13. data/lib/dodopayments/internal/type/base_model.rb +152 -59
  14. data/lib/dodopayments/internal/type/boolean.rb +15 -1
  15. data/lib/dodopayments/internal/type/converter.rb +86 -33
  16. data/lib/dodopayments/internal/type/enum.rb +30 -6
  17. data/lib/dodopayments/internal/type/file_input.rb +13 -1
  18. data/lib/dodopayments/internal/type/hash_of.rb +16 -2
  19. data/lib/dodopayments/internal/type/request_parameters.rb +6 -12
  20. data/lib/dodopayments/internal/type/union.rb +44 -31
  21. data/lib/dodopayments/internal/type/unknown.rb +15 -1
  22. data/lib/dodopayments/internal/util.rb +136 -12
  23. data/lib/dodopayments/internal.rb +9 -0
  24. data/lib/dodopayments/models/addon_create_params.rb +6 -10
  25. data/lib/dodopayments/models/addon_list_params.rb +4 -4
  26. data/lib/dodopayments/models/addon_response.rb +6 -10
  27. data/lib/dodopayments/models/addon_update_params.rb +6 -10
  28. data/lib/dodopayments/models/attach_addon.rb +21 -0
  29. data/lib/dodopayments/models/billing_address.rb +3 -3
  30. data/lib/dodopayments/models/brand.rb +107 -0
  31. data/lib/dodopayments/models/brand_create_params.rb +44 -0
  32. data/lib/dodopayments/models/{webhook_event_retrieve_params.rb → brand_list_params.rb} +2 -2
  33. data/lib/dodopayments/models/brand_list_response.rb +17 -0
  34. data/lib/dodopayments/models/brand_retrieve_params.rb +14 -0
  35. data/lib/dodopayments/models/brand_update_images_params.rb +14 -0
  36. data/lib/dodopayments/models/brand_update_images_response.rb +25 -0
  37. data/lib/dodopayments/models/brand_update_params.rb +43 -0
  38. data/lib/dodopayments/models/create_new_customer.rb +0 -1
  39. data/lib/dodopayments/models/customer_list_params.rb +13 -5
  40. data/lib/dodopayments/models/customer_request.rb +3 -3
  41. data/lib/dodopayments/models/customers/customer_portal_create_params.rb +2 -2
  42. data/lib/dodopayments/models/discount.rb +15 -4
  43. data/lib/dodopayments/models/discount_create_params.rb +17 -6
  44. data/lib/dodopayments/models/discount_list_params.rb +4 -4
  45. data/lib/dodopayments/models/discount_update_params.rb +16 -5
  46. data/lib/dodopayments/models/dispute.rb +15 -7
  47. data/lib/dodopayments/models/dispute_list_params.rb +44 -16
  48. data/lib/dodopayments/models/dispute_list_response.rb +77 -0
  49. data/lib/dodopayments/models/get_dispute.rb +101 -0
  50. data/lib/dodopayments/models/license_key.rb +3 -3
  51. data/lib/dodopayments/models/license_key_duration.rb +1 -1
  52. data/lib/dodopayments/models/license_key_list_params.rb +23 -11
  53. data/lib/dodopayments/models/license_key_update_params.rb +3 -3
  54. data/lib/dodopayments/models/misc_list_supported_countries_response.rb +1 -1
  55. data/lib/dodopayments/models/new_customer.rb +27 -0
  56. data/lib/dodopayments/models/one_time_product_cart_item.rb +0 -1
  57. data/lib/dodopayments/models/payment.rb +79 -18
  58. data/lib/dodopayments/models/payment_create_params.rb +22 -41
  59. data/lib/dodopayments/models/payment_create_response.rb +16 -6
  60. data/lib/dodopayments/models/payment_list_params.rb +44 -16
  61. data/lib/dodopayments/models/payment_list_response.rb +16 -4
  62. data/lib/dodopayments/models/payment_method_types.rb +31 -0
  63. data/lib/dodopayments/models/payment_retrieve_line_items_params.rb +14 -0
  64. data/lib/dodopayments/models/payment_retrieve_line_items_response.rb +63 -0
  65. data/lib/dodopayments/models/payout_list_params.rb +4 -4
  66. data/lib/dodopayments/models/payout_list_response.rb +7 -3
  67. data/lib/dodopayments/models/price.rb +57 -30
  68. data/lib/dodopayments/models/product.rb +85 -12
  69. data/lib/dodopayments/models/product_create_params.rb +61 -12
  70. data/lib/dodopayments/models/product_list_params.rb +15 -7
  71. data/lib/dodopayments/models/product_list_response.rb +19 -11
  72. data/lib/dodopayments/models/product_update_files_params.rb +20 -0
  73. data/lib/dodopayments/models/product_update_files_response.rb +22 -0
  74. data/lib/dodopayments/models/product_update_params.rb +70 -13
  75. data/lib/dodopayments/models/products/image_update_params.rb +2 -2
  76. data/lib/dodopayments/models/refund.rb +15 -5
  77. data/lib/dodopayments/models/refund_create_params.rb +38 -1
  78. data/lib/dodopayments/models/refund_list_params.rb +26 -13
  79. data/lib/dodopayments/models/subscription.rb +38 -18
  80. data/lib/dodopayments/models/subscription_change_plan_params.rb +19 -3
  81. data/lib/dodopayments/models/subscription_charge_params.rb +38 -2
  82. data/lib/dodopayments/models/subscription_create_params.rb +53 -66
  83. data/lib/dodopayments/models/subscription_create_response.rb +24 -8
  84. data/lib/dodopayments/models/subscription_list_params.rb +37 -14
  85. data/lib/dodopayments/models/subscription_list_response.rb +37 -16
  86. data/lib/dodopayments/models/subscription_status.rb +0 -1
  87. data/lib/dodopayments/models/subscription_update_params.rb +10 -6
  88. data/lib/dodopayments/models/webhook_create_params.rb +86 -0
  89. data/lib/dodopayments/models/webhook_create_response.rb +88 -0
  90. data/lib/dodopayments/models/webhook_delete_params.rb +14 -0
  91. data/lib/dodopayments/models/webhook_event_type.rb +35 -0
  92. data/lib/dodopayments/models/webhook_list_params.rb +30 -0
  93. data/lib/dodopayments/models/webhook_list_response.rb +88 -0
  94. data/lib/dodopayments/models/webhook_payload.rb +161 -0
  95. data/lib/dodopayments/models/webhook_retrieve_params.rb +14 -0
  96. data/lib/dodopayments/models/webhook_retrieve_response.rb +88 -0
  97. data/lib/dodopayments/models/webhook_update_params.rb +69 -0
  98. data/lib/dodopayments/models/webhook_update_response.rb +88 -0
  99. data/lib/dodopayments/models/webhooks/header_retrieve_params.rb +16 -0
  100. data/lib/dodopayments/models/webhooks/header_retrieve_response.rb +31 -0
  101. data/lib/dodopayments/models/webhooks/header_update_params.rb +24 -0
  102. data/lib/dodopayments/models/your_webhook_url_create_params.rb +32 -0
  103. data/lib/dodopayments/models.rb +241 -0
  104. data/lib/dodopayments/request_options.rb +4 -0
  105. data/lib/dodopayments/resources/addons.rb +13 -21
  106. data/lib/dodopayments/resources/brands.rb +119 -0
  107. data/lib/dodopayments/resources/customers/customer_portal.rb +3 -3
  108. data/lib/dodopayments/resources/customers.rb +12 -10
  109. data/lib/dodopayments/resources/discounts.rb +24 -19
  110. data/lib/dodopayments/resources/disputes.rb +12 -12
  111. data/lib/dodopayments/resources/invoices/payments.rb +3 -2
  112. data/lib/dodopayments/resources/license_key_instances.rb +5 -5
  113. data/lib/dodopayments/resources/license_keys.rb +13 -13
  114. data/lib/dodopayments/resources/licenses.rb +4 -4
  115. data/lib/dodopayments/resources/misc.rb +1 -1
  116. data/lib/dodopayments/resources/payments.rb +38 -19
  117. data/lib/dodopayments/resources/payouts.rb +3 -3
  118. data/lib/dodopayments/resources/products/images.rb +2 -2
  119. data/lib/dodopayments/resources/products.rb +58 -24
  120. data/lib/dodopayments/resources/refunds.rb +14 -12
  121. data/lib/dodopayments/resources/subscriptions.rb +44 -29
  122. data/lib/dodopayments/resources/webhook_events.rb +0 -52
  123. data/lib/dodopayments/resources/webhooks/headers.rb +59 -0
  124. data/lib/dodopayments/resources/webhooks.rb +157 -0
  125. data/lib/dodopayments/resources/your_webhook_url.rb +56 -0
  126. data/lib/dodopayments/version.rb +1 -1
  127. data/lib/dodopayments.rb +47 -8
  128. data/rbi/dodopayments/client.rbi +24 -10
  129. data/rbi/dodopayments/errors.rbi +51 -16
  130. data/rbi/dodopayments/file_part.rbi +9 -6
  131. data/rbi/dodopayments/internal/cursor_page_pagination.rbi +25 -0
  132. data/rbi/dodopayments/internal/default_page_number_pagination.rbi +2 -1
  133. data/rbi/dodopayments/internal/transport/base_client.rbi +165 -77
  134. data/rbi/dodopayments/internal/transport/pooled_net_requester.rbi +33 -13
  135. data/rbi/dodopayments/internal/type/array_of.rbi +40 -24
  136. data/rbi/dodopayments/internal/type/base_model.rbi +160 -70
  137. data/rbi/dodopayments/internal/type/base_page.rbi +13 -8
  138. data/rbi/dodopayments/internal/type/boolean.rbi +24 -14
  139. data/rbi/dodopayments/internal/type/converter.rbi +135 -33
  140. data/rbi/dodopayments/internal/type/enum.rbi +29 -13
  141. data/rbi/dodopayments/internal/type/file_input.rbi +13 -4
  142. data/rbi/dodopayments/internal/type/hash_of.rbi +40 -24
  143. data/rbi/dodopayments/internal/type/request_parameters.rbi +14 -4
  144. data/rbi/dodopayments/internal/type/union.rbi +71 -23
  145. data/rbi/dodopayments/internal/type/unknown.rbi +24 -6
  146. data/rbi/dodopayments/internal/util.rbi +274 -89
  147. data/rbi/dodopayments/internal.rbi +7 -0
  148. data/rbi/dodopayments/models/addon_cart_response_item.rbi +16 -4
  149. data/rbi/dodopayments/models/addon_create_params.rbi +33 -24
  150. data/rbi/dodopayments/models/addon_list_params.rbi +29 -17
  151. data/rbi/dodopayments/models/addon_response.rbi +33 -27
  152. data/rbi/dodopayments/models/addon_retrieve_params.rbi +18 -5
  153. data/rbi/dodopayments/models/addon_update_images_params.rbi +18 -5
  154. data/rbi/dodopayments/models/addon_update_images_response.rbi +13 -3
  155. data/rbi/dodopayments/models/addon_update_params.rbi +34 -25
  156. data/rbi/dodopayments/models/attach_addon.rbi +28 -0
  157. data/rbi/dodopayments/models/attach_existing_customer.rbi +13 -3
  158. data/rbi/dodopayments/models/billing_address.rbi +24 -12
  159. data/rbi/dodopayments/models/brand.rbi +132 -0
  160. data/rbi/dodopayments/models/brand_create_params.rbi +68 -0
  161. data/rbi/dodopayments/models/brand_list_params.rbi +29 -0
  162. data/rbi/dodopayments/models/brand_list_response.rbi +34 -0
  163. data/rbi/dodopayments/models/brand_retrieve_params.rbi +32 -0
  164. data/rbi/dodopayments/models/brand_update_images_params.rbi +32 -0
  165. data/rbi/dodopayments/models/brand_update_images_response.rbi +36 -0
  166. data/rbi/dodopayments/models/brand_update_params.rbi +64 -0
  167. data/rbi/dodopayments/models/country_code.rbi +255 -252
  168. data/rbi/dodopayments/models/create_new_customer.rbi +27 -11
  169. data/rbi/dodopayments/models/currency.rbi +149 -148
  170. data/rbi/dodopayments/models/customer.rbi +27 -15
  171. data/rbi/dodopayments/models/customer_create_params.rbi +22 -14
  172. data/rbi/dodopayments/models/customer_limited_details.rbi +21 -4
  173. data/rbi/dodopayments/models/customer_list_params.rbi +43 -17
  174. data/rbi/dodopayments/models/customer_portal_session.rbi +13 -3
  175. data/rbi/dodopayments/models/customer_request.rbi +10 -2
  176. data/rbi/dodopayments/models/customer_retrieve_params.rbi +18 -5
  177. data/rbi/dodopayments/models/customer_update_params.rbi +21 -13
  178. data/rbi/dodopayments/models/customers/customer_portal_create_params.rbi +26 -8
  179. data/rbi/dodopayments/models/discount.rbi +42 -22
  180. data/rbi/dodopayments/models/discount_create_params.rbi +43 -20
  181. data/rbi/dodopayments/models/discount_delete_params.rbi +18 -5
  182. data/rbi/dodopayments/models/discount_list_params.rbi +32 -17
  183. data/rbi/dodopayments/models/discount_retrieve_params.rbi +18 -5
  184. data/rbi/dodopayments/models/discount_type.rbi +7 -4
  185. data/rbi/dodopayments/models/discount_update_params.rbi +43 -20
  186. data/rbi/dodopayments/models/dispute.rbi +41 -23
  187. data/rbi/dodopayments/models/dispute_list_params.rbi +178 -33
  188. data/rbi/dodopayments/models/dispute_list_response.rbi +98 -0
  189. data/rbi/dodopayments/models/dispute_retrieve_params.rbi +18 -5
  190. data/rbi/dodopayments/models/dispute_stage.rbi +11 -6
  191. data/rbi/dodopayments/models/dispute_status.rbi +20 -10
  192. data/rbi/dodopayments/models/get_dispute.rbi +124 -0
  193. data/rbi/dodopayments/models/intent_status.rbi +32 -14
  194. data/rbi/dodopayments/models/invoices/payment_retrieve_params.rbi +18 -5
  195. data/rbi/dodopayments/models/license_activate_params.rbi +21 -6
  196. data/rbi/dodopayments/models/license_deactivate_params.rbi +21 -13
  197. data/rbi/dodopayments/models/license_key.rbi +31 -23
  198. data/rbi/dodopayments/models/license_key_duration.rbi +24 -5
  199. data/rbi/dodopayments/models/license_key_instance.rbi +19 -4
  200. data/rbi/dodopayments/models/license_key_instance_list_params.rbi +23 -14
  201. data/rbi/dodopayments/models/license_key_instance_retrieve_params.rbi +18 -5
  202. data/rbi/dodopayments/models/license_key_instance_update_params.rbi +19 -6
  203. data/rbi/dodopayments/models/license_key_list_params.rbi +91 -26
  204. data/rbi/dodopayments/models/license_key_retrieve_params.rbi +18 -5
  205. data/rbi/dodopayments/models/license_key_status.rbi +10 -6
  206. data/rbi/dodopayments/models/license_key_update_params.rbi +23 -14
  207. data/rbi/dodopayments/models/license_validate_params.rbi +25 -13
  208. data/rbi/dodopayments/models/license_validate_response.rbi +13 -3
  209. data/rbi/dodopayments/models/misc_list_supported_countries_params.rbi +18 -5
  210. data/rbi/dodopayments/models/misc_list_supported_countries_response.rbi +1 -1
  211. data/rbi/dodopayments/models/new_customer.rbi +39 -0
  212. data/rbi/dodopayments/models/one_time_product_cart_item.rbi +23 -4
  213. data/rbi/dodopayments/models/payment.rbi +149 -54
  214. data/rbi/dodopayments/models/payment_create_params.rbi +67 -87
  215. data/rbi/dodopayments/models/payment_create_response.rbi +45 -22
  216. data/rbi/dodopayments/models/payment_list_params.rbi +149 -32
  217. data/rbi/dodopayments/models/payment_list_response.rbi +47 -26
  218. data/rbi/dodopayments/models/payment_method_types.rbi +52 -0
  219. data/rbi/dodopayments/models/payment_retrieve_line_items_params.rbi +32 -0
  220. data/rbi/dodopayments/models/payment_retrieve_line_items_response.rbi +114 -0
  221. data/rbi/dodopayments/models/payment_retrieve_params.rbi +18 -5
  222. data/rbi/dodopayments/models/payout_list_params.rbi +29 -17
  223. data/rbi/dodopayments/models/payout_list_response.rbi +82 -35
  224. data/rbi/dodopayments/models/price.rbi +142 -55
  225. data/rbi/dodopayments/models/product.rbi +177 -38
  226. data/rbi/dodopayments/models/product_create_params.rbi +151 -36
  227. data/rbi/dodopayments/models/product_delete_params.rbi +18 -5
  228. data/rbi/dodopayments/models/product_list_params.rbi +50 -21
  229. data/rbi/dodopayments/models/product_list_response.rbi +57 -42
  230. data/rbi/dodopayments/models/product_retrieve_params.rbi +18 -5
  231. data/rbi/dodopayments/models/product_unarchive_params.rbi +18 -5
  232. data/rbi/dodopayments/models/product_update_files_params.rbi +38 -0
  233. data/rbi/dodopayments/models/product_update_files_response.rbi +29 -0
  234. data/rbi/dodopayments/models/product_update_params.rbi +160 -37
  235. data/rbi/dodopayments/models/products/image_update_params.rbi +20 -8
  236. data/rbi/dodopayments/models/products/image_update_response.rbi +18 -4
  237. data/rbi/dodopayments/models/refund.rbi +39 -21
  238. data/rbi/dodopayments/models/refund_create_params.rbi +87 -11
  239. data/rbi/dodopayments/models/refund_list_params.rbi +86 -29
  240. data/rbi/dodopayments/models/refund_retrieve_params.rbi +18 -5
  241. data/rbi/dodopayments/models/refund_status.rbi +10 -7
  242. data/rbi/dodopayments/models/subscription.rbi +83 -47
  243. data/rbi/dodopayments/models/subscription_change_plan_params.rbi +68 -21
  244. data/rbi/dodopayments/models/subscription_charge_params.rbi +65 -6
  245. data/rbi/dodopayments/models/subscription_charge_response.rbi +13 -3
  246. data/rbi/dodopayments/models/subscription_create_params.rbi +136 -128
  247. data/rbi/dodopayments/models/subscription_create_response.rbi +51 -22
  248. data/rbi/dodopayments/models/subscription_list_params.rbi +125 -29
  249. data/rbi/dodopayments/models/subscription_list_response.rbi +85 -44
  250. data/rbi/dodopayments/models/subscription_retrieve_params.rbi +18 -5
  251. data/rbi/dodopayments/models/subscription_status.rbi +16 -10
  252. data/rbi/dodopayments/models/subscription_update_params.rbi +63 -33
  253. data/rbi/dodopayments/models/tax_category.rbi +11 -7
  254. data/rbi/dodopayments/models/time_interval.rbi +10 -7
  255. data/rbi/dodopayments/models/webhook_create_params.rbi +115 -0
  256. data/rbi/dodopayments/models/webhook_create_response.rbi +112 -0
  257. data/rbi/dodopayments/models/webhook_delete_params.rbi +32 -0
  258. data/rbi/dodopayments/models/webhook_event_type.rbi +102 -0
  259. data/rbi/dodopayments/models/webhook_list_params.rbi +54 -0
  260. data/rbi/dodopayments/models/webhook_list_response.rbi +112 -0
  261. data/rbi/dodopayments/models/webhook_payload.rbi +440 -0
  262. data/rbi/dodopayments/models/webhook_retrieve_params.rbi +32 -0
  263. data/rbi/dodopayments/models/webhook_retrieve_response.rbi +112 -0
  264. data/rbi/dodopayments/models/webhook_update_params.rbi +94 -0
  265. data/rbi/dodopayments/models/webhook_update_response.rbi +112 -0
  266. data/rbi/dodopayments/models/webhooks/header_retrieve_params.rbi +34 -0
  267. data/rbi/dodopayments/models/webhooks/header_retrieve_response.rbi +50 -0
  268. data/rbi/dodopayments/models/webhooks/header_update_params.rbi +48 -0
  269. data/rbi/dodopayments/models/your_webhook_url_create_params.rbi +56 -0
  270. data/rbi/dodopayments/models.rbi +209 -0
  271. data/rbi/dodopayments/request_options.rbi +18 -7
  272. data/rbi/dodopayments/resources/addons.rbi +44 -27
  273. data/rbi/dodopayments/resources/brands.rbi +89 -0
  274. data/rbi/dodopayments/resources/customers/customer_portal.rbi +8 -6
  275. data/rbi/dodopayments/resources/customers.rbi +31 -17
  276. data/rbi/dodopayments/resources/discounts.rbi +54 -22
  277. data/rbi/dodopayments/resources/disputes.rbi +26 -14
  278. data/rbi/dodopayments/resources/invoices/payments.rbi +10 -3
  279. data/rbi/dodopayments/resources/invoices.rbi +2 -1
  280. data/rbi/dodopayments/resources/license_key_instances.rbi +25 -10
  281. data/rbi/dodopayments/resources/license_keys.rbi +29 -15
  282. data/rbi/dodopayments/resources/licenses.rbi +25 -12
  283. data/rbi/dodopayments/resources/misc.rbi +7 -4
  284. data/rbi/dodopayments/resources/payments.rbi +61 -27
  285. data/rbi/dodopayments/resources/payouts.rbi +12 -6
  286. data/rbi/dodopayments/resources/products/images.rbi +10 -4
  287. data/rbi/dodopayments/resources/products.rbi +118 -41
  288. data/rbi/dodopayments/resources/refunds.rbi +35 -15
  289. data/rbi/dodopayments/resources/subscriptions.rbi +98 -50
  290. data/rbi/dodopayments/resources/webhook_events.rbi +2 -34
  291. data/rbi/dodopayments/resources/webhooks/headers.rbi +40 -0
  292. data/rbi/dodopayments/resources/webhooks.rbi +127 -0
  293. data/rbi/dodopayments/resources/your_webhook_url.rbi +51 -0
  294. data/sig/dodopayments/client.rbs +8 -2
  295. data/sig/dodopayments/errors.rbs +9 -0
  296. data/sig/dodopayments/internal/cursor_page_pagination.rbs +15 -0
  297. data/sig/dodopayments/internal/transport/base_client.rbs +17 -2
  298. data/sig/dodopayments/internal/transport/pooled_net_requester.rbs +4 -0
  299. data/sig/dodopayments/internal/type/array_of.rbs +3 -0
  300. data/sig/dodopayments/internal/type/base_model.rbs +13 -5
  301. data/sig/dodopayments/internal/type/base_page.rbs +1 -1
  302. data/sig/dodopayments/internal/type/boolean.rbs +3 -0
  303. data/sig/dodopayments/internal/type/converter.rbs +26 -1
  304. data/sig/dodopayments/internal/type/enum.rbs +3 -0
  305. data/sig/dodopayments/internal/type/file_input.rbs +2 -0
  306. data/sig/dodopayments/internal/type/hash_of.rbs +3 -0
  307. data/sig/dodopayments/internal/type/request_parameters.rbs +5 -1
  308. data/sig/dodopayments/internal/type/union.rbs +5 -2
  309. data/sig/dodopayments/internal/type/unknown.rbs +3 -0
  310. data/sig/dodopayments/internal/util.rbs +27 -0
  311. data/sig/dodopayments/internal.rbs +4 -0
  312. data/sig/dodopayments/models/addon_cart_response_item.rbs +1 -1
  313. data/sig/dodopayments/models/addon_create_params.rbs +8 -1
  314. data/sig/dodopayments/models/addon_list_params.rbs +14 -6
  315. data/sig/dodopayments/models/addon_response.rbs +12 -1
  316. data/sig/dodopayments/models/addon_retrieve_params.rbs +1 -1
  317. data/sig/dodopayments/models/addon_update_images_params.rbs +1 -1
  318. data/sig/dodopayments/models/addon_update_images_response.rbs +1 -1
  319. data/sig/dodopayments/models/addon_update_params.rbs +9 -1
  320. data/sig/dodopayments/models/attach_addon.rbs +15 -0
  321. data/sig/dodopayments/models/attach_existing_customer.rbs +1 -1
  322. data/sig/dodopayments/models/billing_address.rbs +7 -1
  323. data/sig/dodopayments/models/brand.rbs +88 -0
  324. data/sig/dodopayments/models/brand_create_params.rbs +46 -0
  325. data/sig/dodopayments/models/{webhook_event_retrieve_params.rbs → brand_list_params.rbs} +3 -3
  326. data/sig/dodopayments/models/brand_list_response.rbs +13 -0
  327. data/sig/dodopayments/models/brand_retrieve_params.rbs +15 -0
  328. data/sig/dodopayments/models/brand_update_images_params.rbs +15 -0
  329. data/sig/dodopayments/models/brand_update_images_response.rbs +15 -0
  330. data/sig/dodopayments/models/brand_update_params.rbs +41 -0
  331. data/sig/dodopayments/models/create_new_customer.rbs +6 -1
  332. data/sig/dodopayments/models/customer.rbs +8 -1
  333. data/sig/dodopayments/models/customer_create_params.rbs +6 -1
  334. data/sig/dodopayments/models/customer_limited_details.rbs +1 -1
  335. data/sig/dodopayments/models/customer_list_params.rbs +20 -6
  336. data/sig/dodopayments/models/customer_portal_session.rbs +1 -1
  337. data/sig/dodopayments/models/customer_request.rbs +2 -3
  338. data/sig/dodopayments/models/customer_retrieve_params.rbs +1 -1
  339. data/sig/dodopayments/models/customer_update_params.rbs +5 -1
  340. data/sig/dodopayments/models/customers/customer_portal_create_params.rbs +9 -4
  341. data/sig/dodopayments/models/discount.rbs +18 -1
  342. data/sig/dodopayments/models/discount_create_params.rbs +15 -1
  343. data/sig/dodopayments/models/discount_delete_params.rbs +1 -1
  344. data/sig/dodopayments/models/discount_list_params.rbs +14 -6
  345. data/sig/dodopayments/models/discount_retrieve_params.rbs +1 -1
  346. data/sig/dodopayments/models/discount_update_params.rbs +15 -1
  347. data/sig/dodopayments/models/dispute.rbs +17 -3
  348. data/sig/dodopayments/models/dispute_list_params.rbs +84 -22
  349. data/sig/dodopayments/models/dispute_list_response.rbs +55 -0
  350. data/sig/dodopayments/models/dispute_retrieve_params.rbs +1 -1
  351. data/sig/dodopayments/models/get_dispute.rbs +70 -0
  352. data/sig/dodopayments/models/invoices/payment_retrieve_params.rbs +1 -1
  353. data/sig/dodopayments/models/license_activate_params.rbs +5 -1
  354. data/sig/dodopayments/models/license_deactivate_params.rbs +5 -1
  355. data/sig/dodopayments/models/license_key.rbs +14 -1
  356. data/sig/dodopayments/models/license_key_duration.rbs +4 -1
  357. data/sig/dodopayments/models/license_key_instance.rbs +7 -1
  358. data/sig/dodopayments/models/license_key_instance_list_params.rbs +6 -1
  359. data/sig/dodopayments/models/license_key_instance_retrieve_params.rbs +1 -1
  360. data/sig/dodopayments/models/license_key_instance_update_params.rbs +4 -1
  361. data/sig/dodopayments/models/license_key_list_params.rbs +47 -16
  362. data/sig/dodopayments/models/license_key_retrieve_params.rbs +1 -1
  363. data/sig/dodopayments/models/license_key_update_params.rbs +6 -1
  364. data/sig/dodopayments/models/license_validate_params.rbs +5 -1
  365. data/sig/dodopayments/models/license_validate_response.rbs +1 -1
  366. data/sig/dodopayments/models/misc_list_supported_countries_params.rbs +1 -1
  367. data/sig/dodopayments/models/new_customer.rbs +21 -0
  368. data/sig/dodopayments/models/one_time_product_cart_item.rbs +5 -1
  369. data/sig/dodopayments/models/payment.rbs +76 -17
  370. data/sig/dodopayments/models/payment_create_params.rbs +23 -55
  371. data/sig/dodopayments/models/payment_create_response.rbs +21 -7
  372. data/sig/dodopayments/models/payment_list_params.rbs +85 -22
  373. data/sig/dodopayments/models/payment_list_response.rbs +25 -4
  374. data/sig/dodopayments/models/payment_method_types.rbs +48 -0
  375. data/sig/dodopayments/models/payment_retrieve_line_items_params.rbs +15 -0
  376. data/sig/dodopayments/models/payment_retrieve_line_items_response.rbs +67 -0
  377. data/sig/dodopayments/models/payment_retrieve_params.rbs +1 -1
  378. data/sig/dodopayments/models/payout_list_params.rbs +14 -6
  379. data/sig/dodopayments/models/payout_list_response.rbs +17 -1
  380. data/sig/dodopayments/models/price.rbs +53 -13
  381. data/sig/dodopayments/models/product.rbs +80 -4
  382. data/sig/dodopayments/models/product_create_params.rbs +45 -4
  383. data/sig/dodopayments/models/product_delete_params.rbs +1 -1
  384. data/sig/dodopayments/models/product_list_params.rbs +29 -10
  385. data/sig/dodopayments/models/product_list_response.rbs +20 -1
  386. data/sig/dodopayments/models/product_retrieve_params.rbs +1 -1
  387. data/sig/dodopayments/models/product_unarchive_params.rbs +1 -1
  388. data/sig/dodopayments/models/product_update_files_params.rbs +23 -0
  389. data/sig/dodopayments/models/product_update_files_response.rbs +15 -0
  390. data/sig/dodopayments/models/product_update_params.rbs +58 -4
  391. data/sig/dodopayments/models/products/image_update_params.rbs +9 -4
  392. data/sig/dodopayments/models/products/image_update_response.rbs +1 -1
  393. data/sig/dodopayments/models/refund.rbs +15 -1
  394. data/sig/dodopayments/models/refund_create_params.rbs +38 -2
  395. data/sig/dodopayments/models/refund_list_params.rbs +54 -19
  396. data/sig/dodopayments/models/refund_retrieve_params.rbs +1 -1
  397. data/sig/dodopayments/models/subscription.rbs +43 -10
  398. data/sig/dodopayments/models/subscription_change_plan_params.rbs +16 -3
  399. data/sig/dodopayments/models/subscription_charge_params.rbs +27 -2
  400. data/sig/dodopayments/models/subscription_charge_response.rbs +1 -1
  401. data/sig/dodopayments/models/subscription_create_params.rbs +58 -73
  402. data/sig/dodopayments/models/subscription_create_response.rbs +26 -7
  403. data/sig/dodopayments/models/subscription_list_params.rbs +64 -19
  404. data/sig/dodopayments/models/subscription_list_response.rbs +39 -7
  405. data/sig/dodopayments/models/subscription_retrieve_params.rbs +1 -1
  406. data/sig/dodopayments/models/subscription_status.rbs +1 -2
  407. data/sig/dodopayments/models/subscription_update_params.rbs +20 -8
  408. data/sig/dodopayments/models/webhook_create_params.rbs +65 -0
  409. data/sig/dodopayments/models/webhook_create_response.rbs +60 -0
  410. data/sig/dodopayments/models/webhook_delete_params.rbs +15 -0
  411. data/sig/dodopayments/models/webhook_event_type.rbs +54 -0
  412. data/sig/dodopayments/models/webhook_list_params.rbs +28 -0
  413. data/sig/dodopayments/models/webhook_list_response.rbs +60 -0
  414. data/sig/dodopayments/models/webhook_payload.rbs +203 -0
  415. data/sig/dodopayments/models/webhook_retrieve_params.rbs +15 -0
  416. data/sig/dodopayments/models/webhook_retrieve_response.rbs +60 -0
  417. data/sig/dodopayments/models/webhook_update_params.rbs +51 -0
  418. data/sig/dodopayments/models/webhook_update_response.rbs +60 -0
  419. data/sig/dodopayments/models/webhooks/header_retrieve_params.rbs +17 -0
  420. data/sig/dodopayments/models/webhooks/header_retrieve_response.rbs +24 -0
  421. data/sig/dodopayments/models/webhooks/header_update_params.rbs +26 -0
  422. data/sig/dodopayments/models/your_webhook_url_create_params.rbs +42 -0
  423. data/sig/dodopayments/models.rbs +201 -0
  424. data/sig/dodopayments/request_options.rbs +1 -1
  425. data/sig/dodopayments/resources/addons.rbs +6 -6
  426. data/sig/dodopayments/resources/brands.rbs +39 -0
  427. data/sig/dodopayments/resources/customers/customer_portal.rbs +2 -2
  428. data/sig/dodopayments/resources/customers.rbs +7 -6
  429. data/sig/dodopayments/resources/discounts.rbs +8 -6
  430. data/sig/dodopayments/resources/disputes.rbs +9 -9
  431. data/sig/dodopayments/resources/invoices/payments.rbs +1 -1
  432. data/sig/dodopayments/resources/license_key_instances.rbs +3 -3
  433. data/sig/dodopayments/resources/license_keys.rbs +8 -8
  434. data/sig/dodopayments/resources/licenses.rbs +1 -1
  435. data/sig/dodopayments/resources/payments.rbs +17 -11
  436. data/sig/dodopayments/resources/payouts.rbs +2 -2
  437. data/sig/dodopayments/resources/products/images.rbs +1 -1
  438. data/sig/dodopayments/resources/products.rbs +20 -7
  439. data/sig/dodopayments/resources/refunds.rbs +10 -9
  440. data/sig/dodopayments/resources/subscriptions.rbs +21 -14
  441. data/sig/dodopayments/resources/webhook_events.rbs +0 -15
  442. data/sig/dodopayments/resources/webhooks/headers.rbs +20 -0
  443. data/sig/dodopayments/resources/webhooks.rbs +48 -0
  444. data/sig/dodopayments/resources/your_webhook_url.rbs +18 -0
  445. metadata +116 -11
  446. data/lib/dodopayments/models/webhook_event.rb +0 -58
  447. data/lib/dodopayments/models/webhook_event_list_params.rb +0 -66
  448. data/rbi/dodopayments/models/webhook_event.rbi +0 -71
  449. data/rbi/dodopayments/models/webhook_event_list_params.rbi +0 -77
  450. data/rbi/dodopayments/models/webhook_event_retrieve_params.rbi +0 -19
  451. data/sig/dodopayments/models/webhook_event.rbs +0 -46
  452. data/sig/dodopayments/models/webhook_event_list_params.rbs +0 -43
@@ -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::LicenseKeyRetrieveParams,
13
+ Dodopayments::Internal::AnyHash
14
+ )
15
+ end
16
+
9
17
  sig do
10
- params(request_options: T.any(Dodopayments::RequestOptions, Dodopayments::Internal::AnyHash))
11
- .returns(T.attached_class)
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 { override.returns({request_options: Dodopayments::RequestOptions}) }
16
- def to_hash; end
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,15 +5,19 @@ module Dodopayments
5
5
  module LicenseKeyStatus
6
6
  extend Dodopayments::Internal::Type::Enum
7
7
 
8
- TaggedSymbol = T.type_alias { T.all(Symbol, Dodopayments::Models::LicenseKeyStatus) }
8
+ TaggedSymbol =
9
+ T.type_alias { T.all(Symbol, Dodopayments::LicenseKeyStatus) }
9
10
  OrSymbol = T.type_alias { T.any(Symbol, String) }
10
11
 
11
- ACTIVE = T.let(:active, Dodopayments::Models::LicenseKeyStatus::TaggedSymbol)
12
- EXPIRED = T.let(:expired, Dodopayments::Models::LicenseKeyStatus::TaggedSymbol)
13
- DISABLED = T.let(:disabled, Dodopayments::Models::LicenseKeyStatus::TaggedSymbol)
12
+ ACTIVE = T.let(:active, Dodopayments::LicenseKeyStatus::TaggedSymbol)
13
+ EXPIRED = T.let(:expired, Dodopayments::LicenseKeyStatus::TaggedSymbol)
14
+ DISABLED = T.let(:disabled, Dodopayments::LicenseKeyStatus::TaggedSymbol)
14
15
 
15
- sig { override.returns(T::Array[Dodopayments::Models::LicenseKeyStatus::TaggedSymbol]) }
16
- def self.values; end
16
+ sig do
17
+ override.returns(T::Array[Dodopayments::LicenseKeyStatus::TaggedSymbol])
18
+ end
19
+ def self.values
20
+ end
17
21
  end
18
22
  end
19
23
  end
@@ -6,6 +6,14 @@ 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::LicenseKeyUpdateParams,
13
+ Dodopayments::Internal::AnyHash
14
+ )
15
+ end
16
+
9
17
  # The updated activation limit for the license key. Use `null` to remove the
10
18
  # limit, or omit this field to leave it unchanged.
11
19
  sig { returns(T.nilable(Integer)) }
@@ -26,9 +34,8 @@ module Dodopayments
26
34
  activations_limit: T.nilable(Integer),
27
35
  disabled: T.nilable(T::Boolean),
28
36
  expires_at: T.nilable(Time),
29
- request_options: T.any(Dodopayments::RequestOptions, Dodopayments::Internal::AnyHash)
30
- )
31
- .returns(T.attached_class)
37
+ request_options: Dodopayments::RequestOptions::OrHash
38
+ ).returns(T.attached_class)
32
39
  end
33
40
  def self.new(
34
41
  # The updated activation limit for the license key. Use `null` to remove the
@@ -41,19 +48,21 @@ module Dodopayments
41
48
  # remove the expiration date, or omit this field to leave it unchanged.
42
49
  expires_at: nil,
43
50
  request_options: {}
44
- ); end
51
+ )
52
+ end
53
+
45
54
  sig do
46
- override
47
- .returns(
48
- {
49
- activations_limit: T.nilable(Integer),
50
- disabled: T.nilable(T::Boolean),
51
- expires_at: T.nilable(Time),
52
- request_options: Dodopayments::RequestOptions
53
- }
54
- )
55
+ override.returns(
56
+ {
57
+ activations_limit: T.nilable(Integer),
58
+ disabled: T.nilable(T::Boolean),
59
+ expires_at: T.nilable(Time),
60
+ request_options: Dodopayments::RequestOptions
61
+ }
62
+ )
63
+ end
64
+ def to_hash
55
65
  end
56
- def to_hash; end
57
66
  end
58
67
  end
59
68
  end
@@ -6,6 +6,14 @@ 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::LicenseValidateParams,
13
+ Dodopayments::Internal::AnyHash
14
+ )
15
+ end
16
+
9
17
  sig { returns(String) }
10
18
  attr_accessor :license_key
11
19
 
@@ -16,23 +24,27 @@ module Dodopayments
16
24
  params(
17
25
  license_key: String,
18
26
  license_key_instance_id: T.nilable(String),
19
- request_options: T.any(Dodopayments::RequestOptions, Dodopayments::Internal::AnyHash)
20
- )
21
- .returns(T.attached_class)
27
+ request_options: Dodopayments::RequestOptions::OrHash
28
+ ).returns(T.attached_class)
29
+ end
30
+ def self.new(
31
+ license_key:,
32
+ license_key_instance_id: nil,
33
+ request_options: {}
34
+ )
22
35
  end
23
- def self.new(license_key:, license_key_instance_id: nil, request_options: {}); end
24
36
 
25
37
  sig do
26
- override
27
- .returns(
28
- {
29
- license_key: String,
30
- license_key_instance_id: T.nilable(String),
31
- request_options: Dodopayments::RequestOptions
32
- }
33
- )
38
+ override.returns(
39
+ {
40
+ license_key: String,
41
+ license_key_instance_id: T.nilable(String),
42
+ request_options: Dodopayments::RequestOptions
43
+ }
44
+ )
45
+ end
46
+ def to_hash
34
47
  end
35
- def to_hash; end
36
48
  end
37
49
  end
38
50
  end
@@ -3,14 +3,24 @@
3
3
  module Dodopayments
4
4
  module Models
5
5
  class LicenseValidateResponse < Dodopayments::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Dodopayments::Models::LicenseValidateResponse,
10
+ Dodopayments::Internal::AnyHash
11
+ )
12
+ end
13
+
6
14
  sig { returns(T::Boolean) }
7
15
  attr_accessor :valid
8
16
 
9
17
  sig { params(valid: T::Boolean).returns(T.attached_class) }
10
- def self.new(valid:); end
18
+ def self.new(valid:)
19
+ end
11
20
 
12
- sig { override.returns({valid: T::Boolean}) }
13
- def to_hash; end
21
+ sig { override.returns({ valid: T::Boolean }) }
22
+ def to_hash
23
+ end
14
24
  end
15
25
  end
16
26
  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::MiscListSupportedCountriesParams,
13
+ Dodopayments::Internal::AnyHash
14
+ )
15
+ end
16
+
9
17
  sig do
10
- params(request_options: T.any(Dodopayments::RequestOptions, Dodopayments::Internal::AnyHash))
11
- .returns(T.attached_class)
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 { override.returns({request_options: Dodopayments::RequestOptions}) }
16
- def to_hash; end
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
@@ -4,7 +4,7 @@ module Dodopayments
4
4
  module Models
5
5
  MiscListSupportedCountriesResponse =
6
6
  T.let(
7
- Dodopayments::Internal::Type::ArrayOf[enum: Dodopayments::Models::CountryCode],
7
+ Dodopayments::Internal::Type::ArrayOf[enum: Dodopayments::CountryCode],
8
8
  Dodopayments::Internal::Type::Converter
9
9
  )
10
10
  end
@@ -0,0 +1,39 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class NewCustomer < Dodopayments::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Dodopayments::NewCustomer, Dodopayments::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(String) }
12
+ attr_accessor :email
13
+
14
+ sig { returns(String) }
15
+ attr_accessor :name
16
+
17
+ sig { returns(T.nilable(String)) }
18
+ attr_accessor :phone_number
19
+
20
+ sig do
21
+ params(
22
+ email: String,
23
+ name: String,
24
+ phone_number: T.nilable(String)
25
+ ).returns(T.attached_class)
26
+ end
27
+ def self.new(email:, name:, phone_number: nil)
28
+ end
29
+
30
+ sig do
31
+ override.returns(
32
+ { email: String, name: String, phone_number: T.nilable(String) }
33
+ )
34
+ end
35
+ def to_hash
36
+ end
37
+ end
38
+ end
39
+ end
@@ -3,6 +3,14 @@
3
3
  module Dodopayments
4
4
  module Models
5
5
  class OneTimeProductCartItem < Dodopayments::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ Dodopayments::OneTimeProductCartItem,
10
+ Dodopayments::Internal::AnyHash
11
+ )
12
+ end
13
+
6
14
  sig { returns(String) }
7
15
  attr_accessor :product_id
8
16
 
@@ -16,7 +24,11 @@ module Dodopayments
16
24
  attr_accessor :amount
17
25
 
18
26
  sig do
19
- params(product_id: String, quantity: Integer, amount: T.nilable(Integer)).returns(T.attached_class)
27
+ params(
28
+ product_id: String,
29
+ quantity: Integer,
30
+ amount: T.nilable(Integer)
31
+ ).returns(T.attached_class)
20
32
  end
21
33
  def self.new(
22
34
  product_id:,
@@ -25,9 +37,16 @@ module Dodopayments
25
37
  # amount will be ignored Represented in the lowest denomination of the currency
26
38
  # (e.g., cents for USD). For example, to charge $1.00, pass `100`.
27
39
  amount: nil
28
- ); end
29
- sig { override.returns({product_id: String, quantity: Integer, amount: T.nilable(Integer)}) }
30
- def to_hash; end
40
+ )
41
+ end
42
+
43
+ sig do
44
+ override.returns(
45
+ { product_id: String, quantity: Integer, amount: T.nilable(Integer) }
46
+ )
47
+ end
48
+ def to_hash
49
+ end
31
50
  end
32
51
  end
33
52
  end
@@ -3,12 +3,22 @@
3
3
  module Dodopayments
4
4
  module Models
5
5
  class Payment < Dodopayments::Internal::Type::BaseModel
6
- sig { returns(Dodopayments::Models::BillingAddress) }
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Dodopayments::Payment, Dodopayments::Internal::AnyHash)
9
+ end
10
+
11
+ # Billing address details for payments
12
+ sig { returns(Dodopayments::BillingAddress) }
7
13
  attr_reader :billing
8
14
 
9
- sig { params(billing: T.any(Dodopayments::Models::BillingAddress, Dodopayments::Internal::AnyHash)).void }
15
+ sig { params(billing: Dodopayments::BillingAddress::OrHash).void }
10
16
  attr_writer :billing
11
17
 
18
+ # brand id this payment belongs to
19
+ sig { returns(String) }
20
+ attr_accessor :brand_id
21
+
12
22
  # Identifier of the business associated with the payment
13
23
  sig { returns(String) }
14
24
  attr_accessor :business_id
@@ -17,21 +27,28 @@ module Dodopayments
17
27
  sig { returns(Time) }
18
28
  attr_accessor :created_at
19
29
 
20
- sig { returns(Dodopayments::Models::Currency::TaggedSymbol) }
30
+ # Currency used for the payment
31
+ sig { returns(Dodopayments::Currency::OrSymbol) }
21
32
  attr_accessor :currency
22
33
 
23
- sig { returns(Dodopayments::Models::CustomerLimitedDetails) }
34
+ # Details about the customer who made the payment
35
+ sig { returns(Dodopayments::CustomerLimitedDetails) }
24
36
  attr_reader :customer
25
37
 
26
38
  sig do
27
- params(customer: T.any(Dodopayments::Models::CustomerLimitedDetails, Dodopayments::Internal::AnyHash)).void
39
+ params(customer: Dodopayments::CustomerLimitedDetails::OrHash).void
28
40
  end
29
41
  attr_writer :customer
30
42
 
43
+ # brand id this payment belongs to
44
+ sig { returns(T::Boolean) }
45
+ attr_accessor :digital_products_delivered
46
+
31
47
  # List of disputes associated with this payment
32
- sig { returns(T::Array[Dodopayments::Models::Dispute]) }
48
+ sig { returns(T::Array[Dodopayments::Dispute]) }
33
49
  attr_accessor :disputes
34
50
 
51
+ # Additional custom data associated with the payment
35
52
  sig { returns(T::Hash[Symbol, String]) }
36
53
  attr_accessor :metadata
37
54
 
@@ -40,7 +57,7 @@ module Dodopayments
40
57
  attr_accessor :payment_id
41
58
 
42
59
  # List of refunds issued for this payment
43
- sig { returns(T::Array[Dodopayments::Models::Refund]) }
60
+ sig { returns(T::Array[Dodopayments::Refund]) }
44
61
  attr_accessor :refunds
45
62
 
46
63
  # The amount that will be credited to your Dodo balance after currency conversion
@@ -49,7 +66,10 @@ module Dodopayments
49
66
  sig { returns(Integer) }
50
67
  attr_accessor :settlement_amount
51
68
 
52
- sig { returns(Dodopayments::Models::Currency::TaggedSymbol) }
69
+ # The currency in which the settlement_amount will be credited to your Dodo
70
+ # balance. This may differ from the customer's payment currency in adaptive
71
+ # pricing scenarios.
72
+ sig { returns(Dodopayments::Currency::OrSymbol) }
53
73
  attr_accessor :settlement_currency
54
74
 
55
75
  # Total amount charged to the customer including tax, in smallest currency unit
@@ -57,10 +77,30 @@ module Dodopayments
57
77
  sig { returns(Integer) }
58
78
  attr_accessor :total_amount
59
79
 
80
+ # ISO2 country code of the card
81
+ sig { returns(T.nilable(Dodopayments::CountryCode::OrSymbol)) }
82
+ attr_accessor :card_issuing_country
83
+
84
+ # The last four digits of the card
85
+ sig { returns(T.nilable(String)) }
86
+ attr_accessor :card_last_four
87
+
88
+ # Card network like VISA, MASTERCARD etc.
89
+ sig { returns(T.nilable(String)) }
90
+ attr_accessor :card_network
91
+
92
+ # The type of card DEBIT or CREDIT
93
+ sig { returns(T.nilable(String)) }
94
+ attr_accessor :card_type
95
+
60
96
  # The discount id if discount is applied
61
97
  sig { returns(T.nilable(String)) }
62
98
  attr_accessor :discount_id
63
99
 
100
+ # An error code if the payment failed
101
+ sig { returns(T.nilable(String)) }
102
+ attr_accessor :error_code
103
+
64
104
  # An error message if the payment failed
65
105
  sig { returns(T.nilable(String)) }
66
106
  attr_accessor :error_message
@@ -78,7 +118,7 @@ module Dodopayments
78
118
  attr_accessor :payment_method_type
79
119
 
80
120
  # List of products purchased in a one-time payment
81
- sig { returns(T.nilable(T::Array[Dodopayments::Models::Payment::ProductCart])) }
121
+ sig { returns(T.nilable(T::Array[Dodopayments::Payment::ProductCart])) }
82
122
  attr_accessor :product_cart
83
123
 
84
124
  # This represents the portion of settlement_amount that corresponds to taxes
@@ -87,7 +127,8 @@ module Dodopayments
87
127
  sig { returns(T.nilable(Integer)) }
88
128
  attr_accessor :settlement_tax
89
129
 
90
- sig { returns(T.nilable(Dodopayments::Models::IntentStatus::TaggedSymbol)) }
130
+ # Current status of the payment intent
131
+ sig { returns(T.nilable(Dodopayments::IntentStatus::OrSymbol)) }
91
132
  attr_accessor :status
92
133
 
93
134
  # Identifier of the subscription if payment is part of a subscription
@@ -104,42 +145,57 @@ module Dodopayments
104
145
 
105
146
  sig do
106
147
  params(
107
- billing: T.any(Dodopayments::Models::BillingAddress, Dodopayments::Internal::AnyHash),
148
+ billing: Dodopayments::BillingAddress::OrHash,
149
+ brand_id: String,
108
150
  business_id: String,
109
151
  created_at: Time,
110
- currency: Dodopayments::Models::Currency::OrSymbol,
111
- customer: T.any(Dodopayments::Models::CustomerLimitedDetails, Dodopayments::Internal::AnyHash),
112
- disputes: T::Array[T.any(Dodopayments::Models::Dispute, Dodopayments::Internal::AnyHash)],
152
+ currency: Dodopayments::Currency::OrSymbol,
153
+ customer: Dodopayments::CustomerLimitedDetails::OrHash,
154
+ digital_products_delivered: T::Boolean,
155
+ disputes: T::Array[Dodopayments::Dispute::OrHash],
113
156
  metadata: T::Hash[Symbol, String],
114
157
  payment_id: String,
115
- refunds: T::Array[T.any(Dodopayments::Models::Refund, Dodopayments::Internal::AnyHash)],
158
+ refunds: T::Array[Dodopayments::Refund::OrHash],
116
159
  settlement_amount: Integer,
117
- settlement_currency: Dodopayments::Models::Currency::OrSymbol,
160
+ settlement_currency: Dodopayments::Currency::OrSymbol,
118
161
  total_amount: Integer,
162
+ card_issuing_country: T.nilable(Dodopayments::CountryCode::OrSymbol),
163
+ card_last_four: T.nilable(String),
164
+ card_network: T.nilable(String),
165
+ card_type: T.nilable(String),
119
166
  discount_id: T.nilable(String),
167
+ error_code: T.nilable(String),
120
168
  error_message: T.nilable(String),
121
169
  payment_link: T.nilable(String),
122
170
  payment_method: T.nilable(String),
123
171
  payment_method_type: T.nilable(String),
124
- product_cart: T.nilable(T::Array[T.any(Dodopayments::Models::Payment::ProductCart, Dodopayments::Internal::AnyHash)]),
172
+ product_cart:
173
+ T.nilable(T::Array[Dodopayments::Payment::ProductCart::OrHash]),
125
174
  settlement_tax: T.nilable(Integer),
126
- status: T.nilable(Dodopayments::Models::IntentStatus::OrSymbol),
175
+ status: T.nilable(Dodopayments::IntentStatus::OrSymbol),
127
176
  subscription_id: T.nilable(String),
128
177
  tax: T.nilable(Integer),
129
178
  updated_at: T.nilable(Time)
130
- )
131
- .returns(T.attached_class)
179
+ ).returns(T.attached_class)
132
180
  end
133
181
  def self.new(
182
+ # Billing address details for payments
134
183
  billing:,
184
+ # brand id this payment belongs to
185
+ brand_id:,
135
186
  # Identifier of the business associated with the payment
136
187
  business_id:,
137
188
  # Timestamp when the payment was created
138
189
  created_at:,
190
+ # Currency used for the payment
139
191
  currency:,
192
+ # Details about the customer who made the payment
140
193
  customer:,
194
+ # brand id this payment belongs to
195
+ digital_products_delivered:,
141
196
  # List of disputes associated with this payment
142
197
  disputes:,
198
+ # Additional custom data associated with the payment
143
199
  metadata:,
144
200
  # Unique identifier for the payment
145
201
  payment_id:,
@@ -149,12 +205,25 @@ module Dodopayments
149
205
  # and processing. Especially relevant for adaptive pricing where the customer's
150
206
  # payment currency differs from your settlement currency.
151
207
  settlement_amount:,
208
+ # The currency in which the settlement_amount will be credited to your Dodo
209
+ # balance. This may differ from the customer's payment currency in adaptive
210
+ # pricing scenarios.
152
211
  settlement_currency:,
153
212
  # Total amount charged to the customer including tax, in smallest currency unit
154
213
  # (e.g. cents)
155
214
  total_amount:,
215
+ # ISO2 country code of the card
216
+ card_issuing_country: nil,
217
+ # The last four digits of the card
218
+ card_last_four: nil,
219
+ # Card network like VISA, MASTERCARD etc.
220
+ card_network: nil,
221
+ # The type of card DEBIT or CREDIT
222
+ card_type: nil,
156
223
  # The discount id if discount is applied
157
224
  discount_id: nil,
225
+ # An error code if the payment failed
226
+ error_code: nil,
158
227
  # An error message if the payment failed
159
228
  error_message: nil,
160
229
  # Checkout URL
@@ -169,6 +238,7 @@ module Dodopayments
169
238
  # collected. Especially relevant for adaptive pricing where the tax component must
170
239
  # be tracked separately in your Dodo balance.
171
240
  settlement_tax: nil,
241
+ # Current status of the payment intent
172
242
  status: nil,
173
243
  # Identifier of the subscription if payment is part of a subscription
174
244
  subscription_id: nil,
@@ -176,51 +246,76 @@ module Dodopayments
176
246
  tax: nil,
177
247
  # Timestamp when the payment was last updated
178
248
  updated_at: nil
179
- ); end
249
+ )
250
+ end
251
+
180
252
  sig do
181
- override
182
- .returns(
183
- {
184
- billing: Dodopayments::Models::BillingAddress,
185
- business_id: String,
186
- created_at: Time,
187
- currency: Dodopayments::Models::Currency::TaggedSymbol,
188
- customer: Dodopayments::Models::CustomerLimitedDetails,
189
- disputes: T::Array[Dodopayments::Models::Dispute],
190
- metadata: T::Hash[Symbol, String],
191
- payment_id: String,
192
- refunds: T::Array[Dodopayments::Models::Refund],
193
- settlement_amount: Integer,
194
- settlement_currency: Dodopayments::Models::Currency::TaggedSymbol,
195
- total_amount: Integer,
196
- discount_id: T.nilable(String),
197
- error_message: T.nilable(String),
198
- payment_link: T.nilable(String),
199
- payment_method: T.nilable(String),
200
- payment_method_type: T.nilable(String),
201
- product_cart: T.nilable(T::Array[Dodopayments::Models::Payment::ProductCart]),
202
- settlement_tax: T.nilable(Integer),
203
- status: T.nilable(Dodopayments::Models::IntentStatus::TaggedSymbol),
204
- subscription_id: T.nilable(String),
205
- tax: T.nilable(Integer),
206
- updated_at: T.nilable(Time)
207
- }
208
- )
253
+ override.returns(
254
+ {
255
+ billing: Dodopayments::BillingAddress,
256
+ brand_id: String,
257
+ business_id: String,
258
+ created_at: Time,
259
+ currency: Dodopayments::Currency::OrSymbol,
260
+ customer: Dodopayments::CustomerLimitedDetails,
261
+ digital_products_delivered: T::Boolean,
262
+ disputes: T::Array[Dodopayments::Dispute],
263
+ metadata: T::Hash[Symbol, String],
264
+ payment_id: String,
265
+ refunds: T::Array[Dodopayments::Refund],
266
+ settlement_amount: Integer,
267
+ settlement_currency: Dodopayments::Currency::OrSymbol,
268
+ total_amount: Integer,
269
+ card_issuing_country:
270
+ T.nilable(Dodopayments::CountryCode::OrSymbol),
271
+ card_last_four: T.nilable(String),
272
+ card_network: T.nilable(String),
273
+ card_type: T.nilable(String),
274
+ discount_id: T.nilable(String),
275
+ error_code: T.nilable(String),
276
+ error_message: T.nilable(String),
277
+ payment_link: T.nilable(String),
278
+ payment_method: T.nilable(String),
279
+ payment_method_type: T.nilable(String),
280
+ product_cart:
281
+ T.nilable(T::Array[Dodopayments::Payment::ProductCart]),
282
+ settlement_tax: T.nilable(Integer),
283
+ status: T.nilable(Dodopayments::IntentStatus::OrSymbol),
284
+ subscription_id: T.nilable(String),
285
+ tax: T.nilable(Integer),
286
+ updated_at: T.nilable(Time)
287
+ }
288
+ )
289
+ end
290
+ def to_hash
209
291
  end
210
- def to_hash; end
211
292
 
212
293
  class ProductCart < Dodopayments::Internal::Type::BaseModel
294
+ OrHash =
295
+ T.type_alias do
296
+ T.any(
297
+ Dodopayments::Payment::ProductCart,
298
+ Dodopayments::Internal::AnyHash
299
+ )
300
+ end
301
+
213
302
  sig { returns(String) }
214
303
  attr_accessor :product_id
215
304
 
216
305
  sig { returns(Integer) }
217
306
  attr_accessor :quantity
218
307
 
219
- sig { params(product_id: String, quantity: Integer).returns(T.attached_class) }
220
- def self.new(product_id:, quantity:); end
308
+ sig do
309
+ params(product_id: String, quantity: Integer).returns(
310
+ T.attached_class
311
+ )
312
+ end
313
+ def self.new(product_id:, quantity:)
314
+ end
221
315
 
222
- sig { override.returns({product_id: String, quantity: Integer}) }
223
- def to_hash; end
316
+ sig { override.returns({ product_id: String, quantity: Integer }) }
317
+ def to_hash
318
+ end
224
319
  end
225
320
  end
226
321
  end