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