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,59 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .sales_invoice_payment_details_source import SalesInvoicePaymentDetailsSource
5
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
6
+ import pydantic
7
+ from pydantic import model_serializer
8
+ from typing_extensions import Annotated, NotRequired, TypedDict
9
+
10
+
11
+ class SalesInvoicePaymentDetailsTypedDict(TypedDict):
12
+ source: SalesInvoicePaymentDetailsSource
13
+ r"""The way through which the invoice is to be set to paid."""
14
+ source_reference: NotRequired[Nullable[str]]
15
+ r"""A reference to the payment the sales invoice is paid by. Required for `source` values `payment-link` and
16
+ `payment`.
17
+ """
18
+
19
+
20
+ class SalesInvoicePaymentDetails(BaseModel):
21
+ source: SalesInvoicePaymentDetailsSource
22
+ r"""The way through which the invoice is to be set to paid."""
23
+
24
+ source_reference: Annotated[
25
+ OptionalNullable[str], pydantic.Field(alias="sourceReference")
26
+ ] = UNSET
27
+ r"""A reference to the payment the sales invoice is paid by. Required for `source` values `payment-link` and
28
+ `payment`.
29
+ """
30
+
31
+ @model_serializer(mode="wrap")
32
+ def serialize_model(self, handler):
33
+ optional_fields = ["sourceReference"]
34
+ nullable_fields = ["sourceReference"]
35
+ null_default_fields = []
36
+
37
+ serialized = handler(self)
38
+
39
+ m = {}
40
+
41
+ for n, f in type(self).model_fields.items():
42
+ k = f.alias or n
43
+ val = serialized.get(k)
44
+ serialized.pop(k, None)
45
+
46
+ optional_nullable = k in optional_fields and k in nullable_fields
47
+ is_set = (
48
+ self.__pydantic_fields_set__.intersection({n})
49
+ or k in null_default_fields
50
+ ) # pylint: disable=no-member
51
+
52
+ if val is not None and val != UNSET_SENTINEL:
53
+ m[k] = val
54
+ elif val != UNSET_SENTINEL and (
55
+ not k in optional_fields or (optional_nullable and is_set)
56
+ ):
57
+ m[k] = val
58
+
59
+ return m
@@ -0,0 +1,66 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .sales_invoice_payment_details_source_response import (
5
+ SalesInvoicePaymentDetailsSourceResponse,
6
+ )
7
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
8
+ from mollie.utils import validate_open_enum
9
+ import pydantic
10
+ from pydantic import model_serializer
11
+ from pydantic.functional_validators import PlainValidator
12
+ from typing_extensions import Annotated, NotRequired, TypedDict
13
+
14
+
15
+ class SalesInvoicePaymentDetailsResponseTypedDict(TypedDict):
16
+ source: SalesInvoicePaymentDetailsSourceResponse
17
+ r"""The way through which the invoice is to be set to paid."""
18
+ source_reference: NotRequired[Nullable[str]]
19
+ r"""A reference to the payment the sales invoice is paid by. Required for `source` values `payment-link` and
20
+ `payment`.
21
+ """
22
+
23
+
24
+ class SalesInvoicePaymentDetailsResponse(BaseModel):
25
+ source: Annotated[
26
+ SalesInvoicePaymentDetailsSourceResponse,
27
+ PlainValidator(validate_open_enum(False)),
28
+ ]
29
+ r"""The way through which the invoice is to be set to paid."""
30
+
31
+ source_reference: Annotated[
32
+ OptionalNullable[str], pydantic.Field(alias="sourceReference")
33
+ ] = UNSET
34
+ r"""A reference to the payment the sales invoice is paid by. Required for `source` values `payment-link` and
35
+ `payment`.
36
+ """
37
+
38
+ @model_serializer(mode="wrap")
39
+ def serialize_model(self, handler):
40
+ optional_fields = ["sourceReference"]
41
+ nullable_fields = ["sourceReference"]
42
+ null_default_fields = []
43
+
44
+ serialized = handler(self)
45
+
46
+ m = {}
47
+
48
+ for n, f in type(self).model_fields.items():
49
+ k = f.alias or n
50
+ val = serialized.get(k)
51
+ serialized.pop(k, None)
52
+
53
+ optional_nullable = k in optional_fields and k in nullable_fields
54
+ is_set = (
55
+ self.__pydantic_fields_set__.intersection({n})
56
+ or k in null_default_fields
57
+ ) # pylint: disable=no-member
58
+
59
+ if val is not None and val != UNSET_SENTINEL:
60
+ m[k] = val
61
+ elif val != UNSET_SENTINEL and (
62
+ not k in optional_fields or (optional_nullable and is_set)
63
+ ):
64
+ m[k] = val
65
+
66
+ return m
@@ -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
+
6
+
7
+ class SalesInvoicePaymentDetailsSource(str, Enum):
8
+ r"""The way through which the invoice is to be set to paid."""
9
+
10
+ MANUAL = "manual"
11
+ PAYMENT_LINK = "payment-link"
12
+ PAYMENT = "payment"
@@ -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 SalesInvoicePaymentDetailsSourceResponse(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""The way through which the invoice is to be set to paid."""
10
+
11
+ MANUAL = "manual"
12
+ PAYMENT_LINK = "payment-link"
13
+ PAYMENT = "payment"
@@ -0,0 +1,16 @@
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 SalesInvoicePaymentTerm(str, Enum):
8
+ r"""The payment term to be set on the invoice."""
9
+
10
+ SEVENDAYS = "7 days"
11
+ FOURTEENDAYS = "14 days"
12
+ THIRTYDAYS = "30 days"
13
+ FORTY_FIVEDAYS = "45 days"
14
+ SIXTYDAYS = "60 days"
15
+ NINETYDAYS = "90 days"
16
+ ONE_HUNDRED_AND_TWENTYDAYS = "120 days"
@@ -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
+ from mollie import utils
6
+
7
+
8
+ class SalesInvoicePaymentTermResponse(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""The payment term to be set on the invoice."""
10
+
11
+ SEVENDAYS = "7 days"
12
+ FOURTEENDAYS = "14 days"
13
+ THIRTYDAYS = "30 days"
14
+ FORTY_FIVEDAYS = "45 days"
15
+ SIXTYDAYS = "60 days"
16
+ NINETYDAYS = "90 days"
17
+ ONE_HUNDRED_AND_TWENTYDAYS = "120 days"
@@ -0,0 +1,176 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .sales_invoice_recipient_locale import SalesInvoiceRecipientLocale
5
+ from .sales_invoice_recipient_type import SalesInvoiceRecipientType
6
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
7
+ import pydantic
8
+ from pydantic import model_serializer
9
+ from typing_extensions import Annotated, NotRequired, TypedDict
10
+
11
+
12
+ class SalesInvoiceRecipientTypedDict(TypedDict):
13
+ type: SalesInvoiceRecipientType
14
+ r"""The type of recipient, either `consumer` or `business`. This will determine what further fields are
15
+ required on the `recipient` object.
16
+ """
17
+ email: str
18
+ r"""The email address of the recipient."""
19
+ street_and_number: str
20
+ r"""A street and street number."""
21
+ postal_code: str
22
+ r"""A postal code."""
23
+ city: str
24
+ r"""The recipient's city."""
25
+ country: str
26
+ r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format."""
27
+ locale: SalesInvoiceRecipientLocale
28
+ r"""The locale for the recipient, to be used for translations in PDF generation and payment pages."""
29
+ title: NotRequired[Nullable[str]]
30
+ r"""The title of the `consumer` type recipient, for example Mr. or Mrs.."""
31
+ given_name: NotRequired[Nullable[str]]
32
+ r"""The given name (first name) of the `consumer` type recipient should be at least two characters and cannot contain
33
+ only numbers.
34
+ """
35
+ family_name: NotRequired[Nullable[str]]
36
+ r"""The given name (last name) of the `consumer` type recipient should be at least two characters and cannot contain
37
+ only numbers.
38
+ """
39
+ organization_name: NotRequired[Nullable[str]]
40
+ r"""The trading name of the `business` type recipient."""
41
+ organization_number: NotRequired[Nullable[str]]
42
+ r"""The Chamber of Commerce number of the organization for a `business` type recipient. Either this or `vatNumber`
43
+ has to be provided.
44
+ """
45
+ vat_number: NotRequired[Nullable[str]]
46
+ r"""The VAT number of the organization for a `business` type recipient. Either this or `organizationNumber`
47
+ has to be provided.
48
+ """
49
+ phone: NotRequired[Nullable[str]]
50
+ r"""The phone number of the recipient."""
51
+ street_additional: NotRequired[Nullable[str]]
52
+ r"""Any additional addressing details, for example an apartment number."""
53
+ region: NotRequired[Nullable[str]]
54
+ r"""The recipient's region."""
55
+
56
+
57
+ class SalesInvoiceRecipient(BaseModel):
58
+ type: SalesInvoiceRecipientType
59
+ r"""The type of recipient, either `consumer` or `business`. This will determine what further fields are
60
+ required on the `recipient` object.
61
+ """
62
+
63
+ email: str
64
+ r"""The email address of the recipient."""
65
+
66
+ street_and_number: Annotated[str, pydantic.Field(alias="streetAndNumber")]
67
+ r"""A street and street number."""
68
+
69
+ postal_code: Annotated[str, pydantic.Field(alias="postalCode")]
70
+ r"""A postal code."""
71
+
72
+ city: str
73
+ r"""The recipient's city."""
74
+
75
+ country: str
76
+ r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format."""
77
+
78
+ locale: SalesInvoiceRecipientLocale
79
+ r"""The locale for the recipient, to be used for translations in PDF generation and payment pages."""
80
+
81
+ title: OptionalNullable[str] = UNSET
82
+ r"""The title of the `consumer` type recipient, for example Mr. or Mrs.."""
83
+
84
+ given_name: Annotated[OptionalNullable[str], pydantic.Field(alias="givenName")] = (
85
+ UNSET
86
+ )
87
+ r"""The given name (first name) of the `consumer` type recipient should be at least two characters and cannot contain
88
+ only numbers.
89
+ """
90
+
91
+ family_name: Annotated[
92
+ OptionalNullable[str], pydantic.Field(alias="familyName")
93
+ ] = UNSET
94
+ r"""The given name (last name) of the `consumer` type recipient should be at least two characters and cannot contain
95
+ only numbers.
96
+ """
97
+
98
+ organization_name: Annotated[
99
+ OptionalNullable[str], pydantic.Field(alias="organizationName")
100
+ ] = UNSET
101
+ r"""The trading name of the `business` type recipient."""
102
+
103
+ organization_number: Annotated[
104
+ OptionalNullable[str], pydantic.Field(alias="organizationNumber")
105
+ ] = UNSET
106
+ r"""The Chamber of Commerce number of the organization for a `business` type recipient. Either this or `vatNumber`
107
+ has to be provided.
108
+ """
109
+
110
+ vat_number: Annotated[OptionalNullable[str], pydantic.Field(alias="vatNumber")] = (
111
+ UNSET
112
+ )
113
+ r"""The VAT number of the organization for a `business` type recipient. Either this or `organizationNumber`
114
+ has to be provided.
115
+ """
116
+
117
+ phone: OptionalNullable[str] = UNSET
118
+ r"""The phone number of the recipient."""
119
+
120
+ street_additional: Annotated[
121
+ OptionalNullable[str], pydantic.Field(alias="streetAdditional")
122
+ ] = UNSET
123
+ r"""Any additional addressing details, for example an apartment number."""
124
+
125
+ region: OptionalNullable[str] = UNSET
126
+ r"""The recipient's region."""
127
+
128
+ @model_serializer(mode="wrap")
129
+ def serialize_model(self, handler):
130
+ optional_fields = [
131
+ "title",
132
+ "givenName",
133
+ "familyName",
134
+ "organizationName",
135
+ "organizationNumber",
136
+ "vatNumber",
137
+ "phone",
138
+ "streetAdditional",
139
+ "region",
140
+ ]
141
+ nullable_fields = [
142
+ "title",
143
+ "givenName",
144
+ "familyName",
145
+ "organizationName",
146
+ "organizationNumber",
147
+ "vatNumber",
148
+ "phone",
149
+ "streetAdditional",
150
+ "region",
151
+ ]
152
+ null_default_fields = []
153
+
154
+ serialized = handler(self)
155
+
156
+ m = {}
157
+
158
+ for n, f in type(self).model_fields.items():
159
+ k = f.alias or n
160
+ val = serialized.get(k)
161
+ serialized.pop(k, None)
162
+
163
+ optional_nullable = k in optional_fields and k in nullable_fields
164
+ is_set = (
165
+ self.__pydantic_fields_set__.intersection({n})
166
+ or k in null_default_fields
167
+ ) # pylint: disable=no-member
168
+
169
+ if val is not None and val != UNSET_SENTINEL:
170
+ m[k] = val
171
+ elif val != UNSET_SENTINEL and (
172
+ not k in optional_fields or (optional_nullable and is_set)
173
+ ):
174
+ m[k] = val
175
+
176
+ return m
@@ -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
+
6
+
7
+ class SalesInvoiceRecipientLocale(str, Enum):
8
+ r"""The locale for the recipient, to be used for translations in PDF generation and payment pages."""
9
+
10
+ EN_US = "en_US"
11
+ EN_GB = "en_GB"
12
+ NL_NL = "nl_NL"
13
+ NL_BE = "nl_BE"
14
+ DE_DE = "de_DE"
15
+ DE_AT = "de_AT"
16
+ DE_CH = "de_CH"
17
+ FR_FR = "fr_FR"
18
+ FR_BE = "fr_BE"
@@ -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 SalesInvoiceRecipientLocaleResponse(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""The locale for the recipient, to be used for translations in PDF generation and payment pages."""
10
+
11
+ EN_US = "en_US"
12
+ EN_GB = "en_GB"
13
+ NL_NL = "nl_NL"
14
+ NL_BE = "nl_BE"
15
+ DE_DE = "de_DE"
16
+ DE_AT = "de_AT"
17
+ DE_CH = "de_CH"
18
+ FR_FR = "fr_FR"
19
+ FR_BE = "fr_BE"
@@ -0,0 +1,182 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .sales_invoice_recipient_locale_response import SalesInvoiceRecipientLocaleResponse
5
+ from .sales_invoice_recipient_type_response import SalesInvoiceRecipientTypeResponse
6
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, 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_extensions import Annotated, NotRequired, TypedDict
12
+
13
+
14
+ class SalesInvoiceRecipientResponseTypedDict(TypedDict):
15
+ type: SalesInvoiceRecipientTypeResponse
16
+ r"""The type of recipient, either `consumer` or `business`. This will determine what further fields are
17
+ required on the `recipient` object.
18
+ """
19
+ email: str
20
+ r"""The email address of the recipient."""
21
+ street_and_number: str
22
+ r"""A street and street number."""
23
+ postal_code: str
24
+ r"""A postal code."""
25
+ city: str
26
+ r"""The recipient's city."""
27
+ country: str
28
+ r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format."""
29
+ locale: SalesInvoiceRecipientLocaleResponse
30
+ r"""The locale for the recipient, to be used for translations in PDF generation and payment pages."""
31
+ title: NotRequired[Nullable[str]]
32
+ r"""The title of the `consumer` type recipient, for example Mr. or Mrs.."""
33
+ given_name: NotRequired[Nullable[str]]
34
+ r"""The given name (first name) of the `consumer` type recipient should be at least two characters and cannot contain
35
+ only numbers.
36
+ """
37
+ family_name: NotRequired[Nullable[str]]
38
+ r"""The given name (last name) of the `consumer` type recipient should be at least two characters and cannot contain
39
+ only numbers.
40
+ """
41
+ organization_name: NotRequired[Nullable[str]]
42
+ r"""The trading name of the `business` type recipient."""
43
+ organization_number: NotRequired[Nullable[str]]
44
+ r"""The Chamber of Commerce number of the organization for a `business` type recipient. Either this or `vatNumber`
45
+ has to be provided.
46
+ """
47
+ vat_number: NotRequired[Nullable[str]]
48
+ r"""The VAT number of the organization for a `business` type recipient. Either this or `organizationNumber`
49
+ has to be provided.
50
+ """
51
+ phone: NotRequired[Nullable[str]]
52
+ r"""The phone number of the recipient."""
53
+ street_additional: NotRequired[Nullable[str]]
54
+ r"""Any additional addressing details, for example an apartment number."""
55
+ region: NotRequired[Nullable[str]]
56
+ r"""The recipient's region."""
57
+
58
+
59
+ class SalesInvoiceRecipientResponse(BaseModel):
60
+ type: Annotated[
61
+ SalesInvoiceRecipientTypeResponse, PlainValidator(validate_open_enum(False))
62
+ ]
63
+ r"""The type of recipient, either `consumer` or `business`. This will determine what further fields are
64
+ required on the `recipient` object.
65
+ """
66
+
67
+ email: str
68
+ r"""The email address of the recipient."""
69
+
70
+ street_and_number: Annotated[str, pydantic.Field(alias="streetAndNumber")]
71
+ r"""A street and street number."""
72
+
73
+ postal_code: Annotated[str, pydantic.Field(alias="postalCode")]
74
+ r"""A postal code."""
75
+
76
+ city: str
77
+ r"""The recipient's city."""
78
+
79
+ country: str
80
+ r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format."""
81
+
82
+ locale: Annotated[
83
+ SalesInvoiceRecipientLocaleResponse, PlainValidator(validate_open_enum(False))
84
+ ]
85
+ r"""The locale for the recipient, to be used for translations in PDF generation and payment pages."""
86
+
87
+ title: OptionalNullable[str] = UNSET
88
+ r"""The title of the `consumer` type recipient, for example Mr. or Mrs.."""
89
+
90
+ given_name: Annotated[OptionalNullable[str], pydantic.Field(alias="givenName")] = (
91
+ UNSET
92
+ )
93
+ r"""The given name (first name) of the `consumer` type recipient should be at least two characters and cannot contain
94
+ only numbers.
95
+ """
96
+
97
+ family_name: Annotated[
98
+ OptionalNullable[str], pydantic.Field(alias="familyName")
99
+ ] = UNSET
100
+ r"""The given name (last name) of the `consumer` type recipient should be at least two characters and cannot contain
101
+ only numbers.
102
+ """
103
+
104
+ organization_name: Annotated[
105
+ OptionalNullable[str], pydantic.Field(alias="organizationName")
106
+ ] = UNSET
107
+ r"""The trading name of the `business` type recipient."""
108
+
109
+ organization_number: Annotated[
110
+ OptionalNullable[str], pydantic.Field(alias="organizationNumber")
111
+ ] = UNSET
112
+ r"""The Chamber of Commerce number of the organization for a `business` type recipient. Either this or `vatNumber`
113
+ has to be provided.
114
+ """
115
+
116
+ vat_number: Annotated[OptionalNullable[str], pydantic.Field(alias="vatNumber")] = (
117
+ UNSET
118
+ )
119
+ r"""The VAT number of the organization for a `business` type recipient. Either this or `organizationNumber`
120
+ has to be provided.
121
+ """
122
+
123
+ phone: OptionalNullable[str] = UNSET
124
+ r"""The phone number of the recipient."""
125
+
126
+ street_additional: Annotated[
127
+ OptionalNullable[str], pydantic.Field(alias="streetAdditional")
128
+ ] = UNSET
129
+ r"""Any additional addressing details, for example an apartment number."""
130
+
131
+ region: OptionalNullable[str] = UNSET
132
+ r"""The recipient's region."""
133
+
134
+ @model_serializer(mode="wrap")
135
+ def serialize_model(self, handler):
136
+ optional_fields = [
137
+ "title",
138
+ "givenName",
139
+ "familyName",
140
+ "organizationName",
141
+ "organizationNumber",
142
+ "vatNumber",
143
+ "phone",
144
+ "streetAdditional",
145
+ "region",
146
+ ]
147
+ nullable_fields = [
148
+ "title",
149
+ "givenName",
150
+ "familyName",
151
+ "organizationName",
152
+ "organizationNumber",
153
+ "vatNumber",
154
+ "phone",
155
+ "streetAdditional",
156
+ "region",
157
+ ]
158
+ null_default_fields = []
159
+
160
+ serialized = handler(self)
161
+
162
+ m = {}
163
+
164
+ for n, f in type(self).model_fields.items():
165
+ k = f.alias or n
166
+ val = serialized.get(k)
167
+ serialized.pop(k, None)
168
+
169
+ optional_nullable = k in optional_fields and k in nullable_fields
170
+ is_set = (
171
+ self.__pydantic_fields_set__.intersection({n})
172
+ or k in null_default_fields
173
+ ) # pylint: disable=no-member
174
+
175
+ if val is not None and val != UNSET_SENTINEL:
176
+ m[k] = val
177
+ elif val != UNSET_SENTINEL and (
178
+ not k in optional_fields or (optional_nullable and is_set)
179
+ ):
180
+ m[k] = val
181
+
182
+ return m
@@ -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
+
6
+
7
+ class SalesInvoiceRecipientType(str, Enum):
8
+ r"""The type of recipient, either `consumer` or `business`. This will determine what further fields are
9
+ required on the `recipient` object.
10
+ """
11
+
12
+ CONSUMER = "consumer"
13
+ BUSINESS = "business"
@@ -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 SalesInvoiceRecipientTypeResponse(str, Enum, metaclass=utils.OpenEnumMeta):
9
+ r"""The type of recipient, either `consumer` or `business`. This will determine what further fields are
10
+ required on the `recipient` object.
11
+ """
12
+
13
+ CONSUMER = "consumer"
14
+ BUSINESS = "business"