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,62 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .amount import Amount, AmountTypedDict
5
+ from .balance_transfer_category import BalanceTransferCategory
6
+ from .entity_balance_transfer_party import (
7
+ EntityBalanceTransferParty,
8
+ EntityBalanceTransferPartyTypedDict,
9
+ )
10
+ from mollie.types import BaseModel
11
+ from typing import Any, Dict, Optional
12
+ from typing_extensions import NotRequired, TypedDict
13
+
14
+
15
+ class EntityBalanceTransferTypedDict(TypedDict):
16
+ amount: AmountTypedDict
17
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
18
+ source: EntityBalanceTransferPartyTypedDict
19
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
20
+ destination: EntityBalanceTransferPartyTypedDict
21
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
22
+ description: str
23
+ r"""The transfer description for initiating party."""
24
+ category: NotRequired[BalanceTransferCategory]
25
+ r"""The type of the transfer. Different fees may apply to different types of transfers."""
26
+ metadata: NotRequired[Dict[str, Any]]
27
+ r"""A JSON object that you can attach to a balance transfer.
28
+ This can be useful for storing additional information about the transfer in a structured format. Maximum size is approximately 1KB.
29
+ """
30
+ testmode: NotRequired[bool]
31
+ r"""Whether to create the entity in test mode or live mode.
32
+
33
+ You can enable test mode by setting `testmode` to `true`.
34
+ """
35
+
36
+
37
+ class EntityBalanceTransfer(BaseModel):
38
+ amount: Amount
39
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
40
+
41
+ source: EntityBalanceTransferParty
42
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
43
+
44
+ destination: EntityBalanceTransferParty
45
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
46
+
47
+ description: str
48
+ r"""The transfer description for initiating party."""
49
+
50
+ category: Optional[BalanceTransferCategory] = None
51
+ r"""The type of the transfer. Different fees may apply to different types of transfers."""
52
+
53
+ metadata: Optional[Dict[str, Any]] = None
54
+ r"""A JSON object that you can attach to a balance transfer.
55
+ This can be useful for storing additional information about the transfer in a structured format. Maximum size is approximately 1KB.
56
+ """
57
+
58
+ testmode: Optional[bool] = None
59
+ r"""Whether to create the entity in test mode or live mode.
60
+
61
+ You can enable test mode by setting `testmode` to `true`.
62
+ """
@@ -0,0 +1,28 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .balance_transfer_party_type import BalanceTransferPartyType
5
+ from mollie.types import BaseModel
6
+ from typing_extensions import TypedDict
7
+
8
+
9
+ class EntityBalanceTransferPartyTypedDict(TypedDict):
10
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
11
+
12
+ type: BalanceTransferPartyType
13
+ r"""Defines the type of the party. At the moment, only `organization` is supported."""
14
+ id: str
15
+ description: str
16
+ r"""The transfer description for the transfer party. This is the description that will appear in the financial reports of the party."""
17
+
18
+
19
+ class EntityBalanceTransferParty(BaseModel):
20
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
21
+
22
+ type: BalanceTransferPartyType
23
+ r"""Defines the type of the party. At the moment, only `organization` is supported."""
24
+
25
+ id: str
26
+
27
+ description: str
28
+ r"""The transfer description for the transfer party. This is the description that will appear in the financial reports of the party."""
@@ -0,0 +1,32 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .balance_transfer_party_type_response import BalanceTransferPartyTypeResponse
5
+ from mollie.types import BaseModel
6
+ from mollie.utils import validate_open_enum
7
+ from pydantic.functional_validators import PlainValidator
8
+ from typing_extensions import Annotated, TypedDict
9
+
10
+
11
+ class EntityBalanceTransferPartyResponseTypedDict(TypedDict):
12
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
13
+
14
+ type: BalanceTransferPartyTypeResponse
15
+ r"""Defines the type of the party. At the moment, only `organization` is supported."""
16
+ id: str
17
+ description: str
18
+ r"""The transfer description for the transfer party. This is the description that will appear in the financial reports of the party."""
19
+
20
+
21
+ class EntityBalanceTransferPartyResponse(BaseModel):
22
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
23
+
24
+ type: Annotated[
25
+ BalanceTransferPartyTypeResponse, PlainValidator(validate_open_enum(False))
26
+ ]
27
+ r"""Defines the type of the party. At the moment, only `organization` is supported."""
28
+
29
+ id: str
30
+
31
+ description: str
32
+ r"""The transfer description for the transfer party. This is the description that will appear in the financial reports of the party."""
@@ -0,0 +1,159 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .amount import Amount, AmountTypedDict
5
+ from .balance_transfer_category_response import BalanceTransferCategoryResponse
6
+ from .balance_transfer_status import BalanceTransferStatus
7
+ from .balance_transfer_status_reason_response import BalanceTransferStatusReasonResponse
8
+ from .entity_balance_transfer_party_response import (
9
+ EntityBalanceTransferPartyResponse,
10
+ EntityBalanceTransferPartyResponseTypedDict,
11
+ )
12
+ from .mode import Mode
13
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
14
+ from mollie.utils import validate_open_enum
15
+ import pydantic
16
+ from pydantic import model_serializer
17
+ from pydantic.functional_validators import PlainValidator
18
+ from typing import Any, Dict, Optional
19
+ from typing_extensions import Annotated, NotRequired, TypedDict
20
+
21
+
22
+ class EntityBalanceTransferResponseStatusReasonTypedDict(TypedDict):
23
+ r"""The reason for the current status of the transfer, if applicable."""
24
+
25
+ code: BalanceTransferStatusReasonResponse
26
+ r"""A machine-readable code that indicates the reason for the transfer's status."""
27
+ message: str
28
+ r"""A description of the status reason, localized according to the transfer."""
29
+
30
+
31
+ class EntityBalanceTransferResponseStatusReason(BaseModel):
32
+ r"""The reason for the current status of the transfer, if applicable."""
33
+
34
+ code: Annotated[
35
+ BalanceTransferStatusReasonResponse, PlainValidator(validate_open_enum(False))
36
+ ]
37
+ r"""A machine-readable code that indicates the reason for the transfer's status."""
38
+
39
+ message: str
40
+ r"""A description of the status reason, localized according to the transfer."""
41
+
42
+
43
+ class EntityBalanceTransferResponseTypedDict(TypedDict):
44
+ resource: str
45
+ r"""Indicates the response contains a balance transfer object. Will always contain the string `connect-balance-transfer` for this endpoint."""
46
+ id: str
47
+ r"""The identifier uniquely referring to this balance transfer. Mollie assigns this identifier at balance transfer creation time. Mollie
48
+ will always refer to the balance transfer by this ID. Example: `cbtr_j8NvRAM2WNZtsykpLEX8J`.
49
+ """
50
+ amount: AmountTypedDict
51
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
52
+ source: EntityBalanceTransferPartyResponseTypedDict
53
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
54
+ destination: EntityBalanceTransferPartyResponseTypedDict
55
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
56
+ description: str
57
+ r"""The transfer description for initiating party."""
58
+ status: BalanceTransferStatus
59
+ r"""The status of the transfer."""
60
+ status_reason: EntityBalanceTransferResponseStatusReasonTypedDict
61
+ r"""The reason for the current status of the transfer, if applicable."""
62
+ created_at: str
63
+ r"""The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format."""
64
+ mode: Mode
65
+ r"""Whether this entity was created in live mode or in test mode."""
66
+ category: NotRequired[BalanceTransferCategoryResponse]
67
+ r"""The type of the transfer. Different fees may apply to different types of transfers."""
68
+ metadata: NotRequired[Dict[str, Any]]
69
+ r"""A JSON object that you can attach to a balance transfer.
70
+ This can be useful for storing additional information about the transfer in a structured format. Maximum size is approximately 1KB.
71
+ """
72
+ executed_at: NotRequired[Nullable[str]]
73
+ r"""The date and time when the transfer was completed, in ISO 8601 format. This parameter is omitted if the transfer is
74
+ not executed (yet).
75
+ """
76
+
77
+
78
+ class EntityBalanceTransferResponse(BaseModel):
79
+ resource: str
80
+ r"""Indicates the response contains a balance transfer object. Will always contain the string `connect-balance-transfer` for this endpoint."""
81
+
82
+ id: str
83
+ r"""The identifier uniquely referring to this balance transfer. Mollie assigns this identifier at balance transfer creation time. Mollie
84
+ will always refer to the balance transfer by this ID. Example: `cbtr_j8NvRAM2WNZtsykpLEX8J`.
85
+ """
86
+
87
+ amount: Amount
88
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
89
+
90
+ source: EntityBalanceTransferPartyResponse
91
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
92
+
93
+ destination: EntityBalanceTransferPartyResponse
94
+ r"""A party involved in the balance transfer, either the sender or the receiver."""
95
+
96
+ description: str
97
+ r"""The transfer description for initiating party."""
98
+
99
+ status: Annotated[BalanceTransferStatus, PlainValidator(validate_open_enum(False))]
100
+ r"""The status of the transfer."""
101
+
102
+ status_reason: Annotated[
103
+ EntityBalanceTransferResponseStatusReason, pydantic.Field(alias="statusReason")
104
+ ]
105
+ r"""The reason for the current status of the transfer, if applicable."""
106
+
107
+ created_at: Annotated[str, pydantic.Field(alias="createdAt")]
108
+ r"""The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format."""
109
+
110
+ mode: Annotated[Mode, PlainValidator(validate_open_enum(False))]
111
+ r"""Whether this entity was created in live mode or in test mode."""
112
+
113
+ category: Annotated[
114
+ Optional[BalanceTransferCategoryResponse],
115
+ PlainValidator(validate_open_enum(False)),
116
+ ] = None
117
+ r"""The type of the transfer. Different fees may apply to different types of transfers."""
118
+
119
+ metadata: Optional[Dict[str, Any]] = None
120
+ r"""A JSON object that you can attach to a balance transfer.
121
+ This can be useful for storing additional information about the transfer in a structured format. Maximum size is approximately 1KB.
122
+ """
123
+
124
+ executed_at: Annotated[
125
+ OptionalNullable[str], pydantic.Field(alias="executedAt")
126
+ ] = UNSET
127
+ r"""The date and time when the transfer was completed, in ISO 8601 format. This parameter is omitted if the transfer is
128
+ not executed (yet).
129
+ """
130
+
131
+ @model_serializer(mode="wrap")
132
+ def serialize_model(self, handler):
133
+ optional_fields = ["category", "metadata", "executedAt"]
134
+ nullable_fields = ["executedAt"]
135
+ null_default_fields = []
136
+
137
+ serialized = handler(self)
138
+
139
+ m = {}
140
+
141
+ for n, f in type(self).model_fields.items():
142
+ k = f.alias or n
143
+ val = serialized.get(k)
144
+ serialized.pop(k, None)
145
+
146
+ optional_nullable = k in optional_fields and k in nullable_fields
147
+ is_set = (
148
+ self.__pydantic_fields_set__.intersection({n})
149
+ or k in null_default_fields
150
+ ) # pylint: disable=no-member
151
+
152
+ if val is not None and val != UNSET_SENTINEL:
153
+ m[k] = val
154
+ elif val != UNSET_SENTINEL and (
155
+ not k in optional_fields or (optional_nullable and is_set)
156
+ ):
157
+ m[k] = val
158
+
159
+ return m
@@ -0,0 +1,75 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .capability_status import CapabilityStatus
5
+ from .capability_status_reason import CapabilityStatusReason
6
+ from .entity_capability_requirement import (
7
+ EntityCapabilityRequirement,
8
+ EntityCapabilityRequirementTypedDict,
9
+ )
10
+ from mollie.types import BaseModel, Nullable, UNSET_SENTINEL
11
+ from mollie.utils import validate_open_enum
12
+ import pydantic
13
+ from pydantic import model_serializer
14
+ from pydantic.functional_validators import PlainValidator
15
+ from typing import List
16
+ from typing_extensions import Annotated, TypedDict
17
+
18
+
19
+ class EntityCapabilityTypedDict(TypedDict):
20
+ resource: str
21
+ r"""Always the word `capability` for this resource type."""
22
+ name: str
23
+ r"""A unique name for this capability like `payments` / `settlements`."""
24
+ status: CapabilityStatus
25
+ status_reason: Nullable[CapabilityStatusReason]
26
+ requirements: List[EntityCapabilityRequirementTypedDict]
27
+
28
+
29
+ class EntityCapability(BaseModel):
30
+ resource: str
31
+ r"""Always the word `capability` for this resource type."""
32
+
33
+ name: str
34
+ r"""A unique name for this capability like `payments` / `settlements`."""
35
+
36
+ status: Annotated[CapabilityStatus, PlainValidator(validate_open_enum(False))]
37
+
38
+ status_reason: Annotated[
39
+ Annotated[
40
+ Nullable[CapabilityStatusReason], PlainValidator(validate_open_enum(False))
41
+ ],
42
+ pydantic.Field(alias="statusReason"),
43
+ ]
44
+
45
+ requirements: List[EntityCapabilityRequirement]
46
+
47
+ @model_serializer(mode="wrap")
48
+ def serialize_model(self, handler):
49
+ optional_fields = []
50
+ nullable_fields = ["statusReason"]
51
+ null_default_fields = []
52
+
53
+ serialized = handler(self)
54
+
55
+ m = {}
56
+
57
+ for n, f in type(self).model_fields.items():
58
+ k = f.alias or n
59
+ val = serialized.get(k)
60
+ serialized.pop(k, None)
61
+
62
+ optional_nullable = k in optional_fields and k in nullable_fields
63
+ is_set = (
64
+ self.__pydantic_fields_set__.intersection({n})
65
+ or k in null_default_fields
66
+ ) # pylint: disable=no-member
67
+
68
+ if val is not None and val != UNSET_SENTINEL:
69
+ m[k] = val
70
+ elif val != UNSET_SENTINEL and (
71
+ not k in optional_fields or (optional_nullable and is_set)
72
+ ):
73
+ m[k] = val
74
+
75
+ return m
@@ -0,0 +1,87 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .capability_requirement_status import CapabilityRequirementStatus
5
+ from .url import URL, URLTypedDict
6
+ from mollie.types import BaseModel, Nullable, UNSET_SENTINEL
7
+ from mollie.utils import validate_open_enum
8
+ import pydantic
9
+ from pydantic import model_serializer
10
+ from pydantic.functional_validators import PlainValidator
11
+ from typing import Optional
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class EntityCapabilityRequirementLinksTypedDict(TypedDict):
16
+ dashboard: NotRequired[URLTypedDict]
17
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
18
+
19
+
20
+ class EntityCapabilityRequirementLinks(BaseModel):
21
+ dashboard: Optional[URL] = None
22
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
23
+
24
+
25
+ class EntityCapabilityRequirementTypedDict(TypedDict):
26
+ id: str
27
+ r"""The name of this requirement, referring to the task to be fulfilled by the organization
28
+ to enable or re-enable the capability. The name is unique among other requirements
29
+ of the same capability.
30
+ """
31
+ status: CapabilityRequirementStatus
32
+ r"""The status of the requirement depends on its due date.
33
+ If no due date is given, the status will be `requested`.
34
+ """
35
+ due_date: Nullable[str]
36
+ r"""Due date until the requirement must be fulfilled, if any. The date is shown in ISO-8601 format."""
37
+ links: EntityCapabilityRequirementLinksTypedDict
38
+
39
+
40
+ class EntityCapabilityRequirement(BaseModel):
41
+ id: str
42
+ r"""The name of this requirement, referring to the task to be fulfilled by the organization
43
+ to enable or re-enable the capability. The name is unique among other requirements
44
+ of the same capability.
45
+ """
46
+
47
+ status: Annotated[
48
+ CapabilityRequirementStatus, PlainValidator(validate_open_enum(False))
49
+ ]
50
+ r"""The status of the requirement depends on its due date.
51
+ If no due date is given, the status will be `requested`.
52
+ """
53
+
54
+ due_date: Annotated[Nullable[str], pydantic.Field(alias="dueDate")]
55
+ r"""Due date until the requirement must be fulfilled, if any. The date is shown in ISO-8601 format."""
56
+
57
+ links: Annotated[EntityCapabilityRequirementLinks, pydantic.Field(alias="_links")]
58
+
59
+ @model_serializer(mode="wrap")
60
+ def serialize_model(self, handler):
61
+ optional_fields = []
62
+ nullable_fields = ["dueDate"]
63
+ null_default_fields = []
64
+
65
+ serialized = handler(self)
66
+
67
+ m = {}
68
+
69
+ for n, f in type(self).model_fields.items():
70
+ k = f.alias or n
71
+ val = serialized.get(k)
72
+ serialized.pop(k, None)
73
+
74
+ optional_nullable = k in optional_fields and k in nullable_fields
75
+ is_set = (
76
+ self.__pydantic_fields_set__.intersection({n})
77
+ or k in null_default_fields
78
+ ) # pylint: disable=no-member
79
+
80
+ if val is not None and val != UNSET_SENTINEL:
81
+ m[k] = val
82
+ elif val != UNSET_SENTINEL and (
83
+ not k in optional_fields or (optional_nullable and is_set)
84
+ ):
85
+ m[k] = val
86
+
87
+ return m
@@ -0,0 +1,63 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .amount_nullable import AmountNullable, AmountNullableTypedDict
5
+ from .metadata import Metadata, MetadataTypedDict
6
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
7
+ from pydantic import model_serializer
8
+ from typing import Optional
9
+ from typing_extensions import NotRequired, TypedDict
10
+
11
+
12
+ class EntityCaptureTypedDict(TypedDict):
13
+ description: NotRequired[str]
14
+ r"""The description of the capture."""
15
+ amount: NotRequired[Nullable[AmountNullableTypedDict]]
16
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
17
+ metadata: NotRequired[Nullable[MetadataTypedDict]]
18
+ r"""Provide any data you like, for example a string or a JSON object. We will save the data alongside the entity. Whenever
19
+ you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
20
+ """
21
+
22
+
23
+ class EntityCapture(BaseModel):
24
+ description: Optional[str] = None
25
+ r"""The description of the capture."""
26
+
27
+ amount: OptionalNullable[AmountNullable] = UNSET
28
+ r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
29
+
30
+ metadata: OptionalNullable[Metadata] = UNSET
31
+ r"""Provide any data you like, for example a string or a JSON object. We will save the data alongside the entity. Whenever
32
+ you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
33
+ """
34
+
35
+ @model_serializer(mode="wrap")
36
+ def serialize_model(self, handler):
37
+ optional_fields = ["description", "amount", "metadata"]
38
+ nullable_fields = ["amount", "metadata"]
39
+ null_default_fields = []
40
+
41
+ serialized = handler(self)
42
+
43
+ m = {}
44
+
45
+ for n, f in type(self).model_fields.items():
46
+ k = f.alias or n
47
+ val = serialized.get(k)
48
+ serialized.pop(k, None)
49
+
50
+ optional_nullable = k in optional_fields and k in nullable_fields
51
+ is_set = (
52
+ self.__pydantic_fields_set__.intersection({n})
53
+ or k in null_default_fields
54
+ ) # pylint: disable=no-member
55
+
56
+ if val is not None and val != UNSET_SENTINEL:
57
+ m[k] = val
58
+ elif val != UNSET_SENTINEL and (
59
+ not k in optional_fields or (optional_nullable and is_set)
60
+ ):
61
+ m[k] = val
62
+
63
+ return m