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,191 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .list_entity_refund import ListEntityRefund, ListEntityRefundTypedDict
5
+ from .list_links import ListLinks, ListLinksTypedDict
6
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
7
+ from mollie.utils import (
8
+ FieldMetadata,
9
+ HeaderMetadata,
10
+ PathParamMetadata,
11
+ QueryParamMetadata,
12
+ )
13
+ import pydantic
14
+ from pydantic import model_serializer
15
+ from typing import List, Optional
16
+ from typing_extensions import Annotated, NotRequired, TypedDict
17
+
18
+
19
+ class ListSettlementRefundsGlobalsTypedDict(TypedDict):
20
+ testmode: NotRequired[bool]
21
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
22
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
23
+ setting the `testmode` query parameter to `true`.
24
+
25
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
26
+ """
27
+
28
+
29
+ class ListSettlementRefundsGlobals(BaseModel):
30
+ testmode: Annotated[
31
+ Optional[bool],
32
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
33
+ ] = None
34
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
35
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
36
+ setting the `testmode` query parameter to `true`.
37
+
38
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
39
+ """
40
+
41
+
42
+ class ListSettlementRefundsRequestTypedDict(TypedDict):
43
+ settlement_id: str
44
+ r"""Provide the ID of the related settlement."""
45
+ from_: NotRequired[str]
46
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
47
+ result set.
48
+ """
49
+ limit: NotRequired[Nullable[int]]
50
+ r"""The maximum number of items to return. Defaults to 50 items."""
51
+ embed: NotRequired[Nullable[str]]
52
+ r"""This endpoint allows embedding related API items by appending the following values via the `embed` query string
53
+ parameter.
54
+ """
55
+ testmode: NotRequired[bool]
56
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
57
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
58
+ setting the `testmode` query parameter to `true`.
59
+
60
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
61
+ """
62
+ idempotency_key: NotRequired[str]
63
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
64
+
65
+
66
+ class ListSettlementRefundsRequest(BaseModel):
67
+ settlement_id: Annotated[
68
+ str,
69
+ pydantic.Field(alias="settlementId"),
70
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
71
+ ]
72
+ r"""Provide the ID of the related settlement."""
73
+
74
+ from_: Annotated[
75
+ Optional[str],
76
+ pydantic.Field(alias="from"),
77
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
78
+ ] = None
79
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
80
+ result set.
81
+ """
82
+
83
+ limit: Annotated[
84
+ OptionalNullable[int],
85
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
86
+ ] = UNSET
87
+ r"""The maximum number of items to return. Defaults to 50 items."""
88
+
89
+ embed: Annotated[
90
+ OptionalNullable[str],
91
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
92
+ ] = UNSET
93
+ r"""This endpoint allows embedding related API items by appending the following values via the `embed` query string
94
+ parameter.
95
+ """
96
+
97
+ testmode: Annotated[
98
+ Optional[bool],
99
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
100
+ ] = None
101
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
102
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
103
+ setting the `testmode` query parameter to `true`.
104
+
105
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
106
+ """
107
+
108
+ idempotency_key: Annotated[
109
+ Optional[str],
110
+ pydantic.Field(alias="idempotency-key"),
111
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
112
+ ] = None
113
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
114
+
115
+ @model_serializer(mode="wrap")
116
+ def serialize_model(self, handler):
117
+ optional_fields = ["from", "limit", "embed", "testmode", "idempotency-key"]
118
+ nullable_fields = ["limit", "embed"]
119
+ null_default_fields = []
120
+
121
+ serialized = handler(self)
122
+
123
+ m = {}
124
+
125
+ for n, f in type(self).model_fields.items():
126
+ k = f.alias or n
127
+ val = serialized.get(k)
128
+ serialized.pop(k, None)
129
+
130
+ optional_nullable = k in optional_fields and k in nullable_fields
131
+ is_set = (
132
+ self.__pydantic_fields_set__.intersection({n})
133
+ or k in null_default_fields
134
+ ) # pylint: disable=no-member
135
+
136
+ if val is not None and val != UNSET_SENTINEL:
137
+ m[k] = val
138
+ elif val != UNSET_SENTINEL and (
139
+ not k in optional_fields or (optional_nullable and is_set)
140
+ ):
141
+ m[k] = val
142
+
143
+ return m
144
+
145
+
146
+ class ListSettlementRefundsEmbeddedTypedDict(TypedDict):
147
+ refunds: List[ListEntityRefundTypedDict]
148
+ r"""An array of refund objects."""
149
+
150
+
151
+ class ListSettlementRefundsEmbedded(BaseModel):
152
+ refunds: List[ListEntityRefund]
153
+ r"""An array of refund objects."""
154
+
155
+
156
+ class ListSettlementRefundsResponseTypedDict(TypedDict):
157
+ r"""A list of refund objects. For a complete reference of the refund object, refer to the
158
+ [Get refund endpoint](get-refund) documentation.
159
+ """
160
+
161
+ count: int
162
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
163
+ as well.
164
+
165
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
166
+ limit is 50 items.
167
+ """
168
+ embedded: ListSettlementRefundsEmbeddedTypedDict
169
+ links: ListLinksTypedDict
170
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
171
+
172
+
173
+ class ListSettlementRefundsResponse(BaseModel):
174
+ r"""A list of refund objects. For a complete reference of the refund object, refer to the
175
+ [Get refund endpoint](get-refund) documentation.
176
+ """
177
+
178
+ count: int
179
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
180
+ as well.
181
+
182
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
183
+ limit is 50 items.
184
+ """
185
+
186
+ embedded: Annotated[
187
+ ListSettlementRefundsEmbedded, pydantic.Field(alias="_embedded")
188
+ ]
189
+
190
+ links: Annotated[ListLinks, pydantic.Field(alias="_links")]
191
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
@@ -0,0 +1,178 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .currencies import Currencies
5
+ from .list_entity_settlement import ListEntitySettlement, ListEntitySettlementTypedDict
6
+ from .list_links import ListLinks, ListLinksTypedDict
7
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
8
+ from mollie.utils import (
9
+ FieldMetadata,
10
+ HeaderMetadata,
11
+ QueryParamMetadata,
12
+ validate_open_enum,
13
+ )
14
+ import pydantic
15
+ from pydantic import model_serializer
16
+ from pydantic.functional_validators import PlainValidator
17
+ from typing import List, Optional
18
+ from typing_extensions import Annotated, NotRequired, TypedDict
19
+
20
+
21
+ class ListSettlementsRequestTypedDict(TypedDict):
22
+ from_: NotRequired[Nullable[str]]
23
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
24
+ result set.
25
+ """
26
+ limit: NotRequired[Nullable[int]]
27
+ r"""The maximum number of items to return. Defaults to 50 items."""
28
+ balance_id: NotRequired[str]
29
+ r"""Provide the token of the balance to filter the settlements by. This is
30
+ the balance token that the settlement was settled to.
31
+ """
32
+ year: NotRequired[Nullable[str]]
33
+ r"""Provide the year to query the settlements. Must be used combined with `month` parameter"""
34
+ month: NotRequired[Nullable[str]]
35
+ r"""Provide the month to query the settlements. Must be used combined with `year` parameter"""
36
+ currencies: NotRequired[Currencies]
37
+ r"""Provides the currencies to retrieve the settlements. It accepts multiple currencies in a comma-separated format."""
38
+ idempotency_key: NotRequired[str]
39
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
40
+
41
+
42
+ class ListSettlementsRequest(BaseModel):
43
+ from_: Annotated[
44
+ OptionalNullable[str],
45
+ pydantic.Field(alias="from"),
46
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
47
+ ] = UNSET
48
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
49
+ result set.
50
+ """
51
+
52
+ limit: Annotated[
53
+ OptionalNullable[int],
54
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
55
+ ] = UNSET
56
+ r"""The maximum number of items to return. Defaults to 50 items."""
57
+
58
+ balance_id: Annotated[
59
+ Optional[str],
60
+ pydantic.Field(alias="balanceId"),
61
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
62
+ ] = None
63
+ r"""Provide the token of the balance to filter the settlements by. This is
64
+ the balance token that the settlement was settled to.
65
+ """
66
+
67
+ year: Annotated[
68
+ OptionalNullable[str],
69
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
70
+ ] = UNSET
71
+ r"""Provide the year to query the settlements. Must be used combined with `month` parameter"""
72
+
73
+ month: Annotated[
74
+ OptionalNullable[str],
75
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
76
+ ] = UNSET
77
+ r"""Provide the month to query the settlements. Must be used combined with `year` parameter"""
78
+
79
+ currencies: Annotated[
80
+ Annotated[Optional[Currencies], PlainValidator(validate_open_enum(False))],
81
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
82
+ ] = None
83
+ r"""Provides the currencies to retrieve the settlements. It accepts multiple currencies in a comma-separated format."""
84
+
85
+ idempotency_key: Annotated[
86
+ Optional[str],
87
+ pydantic.Field(alias="idempotency-key"),
88
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
89
+ ] = None
90
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
91
+
92
+ @model_serializer(mode="wrap")
93
+ def serialize_model(self, handler):
94
+ optional_fields = [
95
+ "from",
96
+ "limit",
97
+ "balanceId",
98
+ "year",
99
+ "month",
100
+ "currencies",
101
+ "idempotency-key",
102
+ ]
103
+ nullable_fields = ["from", "limit", "year", "month"]
104
+ null_default_fields = []
105
+
106
+ serialized = handler(self)
107
+
108
+ m = {}
109
+
110
+ for n, f in type(self).model_fields.items():
111
+ k = f.alias or n
112
+ val = serialized.get(k)
113
+ serialized.pop(k, None)
114
+
115
+ optional_nullable = k in optional_fields and k in nullable_fields
116
+ is_set = (
117
+ self.__pydantic_fields_set__.intersection({n})
118
+ or k in null_default_fields
119
+ ) # pylint: disable=no-member
120
+
121
+ if val is not None and val != UNSET_SENTINEL:
122
+ m[k] = val
123
+ elif val != UNSET_SENTINEL and (
124
+ not k in optional_fields or (optional_nullable and is_set)
125
+ ):
126
+ m[k] = val
127
+
128
+ return m
129
+
130
+
131
+ class ListSettlementsEmbeddedTypedDict(TypedDict):
132
+ settlements: List[ListEntitySettlementTypedDict]
133
+ r"""An array of settlement objects. For a complete reference
134
+ of the settlement object, refer to the [Get settlement endpoint](get-settlement) documentation.
135
+ """
136
+
137
+
138
+ class ListSettlementsEmbedded(BaseModel):
139
+ settlements: List[ListEntitySettlement]
140
+ r"""An array of settlement objects. For a complete reference
141
+ of the settlement object, refer to the [Get settlement endpoint](get-settlement) documentation.
142
+ """
143
+
144
+
145
+ class ListSettlementsResponseTypedDict(TypedDict):
146
+ r"""A list of settlement objects. For a complete reference of the settlement
147
+ object, refer to the [Get settlement endpoint](get-settlement) documentation.
148
+ """
149
+
150
+ count: int
151
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
152
+ as well.
153
+
154
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
155
+ limit is 50 items.
156
+ """
157
+ embedded: ListSettlementsEmbeddedTypedDict
158
+ links: ListLinksTypedDict
159
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
160
+
161
+
162
+ class ListSettlementsResponse(BaseModel):
163
+ r"""A list of settlement objects. For a complete reference of the settlement
164
+ object, refer to the [Get settlement endpoint](get-settlement) documentation.
165
+ """
166
+
167
+ count: int
168
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
169
+ as well.
170
+
171
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
172
+ limit is 50 items.
173
+ """
174
+
175
+ embedded: Annotated[ListSettlementsEmbedded, pydantic.Field(alias="_embedded")]
176
+
177
+ links: Annotated[ListLinks, pydantic.Field(alias="_links")]
178
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
@@ -0,0 +1,242 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .list_links import ListLinks, ListLinksTypedDict
5
+ from .list_payment_response import ListPaymentResponse, ListPaymentResponseTypedDict
6
+ from .sorting import Sorting
7
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
8
+ from mollie.utils import (
9
+ FieldMetadata,
10
+ HeaderMetadata,
11
+ PathParamMetadata,
12
+ QueryParamMetadata,
13
+ )
14
+ import pydantic
15
+ from pydantic import model_serializer
16
+ from typing import List, Optional
17
+ from typing_extensions import Annotated, NotRequired, TypedDict
18
+
19
+
20
+ class ListSubscriptionPaymentsGlobalsTypedDict(TypedDict):
21
+ profile_id: NotRequired[str]
22
+ r"""The identifier referring to the [profile](get-profile) you wish to
23
+ retrieve the resources for.
24
+
25
+ Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
26
+ organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
27
+ """
28
+ testmode: NotRequired[bool]
29
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
30
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
31
+ setting the `testmode` query parameter to `true`.
32
+
33
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
34
+ """
35
+
36
+
37
+ class ListSubscriptionPaymentsGlobals(BaseModel):
38
+ profile_id: Annotated[
39
+ Optional[str],
40
+ pydantic.Field(alias="profileId"),
41
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
42
+ ] = None
43
+ r"""The identifier referring to the [profile](get-profile) you wish to
44
+ retrieve the resources for.
45
+
46
+ Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
47
+ organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
48
+ """
49
+
50
+ testmode: Annotated[
51
+ Optional[bool],
52
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
53
+ ] = None
54
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
55
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
56
+ setting the `testmode` query parameter to `true`.
57
+
58
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
59
+ """
60
+
61
+
62
+ class ListSubscriptionPaymentsRequestTypedDict(TypedDict):
63
+ customer_id: str
64
+ r"""Provide the ID of the related customer."""
65
+ subscription_id: str
66
+ r"""Provide the ID of the related subscription."""
67
+ from_: NotRequired[str]
68
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate
69
+ the result set.
70
+ """
71
+ limit: NotRequired[Nullable[int]]
72
+ r"""The maximum number of items to return. Defaults to 50 items."""
73
+ sort: NotRequired[Sorting]
74
+ r"""Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from
75
+ newest to oldest.
76
+ """
77
+ profile_id: NotRequired[str]
78
+ r"""The identifier referring to the [profile](get-profile) you wish to
79
+ retrieve the resources for.
80
+
81
+ Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
82
+ organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
83
+ """
84
+ testmode: NotRequired[bool]
85
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
86
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
87
+ setting the `testmode` query parameter to `true`.
88
+
89
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
90
+ """
91
+ idempotency_key: NotRequired[str]
92
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
93
+
94
+
95
+ class ListSubscriptionPaymentsRequest(BaseModel):
96
+ customer_id: Annotated[
97
+ str,
98
+ pydantic.Field(alias="customerId"),
99
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
100
+ ]
101
+ r"""Provide the ID of the related customer."""
102
+
103
+ subscription_id: Annotated[
104
+ str,
105
+ pydantic.Field(alias="subscriptionId"),
106
+ FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
107
+ ]
108
+ r"""Provide the ID of the related subscription."""
109
+
110
+ from_: Annotated[
111
+ Optional[str],
112
+ pydantic.Field(alias="from"),
113
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
114
+ ] = None
115
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate
116
+ the result set.
117
+ """
118
+
119
+ limit: Annotated[
120
+ OptionalNullable[int],
121
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
122
+ ] = UNSET
123
+ r"""The maximum number of items to return. Defaults to 50 items."""
124
+
125
+ sort: Annotated[
126
+ Optional[Sorting],
127
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
128
+ ] = None
129
+ r"""Used for setting the direction of the result set. Defaults to descending order, meaning the results are ordered from
130
+ newest to oldest.
131
+ """
132
+
133
+ profile_id: Annotated[
134
+ Optional[str],
135
+ pydantic.Field(alias="profileId"),
136
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
137
+ ] = None
138
+ r"""The identifier referring to the [profile](get-profile) you wish to
139
+ retrieve the resources for.
140
+
141
+ Most API credentials are linked to a single profile. In these cases the `profileId` can be omitted. For
142
+ organization-level credentials such as OAuth access tokens however, the `profileId` parameter is required.
143
+ """
144
+
145
+ testmode: Annotated[
146
+ Optional[bool],
147
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
148
+ ] = None
149
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
150
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
151
+ setting the `testmode` query parameter to `true`.
152
+
153
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
154
+ """
155
+
156
+ idempotency_key: Annotated[
157
+ Optional[str],
158
+ pydantic.Field(alias="idempotency-key"),
159
+ FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
160
+ ] = None
161
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
162
+
163
+ @model_serializer(mode="wrap")
164
+ def serialize_model(self, handler):
165
+ optional_fields = [
166
+ "from",
167
+ "limit",
168
+ "sort",
169
+ "profileId",
170
+ "testmode",
171
+ "idempotency-key",
172
+ ]
173
+ nullable_fields = ["limit"]
174
+ null_default_fields = []
175
+
176
+ serialized = handler(self)
177
+
178
+ m = {}
179
+
180
+ for n, f in type(self).model_fields.items():
181
+ k = f.alias or n
182
+ val = serialized.get(k)
183
+ serialized.pop(k, None)
184
+
185
+ optional_nullable = k in optional_fields and k in nullable_fields
186
+ is_set = (
187
+ self.__pydantic_fields_set__.intersection({n})
188
+ or k in null_default_fields
189
+ ) # pylint: disable=no-member
190
+
191
+ if val is not None and val != UNSET_SENTINEL:
192
+ m[k] = val
193
+ elif val != UNSET_SENTINEL and (
194
+ not k in optional_fields or (optional_nullable and is_set)
195
+ ):
196
+ m[k] = val
197
+
198
+ return m
199
+
200
+
201
+ class ListSubscriptionPaymentsEmbeddedTypedDict(TypedDict):
202
+ payments: NotRequired[List[ListPaymentResponseTypedDict]]
203
+ r"""An array of payment objects."""
204
+
205
+
206
+ class ListSubscriptionPaymentsEmbedded(BaseModel):
207
+ payments: Optional[List[ListPaymentResponse]] = None
208
+ r"""An array of payment objects."""
209
+
210
+
211
+ class ListSubscriptionPaymentsResponseTypedDict(TypedDict):
212
+ r"""A list of payment objects."""
213
+
214
+ count: int
215
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
216
+ as well.
217
+
218
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
219
+ limit is 50 items.
220
+ """
221
+ embedded: ListSubscriptionPaymentsEmbeddedTypedDict
222
+ links: ListLinksTypedDict
223
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
224
+
225
+
226
+ class ListSubscriptionPaymentsResponse(BaseModel):
227
+ r"""A list of payment objects."""
228
+
229
+ count: int
230
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
231
+ as well.
232
+
233
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
234
+ limit is 50 items.
235
+ """
236
+
237
+ embedded: Annotated[
238
+ ListSubscriptionPaymentsEmbedded, pydantic.Field(alias="_embedded")
239
+ ]
240
+
241
+ links: Annotated[ListLinks, pydantic.Field(alias="_links")]
242
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""