mollie-api-py 1.1.1__py3-none-any.whl → 1.1.2__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.
- mollie/_version.py +2 -2
- mollie/customers.py +20 -14
- mollie/models/__init__.py +16 -9
- mollie/models/update_customerop.py +85 -5
- mollie/models/update_payment_linkop.py +11 -9
- mollie/models/update_paymentop.py +4 -5
- mollie/models/update_sales_invoiceop.py +174 -8
- mollie/models/update_subscriptionop.py +11 -9
- mollie/models/update_webhookop.py +8 -4
- mollie/sales_invoices.py +16 -16
- {mollie_api_py-1.1.1.dist-info → mollie_api_py-1.1.2.dist-info}/METADATA +1 -1
- {mollie_api_py-1.1.1.dist-info → mollie_api_py-1.1.2.dist-info}/RECORD +14 -15
- mollie/models/update_values_sales_invoice.py +0 -176
- {mollie_api_py-1.1.1.dist-info → mollie_api_py-1.1.2.dist-info}/WHEEL +0 -0
- {mollie_api_py-1.1.1.dist-info → mollie_api_py-1.1.2.dist-info}/licenses/LICENSE.md +0 -0
mollie/_version.py
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
import importlib.metadata
|
|
4
4
|
|
|
5
5
|
__title__: str = "mollie-api-py"
|
|
6
|
-
__version__: str = "1.1.
|
|
6
|
+
__version__: str = "1.1.2"
|
|
7
7
|
__openapi_doc_version__: str = "1.0.0"
|
|
8
8
|
__gen_version__: str = "2.730.5"
|
|
9
|
-
__user_agent__: str = "speakeasy-sdk/python 1.1.
|
|
9
|
+
__user_agent__: str = "speakeasy-sdk/python 1.1.2 2.730.5 1.0.0 mollie-api-py"
|
|
10
10
|
|
|
11
11
|
try:
|
|
12
12
|
if __package__ is not None:
|
mollie/customers.py
CHANGED
|
@@ -653,8 +653,11 @@ class Customers(BaseSDK):
|
|
|
653
653
|
*,
|
|
654
654
|
customer_id: str,
|
|
655
655
|
idempotency_key: Optional[str] = None,
|
|
656
|
-
|
|
657
|
-
Union[
|
|
656
|
+
request_body: Optional[
|
|
657
|
+
Union[
|
|
658
|
+
models.UpdateCustomerRequestBody,
|
|
659
|
+
models.UpdateCustomerRequestBodyTypedDict,
|
|
660
|
+
]
|
|
658
661
|
] = None,
|
|
659
662
|
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
660
663
|
server_url: Optional[str] = None,
|
|
@@ -669,7 +672,7 @@ class Customers(BaseSDK):
|
|
|
669
672
|
|
|
670
673
|
:param customer_id: Provide the ID of the related customer.
|
|
671
674
|
:param idempotency_key: A unique key to ensure idempotent requests. This key should be a UUID v4 string.
|
|
672
|
-
:param
|
|
675
|
+
:param request_body:
|
|
673
676
|
:param retries: Override the default retry configuration for this method
|
|
674
677
|
:param server_url: Override the default server URL for this method
|
|
675
678
|
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
|
@@ -688,8 +691,8 @@ class Customers(BaseSDK):
|
|
|
688
691
|
request = models.UpdateCustomerRequest(
|
|
689
692
|
customer_id=customer_id,
|
|
690
693
|
idempotency_key=idempotency_key,
|
|
691
|
-
|
|
692
|
-
|
|
694
|
+
request_body=utils.get_pydantic_model(
|
|
695
|
+
request_body, Optional[models.UpdateCustomerRequestBody]
|
|
693
696
|
),
|
|
694
697
|
)
|
|
695
698
|
|
|
@@ -707,11 +710,11 @@ class Customers(BaseSDK):
|
|
|
707
710
|
http_headers=http_headers,
|
|
708
711
|
security=self.sdk_configuration.security,
|
|
709
712
|
get_serialized_body=lambda: utils.serialize_request_body(
|
|
710
|
-
request.
|
|
713
|
+
request.request_body,
|
|
711
714
|
False,
|
|
712
715
|
True,
|
|
713
716
|
"json",
|
|
714
|
-
Optional[models.
|
|
717
|
+
Optional[models.UpdateCustomerRequestBody],
|
|
715
718
|
),
|
|
716
719
|
timeout_ms=timeout_ms,
|
|
717
720
|
)
|
|
@@ -763,8 +766,11 @@ class Customers(BaseSDK):
|
|
|
763
766
|
*,
|
|
764
767
|
customer_id: str,
|
|
765
768
|
idempotency_key: Optional[str] = None,
|
|
766
|
-
|
|
767
|
-
Union[
|
|
769
|
+
request_body: Optional[
|
|
770
|
+
Union[
|
|
771
|
+
models.UpdateCustomerRequestBody,
|
|
772
|
+
models.UpdateCustomerRequestBodyTypedDict,
|
|
773
|
+
]
|
|
768
774
|
] = None,
|
|
769
775
|
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
770
776
|
server_url: Optional[str] = None,
|
|
@@ -779,7 +785,7 @@ class Customers(BaseSDK):
|
|
|
779
785
|
|
|
780
786
|
:param customer_id: Provide the ID of the related customer.
|
|
781
787
|
:param idempotency_key: A unique key to ensure idempotent requests. This key should be a UUID v4 string.
|
|
782
|
-
:param
|
|
788
|
+
:param request_body:
|
|
783
789
|
:param retries: Override the default retry configuration for this method
|
|
784
790
|
:param server_url: Override the default server URL for this method
|
|
785
791
|
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
|
@@ -798,8 +804,8 @@ class Customers(BaseSDK):
|
|
|
798
804
|
request = models.UpdateCustomerRequest(
|
|
799
805
|
customer_id=customer_id,
|
|
800
806
|
idempotency_key=idempotency_key,
|
|
801
|
-
|
|
802
|
-
|
|
807
|
+
request_body=utils.get_pydantic_model(
|
|
808
|
+
request_body, Optional[models.UpdateCustomerRequestBody]
|
|
803
809
|
),
|
|
804
810
|
)
|
|
805
811
|
|
|
@@ -817,11 +823,11 @@ class Customers(BaseSDK):
|
|
|
817
823
|
http_headers=http_headers,
|
|
818
824
|
security=self.sdk_configuration.security,
|
|
819
825
|
get_serialized_body=lambda: utils.serialize_request_body(
|
|
820
|
-
request.
|
|
826
|
+
request.request_body,
|
|
821
827
|
False,
|
|
822
828
|
True,
|
|
823
829
|
"json",
|
|
824
|
-
Optional[models.
|
|
830
|
+
Optional[models.UpdateCustomerRequestBody],
|
|
825
831
|
),
|
|
826
832
|
timeout_ms=timeout_ms,
|
|
827
833
|
)
|
mollie/models/__init__.py
CHANGED
|
@@ -1481,7 +1481,12 @@ if TYPE_CHECKING:
|
|
|
1481
1481
|
TestWebhookRequestBodyTypedDict,
|
|
1482
1482
|
TestWebhookRequestTypedDict,
|
|
1483
1483
|
)
|
|
1484
|
-
from .update_customerop import
|
|
1484
|
+
from .update_customerop import (
|
|
1485
|
+
UpdateCustomerRequest,
|
|
1486
|
+
UpdateCustomerRequestBody,
|
|
1487
|
+
UpdateCustomerRequestBodyTypedDict,
|
|
1488
|
+
UpdateCustomerRequestTypedDict,
|
|
1489
|
+
)
|
|
1485
1490
|
from .update_payment_linkop import (
|
|
1486
1491
|
UpdatePaymentLinkRequest,
|
|
1487
1492
|
UpdatePaymentLinkRequestBody,
|
|
@@ -1502,6 +1507,8 @@ if TYPE_CHECKING:
|
|
|
1502
1507
|
)
|
|
1503
1508
|
from .update_sales_invoiceop import (
|
|
1504
1509
|
UpdateSalesInvoiceRequest,
|
|
1510
|
+
UpdateSalesInvoiceRequestBody,
|
|
1511
|
+
UpdateSalesInvoiceRequestBodyTypedDict,
|
|
1505
1512
|
UpdateSalesInvoiceRequestTypedDict,
|
|
1506
1513
|
)
|
|
1507
1514
|
from .update_subscriptionop import (
|
|
@@ -1510,10 +1517,6 @@ if TYPE_CHECKING:
|
|
|
1510
1517
|
UpdateSubscriptionRequestBodyTypedDict,
|
|
1511
1518
|
UpdateSubscriptionRequestTypedDict,
|
|
1512
1519
|
)
|
|
1513
|
-
from .update_values_sales_invoice import (
|
|
1514
|
-
UpdateValuesSalesInvoice,
|
|
1515
|
-
UpdateValuesSalesInvoiceTypedDict,
|
|
1516
|
-
)
|
|
1517
1520
|
from .update_webhookop import (
|
|
1518
1521
|
UpdateWebhookEventTypes,
|
|
1519
1522
|
UpdateWebhookEventTypesTypedDict,
|
|
@@ -2717,6 +2720,8 @@ __all__ = [
|
|
|
2717
2720
|
"UnauthorizedDirectDebit",
|
|
2718
2721
|
"UnauthorizedDirectDebitTypedDict",
|
|
2719
2722
|
"UpdateCustomerRequest",
|
|
2723
|
+
"UpdateCustomerRequestBody",
|
|
2724
|
+
"UpdateCustomerRequestBodyTypedDict",
|
|
2720
2725
|
"UpdateCustomerRequestTypedDict",
|
|
2721
2726
|
"UpdatePaymentLinkRequest",
|
|
2722
2727
|
"UpdatePaymentLinkRequestBody",
|
|
@@ -2731,13 +2736,13 @@ __all__ = [
|
|
|
2731
2736
|
"UpdateProfileRequestBodyTypedDict",
|
|
2732
2737
|
"UpdateProfileRequestTypedDict",
|
|
2733
2738
|
"UpdateSalesInvoiceRequest",
|
|
2739
|
+
"UpdateSalesInvoiceRequestBody",
|
|
2740
|
+
"UpdateSalesInvoiceRequestBodyTypedDict",
|
|
2734
2741
|
"UpdateSalesInvoiceRequestTypedDict",
|
|
2735
2742
|
"UpdateSubscriptionRequest",
|
|
2736
2743
|
"UpdateSubscriptionRequestBody",
|
|
2737
2744
|
"UpdateSubscriptionRequestBodyTypedDict",
|
|
2738
2745
|
"UpdateSubscriptionRequestTypedDict",
|
|
2739
|
-
"UpdateValuesSalesInvoice",
|
|
2740
|
-
"UpdateValuesSalesInvoiceTypedDict",
|
|
2741
2746
|
"UpdateWebhookEventTypes",
|
|
2742
2747
|
"UpdateWebhookEventTypesTypedDict",
|
|
2743
2748
|
"UpdateWebhookRequest",
|
|
@@ -3937,6 +3942,8 @@ _dynamic_imports: dict[str, str] = {
|
|
|
3937
3942
|
"TestWebhookRequestBodyTypedDict": ".test_webhookop",
|
|
3938
3943
|
"TestWebhookRequestTypedDict": ".test_webhookop",
|
|
3939
3944
|
"UpdateCustomerRequest": ".update_customerop",
|
|
3945
|
+
"UpdateCustomerRequestBody": ".update_customerop",
|
|
3946
|
+
"UpdateCustomerRequestBodyTypedDict": ".update_customerop",
|
|
3940
3947
|
"UpdateCustomerRequestTypedDict": ".update_customerop",
|
|
3941
3948
|
"UpdatePaymentLinkRequest": ".update_payment_linkop",
|
|
3942
3949
|
"UpdatePaymentLinkRequestBody": ".update_payment_linkop",
|
|
@@ -3951,13 +3958,13 @@ _dynamic_imports: dict[str, str] = {
|
|
|
3951
3958
|
"UpdateProfileRequestBodyTypedDict": ".update_profileop",
|
|
3952
3959
|
"UpdateProfileRequestTypedDict": ".update_profileop",
|
|
3953
3960
|
"UpdateSalesInvoiceRequest": ".update_sales_invoiceop",
|
|
3961
|
+
"UpdateSalesInvoiceRequestBody": ".update_sales_invoiceop",
|
|
3962
|
+
"UpdateSalesInvoiceRequestBodyTypedDict": ".update_sales_invoiceop",
|
|
3954
3963
|
"UpdateSalesInvoiceRequestTypedDict": ".update_sales_invoiceop",
|
|
3955
3964
|
"UpdateSubscriptionRequest": ".update_subscriptionop",
|
|
3956
3965
|
"UpdateSubscriptionRequestBody": ".update_subscriptionop",
|
|
3957
3966
|
"UpdateSubscriptionRequestBodyTypedDict": ".update_subscriptionop",
|
|
3958
3967
|
"UpdateSubscriptionRequestTypedDict": ".update_subscriptionop",
|
|
3959
|
-
"UpdateValuesSalesInvoice": ".update_values_sales_invoice",
|
|
3960
|
-
"UpdateValuesSalesInvoiceTypedDict": ".update_values_sales_invoice",
|
|
3961
3968
|
"UpdateWebhookEventTypes": ".update_webhookop",
|
|
3962
3969
|
"UpdateWebhookEventTypesTypedDict": ".update_webhookop",
|
|
3963
3970
|
"UpdateWebhookRequest": ".update_webhookop",
|
|
@@ -1,25 +1,105 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from .
|
|
5
|
-
from
|
|
4
|
+
from .locale_response import LocaleResponse
|
|
5
|
+
from .metadata import Metadata, MetadataTypedDict
|
|
6
|
+
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
6
7
|
from mollie.utils import (
|
|
7
8
|
FieldMetadata,
|
|
8
9
|
HeaderMetadata,
|
|
9
10
|
PathParamMetadata,
|
|
10
11
|
RequestMetadata,
|
|
12
|
+
validate_open_enum,
|
|
11
13
|
)
|
|
12
14
|
import pydantic
|
|
15
|
+
from pydantic import model_serializer
|
|
16
|
+
from pydantic.functional_validators import PlainValidator
|
|
13
17
|
from typing import Optional
|
|
14
18
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
15
19
|
|
|
16
20
|
|
|
21
|
+
class UpdateCustomerRequestBodyTypedDict(TypedDict):
|
|
22
|
+
name: NotRequired[Nullable[str]]
|
|
23
|
+
r"""The full name of the customer."""
|
|
24
|
+
email: NotRequired[Nullable[str]]
|
|
25
|
+
r"""The email address of the customer."""
|
|
26
|
+
locale: NotRequired[Nullable[LocaleResponse]]
|
|
27
|
+
r"""Allows you to preset the language to be used."""
|
|
28
|
+
metadata: NotRequired[Nullable[MetadataTypedDict]]
|
|
29
|
+
r"""Provide any data you like, for example a string or a JSON object. We will save the data alongside the entity. Whenever
|
|
30
|
+
you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
|
|
31
|
+
"""
|
|
32
|
+
testmode: NotRequired[bool]
|
|
33
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
34
|
+
|
|
35
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
36
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
37
|
+
`testmode` to `true`.
|
|
38
|
+
"""
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class UpdateCustomerRequestBody(BaseModel):
|
|
42
|
+
name: OptionalNullable[str] = UNSET
|
|
43
|
+
r"""The full name of the customer."""
|
|
44
|
+
|
|
45
|
+
email: OptionalNullable[str] = UNSET
|
|
46
|
+
r"""The email address of the customer."""
|
|
47
|
+
|
|
48
|
+
locale: Annotated[
|
|
49
|
+
OptionalNullable[LocaleResponse], PlainValidator(validate_open_enum(False))
|
|
50
|
+
] = UNSET
|
|
51
|
+
r"""Allows you to preset the language to be used."""
|
|
52
|
+
|
|
53
|
+
metadata: OptionalNullable[Metadata] = UNSET
|
|
54
|
+
r"""Provide any data you like, for example a string or a JSON object. We will save the data alongside the entity. Whenever
|
|
55
|
+
you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
|
|
56
|
+
"""
|
|
57
|
+
|
|
58
|
+
testmode: Optional[bool] = None
|
|
59
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
60
|
+
|
|
61
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
62
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
63
|
+
`testmode` to `true`.
|
|
64
|
+
"""
|
|
65
|
+
|
|
66
|
+
@model_serializer(mode="wrap")
|
|
67
|
+
def serialize_model(self, handler):
|
|
68
|
+
optional_fields = ["name", "email", "locale", "metadata", "testmode"]
|
|
69
|
+
nullable_fields = ["name", "email", "locale", "metadata"]
|
|
70
|
+
null_default_fields = []
|
|
71
|
+
|
|
72
|
+
serialized = handler(self)
|
|
73
|
+
|
|
74
|
+
m = {}
|
|
75
|
+
|
|
76
|
+
for n, f in type(self).model_fields.items():
|
|
77
|
+
k = f.alias or n
|
|
78
|
+
val = serialized.get(k)
|
|
79
|
+
serialized.pop(k, None)
|
|
80
|
+
|
|
81
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
82
|
+
is_set = (
|
|
83
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
84
|
+
or k in null_default_fields
|
|
85
|
+
) # pylint: disable=no-member
|
|
86
|
+
|
|
87
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
88
|
+
m[k] = val
|
|
89
|
+
elif val != UNSET_SENTINEL and (
|
|
90
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
91
|
+
):
|
|
92
|
+
m[k] = val
|
|
93
|
+
|
|
94
|
+
return m
|
|
95
|
+
|
|
96
|
+
|
|
17
97
|
class UpdateCustomerRequestTypedDict(TypedDict):
|
|
18
98
|
customer_id: str
|
|
19
99
|
r"""Provide the ID of the related customer."""
|
|
20
100
|
idempotency_key: NotRequired[str]
|
|
21
101
|
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
22
|
-
|
|
102
|
+
request_body: NotRequired[UpdateCustomerRequestBodyTypedDict]
|
|
23
103
|
|
|
24
104
|
|
|
25
105
|
class UpdateCustomerRequest(BaseModel):
|
|
@@ -37,7 +117,7 @@ class UpdateCustomerRequest(BaseModel):
|
|
|
37
117
|
] = None
|
|
38
118
|
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
39
119
|
|
|
40
|
-
|
|
41
|
-
Optional[
|
|
120
|
+
request_body: Annotated[
|
|
121
|
+
Optional[UpdateCustomerRequestBody],
|
|
42
122
|
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
43
123
|
] = None
|
|
@@ -45,11 +45,12 @@ class UpdatePaymentLinkRequestBodyTypedDict(TypedDict):
|
|
|
45
45
|
"""
|
|
46
46
|
billing_address: NotRequired[PaymentAddressTypedDict]
|
|
47
47
|
shipping_address: NotRequired[PaymentAddressTypedDict]
|
|
48
|
-
testmode: NotRequired[
|
|
49
|
-
r"""
|
|
50
|
-
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
48
|
+
testmode: NotRequired[bool]
|
|
49
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
51
50
|
|
|
52
|
-
|
|
51
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
52
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
53
|
+
`testmode` to `true`.
|
|
53
54
|
"""
|
|
54
55
|
|
|
55
56
|
|
|
@@ -96,11 +97,12 @@ class UpdatePaymentLinkRequestBody(BaseModel):
|
|
|
96
97
|
Optional[PaymentAddress], pydantic.Field(alias="shippingAddress")
|
|
97
98
|
] = None
|
|
98
99
|
|
|
99
|
-
testmode:
|
|
100
|
-
r"""
|
|
101
|
-
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
100
|
+
testmode: Optional[bool] = None
|
|
101
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
102
102
|
|
|
103
|
-
|
|
103
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
104
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
105
|
+
`testmode` to `true`.
|
|
104
106
|
"""
|
|
105
107
|
|
|
106
108
|
@model_serializer(mode="wrap")
|
|
@@ -115,7 +117,7 @@ class UpdatePaymentLinkRequestBody(BaseModel):
|
|
|
115
117
|
"shippingAddress",
|
|
116
118
|
"testmode",
|
|
117
119
|
]
|
|
118
|
-
nullable_fields = ["allowedMethods", "lines"
|
|
120
|
+
nullable_fields = ["allowedMethods", "lines"]
|
|
119
121
|
null_default_fields = []
|
|
120
122
|
|
|
121
123
|
serialized = handler(self)
|
|
@@ -84,8 +84,8 @@ class UpdatePaymentRequestBodyTypedDict(TypedDict):
|
|
|
84
84
|
|
|
85
85
|
The field expects a country code in ISO 3166-1 alpha-2 format, for example `NL`.
|
|
86
86
|
"""
|
|
87
|
-
testmode: NotRequired[
|
|
88
|
-
r"""Whether
|
|
87
|
+
testmode: NotRequired[bool]
|
|
88
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
89
89
|
|
|
90
90
|
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
91
91
|
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
@@ -203,8 +203,8 @@ class UpdatePaymentRequestBody(BaseModel):
|
|
|
203
203
|
The field expects a country code in ISO 3166-1 alpha-2 format, for example `NL`.
|
|
204
204
|
"""
|
|
205
205
|
|
|
206
|
-
testmode:
|
|
207
|
-
r"""Whether
|
|
206
|
+
testmode: Optional[bool] = None
|
|
207
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
208
208
|
|
|
209
209
|
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
210
210
|
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
@@ -273,7 +273,6 @@ class UpdatePaymentRequestBody(BaseModel):
|
|
|
273
273
|
"method",
|
|
274
274
|
"locale",
|
|
275
275
|
"restrictPaymentMethodsToCountry",
|
|
276
|
-
"testmode",
|
|
277
276
|
"issuer",
|
|
278
277
|
]
|
|
279
278
|
null_default_fields = []
|
|
@@ -1,11 +1,23 @@
|
|
|
1
1
|
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
|
-
from .
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
from .sales_invoice_discount import SalesInvoiceDiscount, SalesInvoiceDiscountTypedDict
|
|
5
|
+
from .sales_invoice_email_details import (
|
|
6
|
+
SalesInvoiceEmailDetails,
|
|
7
|
+
SalesInvoiceEmailDetailsTypedDict,
|
|
7
8
|
)
|
|
8
|
-
from
|
|
9
|
+
from .sales_invoice_line_item import SalesInvoiceLineItem, SalesInvoiceLineItemTypedDict
|
|
10
|
+
from .sales_invoice_payment_details import (
|
|
11
|
+
SalesInvoicePaymentDetails,
|
|
12
|
+
SalesInvoicePaymentDetailsTypedDict,
|
|
13
|
+
)
|
|
14
|
+
from .sales_invoice_payment_term import SalesInvoicePaymentTerm
|
|
15
|
+
from .sales_invoice_recipient import (
|
|
16
|
+
SalesInvoiceRecipient,
|
|
17
|
+
SalesInvoiceRecipientTypedDict,
|
|
18
|
+
)
|
|
19
|
+
from .sales_invoice_status import SalesInvoiceStatus
|
|
20
|
+
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
9
21
|
from mollie.utils import (
|
|
10
22
|
FieldMetadata,
|
|
11
23
|
HeaderMetadata,
|
|
@@ -13,16 +25,170 @@ from mollie.utils import (
|
|
|
13
25
|
RequestMetadata,
|
|
14
26
|
)
|
|
15
27
|
import pydantic
|
|
16
|
-
from
|
|
28
|
+
from pydantic import model_serializer
|
|
29
|
+
from typing import List, Optional
|
|
17
30
|
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
18
31
|
|
|
19
32
|
|
|
33
|
+
class UpdateSalesInvoiceRequestBodyTypedDict(TypedDict):
|
|
34
|
+
testmode: NotRequired[bool]
|
|
35
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
36
|
+
|
|
37
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
38
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
39
|
+
`testmode` to `true`.
|
|
40
|
+
"""
|
|
41
|
+
status: NotRequired[SalesInvoiceStatus]
|
|
42
|
+
r"""The status for the invoice to end up in.
|
|
43
|
+
|
|
44
|
+
A `draft` invoice is not paid or not sent and can be updated after creation. Setting it to `issued` sends it to
|
|
45
|
+
the recipient so they may then pay through our payment system. To skip our payment process, set this to `paid` to
|
|
46
|
+
mark it as paid. It can then subsequently be sent as well, same as with `issued`.
|
|
47
|
+
|
|
48
|
+
A status value that cannot be set but can be returned is `canceled`, for invoices which were
|
|
49
|
+
issued, but then canceled. Currently this can only be done for invoices created in the dashboard.
|
|
50
|
+
|
|
51
|
+
Dependent parameters:
|
|
52
|
+
- `paymentDetails` is required if invoice should be set directly to `paid`
|
|
53
|
+
- `customerId` and `mandateId` are required if a recurring payment should be used to set the invoice to `paid`
|
|
54
|
+
- `emailDetails` optional for `issued` and `paid` to send the invoice by email
|
|
55
|
+
"""
|
|
56
|
+
memo: NotRequired[Nullable[str]]
|
|
57
|
+
r"""A free-form memo you can set on the invoice, and will be shown on the invoice PDF."""
|
|
58
|
+
payment_term: NotRequired[Nullable[SalesInvoicePaymentTerm]]
|
|
59
|
+
r"""The payment term to be set on the invoice."""
|
|
60
|
+
payment_details: NotRequired[SalesInvoicePaymentDetailsTypedDict]
|
|
61
|
+
email_details: NotRequired[Nullable[SalesInvoiceEmailDetailsTypedDict]]
|
|
62
|
+
recipient_identifier: NotRequired[str]
|
|
63
|
+
r"""An identifier tied to the recipient data. This should be a unique value based on data your system contains,
|
|
64
|
+
so that both you and us know who we're referring to. It is a value you provide to us so that recipient management
|
|
65
|
+
is not required to send a first invoice to a recipient.
|
|
66
|
+
"""
|
|
67
|
+
recipient: NotRequired[Nullable[SalesInvoiceRecipientTypedDict]]
|
|
68
|
+
lines: NotRequired[Nullable[List[SalesInvoiceLineItemTypedDict]]]
|
|
69
|
+
r"""Provide the line items for the invoice. Each line contains details such as a description of the item
|
|
70
|
+
ordered and its price.
|
|
71
|
+
|
|
72
|
+
All lines must have the same currency as the invoice.
|
|
73
|
+
"""
|
|
74
|
+
discount: NotRequired[Nullable[SalesInvoiceDiscountTypedDict]]
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
class UpdateSalesInvoiceRequestBody(BaseModel):
|
|
78
|
+
testmode: Optional[bool] = None
|
|
79
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
80
|
+
|
|
81
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
82
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
83
|
+
`testmode` to `true`.
|
|
84
|
+
"""
|
|
85
|
+
|
|
86
|
+
status: Optional[SalesInvoiceStatus] = None
|
|
87
|
+
r"""The status for the invoice to end up in.
|
|
88
|
+
|
|
89
|
+
A `draft` invoice is not paid or not sent and can be updated after creation. Setting it to `issued` sends it to
|
|
90
|
+
the recipient so they may then pay through our payment system. To skip our payment process, set this to `paid` to
|
|
91
|
+
mark it as paid. It can then subsequently be sent as well, same as with `issued`.
|
|
92
|
+
|
|
93
|
+
A status value that cannot be set but can be returned is `canceled`, for invoices which were
|
|
94
|
+
issued, but then canceled. Currently this can only be done for invoices created in the dashboard.
|
|
95
|
+
|
|
96
|
+
Dependent parameters:
|
|
97
|
+
- `paymentDetails` is required if invoice should be set directly to `paid`
|
|
98
|
+
- `customerId` and `mandateId` are required if a recurring payment should be used to set the invoice to `paid`
|
|
99
|
+
- `emailDetails` optional for `issued` and `paid` to send the invoice by email
|
|
100
|
+
"""
|
|
101
|
+
|
|
102
|
+
memo: OptionalNullable[str] = UNSET
|
|
103
|
+
r"""A free-form memo you can set on the invoice, and will be shown on the invoice PDF."""
|
|
104
|
+
|
|
105
|
+
payment_term: Annotated[
|
|
106
|
+
OptionalNullable[SalesInvoicePaymentTerm], pydantic.Field(alias="paymentTerm")
|
|
107
|
+
] = UNSET
|
|
108
|
+
r"""The payment term to be set on the invoice."""
|
|
109
|
+
|
|
110
|
+
payment_details: Annotated[
|
|
111
|
+
Optional[SalesInvoicePaymentDetails], pydantic.Field(alias="paymentDetails")
|
|
112
|
+
] = None
|
|
113
|
+
|
|
114
|
+
email_details: Annotated[
|
|
115
|
+
OptionalNullable[SalesInvoiceEmailDetails], pydantic.Field(alias="emailDetails")
|
|
116
|
+
] = UNSET
|
|
117
|
+
|
|
118
|
+
recipient_identifier: Annotated[
|
|
119
|
+
Optional[str], pydantic.Field(alias="recipientIdentifier")
|
|
120
|
+
] = None
|
|
121
|
+
r"""An identifier tied to the recipient data. This should be a unique value based on data your system contains,
|
|
122
|
+
so that both you and us know who we're referring to. It is a value you provide to us so that recipient management
|
|
123
|
+
is not required to send a first invoice to a recipient.
|
|
124
|
+
"""
|
|
125
|
+
|
|
126
|
+
recipient: OptionalNullable[SalesInvoiceRecipient] = UNSET
|
|
127
|
+
|
|
128
|
+
lines: OptionalNullable[List[SalesInvoiceLineItem]] = UNSET
|
|
129
|
+
r"""Provide the line items for the invoice. Each line contains details such as a description of the item
|
|
130
|
+
ordered and its price.
|
|
131
|
+
|
|
132
|
+
All lines must have the same currency as the invoice.
|
|
133
|
+
"""
|
|
134
|
+
|
|
135
|
+
discount: OptionalNullable[SalesInvoiceDiscount] = UNSET
|
|
136
|
+
|
|
137
|
+
@model_serializer(mode="wrap")
|
|
138
|
+
def serialize_model(self, handler):
|
|
139
|
+
optional_fields = [
|
|
140
|
+
"testmode",
|
|
141
|
+
"status",
|
|
142
|
+
"memo",
|
|
143
|
+
"paymentTerm",
|
|
144
|
+
"paymentDetails",
|
|
145
|
+
"emailDetails",
|
|
146
|
+
"recipientIdentifier",
|
|
147
|
+
"recipient",
|
|
148
|
+
"lines",
|
|
149
|
+
"discount",
|
|
150
|
+
]
|
|
151
|
+
nullable_fields = [
|
|
152
|
+
"memo",
|
|
153
|
+
"paymentTerm",
|
|
154
|
+
"emailDetails",
|
|
155
|
+
"recipient",
|
|
156
|
+
"lines",
|
|
157
|
+
"discount",
|
|
158
|
+
]
|
|
159
|
+
null_default_fields = []
|
|
160
|
+
|
|
161
|
+
serialized = handler(self)
|
|
162
|
+
|
|
163
|
+
m = {}
|
|
164
|
+
|
|
165
|
+
for n, f in type(self).model_fields.items():
|
|
166
|
+
k = f.alias or n
|
|
167
|
+
val = serialized.get(k)
|
|
168
|
+
serialized.pop(k, None)
|
|
169
|
+
|
|
170
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
171
|
+
is_set = (
|
|
172
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
173
|
+
or k in null_default_fields
|
|
174
|
+
) # pylint: disable=no-member
|
|
175
|
+
|
|
176
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
177
|
+
m[k] = val
|
|
178
|
+
elif val != UNSET_SENTINEL and (
|
|
179
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
180
|
+
):
|
|
181
|
+
m[k] = val
|
|
182
|
+
|
|
183
|
+
return m
|
|
184
|
+
|
|
185
|
+
|
|
20
186
|
class UpdateSalesInvoiceRequestTypedDict(TypedDict):
|
|
21
187
|
sales_invoice_id: str
|
|
22
188
|
r"""Provide the ID of the related sales invoice."""
|
|
23
189
|
idempotency_key: NotRequired[str]
|
|
24
190
|
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
25
|
-
|
|
191
|
+
request_body: NotRequired[UpdateSalesInvoiceRequestBodyTypedDict]
|
|
26
192
|
|
|
27
193
|
|
|
28
194
|
class UpdateSalesInvoiceRequest(BaseModel):
|
|
@@ -40,7 +206,7 @@ class UpdateSalesInvoiceRequest(BaseModel):
|
|
|
40
206
|
] = None
|
|
41
207
|
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
42
208
|
|
|
43
|
-
|
|
44
|
-
Optional[
|
|
209
|
+
request_body: Annotated[
|
|
210
|
+
Optional[UpdateSalesInvoiceRequestBody],
|
|
45
211
|
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
46
212
|
] = None
|
|
@@ -51,11 +51,12 @@ class UpdateSubscriptionRequestBodyTypedDict(TypedDict):
|
|
|
51
51
|
failures as well. Be sure to verify the payment's subscription ID and its status.
|
|
52
52
|
"""
|
|
53
53
|
mandate_id: NotRequired[str]
|
|
54
|
-
testmode: NotRequired[
|
|
55
|
-
r"""
|
|
56
|
-
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
54
|
+
testmode: NotRequired[bool]
|
|
55
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
57
56
|
|
|
58
|
-
|
|
57
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
58
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
59
|
+
`testmode` to `true`.
|
|
59
60
|
"""
|
|
60
61
|
|
|
61
62
|
|
|
@@ -102,11 +103,12 @@ class UpdateSubscriptionRequestBody(BaseModel):
|
|
|
102
103
|
|
|
103
104
|
mandate_id: Annotated[Optional[str], pydantic.Field(alias="mandateId")] = None
|
|
104
105
|
|
|
105
|
-
testmode:
|
|
106
|
-
r"""
|
|
107
|
-
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
106
|
+
testmode: Optional[bool] = None
|
|
107
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
108
108
|
|
|
109
|
-
|
|
109
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
110
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
111
|
+
`testmode` to `true`.
|
|
110
112
|
"""
|
|
111
113
|
|
|
112
114
|
@model_serializer(mode="wrap")
|
|
@@ -122,7 +124,7 @@ class UpdateSubscriptionRequestBody(BaseModel):
|
|
|
122
124
|
"mandateId",
|
|
123
125
|
"testmode",
|
|
124
126
|
]
|
|
125
|
-
nullable_fields = ["metadata"
|
|
127
|
+
nullable_fields = ["metadata"]
|
|
126
128
|
null_default_fields = []
|
|
127
129
|
|
|
128
130
|
serialized = handler(self)
|
|
@@ -32,9 +32,11 @@ class UpdateWebhookRequestBodyTypedDict(TypedDict):
|
|
|
32
32
|
r"""The URL Mollie will send the events to. This URL must be publicly accessible."""
|
|
33
33
|
event_types: NotRequired[UpdateWebhookEventTypesTypedDict]
|
|
34
34
|
testmode: NotRequired[bool]
|
|
35
|
-
r"""
|
|
35
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
38
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
39
|
+
`testmode` to `true`.
|
|
38
40
|
"""
|
|
39
41
|
|
|
40
42
|
|
|
@@ -50,9 +52,11 @@ class UpdateWebhookRequestBody(BaseModel):
|
|
|
50
52
|
] = None
|
|
51
53
|
|
|
52
54
|
testmode: Optional[bool] = None
|
|
53
|
-
r"""
|
|
55
|
+
r"""Whether the entity was created in test mode or live mode. This field does not update the mode of the entity.
|
|
54
56
|
|
|
55
|
-
|
|
57
|
+
Most API credentials are specifically created for either live mode or test mode, in which case this parameter can be
|
|
58
|
+
omitted. For organization-level credentials such as OAuth access tokens, you can enable test mode by setting
|
|
59
|
+
`testmode` to `true`.
|
|
56
60
|
"""
|
|
57
61
|
|
|
58
62
|
|
mollie/sales_invoices.py
CHANGED
|
@@ -659,10 +659,10 @@ class SalesInvoices(BaseSDK):
|
|
|
659
659
|
*,
|
|
660
660
|
sales_invoice_id: str,
|
|
661
661
|
idempotency_key: Optional[str] = None,
|
|
662
|
-
|
|
662
|
+
request_body: Optional[
|
|
663
663
|
Union[
|
|
664
|
-
models.
|
|
665
|
-
models.
|
|
664
|
+
models.UpdateSalesInvoiceRequestBody,
|
|
665
|
+
models.UpdateSalesInvoiceRequestBodyTypedDict,
|
|
666
666
|
]
|
|
667
667
|
] = None,
|
|
668
668
|
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
@@ -682,7 +682,7 @@ class SalesInvoices(BaseSDK):
|
|
|
682
682
|
|
|
683
683
|
:param sales_invoice_id: Provide the ID of the related sales invoice.
|
|
684
684
|
:param idempotency_key: A unique key to ensure idempotent requests. This key should be a UUID v4 string.
|
|
685
|
-
:param
|
|
685
|
+
:param request_body:
|
|
686
686
|
:param retries: Override the default retry configuration for this method
|
|
687
687
|
:param server_url: Override the default server URL for this method
|
|
688
688
|
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
|
@@ -701,8 +701,8 @@ class SalesInvoices(BaseSDK):
|
|
|
701
701
|
request = models.UpdateSalesInvoiceRequest(
|
|
702
702
|
sales_invoice_id=sales_invoice_id,
|
|
703
703
|
idempotency_key=idempotency_key,
|
|
704
|
-
|
|
705
|
-
|
|
704
|
+
request_body=utils.get_pydantic_model(
|
|
705
|
+
request_body, Optional[models.UpdateSalesInvoiceRequestBody]
|
|
706
706
|
),
|
|
707
707
|
)
|
|
708
708
|
|
|
@@ -720,11 +720,11 @@ class SalesInvoices(BaseSDK):
|
|
|
720
720
|
http_headers=http_headers,
|
|
721
721
|
security=self.sdk_configuration.security,
|
|
722
722
|
get_serialized_body=lambda: utils.serialize_request_body(
|
|
723
|
-
request.
|
|
723
|
+
request.request_body,
|
|
724
724
|
False,
|
|
725
725
|
True,
|
|
726
726
|
"json",
|
|
727
|
-
Optional[models.
|
|
727
|
+
Optional[models.UpdateSalesInvoiceRequestBody],
|
|
728
728
|
),
|
|
729
729
|
timeout_ms=timeout_ms,
|
|
730
730
|
)
|
|
@@ -776,10 +776,10 @@ class SalesInvoices(BaseSDK):
|
|
|
776
776
|
*,
|
|
777
777
|
sales_invoice_id: str,
|
|
778
778
|
idempotency_key: Optional[str] = None,
|
|
779
|
-
|
|
779
|
+
request_body: Optional[
|
|
780
780
|
Union[
|
|
781
|
-
models.
|
|
782
|
-
models.
|
|
781
|
+
models.UpdateSalesInvoiceRequestBody,
|
|
782
|
+
models.UpdateSalesInvoiceRequestBodyTypedDict,
|
|
783
783
|
]
|
|
784
784
|
] = None,
|
|
785
785
|
retries: OptionalNullable[utils.RetryConfig] = UNSET,
|
|
@@ -799,7 +799,7 @@ class SalesInvoices(BaseSDK):
|
|
|
799
799
|
|
|
800
800
|
:param sales_invoice_id: Provide the ID of the related sales invoice.
|
|
801
801
|
:param idempotency_key: A unique key to ensure idempotent requests. This key should be a UUID v4 string.
|
|
802
|
-
:param
|
|
802
|
+
:param request_body:
|
|
803
803
|
:param retries: Override the default retry configuration for this method
|
|
804
804
|
:param server_url: Override the default server URL for this method
|
|
805
805
|
:param timeout_ms: Override the default request timeout configuration for this method in milliseconds
|
|
@@ -818,8 +818,8 @@ class SalesInvoices(BaseSDK):
|
|
|
818
818
|
request = models.UpdateSalesInvoiceRequest(
|
|
819
819
|
sales_invoice_id=sales_invoice_id,
|
|
820
820
|
idempotency_key=idempotency_key,
|
|
821
|
-
|
|
822
|
-
|
|
821
|
+
request_body=utils.get_pydantic_model(
|
|
822
|
+
request_body, Optional[models.UpdateSalesInvoiceRequestBody]
|
|
823
823
|
),
|
|
824
824
|
)
|
|
825
825
|
|
|
@@ -837,11 +837,11 @@ class SalesInvoices(BaseSDK):
|
|
|
837
837
|
http_headers=http_headers,
|
|
838
838
|
security=self.sdk_configuration.security,
|
|
839
839
|
get_serialized_body=lambda: utils.serialize_request_body(
|
|
840
|
-
request.
|
|
840
|
+
request.request_body,
|
|
841
841
|
False,
|
|
842
842
|
True,
|
|
843
843
|
"json",
|
|
844
|
-
Optional[models.
|
|
844
|
+
Optional[models.UpdateSalesInvoiceRequestBody],
|
|
845
845
|
),
|
|
846
846
|
timeout_ms=timeout_ms,
|
|
847
847
|
)
|
|
@@ -4,7 +4,7 @@ mollie/_hooks/mollie_hooks.py,sha256=c9l0SCJmT_o6mXzl4WRK8fIOaTox2nrPhuGpN4aso2E
|
|
|
4
4
|
mollie/_hooks/registration.py,sha256=J8foUfPGbkJa3va864Q7iXYYK4CpxSaix6nAxw0w7-Y,748
|
|
5
5
|
mollie/_hooks/sdkhooks.py,sha256=XSStdz5qEmh-Mwt53kk1_nVrtAz1_EZVbHymUEOTdDE,2556
|
|
6
6
|
mollie/_hooks/types.py,sha256=JKrqkXMXwcNaCf2_hu0yX8Bi7GsHbVBrQDnfRTSws7w,3041
|
|
7
|
-
mollie/_version.py,sha256=
|
|
7
|
+
mollie/_version.py,sha256=WfpYY3l_W1noVgPI4NnKsMTCSDbFXhg4rGepQnvPUco,468
|
|
8
8
|
mollie/balance_transfers.py,sha256=vDy2v7ezxTv0Atpuv0M9lGXyvQM6KPu_rd2D02CIKIk,29291
|
|
9
9
|
mollie/balances.py,sha256=ngc5ky8TWB-K2lVFuzZQCwcNdWH6m-KPIznW4qIE1qo,49314
|
|
10
10
|
mollie/basesdk.py,sha256=q24JMCy4yFLPP2cLt_-S8_4CTd8-h20OLctAVMIBi0w,12168
|
|
@@ -13,13 +13,13 @@ mollie/captures.py,sha256=C61UqNAPX1xiM49OmtsV7LsYJ8vEYYTpK-Fm1oSD8_A,29805
|
|
|
13
13
|
mollie/chargebacks_sdk.py,sha256=MjxCjXdFKcKbfREBkjW-kpkSfMCohpG59rJLDb9S-Bc,31858
|
|
14
14
|
mollie/client_links.py,sha256=XzVjOMYTlaoGeduI9XHXszfS46WuVRh-a7tjnF_fMkg,13790
|
|
15
15
|
mollie/clients.py,sha256=KEOyGFwCdbssJcWu7IpkrFAnPxeGkoyt4Ms4KFJtSiY,17239
|
|
16
|
-
mollie/customers.py,sha256=
|
|
16
|
+
mollie/customers.py,sha256=abIL8yfiMw2WjlcOqIga3Zc7IaavNLl6Dl9cVkv_qYQ,67998
|
|
17
17
|
mollie/delayed_routing.py,sha256=xECygSW1o42qrEBcJj92O6T5bnZjboRcqvOwTqHYZcQ,18189
|
|
18
18
|
mollie/httpclient.py,sha256=dqTPONDBpRn4ktXfcetQiRXnG93f0pJkFhqsYFhLUac,3945
|
|
19
19
|
mollie/invoices.py,sha256=GAnnYpOFQHMV-ejQA0cqRxdANGZvdOGr2M_WXqtvAzE,17886
|
|
20
20
|
mollie/mandates.py,sha256=PVMXvDUQQPxeHz5sTNqFsNHPVjIjOD7uf4zAJeDGVdU,38701
|
|
21
21
|
mollie/methods.py,sha256=G38DTFLyWe0OuW1qnMjIymDgqfT9dKEgOgF6FQR_o3Y,43126
|
|
22
|
-
mollie/models/__init__.py,sha256=
|
|
22
|
+
mollie/models/__init__.py,sha256=OiYoJbai5tJ3DPBaR4g1B-X03hQ3Eww-_ZfIhqIe5uY,171515
|
|
23
23
|
mollie/models/address.py,sha256=zkgpQcCPnKe6BQ-JqjBhN6YlzTgVyCreQFvAeNMXFuM,1035
|
|
24
24
|
mollie/models/amount.py,sha256=ThsX_CGdD-_vIIW_cFR7ernByR5jmZjoSnxFSMixCaE,923
|
|
25
25
|
mollie/models/amount_nullable.py,sha256=zzCJtAd3hWqXPpwrGvu8QoiGxeKff3i5SEP29orBuWg,813
|
|
@@ -284,14 +284,13 @@ mollie/models/subscription_response.py,sha256=zhqP68NbzfA6IR068oydtBWTvaV6eX5Ceb
|
|
|
284
284
|
mollie/models/terminal_brand.py,sha256=ZDjJ3jI0ucMuj09XdFBiogX8qFA7SDJVcL7ZQfFuSTU,290
|
|
285
285
|
mollie/models/terminal_model.py,sha256=qYsdNuAe4i7tGdqfIC_xjsLzWsQt--oyC3OBopxG9oY,430
|
|
286
286
|
mollie/models/test_webhookop.py,sha256=cysS1WKFyEoK3yRRKU4Gz-oSRUynqAsUWHbkPgTg9MU,2056
|
|
287
|
-
mollie/models/update_customerop.py,sha256=
|
|
288
|
-
mollie/models/update_payment_linkop.py,sha256=
|
|
289
|
-
mollie/models/update_paymentop.py,sha256=
|
|
287
|
+
mollie/models/update_customerop.py,sha256=NuF7yVsKhDJ8wy69L-sQrqM-gUg3VJZ5TLJIVXDgHI8,4799
|
|
288
|
+
mollie/models/update_payment_linkop.py,sha256=W9IzoylqGFLcZIiHkNQ_Etr0pc1AYfPe1-PtbkqWd30,6918
|
|
289
|
+
mollie/models/update_paymentop.py,sha256=S7ltPqKhuNTiSY09vW7h8ASVZnpb7qQEAwirtCU9agU,15691
|
|
290
290
|
mollie/models/update_profileop.py,sha256=o1h6QNbyZ7JAKNjuaLG6x-OuPkG4KXFmZAPkOH7oTR8,5363
|
|
291
|
-
mollie/models/update_sales_invoiceop.py,sha256=
|
|
292
|
-
mollie/models/update_subscriptionop.py,sha256=
|
|
293
|
-
mollie/models/
|
|
294
|
-
mollie/models/update_webhookop.py,sha256=hkD0yw0Srea0FJiXErbZmVoA0f90PJt1_zJbmDABX0I,2817
|
|
291
|
+
mollie/models/update_sales_invoiceop.py,sha256=9FBWG4SSFMQYEWIkDO01cyFSpDkXkZYdJXhA1tS6anc,8831
|
|
292
|
+
mollie/models/update_subscriptionop.py,sha256=mQK-FJUnEeOG9m97bfJ1WzB_qOU500K9EYHxREIVynI,7696
|
|
293
|
+
mollie/models/update_webhookop.py,sha256=BzrKncGzgda-epYz4gNXO_vLJIoyIxqxjE9O1Qhfy6s,3253
|
|
295
294
|
mollie/models/url.py,sha256=y60CyrKscRh_3oUv1uVH_JQxbi2Z12hTGjcKxOoReeo,713
|
|
296
295
|
mollie/models/url_nullable.py,sha256=V6_B_fQRZ8R4xwE92BKQmiHzpo-QpEyoy-L5hodUJqo,830
|
|
297
296
|
mollie/models/webhook_event_types.py,sha256=lD9firF7AHA23nSi5lo_FtWVwpjWnQG1r39eNhtSDaE,653
|
|
@@ -304,7 +303,7 @@ mollie/permissions.py,sha256=TFKnXM-d7w5pNN0K89nirhY5BlYLt1Q-nF2dPpaK8FY,16637
|
|
|
304
303
|
mollie/profiles.py,sha256=ujZj8eSuxJt4lyLaNlz18YBvp9Lw7z9gheU0p4E0XJk,49837
|
|
305
304
|
mollie/py.typed,sha256=zrp19r0G21lr2yRiMC0f8MFkQFGj9wMpSbboePMg8KM,59
|
|
306
305
|
mollie/refunds_sdk.py,sha256=mxIKg-c-1ihGKzQrW1eqcg2XhmNKR5Qki3PD-QJy5Og,50285
|
|
307
|
-
mollie/sales_invoices.py,sha256=
|
|
306
|
+
mollie/sales_invoices.py,sha256=DQ5CzrekAwet8wE8_OHDnxZawrUeOXIBlGLehheKwFk,47856
|
|
308
307
|
mollie/sdk.py,sha256=_2ymDgFyuNx9AF8VahUtkjT5P0jVJ_eVaBnayeen5Co,10760
|
|
309
308
|
mollie/sdkconfiguration.py,sha256=-acueIPHy8HkPxAtTs8cSNPhglmYezpVkmBqueLI2Iw,1629
|
|
310
309
|
mollie/settlements.py,sha256=87uHPyD2CmJBZbDelMYntqQ_7DFQX4rsbLH_7gsYfMQ,78247
|
|
@@ -332,7 +331,7 @@ mollie/utils/values.py,sha256=CcaCXEa3xHhkUDROyXZocN8f0bdITftv9Y0P9lTf0YM,3517
|
|
|
332
331
|
mollie/wallets.py,sha256=Sz8KRUq8TwWxSyYktdeaIGQCAwqBz8Vhnv0GWDfBTRs,12240
|
|
333
332
|
mollie/webhook_events.py,sha256=Hgo-KY0TzRlu8jFAoYCpCpAzWcmSYURRQfmsxgiM8ac,9001
|
|
334
333
|
mollie/webhooks.py,sha256=r2jKIBeUofuVHGTEvaOaLYLZC6kzsQRdNBPdXAPFSbU,54185
|
|
335
|
-
mollie_api_py-1.1.
|
|
336
|
-
mollie_api_py-1.1.
|
|
337
|
-
mollie_api_py-1.1.
|
|
338
|
-
mollie_api_py-1.1.
|
|
334
|
+
mollie_api_py-1.1.2.dist-info/METADATA,sha256=kO3qxkn66OZwqqKme3tRf50g-walpxmqwCF_CQ-wGKo,40277
|
|
335
|
+
mollie_api_py-1.1.2.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
|
|
336
|
+
mollie_api_py-1.1.2.dist-info/licenses/LICENSE.md,sha256=SGg2WzlJYIta4I_BlrvHizir1Lq0UNCqIJGj-MQPZ1s,1295
|
|
337
|
+
mollie_api_py-1.1.2.dist-info/RECORD,,
|
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
-
|
|
3
|
-
from __future__ import annotations
|
|
4
|
-
from .sales_invoice_discount import SalesInvoiceDiscount, SalesInvoiceDiscountTypedDict
|
|
5
|
-
from .sales_invoice_email_details import (
|
|
6
|
-
SalesInvoiceEmailDetails,
|
|
7
|
-
SalesInvoiceEmailDetailsTypedDict,
|
|
8
|
-
)
|
|
9
|
-
from .sales_invoice_line_item import SalesInvoiceLineItem, SalesInvoiceLineItemTypedDict
|
|
10
|
-
from .sales_invoice_payment_details import (
|
|
11
|
-
SalesInvoicePaymentDetails,
|
|
12
|
-
SalesInvoicePaymentDetailsTypedDict,
|
|
13
|
-
)
|
|
14
|
-
from .sales_invoice_payment_term import SalesInvoicePaymentTerm
|
|
15
|
-
from .sales_invoice_recipient import (
|
|
16
|
-
SalesInvoiceRecipient,
|
|
17
|
-
SalesInvoiceRecipientTypedDict,
|
|
18
|
-
)
|
|
19
|
-
from .sales_invoice_status import SalesInvoiceStatus
|
|
20
|
-
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
21
|
-
import pydantic
|
|
22
|
-
from pydantic import model_serializer
|
|
23
|
-
from typing import List, Optional
|
|
24
|
-
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
class UpdateValuesSalesInvoiceTypedDict(TypedDict):
|
|
28
|
-
testmode: NotRequired[Nullable[bool]]
|
|
29
|
-
r"""Most API credentials are specifically created for either live mode or test mode. For organization-level credentials
|
|
30
|
-
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
31
|
-
|
|
32
|
-
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
33
|
-
"""
|
|
34
|
-
status: NotRequired[SalesInvoiceStatus]
|
|
35
|
-
r"""The status for the invoice to end up in.
|
|
36
|
-
|
|
37
|
-
A `draft` invoice is not paid or not sent and can be updated after creation. Setting it to `issued` sends it to
|
|
38
|
-
the recipient so they may then pay through our payment system. To skip our payment process, set this to `paid` to
|
|
39
|
-
mark it as paid. It can then subsequently be sent as well, same as with `issued`.
|
|
40
|
-
|
|
41
|
-
A status value that cannot be set but can be returned is `canceled`, for invoices which were
|
|
42
|
-
issued, but then canceled. Currently this can only be done for invoices created in the dashboard.
|
|
43
|
-
|
|
44
|
-
Dependent parameters:
|
|
45
|
-
- `paymentDetails` is required if invoice should be set directly to `paid`
|
|
46
|
-
- `customerId` and `mandateId` are required if a recurring payment should be used to set the invoice to `paid`
|
|
47
|
-
- `emailDetails` optional for `issued` and `paid` to send the invoice by email
|
|
48
|
-
"""
|
|
49
|
-
memo: NotRequired[Nullable[str]]
|
|
50
|
-
r"""A free-form memo you can set on the invoice, and will be shown on the invoice PDF."""
|
|
51
|
-
payment_term: NotRequired[Nullable[SalesInvoicePaymentTerm]]
|
|
52
|
-
r"""The payment term to be set on the invoice."""
|
|
53
|
-
payment_details: NotRequired[SalesInvoicePaymentDetailsTypedDict]
|
|
54
|
-
email_details: NotRequired[Nullable[SalesInvoiceEmailDetailsTypedDict]]
|
|
55
|
-
recipient_identifier: NotRequired[str]
|
|
56
|
-
r"""An identifier tied to the recipient data. This should be a unique value based on data your system contains,
|
|
57
|
-
so that both you and us know who we're referring to. It is a value you provide to us so that recipient management
|
|
58
|
-
is not required to send a first invoice to a recipient.
|
|
59
|
-
"""
|
|
60
|
-
recipient: NotRequired[Nullable[SalesInvoiceRecipientTypedDict]]
|
|
61
|
-
lines: NotRequired[Nullable[List[SalesInvoiceLineItemTypedDict]]]
|
|
62
|
-
r"""Provide the line items for the invoice. Each line contains details such as a description of the item
|
|
63
|
-
ordered and its price.
|
|
64
|
-
|
|
65
|
-
All lines must have the same currency as the invoice.
|
|
66
|
-
"""
|
|
67
|
-
discount: NotRequired[Nullable[SalesInvoiceDiscountTypedDict]]
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
class UpdateValuesSalesInvoice(BaseModel):
|
|
71
|
-
testmode: OptionalNullable[bool] = UNSET
|
|
72
|
-
r"""Most API credentials are specifically created for either live mode or test mode. For organization-level credentials
|
|
73
|
-
such as OAuth access tokens, you can enable test mode by setting `testmode` to `true`.
|
|
74
|
-
|
|
75
|
-
Test entities cannot be retrieved when the endpoint is set to live mode, and vice versa.
|
|
76
|
-
"""
|
|
77
|
-
|
|
78
|
-
status: Optional[SalesInvoiceStatus] = None
|
|
79
|
-
r"""The status for the invoice to end up in.
|
|
80
|
-
|
|
81
|
-
A `draft` invoice is not paid or not sent and can be updated after creation. Setting it to `issued` sends it to
|
|
82
|
-
the recipient so they may then pay through our payment system. To skip our payment process, set this to `paid` to
|
|
83
|
-
mark it as paid. It can then subsequently be sent as well, same as with `issued`.
|
|
84
|
-
|
|
85
|
-
A status value that cannot be set but can be returned is `canceled`, for invoices which were
|
|
86
|
-
issued, but then canceled. Currently this can only be done for invoices created in the dashboard.
|
|
87
|
-
|
|
88
|
-
Dependent parameters:
|
|
89
|
-
- `paymentDetails` is required if invoice should be set directly to `paid`
|
|
90
|
-
- `customerId` and `mandateId` are required if a recurring payment should be used to set the invoice to `paid`
|
|
91
|
-
- `emailDetails` optional for `issued` and `paid` to send the invoice by email
|
|
92
|
-
"""
|
|
93
|
-
|
|
94
|
-
memo: OptionalNullable[str] = UNSET
|
|
95
|
-
r"""A free-form memo you can set on the invoice, and will be shown on the invoice PDF."""
|
|
96
|
-
|
|
97
|
-
payment_term: Annotated[
|
|
98
|
-
OptionalNullable[SalesInvoicePaymentTerm], pydantic.Field(alias="paymentTerm")
|
|
99
|
-
] = UNSET
|
|
100
|
-
r"""The payment term to be set on the invoice."""
|
|
101
|
-
|
|
102
|
-
payment_details: Annotated[
|
|
103
|
-
Optional[SalesInvoicePaymentDetails], pydantic.Field(alias="paymentDetails")
|
|
104
|
-
] = None
|
|
105
|
-
|
|
106
|
-
email_details: Annotated[
|
|
107
|
-
OptionalNullable[SalesInvoiceEmailDetails], pydantic.Field(alias="emailDetails")
|
|
108
|
-
] = UNSET
|
|
109
|
-
|
|
110
|
-
recipient_identifier: Annotated[
|
|
111
|
-
Optional[str], pydantic.Field(alias="recipientIdentifier")
|
|
112
|
-
] = None
|
|
113
|
-
r"""An identifier tied to the recipient data. This should be a unique value based on data your system contains,
|
|
114
|
-
so that both you and us know who we're referring to. It is a value you provide to us so that recipient management
|
|
115
|
-
is not required to send a first invoice to a recipient.
|
|
116
|
-
"""
|
|
117
|
-
|
|
118
|
-
recipient: OptionalNullable[SalesInvoiceRecipient] = UNSET
|
|
119
|
-
|
|
120
|
-
lines: OptionalNullable[List[SalesInvoiceLineItem]] = UNSET
|
|
121
|
-
r"""Provide the line items for the invoice. Each line contains details such as a description of the item
|
|
122
|
-
ordered and its price.
|
|
123
|
-
|
|
124
|
-
All lines must have the same currency as the invoice.
|
|
125
|
-
"""
|
|
126
|
-
|
|
127
|
-
discount: OptionalNullable[SalesInvoiceDiscount] = UNSET
|
|
128
|
-
|
|
129
|
-
@model_serializer(mode="wrap")
|
|
130
|
-
def serialize_model(self, handler):
|
|
131
|
-
optional_fields = [
|
|
132
|
-
"testmode",
|
|
133
|
-
"status",
|
|
134
|
-
"memo",
|
|
135
|
-
"paymentTerm",
|
|
136
|
-
"paymentDetails",
|
|
137
|
-
"emailDetails",
|
|
138
|
-
"recipientIdentifier",
|
|
139
|
-
"recipient",
|
|
140
|
-
"lines",
|
|
141
|
-
"discount",
|
|
142
|
-
]
|
|
143
|
-
nullable_fields = [
|
|
144
|
-
"testmode",
|
|
145
|
-
"memo",
|
|
146
|
-
"paymentTerm",
|
|
147
|
-
"emailDetails",
|
|
148
|
-
"recipient",
|
|
149
|
-
"lines",
|
|
150
|
-
"discount",
|
|
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
|
|
File without changes
|
|
File without changes
|