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,505 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .mode import Mode
5
+ from .sales_invoice_discount_response import (
6
+ SalesInvoiceDiscountResponse,
7
+ SalesInvoiceDiscountResponseTypedDict,
8
+ )
9
+ from .sales_invoice_email_details import (
10
+ SalesInvoiceEmailDetails,
11
+ SalesInvoiceEmailDetailsTypedDict,
12
+ )
13
+ from .sales_invoice_line_item_response import (
14
+ SalesInvoiceLineItemResponse,
15
+ SalesInvoiceLineItemResponseTypedDict,
16
+ )
17
+ from .sales_invoice_payment_details_response import (
18
+ SalesInvoicePaymentDetailsResponse,
19
+ SalesInvoicePaymentDetailsResponseTypedDict,
20
+ )
21
+ from .sales_invoice_payment_term_response import SalesInvoicePaymentTermResponse
22
+ from .sales_invoice_recipient_response import (
23
+ SalesInvoiceRecipientResponse,
24
+ SalesInvoiceRecipientResponseTypedDict,
25
+ )
26
+ from .sales_invoice_status_response import SalesInvoiceStatusResponse
27
+ from .sales_invoice_vat_mode_response import SalesInvoiceVatModeResponse
28
+ from .sales_invoice_vat_scheme_response import SalesInvoiceVatSchemeResponse
29
+ from .url import URL, URLTypedDict
30
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
31
+ from mollie.utils import validate_open_enum
32
+ import pydantic
33
+ from pydantic import model_serializer
34
+ from pydantic.functional_validators import PlainValidator
35
+ from typing import List, Optional
36
+ from typing_extensions import Annotated, NotRequired, TypedDict
37
+
38
+
39
+ class ListSalesInvoiceResponseMetadataTypedDict(TypedDict):
40
+ r"""Provide any data you like as a JSON object. We will save the data alongside the entity. Whenever
41
+ you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
42
+ """
43
+
44
+
45
+ class ListSalesInvoiceResponseMetadata(BaseModel):
46
+ r"""Provide any data you like as a JSON object. We will save the data alongside the entity. Whenever
47
+ you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
48
+ """
49
+
50
+
51
+ class ListSalesInvoiceResponseAmountDueTypedDict(TypedDict):
52
+ r"""The amount that is left to be paid."""
53
+
54
+ currency: str
55
+ r"""A three-character ISO 4217 currency code."""
56
+ value: str
57
+ r"""A string containing an exact monetary amount in the given currency."""
58
+
59
+
60
+ class ListSalesInvoiceResponseAmountDue(BaseModel):
61
+ r"""The amount that is left to be paid."""
62
+
63
+ currency: str
64
+ r"""A three-character ISO 4217 currency code."""
65
+
66
+ value: str
67
+ r"""A string containing an exact monetary amount in the given currency."""
68
+
69
+
70
+ class ListSalesInvoiceResponseSubtotalAmountTypedDict(TypedDict):
71
+ r"""The total amount without VAT before discounts."""
72
+
73
+ currency: str
74
+ r"""A three-character ISO 4217 currency code."""
75
+ value: str
76
+ r"""A string containing an exact monetary amount in the given currency."""
77
+
78
+
79
+ class ListSalesInvoiceResponseSubtotalAmount(BaseModel):
80
+ r"""The total amount without VAT before discounts."""
81
+
82
+ currency: str
83
+ r"""A three-character ISO 4217 currency code."""
84
+
85
+ value: str
86
+ r"""A string containing an exact monetary amount in the given currency."""
87
+
88
+
89
+ class ListSalesInvoiceResponseTotalAmountTypedDict(TypedDict):
90
+ r"""The total amount with VAT."""
91
+
92
+ currency: str
93
+ r"""A three-character ISO 4217 currency code."""
94
+ value: str
95
+ r"""A string containing an exact monetary amount in the given currency."""
96
+
97
+
98
+ class ListSalesInvoiceResponseTotalAmount(BaseModel):
99
+ r"""The total amount with VAT."""
100
+
101
+ currency: str
102
+ r"""A three-character ISO 4217 currency code."""
103
+
104
+ value: str
105
+ r"""A string containing an exact monetary amount in the given currency."""
106
+
107
+
108
+ class ListSalesInvoiceResponseTotalVatAmountTypedDict(TypedDict):
109
+ r"""The total VAT amount."""
110
+
111
+ currency: str
112
+ r"""A three-character ISO 4217 currency code."""
113
+ value: str
114
+ r"""A string containing an exact monetary amount in the given currency."""
115
+
116
+
117
+ class ListSalesInvoiceResponseTotalVatAmount(BaseModel):
118
+ r"""The total VAT amount."""
119
+
120
+ currency: str
121
+ r"""A three-character ISO 4217 currency code."""
122
+
123
+ value: str
124
+ r"""A string containing an exact monetary amount in the given currency."""
125
+
126
+
127
+ class ListSalesInvoiceResponseDiscountedSubtotalAmountTypedDict(TypedDict):
128
+ r"""The total amount without VAT after discounts."""
129
+
130
+ currency: str
131
+ r"""A three-character ISO 4217 currency code."""
132
+ value: str
133
+ r"""A string containing an exact monetary amount in the given currency."""
134
+
135
+
136
+ class ListSalesInvoiceResponseDiscountedSubtotalAmount(BaseModel):
137
+ r"""The total amount without VAT after discounts."""
138
+
139
+ currency: str
140
+ r"""A three-character ISO 4217 currency code."""
141
+
142
+ value: str
143
+ r"""A string containing an exact monetary amount in the given currency."""
144
+
145
+
146
+ class ListSalesInvoiceResponseLinksTypedDict(TypedDict):
147
+ r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
148
+
149
+ self_: NotRequired[URLTypedDict]
150
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
151
+ invoice_payment: NotRequired[URLTypedDict]
152
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
153
+ pdf_link: NotRequired[URLTypedDict]
154
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
155
+ next: NotRequired[URLTypedDict]
156
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
157
+ previous: NotRequired[URLTypedDict]
158
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
159
+
160
+
161
+ class ListSalesInvoiceResponseLinks(BaseModel):
162
+ r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
163
+
164
+ self_: Annotated[Optional[URL], pydantic.Field(alias="self")] = None
165
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
166
+
167
+ invoice_payment: Annotated[
168
+ Optional[URL], pydantic.Field(alias="invoicePayment")
169
+ ] = None
170
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
171
+
172
+ pdf_link: Annotated[Optional[URL], pydantic.Field(alias="pdfLink")] = None
173
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
174
+
175
+ next: Optional[URL] = None
176
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
177
+
178
+ previous: Optional[URL] = None
179
+ r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
180
+
181
+
182
+ class ListSalesInvoiceResponseTypedDict(TypedDict):
183
+ resource: str
184
+ r"""Indicates the response contains a sales invoice object. Will always contain the string `sales-invoice` for this
185
+ endpoint.
186
+ """
187
+ id: str
188
+ r"""The identifier uniquely referring to this invoice. Example: `invoice_4Y0eZitmBnQ6IDoMqZQKh`."""
189
+ mode: Mode
190
+ r"""Whether this entity was created in live mode or in test mode."""
191
+ invoice_number: NotRequired[Nullable[str]]
192
+ r"""When issued, an invoice number will be set for the sales invoice."""
193
+ status: NotRequired[SalesInvoiceStatusResponse]
194
+ r"""The status for the invoice to end up in.
195
+
196
+ A `draft` invoice is not paid or not sent and can be updated after creation. Setting it to `issued` sends it to
197
+ the recipient so they may then pay through our payment system. To skip our payment process, set this to `paid` to
198
+ mark it as paid. It can then subsequently be sent as well, same as with `issued`.
199
+
200
+ A status value that cannot be set but can be returned is `canceled`, for invoices which were
201
+ issued, but then canceled. Currently this can only be done for invoices created in the dashboard.
202
+
203
+ Dependent parameters:
204
+ - `paymentDetails` is required if invoice should be set directly to `paid`
205
+ - `customerId` and `mandateId` are required if a recurring payment should be used to set the invoice to `paid`
206
+ - `emailDetails` optional for `issued` and `paid` to send the invoice by email
207
+ """
208
+ vat_scheme: NotRequired[SalesInvoiceVatSchemeResponse]
209
+ r"""The VAT scheme to create the invoice for. You must be enrolled with One Stop Shop enabled to use it."""
210
+ vat_mode: NotRequired[SalesInvoiceVatModeResponse]
211
+ r"""The VAT mode to use for VAT calculation. `exclusive` mode means we will apply the relevant VAT on top of the
212
+ price. `inclusive` means the prices you are providing to us already contain the VAT you want to apply.
213
+ """
214
+ memo: NotRequired[Nullable[str]]
215
+ r"""A free-form memo you can set on the invoice, and will be shown on the invoice PDF."""
216
+ metadata: NotRequired[Nullable[ListSalesInvoiceResponseMetadataTypedDict]]
217
+ r"""Provide any data you like as a JSON object. We will save the data alongside the entity. Whenever
218
+ you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
219
+ """
220
+ payment_term: NotRequired[Nullable[SalesInvoicePaymentTermResponse]]
221
+ r"""The payment term to be set on the invoice."""
222
+ payment_details: NotRequired[SalesInvoicePaymentDetailsResponseTypedDict]
223
+ email_details: NotRequired[Nullable[SalesInvoiceEmailDetailsTypedDict]]
224
+ customer_id: NotRequired[str]
225
+ r"""The identifier referring to the [customer](get-customer) you want to attempt an automated payment for. If
226
+ provided, `mandateId` becomes required as well. Only allowed for invoices with status `paid`.
227
+ """
228
+ mandate_id: NotRequired[str]
229
+ r"""The identifier referring to the [mandate](get-mandate) you want to use for the automated payment. If provided,
230
+ `customerId` becomes required as well. Only allowed for invoices with status `paid`.
231
+ """
232
+ recipient_identifier: NotRequired[str]
233
+ r"""An identifier tied to the recipient data. This should be a unique value based on data your system contains,
234
+ so that both you and us know who we're referring to. It is a value you provide to us so that recipient management
235
+ is not required to send a first invoice to a recipient.
236
+ """
237
+ recipient: NotRequired[Nullable[SalesInvoiceRecipientResponseTypedDict]]
238
+ lines: NotRequired[Nullable[List[SalesInvoiceLineItemResponseTypedDict]]]
239
+ r"""Provide the line items for the invoice. Each line contains details such as a description of the item
240
+ ordered and its price.
241
+
242
+ All lines must have the same currency as the invoice.
243
+ """
244
+ discount: NotRequired[Nullable[SalesInvoiceDiscountResponseTypedDict]]
245
+ amount_due: NotRequired[ListSalesInvoiceResponseAmountDueTypedDict]
246
+ r"""The amount that is left to be paid."""
247
+ subtotal_amount: NotRequired[ListSalesInvoiceResponseSubtotalAmountTypedDict]
248
+ r"""The total amount without VAT before discounts."""
249
+ total_amount: NotRequired[ListSalesInvoiceResponseTotalAmountTypedDict]
250
+ r"""The total amount with VAT."""
251
+ total_vat_amount: NotRequired[ListSalesInvoiceResponseTotalVatAmountTypedDict]
252
+ r"""The total VAT amount."""
253
+ discounted_subtotal_amount: NotRequired[
254
+ ListSalesInvoiceResponseDiscountedSubtotalAmountTypedDict
255
+ ]
256
+ r"""The total amount without VAT after discounts."""
257
+ created_at: NotRequired[str]
258
+ r"""The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format."""
259
+ issued_at: NotRequired[Nullable[str]]
260
+ r"""If issued, the date when the sales invoice was issued, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
261
+ format.
262
+ """
263
+ paid_at: NotRequired[Nullable[str]]
264
+ r"""If paid, the date when the sales invoice was paid, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
265
+ format.
266
+ """
267
+ due_at: NotRequired[Nullable[str]]
268
+ r"""If issued, the date when the sales invoice payment is due, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
269
+ format.
270
+ """
271
+ links: NotRequired[ListSalesInvoiceResponseLinksTypedDict]
272
+ r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
273
+
274
+
275
+ class ListSalesInvoiceResponse(BaseModel):
276
+ resource: str
277
+ r"""Indicates the response contains a sales invoice object. Will always contain the string `sales-invoice` for this
278
+ endpoint.
279
+ """
280
+
281
+ id: str
282
+ r"""The identifier uniquely referring to this invoice. Example: `invoice_4Y0eZitmBnQ6IDoMqZQKh`."""
283
+
284
+ mode: Annotated[Mode, PlainValidator(validate_open_enum(False))]
285
+ r"""Whether this entity was created in live mode or in test mode."""
286
+
287
+ invoice_number: Annotated[
288
+ OptionalNullable[str], pydantic.Field(alias="invoiceNumber")
289
+ ] = UNSET
290
+ r"""When issued, an invoice number will be set for the sales invoice."""
291
+
292
+ status: Annotated[
293
+ Optional[SalesInvoiceStatusResponse], PlainValidator(validate_open_enum(False))
294
+ ] = None
295
+ r"""The status for the invoice to end up in.
296
+
297
+ A `draft` invoice is not paid or not sent and can be updated after creation. Setting it to `issued` sends it to
298
+ the recipient so they may then pay through our payment system. To skip our payment process, set this to `paid` to
299
+ mark it as paid. It can then subsequently be sent as well, same as with `issued`.
300
+
301
+ A status value that cannot be set but can be returned is `canceled`, for invoices which were
302
+ issued, but then canceled. Currently this can only be done for invoices created in the dashboard.
303
+
304
+ Dependent parameters:
305
+ - `paymentDetails` is required if invoice should be set directly to `paid`
306
+ - `customerId` and `mandateId` are required if a recurring payment should be used to set the invoice to `paid`
307
+ - `emailDetails` optional for `issued` and `paid` to send the invoice by email
308
+ """
309
+
310
+ vat_scheme: Annotated[
311
+ Annotated[
312
+ Optional[SalesInvoiceVatSchemeResponse],
313
+ PlainValidator(validate_open_enum(False)),
314
+ ],
315
+ pydantic.Field(alias="vatScheme"),
316
+ ] = None
317
+ r"""The VAT scheme to create the invoice for. You must be enrolled with One Stop Shop enabled to use it."""
318
+
319
+ vat_mode: Annotated[
320
+ Annotated[
321
+ Optional[SalesInvoiceVatModeResponse],
322
+ PlainValidator(validate_open_enum(False)),
323
+ ],
324
+ pydantic.Field(alias="vatMode"),
325
+ ] = None
326
+ r"""The VAT mode to use for VAT calculation. `exclusive` mode means we will apply the relevant VAT on top of the
327
+ price. `inclusive` means the prices you are providing to us already contain the VAT you want to apply.
328
+ """
329
+
330
+ memo: OptionalNullable[str] = UNSET
331
+ r"""A free-form memo you can set on the invoice, and will be shown on the invoice PDF."""
332
+
333
+ metadata: OptionalNullable[ListSalesInvoiceResponseMetadata] = UNSET
334
+ r"""Provide any data you like as a JSON object. We will save the data alongside the entity. Whenever
335
+ you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
336
+ """
337
+
338
+ payment_term: Annotated[
339
+ Annotated[
340
+ OptionalNullable[SalesInvoicePaymentTermResponse],
341
+ PlainValidator(validate_open_enum(False)),
342
+ ],
343
+ pydantic.Field(alias="paymentTerm"),
344
+ ] = UNSET
345
+ r"""The payment term to be set on the invoice."""
346
+
347
+ payment_details: Annotated[
348
+ Optional[SalesInvoicePaymentDetailsResponse],
349
+ pydantic.Field(alias="paymentDetails"),
350
+ ] = None
351
+
352
+ email_details: Annotated[
353
+ OptionalNullable[SalesInvoiceEmailDetails], pydantic.Field(alias="emailDetails")
354
+ ] = UNSET
355
+
356
+ customer_id: Annotated[Optional[str], pydantic.Field(alias="customerId")] = None
357
+ r"""The identifier referring to the [customer](get-customer) you want to attempt an automated payment for. If
358
+ provided, `mandateId` becomes required as well. Only allowed for invoices with status `paid`.
359
+ """
360
+
361
+ mandate_id: Annotated[Optional[str], pydantic.Field(alias="mandateId")] = None
362
+ r"""The identifier referring to the [mandate](get-mandate) you want to use for the automated payment. If provided,
363
+ `customerId` becomes required as well. Only allowed for invoices with status `paid`.
364
+ """
365
+
366
+ recipient_identifier: Annotated[
367
+ Optional[str], pydantic.Field(alias="recipientIdentifier")
368
+ ] = None
369
+ r"""An identifier tied to the recipient data. This should be a unique value based on data your system contains,
370
+ so that both you and us know who we're referring to. It is a value you provide to us so that recipient management
371
+ is not required to send a first invoice to a recipient.
372
+ """
373
+
374
+ recipient: OptionalNullable[SalesInvoiceRecipientResponse] = UNSET
375
+
376
+ lines: OptionalNullable[List[SalesInvoiceLineItemResponse]] = UNSET
377
+ r"""Provide the line items for the invoice. Each line contains details such as a description of the item
378
+ ordered and its price.
379
+
380
+ All lines must have the same currency as the invoice.
381
+ """
382
+
383
+ discount: OptionalNullable[SalesInvoiceDiscountResponse] = UNSET
384
+
385
+ amount_due: Annotated[
386
+ Optional[ListSalesInvoiceResponseAmountDue], pydantic.Field(alias="amountDue")
387
+ ] = None
388
+ r"""The amount that is left to be paid."""
389
+
390
+ subtotal_amount: Annotated[
391
+ Optional[ListSalesInvoiceResponseSubtotalAmount],
392
+ pydantic.Field(alias="subtotalAmount"),
393
+ ] = None
394
+ r"""The total amount without VAT before discounts."""
395
+
396
+ total_amount: Annotated[
397
+ Optional[ListSalesInvoiceResponseTotalAmount],
398
+ pydantic.Field(alias="totalAmount"),
399
+ ] = None
400
+ r"""The total amount with VAT."""
401
+
402
+ total_vat_amount: Annotated[
403
+ Optional[ListSalesInvoiceResponseTotalVatAmount],
404
+ pydantic.Field(alias="totalVatAmount"),
405
+ ] = None
406
+ r"""The total VAT amount."""
407
+
408
+ discounted_subtotal_amount: Annotated[
409
+ Optional[ListSalesInvoiceResponseDiscountedSubtotalAmount],
410
+ pydantic.Field(alias="discountedSubtotalAmount"),
411
+ ] = None
412
+ r"""The total amount without VAT after discounts."""
413
+
414
+ created_at: Annotated[Optional[str], pydantic.Field(alias="createdAt")] = None
415
+ r"""The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format."""
416
+
417
+ issued_at: Annotated[OptionalNullable[str], pydantic.Field(alias="issuedAt")] = (
418
+ UNSET
419
+ )
420
+ r"""If issued, the date when the sales invoice was issued, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
421
+ format.
422
+ """
423
+
424
+ paid_at: Annotated[OptionalNullable[str], pydantic.Field(alias="paidAt")] = UNSET
425
+ r"""If paid, the date when the sales invoice was paid, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
426
+ format.
427
+ """
428
+
429
+ due_at: Annotated[OptionalNullable[str], pydantic.Field(alias="dueAt")] = UNSET
430
+ r"""If issued, the date when the sales invoice payment is due, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601)
431
+ format.
432
+ """
433
+
434
+ links: Annotated[
435
+ Optional[ListSalesInvoiceResponseLinks], pydantic.Field(alias="_links")
436
+ ] = None
437
+ r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
438
+
439
+ @model_serializer(mode="wrap")
440
+ def serialize_model(self, handler):
441
+ optional_fields = [
442
+ "invoiceNumber",
443
+ "status",
444
+ "vatScheme",
445
+ "vatMode",
446
+ "memo",
447
+ "metadata",
448
+ "paymentTerm",
449
+ "paymentDetails",
450
+ "emailDetails",
451
+ "customerId",
452
+ "mandateId",
453
+ "recipientIdentifier",
454
+ "recipient",
455
+ "lines",
456
+ "discount",
457
+ "amountDue",
458
+ "subtotalAmount",
459
+ "totalAmount",
460
+ "totalVatAmount",
461
+ "discountedSubtotalAmount",
462
+ "createdAt",
463
+ "issuedAt",
464
+ "paidAt",
465
+ "dueAt",
466
+ "_links",
467
+ ]
468
+ nullable_fields = [
469
+ "invoiceNumber",
470
+ "memo",
471
+ "metadata",
472
+ "paymentTerm",
473
+ "emailDetails",
474
+ "recipient",
475
+ "lines",
476
+ "discount",
477
+ "issuedAt",
478
+ "paidAt",
479
+ "dueAt",
480
+ ]
481
+ null_default_fields = []
482
+
483
+ serialized = handler(self)
484
+
485
+ m = {}
486
+
487
+ for n, f in type(self).model_fields.items():
488
+ k = f.alias or n
489
+ val = serialized.get(k)
490
+ serialized.pop(k, None)
491
+
492
+ optional_nullable = k in optional_fields and k in nullable_fields
493
+ is_set = (
494
+ self.__pydantic_fields_set__.intersection({n})
495
+ or k in null_default_fields
496
+ ) # pylint: disable=no-member
497
+
498
+ if val is not None and val != UNSET_SENTINEL:
499
+ m[k] = val
500
+ elif val != UNSET_SENTINEL and (
501
+ not k in optional_fields or (optional_nullable and is_set)
502
+ ):
503
+ m[k] = val
504
+
505
+ return m
@@ -0,0 +1,172 @@
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_sales_invoice_response import (
6
+ ListSalesInvoiceResponse,
7
+ ListSalesInvoiceResponseTypedDict,
8
+ )
9
+ from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
10
+ from mollie.utils import FieldMetadata, HeaderMetadata, QueryParamMetadata
11
+ import pydantic
12
+ from pydantic import model_serializer
13
+ from typing import List, Optional
14
+ from typing_extensions import Annotated, NotRequired, TypedDict
15
+
16
+
17
+ class ListSalesInvoicesGlobalsTypedDict(TypedDict):
18
+ testmode: NotRequired[bool]
19
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
20
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
21
+ setting the `testmode` query parameter to `true`.
22
+
23
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
24
+ """
25
+
26
+
27
+ class ListSalesInvoicesGlobals(BaseModel):
28
+ testmode: Annotated[
29
+ Optional[bool],
30
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
31
+ ] = None
32
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
33
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
34
+ setting the `testmode` query parameter to `true`.
35
+
36
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
37
+ """
38
+
39
+
40
+ class ListSalesInvoicesRequestTypedDict(TypedDict):
41
+ from_: NotRequired[Nullable[str]]
42
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
43
+ result set.
44
+ """
45
+ limit: NotRequired[Nullable[int]]
46
+ r"""The maximum number of items to return. Defaults to 50 items."""
47
+ testmode: NotRequired[bool]
48
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
49
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
50
+ setting the `testmode` query parameter to `true`.
51
+
52
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
53
+ """
54
+ idempotency_key: NotRequired[str]
55
+ r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
56
+
57
+
58
+ class ListSalesInvoicesRequest(BaseModel):
59
+ from_: Annotated[
60
+ OptionalNullable[str],
61
+ pydantic.Field(alias="from"),
62
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
63
+ ] = UNSET
64
+ r"""Provide an ID to start the result set from the item with the given ID and onwards. This allows you to paginate the
65
+ result set.
66
+ """
67
+
68
+ limit: Annotated[
69
+ OptionalNullable[int],
70
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
71
+ ] = UNSET
72
+ r"""The maximum number of items to return. Defaults to 50 items."""
73
+
74
+ testmode: Annotated[
75
+ Optional[bool],
76
+ FieldMetadata(query=QueryParamMetadata(style="form", explode=True)),
77
+ ] = None
78
+ r"""Most API credentials are specifically created for either live mode or test mode. In those cases the `testmode` query
79
+ parameter can be omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by
80
+ setting the `testmode` query parameter to `true`.
81
+
82
+ Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
83
+ """
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 = ["from", "limit", "testmode", "idempotency-key"]
95
+ nullable_fields = ["from", "limit"]
96
+ null_default_fields = []
97
+
98
+ serialized = handler(self)
99
+
100
+ m = {}
101
+
102
+ for n, f in type(self).model_fields.items():
103
+ k = f.alias or n
104
+ val = serialized.get(k)
105
+ serialized.pop(k, None)
106
+
107
+ optional_nullable = k in optional_fields and k in nullable_fields
108
+ is_set = (
109
+ self.__pydantic_fields_set__.intersection({n})
110
+ or k in null_default_fields
111
+ ) # pylint: disable=no-member
112
+
113
+ if val is not None and val != UNSET_SENTINEL:
114
+ m[k] = val
115
+ elif val != UNSET_SENTINEL and (
116
+ not k in optional_fields or (optional_nullable and is_set)
117
+ ):
118
+ m[k] = val
119
+
120
+ return m
121
+
122
+
123
+ class ListSalesInvoicesEmbeddedTypedDict(TypedDict):
124
+ sales_invoices: NotRequired[List[ListSalesInvoiceResponseTypedDict]]
125
+ r"""An array of sales invoice objects. For a complete reference of the sales invoice object, refer to
126
+ the [Get sales invoice endpoint](get-sales-invoice) documentation.
127
+ """
128
+
129
+
130
+ class ListSalesInvoicesEmbedded(BaseModel):
131
+ sales_invoices: Optional[List[ListSalesInvoiceResponse]] = None
132
+ r"""An array of sales invoice objects. For a complete reference of the sales invoice object, refer to
133
+ the [Get sales invoice endpoint](get-sales-invoice) documentation.
134
+ """
135
+
136
+
137
+ class ListSalesInvoicesResponseTypedDict(TypedDict):
138
+ r"""A list of sales invoice objects. For a complete reference of the sales invoice object, refer to the
139
+ [Get sales invoice endpoint](get-sales-invoice) documentation.
140
+ """
141
+
142
+ count: NotRequired[int]
143
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
144
+ as well.
145
+
146
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
147
+ limit is 50 items.
148
+ """
149
+ embedded: NotRequired[ListSalesInvoicesEmbeddedTypedDict]
150
+ links: NotRequired[ListLinksTypedDict]
151
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""
152
+
153
+
154
+ class ListSalesInvoicesResponse(BaseModel):
155
+ r"""A list of sales invoice objects. For a complete reference of the sales invoice object, refer to the
156
+ [Get sales invoice endpoint](get-sales-invoice) documentation.
157
+ """
158
+
159
+ count: Optional[int] = None
160
+ r"""The number of items in this result set. If more items are available, a `_links.next` URL will be present in the result
161
+ as well.
162
+
163
+ The maximum number of items per result set is controlled by the `limit` property provided in the request. The default
164
+ limit is 50 items.
165
+ """
166
+
167
+ embedded: Annotated[
168
+ Optional[ListSalesInvoicesEmbedded], pydantic.Field(alias="_embedded")
169
+ ] = None
170
+
171
+ links: Annotated[Optional[ListLinks], pydantic.Field(alias="_links")] = None
172
+ r"""Links to help navigate through the lists of items. Every URL object will contain an `href` and a `type` field."""