mollie-api-py 1.0.0__py3-none-any.whl

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 (337) hide show
  1. mollie/__init__.py +18 -0
  2. mollie/_hooks/__init__.py +5 -0
  3. mollie/_hooks/mollie_hooks.py +165 -0
  4. mollie/_hooks/registration.py +18 -0
  5. mollie/_hooks/sdkhooks.py +76 -0
  6. mollie/_hooks/types.py +113 -0
  7. mollie/_version.py +15 -0
  8. mollie/balance_transfers.py +651 -0
  9. mollie/balances.py +1105 -0
  10. mollie/basesdk.py +360 -0
  11. mollie/capabilities.py +209 -0
  12. mollie/captures.py +677 -0
  13. mollie/chargebacks_sdk.py +675 -0
  14. mollie/client_links.py +325 -0
  15. mollie/clients.py +409 -0
  16. mollie/customers.py +1563 -0
  17. mollie/delayed_routing.py +421 -0
  18. mollie/httpclient.py +125 -0
  19. mollie/invoices.py +429 -0
  20. mollie/mandates.py +895 -0
  21. mollie/methods.py +789 -0
  22. mollie/models/__init__.py +4002 -0
  23. mollie/models/address.py +29 -0
  24. mollie/models/amount.py +25 -0
  25. mollie/models/amount_nullable.py +24 -0
  26. mollie/models/apierror.py +40 -0
  27. mollie/models/balance_card_audience.py +10 -0
  28. mollie/models/balance_card_issuer.py +12 -0
  29. mollie/models/balance_card_region.py +12 -0
  30. mollie/models/balance_fee_type.py +43 -0
  31. mollie/models/balance_prepayment_part_type.py +13 -0
  32. mollie/models/balance_report_grouping.py +10 -0
  33. mollie/models/balance_transaction_type.py +47 -0
  34. mollie/models/balance_transfer_category.py +17 -0
  35. mollie/models/balance_transfer_category_response.py +18 -0
  36. mollie/models/balance_transfer_destination_type.py +14 -0
  37. mollie/models/balance_transfer_party_type.py +10 -0
  38. mollie/models/balance_transfer_party_type_response.py +11 -0
  39. mollie/models/balance_transfer_status.py +13 -0
  40. mollie/models/balance_transfer_status_reason_response.py +19 -0
  41. mollie/models/billingaddress.py +154 -0
  42. mollie/models/cancel_paymentop.py +93 -0
  43. mollie/models/cancel_refundop.py +86 -0
  44. mollie/models/cancel_subscriptionop.py +100 -0
  45. mollie/models/capability_requirement_status.py +15 -0
  46. mollie/models/capability_status.py +12 -0
  47. mollie/models/capability_status_reason.py +10 -0
  48. mollie/models/capture_mode.py +15 -0
  49. mollie/models/capture_mode_response.py +16 -0
  50. mollie/models/capture_response.py +265 -0
  51. mollie/models/client_link_request.py +210 -0
  52. mollie/models/client_link_response.py +56 -0
  53. mollie/models/clienterror.py +30 -0
  54. mollie/models/components_sub_totals.py +127 -0
  55. mollie/models/create_captureop.py +43 -0
  56. mollie/models/create_client_linkop.py +29 -0
  57. mollie/models/create_connect_balance_transferop.py +32 -0
  58. mollie/models/create_customer_paymentop.py +43 -0
  59. mollie/models/create_customerop.py +29 -0
  60. mollie/models/create_mandateop.py +43 -0
  61. mollie/models/create_payment_linkop.py +325 -0
  62. mollie/models/create_paymentop.py +73 -0
  63. mollie/models/create_profileop.py +29 -0
  64. mollie/models/create_refundop.py +43 -0
  65. mollie/models/create_sales_invoiceop.py +29 -0
  66. mollie/models/create_subscriptionop.py +43 -0
  67. mollie/models/create_webhook.py +123 -0
  68. mollie/models/create_webhookop.py +69 -0
  69. mollie/models/currencies.py +20 -0
  70. mollie/models/customer_response.py +169 -0
  71. mollie/models/delete_customerop.py +91 -0
  72. mollie/models/delete_payment_linkop.py +91 -0
  73. mollie/models/delete_profileop.py +29 -0
  74. mollie/models/delete_sales_invoiceop.py +44 -0
  75. mollie/models/delete_values_sales_invoice.py +54 -0
  76. mollie/models/delete_webhookop.py +56 -0
  77. mollie/models/entity_balance.py +325 -0
  78. mollie/models/entity_balance_report.py +541 -0
  79. mollie/models/entity_balance_transaction.py +1068 -0
  80. mollie/models/entity_balance_transfer.py +62 -0
  81. mollie/models/entity_balance_transfer_party.py +28 -0
  82. mollie/models/entity_balance_transfer_party_response.py +32 -0
  83. mollie/models/entity_balance_transfer_response.py +159 -0
  84. mollie/models/entity_capability.py +75 -0
  85. mollie/models/entity_capability_requirement.py +87 -0
  86. mollie/models/entity_capture.py +63 -0
  87. mollie/models/entity_chargeback.py +247 -0
  88. mollie/models/entity_customer.py +86 -0
  89. mollie/models/entity_event.py +46 -0
  90. mollie/models/entity_invoice.py +247 -0
  91. mollie/models/entity_method_get.py +329 -0
  92. mollie/models/entity_onboarding_status.py +95 -0
  93. mollie/models/entity_organization.py +178 -0
  94. mollie/models/entity_payment_route.py +111 -0
  95. mollie/models/entity_payment_route_response.py +140 -0
  96. mollie/models/entity_permission.py +61 -0
  97. mollie/models/entity_refund_response.py +361 -0
  98. mollie/models/entity_route.py +96 -0
  99. mollie/models/entity_settlement.py +467 -0
  100. mollie/models/entity_terminal.py +160 -0
  101. mollie/models/entity_webhook.py +122 -0
  102. mollie/models/entity_webhook_event.py +149 -0
  103. mollie/models/error_response.py +70 -0
  104. mollie/models/get_balance_reportop.py +126 -0
  105. mollie/models/get_balanceop.py +71 -0
  106. mollie/models/get_captureop.py +129 -0
  107. mollie/models/get_chargebackop.py +129 -0
  108. mollie/models/get_clientop.py +216 -0
  109. mollie/models/get_connect_balance_transferop.py +71 -0
  110. mollie/models/get_current_organizationop.py +22 -0
  111. mollie/models/get_current_profileop.py +22 -0
  112. mollie/models/get_customerop.py +286 -0
  113. mollie/models/get_invoiceop.py +29 -0
  114. mollie/models/get_mandateop.py +86 -0
  115. mollie/models/get_methodop.py +199 -0
  116. mollie/models/get_next_settlementop.py +22 -0
  117. mollie/models/get_onboarding_statusop.py +22 -0
  118. mollie/models/get_open_settlementop.py +22 -0
  119. mollie/models/get_organizationop.py +71 -0
  120. mollie/models/get_partner_statusop.py +231 -0
  121. mollie/models/get_payment_link_paymentsop.py +188 -0
  122. mollie/models/get_payment_linkop.py +77 -0
  123. mollie/models/get_paymentop.py +128 -0
  124. mollie/models/get_permissionop.py +73 -0
  125. mollie/models/get_primary_balanceop.py +22 -0
  126. mollie/models/get_profileop.py +71 -0
  127. mollie/models/get_refundop.py +129 -0
  128. mollie/models/get_sales_invoiceop.py +75 -0
  129. mollie/models/get_settlementop.py +29 -0
  130. mollie/models/get_subscriptionop.py +86 -0
  131. mollie/models/get_terminalop.py +77 -0
  132. mollie/models/get_webhook_eventop.py +71 -0
  133. mollie/models/get_webhookop.py +71 -0
  134. mollie/models/internal/__init__.py +54 -0
  135. mollie/models/internal/globals.py +59 -0
  136. mollie/models/line_categories.py +13 -0
  137. mollie/models/line_categories_response.py +14 -0
  138. mollie/models/list_all_chargebacksop.py +236 -0
  139. mollie/models/list_all_methodsop.py +249 -0
  140. mollie/models/list_all_refundsop.py +230 -0
  141. mollie/models/list_all_subscriptionsop.py +202 -0
  142. mollie/models/list_balance_transactionsop.py +174 -0
  143. mollie/models/list_balancesop.py +171 -0
  144. mollie/models/list_capabilitiesop.py +62 -0
  145. mollie/models/list_capture_response.py +264 -0
  146. mollie/models/list_capturesop.py +185 -0
  147. mollie/models/list_chargebacksop.py +185 -0
  148. mollie/models/list_clientsop.py +269 -0
  149. mollie/models/list_connect_balance_transfersop.py +177 -0
  150. mollie/models/list_customer_paymentsop.py +231 -0
  151. mollie/models/list_customer_response.py +164 -0
  152. mollie/models/list_customersop.py +172 -0
  153. mollie/models/list_entity_balance.py +322 -0
  154. mollie/models/list_entity_chargeback.py +244 -0
  155. mollie/models/list_entity_invoice.py +244 -0
  156. mollie/models/list_entity_method.py +315 -0
  157. mollie/models/list_entity_method_all.py +391 -0
  158. mollie/models/list_entity_permission.py +56 -0
  159. mollie/models/list_entity_refund.py +352 -0
  160. mollie/models/list_entity_settlement.py +457 -0
  161. mollie/models/list_entity_terminal.py +157 -0
  162. mollie/models/list_entity_webhook.py +117 -0
  163. mollie/models/list_invoicesop.py +175 -0
  164. mollie/models/list_links.py +68 -0
  165. mollie/models/list_mandate_response.py +261 -0
  166. mollie/models/list_mandatesop.py +186 -0
  167. mollie/models/list_methodsop.py +332 -0
  168. mollie/models/list_payment_linksop.py +159 -0
  169. mollie/models/list_payment_response.py +1953 -0
  170. mollie/models/list_paymentsop.py +217 -0
  171. mollie/models/list_permissionsop.py +85 -0
  172. mollie/models/list_profile_response.py +194 -0
  173. mollie/models/list_profilesop.py +118 -0
  174. mollie/models/list_refundsop.py +189 -0
  175. mollie/models/list_route_get_response.py +97 -0
  176. mollie/models/list_sales_invoice_response.py +505 -0
  177. mollie/models/list_sales_invoicesop.py +172 -0
  178. mollie/models/list_settlement_capturesop.py +187 -0
  179. mollie/models/list_settlement_chargebacksop.py +187 -0
  180. mollie/models/list_settlement_paymentsop.py +233 -0
  181. mollie/models/list_settlement_refundsop.py +191 -0
  182. mollie/models/list_settlementsop.py +178 -0
  183. mollie/models/list_subscription_paymentsop.py +242 -0
  184. mollie/models/list_subscription_response.py +344 -0
  185. mollie/models/list_subscriptionsop.py +189 -0
  186. mollie/models/list_terminalsop.py +172 -0
  187. mollie/models/list_webhooksop.py +189 -0
  188. mollie/models/locale.py +32 -0
  189. mollie/models/locale_response.py +33 -0
  190. mollie/models/mandate_details_card_label_response.py +22 -0
  191. mollie/models/mandate_method.py +15 -0
  192. mollie/models/mandate_method_response.py +16 -0
  193. mollie/models/mandate_request.py +160 -0
  194. mollie/models/mandate_response.py +264 -0
  195. mollie/models/metadata.py +19 -0
  196. mollie/models/method.py +50 -0
  197. mollie/models/method_include_wallets_parameter.py +8 -0
  198. mollie/models/method_resource_parameter.py +9 -0
  199. mollie/models/method_response.py +59 -0
  200. mollie/models/method_status.py +15 -0
  201. mollie/models/mode.py +12 -0
  202. mollie/models/no_response_error.py +17 -0
  203. mollie/models/onboarding_vat_regulation.py +16 -0
  204. mollie/models/organization_vat_regulation.py +17 -0
  205. mollie/models/payment_address.py +130 -0
  206. mollie/models/payment_create_routeop.py +43 -0
  207. mollie/models/payment_details_card_audition_response.py +12 -0
  208. mollie/models/payment_details_card_funding_response.py +14 -0
  209. mollie/models/payment_details_card_label_response.py +23 -0
  210. mollie/models/payment_details_card_security_response.py +12 -0
  211. mollie/models/payment_details_failure_reason_response.py +25 -0
  212. mollie/models/payment_details_fee_region_response.py +20 -0
  213. mollie/models/payment_details_receipt_card_read_method_response.py +17 -0
  214. mollie/models/payment_details_receipt_card_verification_method_response.py +21 -0
  215. mollie/models/payment_details_seller_protection_response.py +20 -0
  216. mollie/models/payment_details_wallet_response.py +11 -0
  217. mollie/models/payment_line_item.py +96 -0
  218. mollie/models/payment_line_item_response.py +104 -0
  219. mollie/models/payment_line_type.py +20 -0
  220. mollie/models/payment_line_type_response.py +21 -0
  221. mollie/models/payment_link_method.py +36 -0
  222. mollie/models/payment_link_method_response.py +37 -0
  223. mollie/models/payment_link_response.py +348 -0
  224. mollie/models/payment_link_sequence_type.py +9 -0
  225. mollie/models/payment_link_sequence_type_response.py +10 -0
  226. mollie/models/payment_list_routesop.py +140 -0
  227. mollie/models/payment_method.py +53 -0
  228. mollie/models/payment_request.py +919 -0
  229. mollie/models/payment_response.py +1953 -0
  230. mollie/models/profile_request.py +67 -0
  231. mollie/models/profile_response.py +197 -0
  232. mollie/models/profile_review_status_response.py +12 -0
  233. mollie/models/recurring_line_item.py +77 -0
  234. mollie/models/refund_external_reference_type.py +10 -0
  235. mollie/models/refund_external_reference_type_response.py +11 -0
  236. mollie/models/refund_request.py +200 -0
  237. mollie/models/release_authorizationop.py +108 -0
  238. mollie/models/request_apple_pay_payment_sessionop.py +76 -0
  239. mollie/models/responsevalidationerror.py +27 -0
  240. mollie/models/revoke_mandateop.py +100 -0
  241. mollie/models/route_create_response.py +97 -0
  242. mollie/models/route_destination_type.py +10 -0
  243. mollie/models/route_destination_type_response.py +11 -0
  244. mollie/models/sales_invoice_discount.py +21 -0
  245. mollie/models/sales_invoice_discount_response.py +25 -0
  246. mollie/models/sales_invoice_discount_type.py +11 -0
  247. mollie/models/sales_invoice_discount_type_response.py +12 -0
  248. mollie/models/sales_invoice_email_details.py +20 -0
  249. mollie/models/sales_invoice_line_item.py +67 -0
  250. mollie/models/sales_invoice_line_item_response.py +70 -0
  251. mollie/models/sales_invoice_payment_details.py +59 -0
  252. mollie/models/sales_invoice_payment_details_response.py +66 -0
  253. mollie/models/sales_invoice_payment_details_source.py +12 -0
  254. mollie/models/sales_invoice_payment_details_source_response.py +13 -0
  255. mollie/models/sales_invoice_payment_term.py +16 -0
  256. mollie/models/sales_invoice_payment_term_response.py +17 -0
  257. mollie/models/sales_invoice_recipient.py +176 -0
  258. mollie/models/sales_invoice_recipient_locale.py +18 -0
  259. mollie/models/sales_invoice_recipient_locale_response.py +19 -0
  260. mollie/models/sales_invoice_recipient_response.py +182 -0
  261. mollie/models/sales_invoice_recipient_type.py +13 -0
  262. mollie/models/sales_invoice_recipient_type_response.py +14 -0
  263. mollie/models/sales_invoice_request.py +256 -0
  264. mollie/models/sales_invoice_response.py +509 -0
  265. mollie/models/sales_invoice_status.py +25 -0
  266. mollie/models/sales_invoice_status_response.py +26 -0
  267. mollie/models/sales_invoice_vat_mode.py +13 -0
  268. mollie/models/sales_invoice_vat_mode_response.py +14 -0
  269. mollie/models/sales_invoice_vat_scheme.py +11 -0
  270. mollie/models/sales_invoice_vat_scheme_response.py +12 -0
  271. mollie/models/security.py +35 -0
  272. mollie/models/sequence_type.py +10 -0
  273. mollie/models/sequence_type_response.py +11 -0
  274. mollie/models/sorting.py +9 -0
  275. mollie/models/status_reason.py +168 -0
  276. mollie/models/sub_group.py +52 -0
  277. mollie/models/sub_totals.py +120 -0
  278. mollie/models/submit_onboarding_dataop.py +214 -0
  279. mollie/models/subscription_method.py +12 -0
  280. mollie/models/subscription_method_response.py +13 -0
  281. mollie/models/subscription_request.py +213 -0
  282. mollie/models/subscription_response.py +349 -0
  283. mollie/models/terminal_brand.py +12 -0
  284. mollie/models/terminal_model.py +16 -0
  285. mollie/models/test_webhookop.py +64 -0
  286. mollie/models/update_customerop.py +43 -0
  287. mollie/models/update_payment_linkop.py +172 -0
  288. mollie/models/update_paymentop.py +332 -0
  289. mollie/models/update_profileop.py +147 -0
  290. mollie/models/update_sales_invoiceop.py +44 -0
  291. mollie/models/update_subscriptionop.py +188 -0
  292. mollie/models/update_values_sales_invoice.py +176 -0
  293. mollie/models/update_webhookop.py +83 -0
  294. mollie/models/url.py +24 -0
  295. mollie/models/url_nullable.py +25 -0
  296. mollie/models/webhook_event_types.py +18 -0
  297. mollie/models/webhook_status.py +14 -0
  298. mollie/onboarding.py +403 -0
  299. mollie/organizations.py +579 -0
  300. mollie/payment_links.py +1323 -0
  301. mollie/payments_sdk.py +1385 -0
  302. mollie/permissions.py +397 -0
  303. mollie/profiles.py +1209 -0
  304. mollie/py.typed +1 -0
  305. mollie/refunds_sdk.py +1111 -0
  306. mollie/sales_invoices.py +1121 -0
  307. mollie/sdk.py +265 -0
  308. mollie/sdkconfiguration.py +50 -0
  309. mollie/settlements.py +1735 -0
  310. mollie/subscriptions.py +1617 -0
  311. mollie/terminals.py +427 -0
  312. mollie/types/__init__.py +21 -0
  313. mollie/types/basemodel.py +39 -0
  314. mollie/utils/__init__.py +200 -0
  315. mollie/utils/annotations.py +79 -0
  316. mollie/utils/datetimes.py +23 -0
  317. mollie/utils/enums.py +74 -0
  318. mollie/utils/eventstreaming.py +248 -0
  319. mollie/utils/forms.py +223 -0
  320. mollie/utils/headers.py +136 -0
  321. mollie/utils/logger.py +27 -0
  322. mollie/utils/metadata.py +118 -0
  323. mollie/utils/queryparams.py +205 -0
  324. mollie/utils/requestbodies.py +66 -0
  325. mollie/utils/retries.py +217 -0
  326. mollie/utils/security.py +195 -0
  327. mollie/utils/serializers.py +249 -0
  328. mollie/utils/unmarshal_json_response.py +24 -0
  329. mollie/utils/url.py +155 -0
  330. mollie/utils/values.py +137 -0
  331. mollie/wallets.py +263 -0
  332. mollie/webhook_events.py +211 -0
  333. mollie/webhooks.py +1305 -0
  334. mollie_api_py-1.0.0.dist-info/METADATA +834 -0
  335. mollie_api_py-1.0.0.dist-info/RECORD +337 -0
  336. mollie_api_py-1.0.0.dist-info/WHEEL +4 -0
  337. mollie_api_py-1.0.0.dist-info/licenses/LICENSE.md +24 -0
@@ -0,0 +1,29 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel
5
+ import pydantic
6
+ from typing_extensions import Annotated, TypedDict
7
+
8
+
9
+ class AddressTypedDict(TypedDict):
10
+ street_and_number: str
11
+ r"""A street and street number."""
12
+ postal_code: str
13
+ r"""A postal code. This field may be required if the provided country has a postal code system."""
14
+ city: str
15
+ country: str
16
+ r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format."""
17
+
18
+
19
+ class Address(BaseModel):
20
+ street_and_number: Annotated[str, pydantic.Field(alias="streetAndNumber")]
21
+ r"""A street and street number."""
22
+
23
+ postal_code: Annotated[str, pydantic.Field(alias="postalCode")]
24
+ r"""A postal code. This field may be required if the provided country has a postal code system."""
25
+
26
+ city: str
27
+
28
+ country: str
29
+ r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format."""
@@ -0,0 +1,25 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel
5
+ from mollie.utils import FieldMetadata
6
+ from typing_extensions import Annotated, TypedDict
7
+
8
+
9
+ class AmountTypedDict(TypedDict):
10
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
11
+
12
+ currency: str
13
+ r"""A three-character ISO 4217 currency code."""
14
+ value: str
15
+ r"""A string containing an exact monetary amount in the given currency."""
16
+
17
+
18
+ class Amount(BaseModel):
19
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
20
+
21
+ currency: Annotated[str, FieldMetadata(query=True)]
22
+ r"""A three-character ISO 4217 currency code."""
23
+
24
+ value: Annotated[str, FieldMetadata(query=True)]
25
+ r"""A string containing an exact monetary amount in the given currency."""
@@ -0,0 +1,24 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel
5
+ from typing_extensions import TypedDict
6
+
7
+
8
+ class AmountNullableTypedDict(TypedDict):
9
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
10
+
11
+ currency: str
12
+ r"""A three-character ISO 4217 currency code."""
13
+ value: str
14
+ r"""A string containing an exact monetary amount in the given currency."""
15
+
16
+
17
+ class AmountNullable(BaseModel):
18
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
19
+
20
+ currency: str
21
+ r"""A three-character ISO 4217 currency code."""
22
+
23
+ value: str
24
+ r"""A string containing an exact monetary amount in the given currency."""
@@ -0,0 +1,40 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ import httpx
4
+ from typing import Optional
5
+ from dataclasses import dataclass
6
+
7
+ from mollie.models import ClientError
8
+
9
+ MAX_MESSAGE_LEN = 10_000
10
+
11
+
12
+ @dataclass(unsafe_hash=True)
13
+ class APIError(ClientError):
14
+ """The fallback error class if no more specific error class is matched."""
15
+
16
+ def __init__(
17
+ self, message: str, raw_response: httpx.Response, body: Optional[str] = None
18
+ ):
19
+ body_display = body or raw_response.text or '""'
20
+
21
+ if message:
22
+ message += ": "
23
+ message += f"Status {raw_response.status_code}"
24
+
25
+ headers = raw_response.headers
26
+ content_type = headers.get("content-type", '""')
27
+ if content_type != "application/json":
28
+ if " " in content_type:
29
+ content_type = f'"{content_type}"'
30
+ message += f" Content-Type {content_type}"
31
+
32
+ if len(body_display) > MAX_MESSAGE_LEN:
33
+ truncated = body_display[:MAX_MESSAGE_LEN]
34
+ remaining = len(body_display) - MAX_MESSAGE_LEN
35
+ body_display = f"{truncated}...and {remaining} more chars"
36
+
37
+ message += f". Body: {body_display}"
38
+ message = message.strip()
39
+
40
+ super().__init__(message, raw_response, body)
@@ -0,0 +1,10 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceCardAudience(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ CORPORATE = "corporate"
10
+ OTHER = "other"
@@ -0,0 +1,12 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceCardIssuer(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ AMEX = "amex"
10
+ MAESTRO = "maestro"
11
+ CARTE_BANCAIRE = "carte-bancaire"
12
+ OTHER = "other"
@@ -0,0 +1,12 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceCardRegion(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ INTRA_EEA = "intra-eea"
10
+ INTRA_EU = "intra-eu"
11
+ DOMESTIC = "domestic"
12
+ OTHER = "other"
@@ -0,0 +1,43 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceFeeType(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ PAYMENT_FEE = "payment-fee"
10
+ DIRECT_DEBIT_FAILURE_FEE = "direct-debit-failure-fee"
11
+ UNAUTHORIZED_DIRECT_DEBIT_FEE = "unauthorized-direct-debit-fee"
12
+ BANK_CHARGED_DIRECT_DEBIT_FAILURE_FEE = "bank-charged-direct-debit-failure-fee"
13
+ PARTNER_COMMISSION = "partner-commission"
14
+ APPLICATION_FEE = "application-fee"
15
+ CAPTURE_FEE = "capture-fee"
16
+ REFUND_FEE = "refund-fee"
17
+ CHARGEBACK_FEE = "chargeback-fee"
18
+ PAYMENT_NOTIFICATION_FEE = "payment-notification-fee"
19
+ TRANSFER_NOTIFICATION_FEE = "transfer-notification-fee"
20
+ PAYOUT_FEE = "payout-fee"
21
+ FEE_DISCOUNT = "fee-discount"
22
+ FEE_REIMBURSEMENT = "fee-reimbursement"
23
+ PLATFORM_VOLUME_FEE = "platform-volume-fee"
24
+ PLATFORM_CONNECTED_ORGANIZATIONS_FEE = "platform-connected-organizations-fee"
25
+ BALANCE_CHARGE_FEE = "balance-charge-fee"
26
+ THREEDS_AUTHENTICATION_ATTEMPT_FEE = "3ds-authentication-attempt-fee"
27
+ TERMINAL_MONTHLY_FEE = "terminal-monthly-fee"
28
+ ACCEPTANCE_RISK_FEE = "acceptance-risk-fee"
29
+ TOP_UP_FEE = "top-up-fee"
30
+ PAYMENT_GATEWAY_FEE = "payment-gateway-fee"
31
+ MASTERCARD_SPECIALTY_MERCHANT_PROGRAM_PROCESSING_FEE = (
32
+ "mastercard-specialty-merchant-program-processing-fee"
33
+ )
34
+ MASTERCARD_SPECIALTY_MERCHANT_PROGRAM_REGISTRATION_FEE = (
35
+ "mastercard-specialty-merchant-program-registration-fee"
36
+ )
37
+ VISA_INTEGRITY_RISK_PROGRAM_PROCESSING_FEE = (
38
+ "visa-integrity-risk-program-processing-fee"
39
+ )
40
+ VISA_INTEGRITY_RISK_PROGRAM_REGISTRATION_FEE = (
41
+ "visa-integrity-risk-program-registration-fee"
42
+ )
43
+ MINIMUM_INVOICE_AMOUNT_FEE = "minimum-invoice-amount-fee"
@@ -0,0 +1,13 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalancePrepaymentPartType(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ FEE = "fee"
10
+ FEE_REIMBURSEMENT = "fee-reimbursement"
11
+ FEE_DISCOUNT = "fee-discount"
12
+ FEE_VAT = "fee-vat"
13
+ FEE_ROUNDING_COMPENSATION = "fee-rounding-compensation"
@@ -0,0 +1,10 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceReportGrouping(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ STATUS_BALANCES = "status-balances"
10
+ TRANSACTION_CATEGORIES = "transaction-categories"
@@ -0,0 +1,47 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceTransactionType(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ PAYMENT = "payment"
10
+ SPLIT_PAYMENT = "split-payment"
11
+ FAILED_PAYMENT = "failed-payment"
12
+ FAILED_PLATFORM_SPLIT_PAYMENT = "failed-platform-split-payment"
13
+ FAILED_SPLIT_PAYMENT_COMPENSATION = "failed-split-payment-compensation"
14
+ CAPTURE = "capture"
15
+ SPLIT_TRANSACTION = "split-transaction"
16
+ REFUND = "refund"
17
+ PLATFORM_PAYMENT_REFUND = "platform-payment-refund"
18
+ RETURNED_PLATFORM_PAYMENT_REFUND = "returned-platform-payment-refund"
19
+ REFUND_COMPENSATION = "refund-compensation"
20
+ RETURNED_REFUND_COMPENSATION = "returned-refund-compensation"
21
+ RETURNED_REFUND = "returned-refund"
22
+ CHARGEBACK = "chargeback"
23
+ CHARGEBACK_REVERSAL = "chargeback-reversal"
24
+ CHARGEBACK_COMPENSATION = "chargeback-compensation"
25
+ REVERSED_CHARGEBACK_COMPENSATION = "reversed-chargeback-compensation"
26
+ PLATFORM_PAYMENT_CHARGEBACK = "platform-payment-chargeback"
27
+ REVERSED_PLATFORM_PAYMENT_CHARGEBACK = "reversed-platform-payment-chargeback"
28
+ FEE_PREPAYMENT = "fee-prepayment"
29
+ OUTGOING_TRANSFER = "outgoing-transfer"
30
+ INCOMING_TRANSFER = "incoming-transfer"
31
+ CANCELED_TRANSFER = "canceled-transfer"
32
+ RETURNED_TRANSFER = "returned-transfer"
33
+ BALANCE_RESERVE = "balance-reserve"
34
+ BALANCE_RESERVE_RETURN = "balance-reserve-return"
35
+ INVOICE_ROUNDING_COMPENSATION = "invoice-rounding-compensation"
36
+ ROLLING_RESERVE_HOLD = "rolling-reserve-hold"
37
+ ROLLING_RESERVE_RELEASE = "rolling-reserve-release"
38
+ BALANCE_CORRECTION = "balance-correction"
39
+ REPAYMENT = "repayment"
40
+ LOAN = "loan"
41
+ BALANCE_TOPUP = "balance-topup"
42
+ CASH_COLLATERAL_ISSUANCE_ = "cash-collateral-issuance';"
43
+ CASH_COLLATERAL_RELEASE = "cash-collateral-release"
44
+ PENDING_ROLLING_RESERVE = "pending-rolling-reserve"
45
+ TO_BE_RELEASED_ROLLING_RESERVE = "to-be-released-rolling-reserve"
46
+ HELD_ROLLING_RESERVE = "held-rolling-reserve"
47
+ RELEASED_ROLLING_RESERVE = "released-rolling-reserve"
@@ -0,0 +1,17 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+
6
+
7
+ class BalanceTransferCategory(str, Enum):
8
+ r"""The type of the transfer. Different fees may apply to different types of transfers."""
9
+
10
+ INVOICE_COLLECTION = "invoice_collection"
11
+ PURCHASE = "purchase"
12
+ CHARGEBACK = "chargeback"
13
+ REFUND = "refund"
14
+ SERVICE_PENALTY = "service_penalty"
15
+ DISCOUNT_COMPENSATION = "discount_compensation"
16
+ MANUAL_CORRECTION = "manual_correction"
17
+ OTHER_FEE = "other_fee"
@@ -0,0 +1,18 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceTransferCategoryResponse(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""The type of the transfer. Different fees may apply to different types of transfers."""
10
+
11
+ INVOICE_COLLECTION = "invoice_collection"
12
+ PURCHASE = "purchase"
13
+ CHARGEBACK = "chargeback"
14
+ REFUND = "refund"
15
+ SERVICE_PENALTY = "service_penalty"
16
+ DISCOUNT_COMPENSATION = "discount_compensation"
17
+ MANUAL_CORRECTION = "manual_correction"
18
+ OTHER_FEE = "other_fee"
@@ -0,0 +1,14 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceTransferDestinationType(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""The default destination of automatic scheduled transfers. Currently only `bank-account` is supported.
10
+
11
+ * `bank-account` — Transfer the balance amount to an external bank account
12
+ """
13
+
14
+ BANK_ACCOUNT = "bank-account"
@@ -0,0 +1,10 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+
6
+
7
+ class BalanceTransferPartyType(str, Enum):
8
+ r"""Defines the type of the party. At the moment, only `organization` is supported."""
9
+
10
+ ORGANIZATION = "organization"
@@ -0,0 +1,11 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceTransferPartyTypeResponse(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""Defines the type of the party. At the moment, only `organization` is supported."""
10
+
11
+ ORGANIZATION = "organization"
@@ -0,0 +1,13 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceTransferStatus(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""The status of the transfer."""
10
+
11
+ CREATED = "created"
12
+ FAILED = "failed"
13
+ SUCCEEDED = "succeeded"
@@ -0,0 +1,19 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from enum import Enum
5
+ from mollie import utils
6
+
7
+
8
+ class BalanceTransferStatusReasonResponse(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""A machine-readable code that indicates the reason for the transfer's status."""
10
+
11
+ REQUEST_CREATED = "request_created"
12
+ SUCCESS = "success"
13
+ SOURCE_NOT_ALLOWED = "source_not_allowed"
14
+ DESTINATION_NOT_ALLOWED = "destination_not_allowed"
15
+ INSUFFICIENT_FUNDS = "insufficient_funds"
16
+ INVALID_SOURCE_BALANCE = "invalid_source_balance"
17
+ INVALID_DESTINATION_BALANCE = "invalid_destination_balance"
18
+ TRANSFER_REQUEST_EXPIRED = "transfer_request_expired"
19
+ TRANSFER_LIMIT_REACHED = "transfer_limit_reached"
@@ -0,0 +1,154 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel
5
+ import pydantic
6
+ from typing import Any, Optional
7
+ from typing_extensions import Annotated, NotRequired, TypedDict
8
+
9
+
10
+ class BillingAddressTypedDict(TypedDict):
11
+ r"""The customer's billing address details. We advise to provide these details to improve fraud protection and
12
+ conversion.
13
+
14
+ Should include `email` or a valid postal address consisting of `streetAndNumber`, `postalCode`, `city` and
15
+ `country`.
16
+
17
+ Required for payment method `in3`, `klarna`, `billie` and `riverty`.
18
+ """
19
+
20
+ title: NotRequired[str]
21
+ r"""The title of the person, for example *Mr.* or *Mrs.*."""
22
+ given_name: NotRequired[str]
23
+ r"""The given name (first name) of the person should be at least two characters and cannot contain only
24
+ numbers.
25
+
26
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
27
+ """
28
+ family_name: NotRequired[str]
29
+ r"""The given family name (surname) of the person should be at least two characters and cannot contain only
30
+ numbers.
31
+
32
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
33
+ """
34
+ organization_name: NotRequired[Any]
35
+ r"""The name of the organization, in case the addressee is an organization.
36
+
37
+ Required for payment method `billie`.
38
+ """
39
+ street_and_number: NotRequired[str]
40
+ r"""A street and street number.
41
+
42
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
43
+ """
44
+ street_additional: NotRequired[str]
45
+ r"""Any additional addressing details, for example an apartment number."""
46
+ postal_code: NotRequired[str]
47
+ r"""A postal code. This field may be required if the provided country has a postal code system.
48
+
49
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
50
+ """
51
+ email: NotRequired[str]
52
+ r"""A valid e-mail address.
53
+
54
+ If you provide the email address for a `banktransfer` payment, we will automatically send the instructions
55
+ email upon payment creation. The language of the email will follow the locale parameter of the payment.
56
+
57
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
58
+ """
59
+ phone: NotRequired[str]
60
+ r"""If provided, it must be in the [E.164](https://en.wikipedia.org/wiki/E.164) format. For example: +31208202070."""
61
+ city: NotRequired[str]
62
+ r"""A city name.
63
+
64
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
65
+ """
66
+ region: NotRequired[str]
67
+ r"""The top-level administrative subdivision of the country. For example: Noord-Holland."""
68
+ country: NotRequired[str]
69
+ r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
70
+
71
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
72
+ """
73
+
74
+
75
+ class BillingAddress(BaseModel):
76
+ r"""The customer's billing address details. We advise to provide these details to improve fraud protection and
77
+ conversion.
78
+
79
+ Should include `email` or a valid postal address consisting of `streetAndNumber`, `postalCode`, `city` and
80
+ `country`.
81
+
82
+ Required for payment method `in3`, `klarna`, `billie` and `riverty`.
83
+ """
84
+
85
+ title: Optional[str] = None
86
+ r"""The title of the person, for example *Mr.* or *Mrs.*."""
87
+
88
+ given_name: Annotated[Optional[str], pydantic.Field(alias="givenName")] = None
89
+ r"""The given name (first name) of the person should be at least two characters and cannot contain only
90
+ numbers.
91
+
92
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
93
+ """
94
+
95
+ family_name: Annotated[Optional[str], pydantic.Field(alias="familyName")] = None
96
+ r"""The given family name (surname) of the person should be at least two characters and cannot contain only
97
+ numbers.
98
+
99
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
100
+ """
101
+
102
+ organization_name: Annotated[
103
+ Optional[Any], pydantic.Field(alias="organizationName")
104
+ ] = None
105
+ r"""The name of the organization, in case the addressee is an organization.
106
+
107
+ Required for payment method `billie`.
108
+ """
109
+
110
+ street_and_number: Annotated[
111
+ Optional[str], pydantic.Field(alias="streetAndNumber")
112
+ ] = None
113
+ r"""A street and street number.
114
+
115
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
116
+ """
117
+
118
+ street_additional: Annotated[
119
+ Optional[str], pydantic.Field(alias="streetAdditional")
120
+ ] = None
121
+ r"""Any additional addressing details, for example an apartment number."""
122
+
123
+ postal_code: Annotated[Optional[str], pydantic.Field(alias="postalCode")] = None
124
+ r"""A postal code. This field may be required if the provided country has a postal code system.
125
+
126
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
127
+ """
128
+
129
+ email: Optional[str] = None
130
+ r"""A valid e-mail address.
131
+
132
+ If you provide the email address for a `banktransfer` payment, we will automatically send the instructions
133
+ email upon payment creation. The language of the email will follow the locale parameter of the payment.
134
+
135
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
136
+ """
137
+
138
+ phone: Optional[str] = None
139
+ r"""If provided, it must be in the [E.164](https://en.wikipedia.org/wiki/E.164) format. For example: +31208202070."""
140
+
141
+ city: Optional[str] = None
142
+ r"""A city name.
143
+
144
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
145
+ """
146
+
147
+ region: Optional[str] = None
148
+ r"""The top-level administrative subdivision of the country. For example: Noord-Holland."""
149
+
150
+ country: Optional[str] = None
151
+ r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
152
+
153
+ Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
154
+ """
@@ -0,0 +1,93 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
5
+ from mollie.utils import (
6
+ FieldMetadata,
7
+ HeaderMetadata,
8
+ PathParamMetadata,
9
+ RequestMetadata,
10
+ )
11
+ import pydantic
12
+ from pydantic import model_serializer
13
+ from typing import Optional
14
+ from typing_extensions import Annotated, NotRequired, TypedDict
15
+
16
+
17
+ class CancelPaymentRequestBodyTypedDict(TypedDict):
18
+ testmode: NotRequired[Nullable[bool]]
19
+ r"""Whether to create the entity in test mode or live mode.
20
+
21
+ Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
22
+ omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
23
+ `testmode` to `true`.
24
+ """
25
+
26
+
27
+ class CancelPaymentRequestBody(BaseModel):
28
+ testmode: OptionalNullable[bool] = UNSET
29
+ r"""Whether to create the entity in test mode or live mode.
30
+
31
+ Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
32
+ omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
33
+ `testmode` to `true`.
34
+ """
35
+
36
+ @model_serializer(mode="wrap")
37
+ def serialize_model(self, handler):
38
+ optional_fields = ["testmode"]
39
+ nullable_fields = ["testmode"]
40
+ null_default_fields = []
41
+
42
+ serialized = handler(self)
43
+
44
+ m = {}
45
+
46
+ for n, f in type(self).model_fields.items():
47
+ k = f.alias or n
48
+ val = serialized.get(k)
49
+ serialized.pop(k, None)
50
+
51
+ optional_nullable = k in optional_fields and k in nullable_fields
52
+ is_set = (
53
+ self.__pydantic_fields_set__.intersection({n})
54
+ or k in null_default_fields
55
+ ) # pylint: disable=no-member
56
+
57
+ if val is not None and val != UNSET_SENTINEL:
58
+ m[k] = val
59
+ elif val != UNSET_SENTINEL and (
60
+ not k in optional_fields or (optional_nullable and is_set)
61
+ ):
62
+ m[k] = val
63
+
64
+ return m
65
+
66
+
67
+ class CancelPaymentRequestTypedDict(TypedDict):
68
+ payment_id: str
69
+ r"""Provide the ID of the related payment."""
70
+ idempotency_key: NotRequired[str]
71
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
72
+ request_body: NotRequired[CancelPaymentRequestBodyTypedDict]
73
+
74
+
75
+ class CancelPaymentRequest(BaseModel):
76
+ payment_id: Annotated[
77
+ str,
78
+ pydantic.Field(alias="paymentId"),
79
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
80
+ ]
81
+ r"""Provide the ID of the related payment."""
82
+
83
+ idempotency_key: Annotated[
84
+ Optional[str],
85
+ pydantic.Field(alias="idempotency-key"),
86
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
87
+ ] = None
88
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
89
+
90
+ request_body: Annotated[
91
+ Optional[CancelPaymentRequestBody],
92
+ FieldMetadata(request=RequestMetadata(media_type="application/json")),
93
+ ] = None