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.
- mollie/__init__.py +18 -0
- mollie/_hooks/__init__.py +5 -0
- mollie/_hooks/mollie_hooks.py +165 -0
- mollie/_hooks/registration.py +18 -0
- mollie/_hooks/sdkhooks.py +76 -0
- mollie/_hooks/types.py +113 -0
- mollie/_version.py +15 -0
- mollie/balance_transfers.py +651 -0
- mollie/balances.py +1105 -0
- mollie/basesdk.py +360 -0
- mollie/capabilities.py +209 -0
- mollie/captures.py +677 -0
- mollie/chargebacks_sdk.py +675 -0
- mollie/client_links.py +325 -0
- mollie/clients.py +409 -0
- mollie/customers.py +1563 -0
- mollie/delayed_routing.py +421 -0
- mollie/httpclient.py +125 -0
- mollie/invoices.py +429 -0
- mollie/mandates.py +895 -0
- mollie/methods.py +789 -0
- mollie/models/__init__.py +4002 -0
- mollie/models/address.py +29 -0
- mollie/models/amount.py +25 -0
- mollie/models/amount_nullable.py +24 -0
- mollie/models/apierror.py +40 -0
- mollie/models/balance_card_audience.py +10 -0
- mollie/models/balance_card_issuer.py +12 -0
- mollie/models/balance_card_region.py +12 -0
- mollie/models/balance_fee_type.py +43 -0
- mollie/models/balance_prepayment_part_type.py +13 -0
- mollie/models/balance_report_grouping.py +10 -0
- mollie/models/balance_transaction_type.py +47 -0
- mollie/models/balance_transfer_category.py +17 -0
- mollie/models/balance_transfer_category_response.py +18 -0
- mollie/models/balance_transfer_destination_type.py +14 -0
- mollie/models/balance_transfer_party_type.py +10 -0
- mollie/models/balance_transfer_party_type_response.py +11 -0
- mollie/models/balance_transfer_status.py +13 -0
- mollie/models/balance_transfer_status_reason_response.py +19 -0
- mollie/models/billingaddress.py +154 -0
- mollie/models/cancel_paymentop.py +93 -0
- mollie/models/cancel_refundop.py +86 -0
- mollie/models/cancel_subscriptionop.py +100 -0
- mollie/models/capability_requirement_status.py +15 -0
- mollie/models/capability_status.py +12 -0
- mollie/models/capability_status_reason.py +10 -0
- mollie/models/capture_mode.py +15 -0
- mollie/models/capture_mode_response.py +16 -0
- mollie/models/capture_response.py +265 -0
- mollie/models/client_link_request.py +210 -0
- mollie/models/client_link_response.py +56 -0
- mollie/models/clienterror.py +30 -0
- mollie/models/components_sub_totals.py +127 -0
- mollie/models/create_captureop.py +43 -0
- mollie/models/create_client_linkop.py +29 -0
- mollie/models/create_connect_balance_transferop.py +32 -0
- mollie/models/create_customer_paymentop.py +43 -0
- mollie/models/create_customerop.py +29 -0
- mollie/models/create_mandateop.py +43 -0
- mollie/models/create_payment_linkop.py +325 -0
- mollie/models/create_paymentop.py +73 -0
- mollie/models/create_profileop.py +29 -0
- mollie/models/create_refundop.py +43 -0
- mollie/models/create_sales_invoiceop.py +29 -0
- mollie/models/create_subscriptionop.py +43 -0
- mollie/models/create_webhook.py +123 -0
- mollie/models/create_webhookop.py +69 -0
- mollie/models/currencies.py +20 -0
- mollie/models/customer_response.py +169 -0
- mollie/models/delete_customerop.py +91 -0
- mollie/models/delete_payment_linkop.py +91 -0
- mollie/models/delete_profileop.py +29 -0
- mollie/models/delete_sales_invoiceop.py +44 -0
- mollie/models/delete_values_sales_invoice.py +54 -0
- mollie/models/delete_webhookop.py +56 -0
- mollie/models/entity_balance.py +325 -0
- mollie/models/entity_balance_report.py +541 -0
- mollie/models/entity_balance_transaction.py +1068 -0
- mollie/models/entity_balance_transfer.py +62 -0
- mollie/models/entity_balance_transfer_party.py +28 -0
- mollie/models/entity_balance_transfer_party_response.py +32 -0
- mollie/models/entity_balance_transfer_response.py +159 -0
- mollie/models/entity_capability.py +75 -0
- mollie/models/entity_capability_requirement.py +87 -0
- mollie/models/entity_capture.py +63 -0
- mollie/models/entity_chargeback.py +247 -0
- mollie/models/entity_customer.py +86 -0
- mollie/models/entity_event.py +46 -0
- mollie/models/entity_invoice.py +247 -0
- mollie/models/entity_method_get.py +329 -0
- mollie/models/entity_onboarding_status.py +95 -0
- mollie/models/entity_organization.py +178 -0
- mollie/models/entity_payment_route.py +111 -0
- mollie/models/entity_payment_route_response.py +140 -0
- mollie/models/entity_permission.py +61 -0
- mollie/models/entity_refund_response.py +361 -0
- mollie/models/entity_route.py +96 -0
- mollie/models/entity_settlement.py +467 -0
- mollie/models/entity_terminal.py +160 -0
- mollie/models/entity_webhook.py +122 -0
- mollie/models/entity_webhook_event.py +149 -0
- mollie/models/error_response.py +70 -0
- mollie/models/get_balance_reportop.py +126 -0
- mollie/models/get_balanceop.py +71 -0
- mollie/models/get_captureop.py +129 -0
- mollie/models/get_chargebackop.py +129 -0
- mollie/models/get_clientop.py +216 -0
- mollie/models/get_connect_balance_transferop.py +71 -0
- mollie/models/get_current_organizationop.py +22 -0
- mollie/models/get_current_profileop.py +22 -0
- mollie/models/get_customerop.py +286 -0
- mollie/models/get_invoiceop.py +29 -0
- mollie/models/get_mandateop.py +86 -0
- mollie/models/get_methodop.py +199 -0
- mollie/models/get_next_settlementop.py +22 -0
- mollie/models/get_onboarding_statusop.py +22 -0
- mollie/models/get_open_settlementop.py +22 -0
- mollie/models/get_organizationop.py +71 -0
- mollie/models/get_partner_statusop.py +231 -0
- mollie/models/get_payment_link_paymentsop.py +188 -0
- mollie/models/get_payment_linkop.py +77 -0
- mollie/models/get_paymentop.py +128 -0
- mollie/models/get_permissionop.py +73 -0
- mollie/models/get_primary_balanceop.py +22 -0
- mollie/models/get_profileop.py +71 -0
- mollie/models/get_refundop.py +129 -0
- mollie/models/get_sales_invoiceop.py +75 -0
- mollie/models/get_settlementop.py +29 -0
- mollie/models/get_subscriptionop.py +86 -0
- mollie/models/get_terminalop.py +77 -0
- mollie/models/get_webhook_eventop.py +71 -0
- mollie/models/get_webhookop.py +71 -0
- mollie/models/internal/__init__.py +54 -0
- mollie/models/internal/globals.py +59 -0
- mollie/models/line_categories.py +13 -0
- mollie/models/line_categories_response.py +14 -0
- mollie/models/list_all_chargebacksop.py +236 -0
- mollie/models/list_all_methodsop.py +249 -0
- mollie/models/list_all_refundsop.py +230 -0
- mollie/models/list_all_subscriptionsop.py +202 -0
- mollie/models/list_balance_transactionsop.py +174 -0
- mollie/models/list_balancesop.py +171 -0
- mollie/models/list_capabilitiesop.py +62 -0
- mollie/models/list_capture_response.py +264 -0
- mollie/models/list_capturesop.py +185 -0
- mollie/models/list_chargebacksop.py +185 -0
- mollie/models/list_clientsop.py +269 -0
- mollie/models/list_connect_balance_transfersop.py +177 -0
- mollie/models/list_customer_paymentsop.py +231 -0
- mollie/models/list_customer_response.py +164 -0
- mollie/models/list_customersop.py +172 -0
- mollie/models/list_entity_balance.py +322 -0
- mollie/models/list_entity_chargeback.py +244 -0
- mollie/models/list_entity_invoice.py +244 -0
- mollie/models/list_entity_method.py +315 -0
- mollie/models/list_entity_method_all.py +391 -0
- mollie/models/list_entity_permission.py +56 -0
- mollie/models/list_entity_refund.py +352 -0
- mollie/models/list_entity_settlement.py +457 -0
- mollie/models/list_entity_terminal.py +157 -0
- mollie/models/list_entity_webhook.py +117 -0
- mollie/models/list_invoicesop.py +175 -0
- mollie/models/list_links.py +68 -0
- mollie/models/list_mandate_response.py +261 -0
- mollie/models/list_mandatesop.py +186 -0
- mollie/models/list_methodsop.py +332 -0
- mollie/models/list_payment_linksop.py +159 -0
- mollie/models/list_payment_response.py +1953 -0
- mollie/models/list_paymentsop.py +217 -0
- mollie/models/list_permissionsop.py +85 -0
- mollie/models/list_profile_response.py +194 -0
- mollie/models/list_profilesop.py +118 -0
- mollie/models/list_refundsop.py +189 -0
- mollie/models/list_route_get_response.py +97 -0
- mollie/models/list_sales_invoice_response.py +505 -0
- mollie/models/list_sales_invoicesop.py +172 -0
- mollie/models/list_settlement_capturesop.py +187 -0
- mollie/models/list_settlement_chargebacksop.py +187 -0
- mollie/models/list_settlement_paymentsop.py +233 -0
- mollie/models/list_settlement_refundsop.py +191 -0
- mollie/models/list_settlementsop.py +178 -0
- mollie/models/list_subscription_paymentsop.py +242 -0
- mollie/models/list_subscription_response.py +344 -0
- mollie/models/list_subscriptionsop.py +189 -0
- mollie/models/list_terminalsop.py +172 -0
- mollie/models/list_webhooksop.py +189 -0
- mollie/models/locale.py +32 -0
- mollie/models/locale_response.py +33 -0
- mollie/models/mandate_details_card_label_response.py +22 -0
- mollie/models/mandate_method.py +15 -0
- mollie/models/mandate_method_response.py +16 -0
- mollie/models/mandate_request.py +160 -0
- mollie/models/mandate_response.py +264 -0
- mollie/models/metadata.py +19 -0
- mollie/models/method.py +50 -0
- mollie/models/method_include_wallets_parameter.py +8 -0
- mollie/models/method_resource_parameter.py +9 -0
- mollie/models/method_response.py +59 -0
- mollie/models/method_status.py +15 -0
- mollie/models/mode.py +12 -0
- mollie/models/no_response_error.py +17 -0
- mollie/models/onboarding_vat_regulation.py +16 -0
- mollie/models/organization_vat_regulation.py +17 -0
- mollie/models/payment_address.py +130 -0
- mollie/models/payment_create_routeop.py +43 -0
- mollie/models/payment_details_card_audition_response.py +12 -0
- mollie/models/payment_details_card_funding_response.py +14 -0
- mollie/models/payment_details_card_label_response.py +23 -0
- mollie/models/payment_details_card_security_response.py +12 -0
- mollie/models/payment_details_failure_reason_response.py +25 -0
- mollie/models/payment_details_fee_region_response.py +20 -0
- mollie/models/payment_details_receipt_card_read_method_response.py +17 -0
- mollie/models/payment_details_receipt_card_verification_method_response.py +21 -0
- mollie/models/payment_details_seller_protection_response.py +20 -0
- mollie/models/payment_details_wallet_response.py +11 -0
- mollie/models/payment_line_item.py +96 -0
- mollie/models/payment_line_item_response.py +104 -0
- mollie/models/payment_line_type.py +20 -0
- mollie/models/payment_line_type_response.py +21 -0
- mollie/models/payment_link_method.py +36 -0
- mollie/models/payment_link_method_response.py +37 -0
- mollie/models/payment_link_response.py +348 -0
- mollie/models/payment_link_sequence_type.py +9 -0
- mollie/models/payment_link_sequence_type_response.py +10 -0
- mollie/models/payment_list_routesop.py +140 -0
- mollie/models/payment_method.py +53 -0
- mollie/models/payment_request.py +919 -0
- mollie/models/payment_response.py +1953 -0
- mollie/models/profile_request.py +67 -0
- mollie/models/profile_response.py +197 -0
- mollie/models/profile_review_status_response.py +12 -0
- mollie/models/recurring_line_item.py +77 -0
- mollie/models/refund_external_reference_type.py +10 -0
- mollie/models/refund_external_reference_type_response.py +11 -0
- mollie/models/refund_request.py +200 -0
- mollie/models/release_authorizationop.py +108 -0
- mollie/models/request_apple_pay_payment_sessionop.py +76 -0
- mollie/models/responsevalidationerror.py +27 -0
- mollie/models/revoke_mandateop.py +100 -0
- mollie/models/route_create_response.py +97 -0
- mollie/models/route_destination_type.py +10 -0
- mollie/models/route_destination_type_response.py +11 -0
- mollie/models/sales_invoice_discount.py +21 -0
- mollie/models/sales_invoice_discount_response.py +25 -0
- mollie/models/sales_invoice_discount_type.py +11 -0
- mollie/models/sales_invoice_discount_type_response.py +12 -0
- mollie/models/sales_invoice_email_details.py +20 -0
- mollie/models/sales_invoice_line_item.py +67 -0
- mollie/models/sales_invoice_line_item_response.py +70 -0
- mollie/models/sales_invoice_payment_details.py +59 -0
- mollie/models/sales_invoice_payment_details_response.py +66 -0
- mollie/models/sales_invoice_payment_details_source.py +12 -0
- mollie/models/sales_invoice_payment_details_source_response.py +13 -0
- mollie/models/sales_invoice_payment_term.py +16 -0
- mollie/models/sales_invoice_payment_term_response.py +17 -0
- mollie/models/sales_invoice_recipient.py +176 -0
- mollie/models/sales_invoice_recipient_locale.py +18 -0
- mollie/models/sales_invoice_recipient_locale_response.py +19 -0
- mollie/models/sales_invoice_recipient_response.py +182 -0
- mollie/models/sales_invoice_recipient_type.py +13 -0
- mollie/models/sales_invoice_recipient_type_response.py +14 -0
- mollie/models/sales_invoice_request.py +256 -0
- mollie/models/sales_invoice_response.py +509 -0
- mollie/models/sales_invoice_status.py +25 -0
- mollie/models/sales_invoice_status_response.py +26 -0
- mollie/models/sales_invoice_vat_mode.py +13 -0
- mollie/models/sales_invoice_vat_mode_response.py +14 -0
- mollie/models/sales_invoice_vat_scheme.py +11 -0
- mollie/models/sales_invoice_vat_scheme_response.py +12 -0
- mollie/models/security.py +35 -0
- mollie/models/sequence_type.py +10 -0
- mollie/models/sequence_type_response.py +11 -0
- mollie/models/sorting.py +9 -0
- mollie/models/status_reason.py +168 -0
- mollie/models/sub_group.py +52 -0
- mollie/models/sub_totals.py +120 -0
- mollie/models/submit_onboarding_dataop.py +214 -0
- mollie/models/subscription_method.py +12 -0
- mollie/models/subscription_method_response.py +13 -0
- mollie/models/subscription_request.py +213 -0
- mollie/models/subscription_response.py +349 -0
- mollie/models/terminal_brand.py +12 -0
- mollie/models/terminal_model.py +16 -0
- mollie/models/test_webhookop.py +64 -0
- mollie/models/update_customerop.py +43 -0
- mollie/models/update_payment_linkop.py +172 -0
- mollie/models/update_paymentop.py +332 -0
- mollie/models/update_profileop.py +147 -0
- mollie/models/update_sales_invoiceop.py +44 -0
- mollie/models/update_subscriptionop.py +188 -0
- mollie/models/update_values_sales_invoice.py +176 -0
- mollie/models/update_webhookop.py +83 -0
- mollie/models/url.py +24 -0
- mollie/models/url_nullable.py +25 -0
- mollie/models/webhook_event_types.py +18 -0
- mollie/models/webhook_status.py +14 -0
- mollie/onboarding.py +403 -0
- mollie/organizations.py +579 -0
- mollie/payment_links.py +1323 -0
- mollie/payments_sdk.py +1385 -0
- mollie/permissions.py +397 -0
- mollie/profiles.py +1209 -0
- mollie/py.typed +1 -0
- mollie/refunds_sdk.py +1111 -0
- mollie/sales_invoices.py +1121 -0
- mollie/sdk.py +265 -0
- mollie/sdkconfiguration.py +50 -0
- mollie/settlements.py +1735 -0
- mollie/subscriptions.py +1617 -0
- mollie/terminals.py +427 -0
- mollie/types/__init__.py +21 -0
- mollie/types/basemodel.py +39 -0
- mollie/utils/__init__.py +200 -0
- mollie/utils/annotations.py +79 -0
- mollie/utils/datetimes.py +23 -0
- mollie/utils/enums.py +74 -0
- mollie/utils/eventstreaming.py +248 -0
- mollie/utils/forms.py +223 -0
- mollie/utils/headers.py +136 -0
- mollie/utils/logger.py +27 -0
- mollie/utils/metadata.py +118 -0
- mollie/utils/queryparams.py +205 -0
- mollie/utils/requestbodies.py +66 -0
- mollie/utils/retries.py +217 -0
- mollie/utils/security.py +195 -0
- mollie/utils/serializers.py +249 -0
- mollie/utils/unmarshal_json_response.py +24 -0
- mollie/utils/url.py +155 -0
- mollie/utils/values.py +137 -0
- mollie/wallets.py +263 -0
- mollie/webhook_events.py +211 -0
- mollie/webhooks.py +1305 -0
- mollie_api_py-1.0.0.dist-info/METADATA +834 -0
- mollie_api_py-1.0.0.dist-info/RECORD +337 -0
- mollie_api_py-1.0.0.dist-info/WHEEL +4 -0
- mollie_api_py-1.0.0.dist-info/licenses/LICENSE.md +24 -0
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .mandate_details_card_label_response import MandateDetailsCardLabelResponse
|
|
5
|
+
from .mandate_method_response import MandateMethodResponse
|
|
6
|
+
from .mode import Mode
|
|
7
|
+
from .url import URL, URLTypedDict
|
|
8
|
+
from enum import Enum
|
|
9
|
+
from mollie import utils
|
|
10
|
+
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
11
|
+
from mollie.utils import validate_open_enum
|
|
12
|
+
import pydantic
|
|
13
|
+
from pydantic import model_serializer
|
|
14
|
+
from pydantic.functional_validators import PlainValidator
|
|
15
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class MandateResponseDetailsTypedDict(TypedDict):
|
|
19
|
+
consumer_name: NotRequired[Nullable[str]]
|
|
20
|
+
r"""The customer's name. Available for SEPA Direct Debit and PayPal mandates."""
|
|
21
|
+
consumer_account: NotRequired[Nullable[str]]
|
|
22
|
+
r"""The customer's IBAN or email address. Available for SEPA Direct Debit and PayPal mandates."""
|
|
23
|
+
consumer_bic: NotRequired[Nullable[str]]
|
|
24
|
+
r"""The BIC of the customer's bank. Available for SEPA Direct Debit mandates."""
|
|
25
|
+
card_holder: NotRequired[Nullable[str]]
|
|
26
|
+
r"""The card holder's name. Available for card mandates."""
|
|
27
|
+
card_number: NotRequired[Nullable[str]]
|
|
28
|
+
r"""The last four digits of the card number. Available for card mandates."""
|
|
29
|
+
card_expiry_date: NotRequired[Nullable[str]]
|
|
30
|
+
r"""The card's expiry date in `YYYY-MM-DD` format. Available for card mandates."""
|
|
31
|
+
card_label: NotRequired[Nullable[MandateDetailsCardLabelResponse]]
|
|
32
|
+
r"""The card's label. Available for card mandates, if the card label could be detected."""
|
|
33
|
+
card_fingerprint: NotRequired[Nullable[str]]
|
|
34
|
+
r"""Unique alphanumeric representation of this specific card. Available for card mandates. Can be used to identify
|
|
35
|
+
returning customers.
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class MandateResponseDetails(BaseModel):
|
|
40
|
+
consumer_name: Annotated[
|
|
41
|
+
OptionalNullable[str], pydantic.Field(alias="consumerName")
|
|
42
|
+
] = UNSET
|
|
43
|
+
r"""The customer's name. Available for SEPA Direct Debit and PayPal mandates."""
|
|
44
|
+
|
|
45
|
+
consumer_account: Annotated[
|
|
46
|
+
OptionalNullable[str], pydantic.Field(alias="consumerAccount")
|
|
47
|
+
] = UNSET
|
|
48
|
+
r"""The customer's IBAN or email address. Available for SEPA Direct Debit and PayPal mandates."""
|
|
49
|
+
|
|
50
|
+
consumer_bic: Annotated[
|
|
51
|
+
OptionalNullable[str], pydantic.Field(alias="consumerBic")
|
|
52
|
+
] = UNSET
|
|
53
|
+
r"""The BIC of the customer's bank. Available for SEPA Direct Debit mandates."""
|
|
54
|
+
|
|
55
|
+
card_holder: Annotated[
|
|
56
|
+
OptionalNullable[str], pydantic.Field(alias="cardHolder")
|
|
57
|
+
] = UNSET
|
|
58
|
+
r"""The card holder's name. Available for card mandates."""
|
|
59
|
+
|
|
60
|
+
card_number: Annotated[
|
|
61
|
+
OptionalNullable[str], pydantic.Field(alias="cardNumber")
|
|
62
|
+
] = UNSET
|
|
63
|
+
r"""The last four digits of the card number. Available for card mandates."""
|
|
64
|
+
|
|
65
|
+
card_expiry_date: Annotated[
|
|
66
|
+
OptionalNullable[str], pydantic.Field(alias="cardExpiryDate")
|
|
67
|
+
] = UNSET
|
|
68
|
+
r"""The card's expiry date in `YYYY-MM-DD` format. Available for card mandates."""
|
|
69
|
+
|
|
70
|
+
card_label: Annotated[
|
|
71
|
+
Annotated[
|
|
72
|
+
OptionalNullable[MandateDetailsCardLabelResponse],
|
|
73
|
+
PlainValidator(validate_open_enum(False)),
|
|
74
|
+
],
|
|
75
|
+
pydantic.Field(alias="cardLabel"),
|
|
76
|
+
] = UNSET
|
|
77
|
+
r"""The card's label. Available for card mandates, if the card label could be detected."""
|
|
78
|
+
|
|
79
|
+
card_fingerprint: Annotated[
|
|
80
|
+
OptionalNullable[str], pydantic.Field(alias="cardFingerprint")
|
|
81
|
+
] = UNSET
|
|
82
|
+
r"""Unique alphanumeric representation of this specific card. Available for card mandates. Can be used to identify
|
|
83
|
+
returning customers.
|
|
84
|
+
"""
|
|
85
|
+
|
|
86
|
+
@model_serializer(mode="wrap")
|
|
87
|
+
def serialize_model(self, handler):
|
|
88
|
+
optional_fields = [
|
|
89
|
+
"consumerName",
|
|
90
|
+
"consumerAccount",
|
|
91
|
+
"consumerBic",
|
|
92
|
+
"cardHolder",
|
|
93
|
+
"cardNumber",
|
|
94
|
+
"cardExpiryDate",
|
|
95
|
+
"cardLabel",
|
|
96
|
+
"cardFingerprint",
|
|
97
|
+
]
|
|
98
|
+
nullable_fields = [
|
|
99
|
+
"consumerName",
|
|
100
|
+
"consumerAccount",
|
|
101
|
+
"consumerBic",
|
|
102
|
+
"cardHolder",
|
|
103
|
+
"cardNumber",
|
|
104
|
+
"cardExpiryDate",
|
|
105
|
+
"cardLabel",
|
|
106
|
+
"cardFingerprint",
|
|
107
|
+
]
|
|
108
|
+
null_default_fields = []
|
|
109
|
+
|
|
110
|
+
serialized = handler(self)
|
|
111
|
+
|
|
112
|
+
m = {}
|
|
113
|
+
|
|
114
|
+
for n, f in type(self).model_fields.items():
|
|
115
|
+
k = f.alias or n
|
|
116
|
+
val = serialized.get(k)
|
|
117
|
+
serialized.pop(k, None)
|
|
118
|
+
|
|
119
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
120
|
+
is_set = (
|
|
121
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
122
|
+
or k in null_default_fields
|
|
123
|
+
) # pylint: disable=no-member
|
|
124
|
+
|
|
125
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
126
|
+
m[k] = val
|
|
127
|
+
elif val != UNSET_SENTINEL and (
|
|
128
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
129
|
+
):
|
|
130
|
+
m[k] = val
|
|
131
|
+
|
|
132
|
+
return m
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
class MandateResponseStatus(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
136
|
+
r"""The status of the mandate. A status can be `pending` for mandates when the first payment is not yet finalized, or
|
|
137
|
+
when we did not received the IBAN yet from the first payment.
|
|
138
|
+
"""
|
|
139
|
+
|
|
140
|
+
VALID = "valid"
|
|
141
|
+
PENDING = "pending"
|
|
142
|
+
INVALID = "invalid"
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
class MandateResponseLinksTypedDict(TypedDict):
|
|
146
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
147
|
+
|
|
148
|
+
self_: URLTypedDict
|
|
149
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
150
|
+
customer: URLTypedDict
|
|
151
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
152
|
+
documentation: URLTypedDict
|
|
153
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
class MandateResponseLinks(BaseModel):
|
|
157
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
158
|
+
|
|
159
|
+
self_: Annotated[URL, pydantic.Field(alias="self")]
|
|
160
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
161
|
+
|
|
162
|
+
customer: URL
|
|
163
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
164
|
+
|
|
165
|
+
documentation: URL
|
|
166
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
class MandateResponseTypedDict(TypedDict):
|
|
170
|
+
resource: str
|
|
171
|
+
r"""Indicates the response contains a mandate object. Will always contain the string `mandate` for this endpoint."""
|
|
172
|
+
id: str
|
|
173
|
+
r"""The identifier uniquely referring to this mandate. Example: `mdt_pWUnw6pkBN`."""
|
|
174
|
+
mode: Mode
|
|
175
|
+
r"""Whether this entity was created in live mode or in test mode."""
|
|
176
|
+
method: MandateMethodResponse
|
|
177
|
+
r"""Payment method of the mandate.
|
|
178
|
+
|
|
179
|
+
SEPA Direct Debit and PayPal mandates can be created directly.
|
|
180
|
+
"""
|
|
181
|
+
details: MandateResponseDetailsTypedDict
|
|
182
|
+
signature_date: Nullable[str]
|
|
183
|
+
r"""The date when the mandate was signed in `YYYY-MM-DD` format."""
|
|
184
|
+
mandate_reference: Nullable[str]
|
|
185
|
+
r"""A custom mandate reference. For SEPA Direct Debit, it is vital to provide a unique reference. Some banks will
|
|
186
|
+
decline Direct Debit payments if the mandate reference is not unique.
|
|
187
|
+
"""
|
|
188
|
+
status: MandateResponseStatus
|
|
189
|
+
customer_id: str
|
|
190
|
+
r"""The identifier referring to the [customer](get-customer) this mandate was linked to."""
|
|
191
|
+
created_at: str
|
|
192
|
+
r"""The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format."""
|
|
193
|
+
links: MandateResponseLinksTypedDict
|
|
194
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
class MandateResponse(BaseModel):
|
|
198
|
+
resource: str
|
|
199
|
+
r"""Indicates the response contains a mandate object. Will always contain the string `mandate` for this endpoint."""
|
|
200
|
+
|
|
201
|
+
id: str
|
|
202
|
+
r"""The identifier uniquely referring to this mandate. Example: `mdt_pWUnw6pkBN`."""
|
|
203
|
+
|
|
204
|
+
mode: Annotated[Mode, PlainValidator(validate_open_enum(False))]
|
|
205
|
+
r"""Whether this entity was created in live mode or in test mode."""
|
|
206
|
+
|
|
207
|
+
method: Annotated[MandateMethodResponse, PlainValidator(validate_open_enum(False))]
|
|
208
|
+
r"""Payment method of the mandate.
|
|
209
|
+
|
|
210
|
+
SEPA Direct Debit and PayPal mandates can be created directly.
|
|
211
|
+
"""
|
|
212
|
+
|
|
213
|
+
details: MandateResponseDetails
|
|
214
|
+
|
|
215
|
+
signature_date: Annotated[Nullable[str], pydantic.Field(alias="signatureDate")]
|
|
216
|
+
r"""The date when the mandate was signed in `YYYY-MM-DD` format."""
|
|
217
|
+
|
|
218
|
+
mandate_reference: Annotated[
|
|
219
|
+
Nullable[str], pydantic.Field(alias="mandateReference")
|
|
220
|
+
]
|
|
221
|
+
r"""A custom mandate reference. For SEPA Direct Debit, it is vital to provide a unique reference. Some banks will
|
|
222
|
+
decline Direct Debit payments if the mandate reference is not unique.
|
|
223
|
+
"""
|
|
224
|
+
|
|
225
|
+
status: Annotated[MandateResponseStatus, PlainValidator(validate_open_enum(False))]
|
|
226
|
+
|
|
227
|
+
customer_id: Annotated[str, pydantic.Field(alias="customerId")]
|
|
228
|
+
r"""The identifier referring to the [customer](get-customer) this mandate was linked to."""
|
|
229
|
+
|
|
230
|
+
created_at: Annotated[str, pydantic.Field(alias="createdAt")]
|
|
231
|
+
r"""The entity's date and time of creation, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) format."""
|
|
232
|
+
|
|
233
|
+
links: Annotated[MandateResponseLinks, pydantic.Field(alias="_links")]
|
|
234
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
235
|
+
|
|
236
|
+
@model_serializer(mode="wrap")
|
|
237
|
+
def serialize_model(self, handler):
|
|
238
|
+
optional_fields = []
|
|
239
|
+
nullable_fields = ["signatureDate", "mandateReference"]
|
|
240
|
+
null_default_fields = []
|
|
241
|
+
|
|
242
|
+
serialized = handler(self)
|
|
243
|
+
|
|
244
|
+
m = {}
|
|
245
|
+
|
|
246
|
+
for n, f in type(self).model_fields.items():
|
|
247
|
+
k = f.alias or n
|
|
248
|
+
val = serialized.get(k)
|
|
249
|
+
serialized.pop(k, None)
|
|
250
|
+
|
|
251
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
252
|
+
is_set = (
|
|
253
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
254
|
+
or k in null_default_fields
|
|
255
|
+
) # pylint: disable=no-member
|
|
256
|
+
|
|
257
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
258
|
+
m[k] = val
|
|
259
|
+
elif val != UNSET_SENTINEL and (
|
|
260
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
261
|
+
):
|
|
262
|
+
m[k] = val
|
|
263
|
+
|
|
264
|
+
return m
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from typing import Any, Dict, List, Union
|
|
5
|
+
from typing_extensions import TypeAliasType
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
MetadataTypedDict = TypeAliasType(
|
|
9
|
+
"MetadataTypedDict", Union[str, Dict[str, Any], List[str]]
|
|
10
|
+
)
|
|
11
|
+
r"""Provide any data you like, for example a string or a JSON object. We will save the data alongside the entity. Whenever
|
|
12
|
+
you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
Metadata = TypeAliasType("Metadata", Union[str, Dict[str, Any], List[str]])
|
|
17
|
+
r"""Provide any data you like, for example a string or a JSON object. We will save the data alongside the entity. Whenever
|
|
18
|
+
you fetch the entity with our API, we will also include the metadata. You can use up to approximately 1kB.
|
|
19
|
+
"""
|
mollie/models/method.py
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from enum import Enum
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class Method(str, Enum):
|
|
8
|
+
r"""Normally, a payment method screen is shown. However, when using this parameter, you can choose a specific payment
|
|
9
|
+
method and your customer will skip the selection screen and is sent directly to the chosen payment method. The
|
|
10
|
+
parameter enables you to fully integrate the payment method selection into your website.
|
|
11
|
+
|
|
12
|
+
You can also specify the methods in an array. By doing so we will still show the payment method selection screen
|
|
13
|
+
but will only show the methods specified in the array. For example, you can use this functionality to only show
|
|
14
|
+
payment methods from a specific country to your customer `['bancontact', 'belfius']`.
|
|
15
|
+
"""
|
|
16
|
+
|
|
17
|
+
ALMA = "alma"
|
|
18
|
+
APPLEPAY = "applepay"
|
|
19
|
+
BACS = "bacs"
|
|
20
|
+
BANCOMATPAY = "bancomatpay"
|
|
21
|
+
BANCONTACT = "bancontact"
|
|
22
|
+
BANKTRANSFER = "banktransfer"
|
|
23
|
+
BELFIUS = "belfius"
|
|
24
|
+
BILLIE = "billie"
|
|
25
|
+
BIZUM = "bizum"
|
|
26
|
+
BLIK = "blik"
|
|
27
|
+
CREDITCARD = "creditcard"
|
|
28
|
+
DIRECTDEBIT = "directdebit"
|
|
29
|
+
EPS = "eps"
|
|
30
|
+
GIFTCARD = "giftcard"
|
|
31
|
+
IDEAL = "ideal"
|
|
32
|
+
IN3 = "in3"
|
|
33
|
+
KBC = "kbc"
|
|
34
|
+
KLARNA = "klarna"
|
|
35
|
+
MBWAY = "mbway"
|
|
36
|
+
MOBILEPAY = "mobilepay"
|
|
37
|
+
MULTIBANCO = "multibanco"
|
|
38
|
+
MYBANK = "mybank"
|
|
39
|
+
PAYBYBANK = "paybybank"
|
|
40
|
+
PAYPAL = "paypal"
|
|
41
|
+
PAYSAFECARD = "paysafecard"
|
|
42
|
+
POINTOFSALE = "pointofsale"
|
|
43
|
+
PRZELEWY24 = "przelewy24"
|
|
44
|
+
RIVERTY = "riverty"
|
|
45
|
+
SATISPAY = "satispay"
|
|
46
|
+
SWISH = "swish"
|
|
47
|
+
TRUSTLY = "trustly"
|
|
48
|
+
TWINT = "twint"
|
|
49
|
+
VIPPS = "vipps"
|
|
50
|
+
VOUCHER = "voucher"
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from enum import Enum
|
|
5
|
+
from mollie import utils
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class MethodResponse(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
9
|
+
r"""Normally, a payment method screen is shown. However, when using this parameter, you can choose a specific payment
|
|
10
|
+
method and your customer will skip the selection screen and is sent directly to the chosen payment method. The
|
|
11
|
+
parameter enables you to fully integrate the payment method selection into your website.
|
|
12
|
+
|
|
13
|
+
You can also specify the methods in an array. By doing so we will still show the payment method selection screen
|
|
14
|
+
but will only show the methods specified in the array. For example, you can use this functionality to only show
|
|
15
|
+
payment methods from a specific country to your customer `['bancontact', 'belfius']`.
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
ALMA = "alma"
|
|
19
|
+
APPLEPAY = "applepay"
|
|
20
|
+
BACS = "bacs"
|
|
21
|
+
BANCOMATPAY = "bancomatpay"
|
|
22
|
+
BANCONTACT = "bancontact"
|
|
23
|
+
BANKTRANSFER = "banktransfer"
|
|
24
|
+
BELFIUS = "belfius"
|
|
25
|
+
BILLIE = "billie"
|
|
26
|
+
BIZUM = "bizum"
|
|
27
|
+
BLIK = "blik"
|
|
28
|
+
CREDITCARD = "creditcard"
|
|
29
|
+
DIRECTDEBIT = "directdebit"
|
|
30
|
+
EPS = "eps"
|
|
31
|
+
GIFTCARD = "giftcard"
|
|
32
|
+
IDEAL = "ideal"
|
|
33
|
+
IN3 = "in3"
|
|
34
|
+
KBC = "kbc"
|
|
35
|
+
KLARNA = "klarna"
|
|
36
|
+
MBWAY = "mbway"
|
|
37
|
+
MOBILEPAY = "mobilepay"
|
|
38
|
+
MULTIBANCO = "multibanco"
|
|
39
|
+
MYBANK = "mybank"
|
|
40
|
+
PAYBYBANK = "paybybank"
|
|
41
|
+
PAYPAL = "paypal"
|
|
42
|
+
PAYSAFECARD = "paysafecard"
|
|
43
|
+
POINTOFSALE = "pointofsale"
|
|
44
|
+
PRZELEWY24 = "przelewy24"
|
|
45
|
+
RIVERTY = "riverty"
|
|
46
|
+
SATISPAY = "satispay"
|
|
47
|
+
SWISH = "swish"
|
|
48
|
+
TRUSTLY = "trustly"
|
|
49
|
+
TWINT = "twint"
|
|
50
|
+
VIPPS = "vipps"
|
|
51
|
+
VOUCHER = "voucher"
|
|
52
|
+
# Deprecated, use 'klarna' instead
|
|
53
|
+
KLARNAPAYLATER = "klarnapaylater"
|
|
54
|
+
# Deprecated, use 'klarna' instead
|
|
55
|
+
KLARNAPAYNOW = "klarnapaynow"
|
|
56
|
+
# Deprecated, use 'klarna' instead
|
|
57
|
+
KLARNASLICEIT = "klarnasliceit"
|
|
58
|
+
# No longer available
|
|
59
|
+
PAYCONIQ = "payconiq"
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from enum import Enum
|
|
5
|
+
from mollie import utils
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class MethodStatus(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
9
|
+
r"""The payment method's activation status for this profile."""
|
|
10
|
+
|
|
11
|
+
ACTIVATED = "activated"
|
|
12
|
+
PENDING_BOARDING = "pending-boarding"
|
|
13
|
+
PENDING_REVIEW = "pending-review"
|
|
14
|
+
PENDING_EXTERNAL = "pending-external"
|
|
15
|
+
REJECTED = "rejected"
|
mollie/models/mode.py
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from enum import Enum
|
|
5
|
+
from mollie import utils
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class Mode(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
9
|
+
r"""Whether this entity was created in live mode or in test mode."""
|
|
10
|
+
|
|
11
|
+
LIVE = "live"
|
|
12
|
+
TEST = "test"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
@dataclass(unsafe_hash=True)
|
|
7
|
+
class NoResponseError(Exception):
|
|
8
|
+
"""Error raised when no HTTP response is received from the server."""
|
|
9
|
+
|
|
10
|
+
message: str
|
|
11
|
+
|
|
12
|
+
def __init__(self, message: str = "No response received"):
|
|
13
|
+
object.__setattr__(self, "message", message)
|
|
14
|
+
super().__init__(message)
|
|
15
|
+
|
|
16
|
+
def __str__(self):
|
|
17
|
+
return self.message
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from enum import Enum
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class OnboardingVatRegulation(str, Enum):
|
|
8
|
+
r"""Mollie applies Dutch VAT for merchants based in The Netherlands, British VAT for merchants based in
|
|
9
|
+
The United Kingdom, and shifted VAT for merchants in the European Union.
|
|
10
|
+
|
|
11
|
+
The field can be omitted for merchants residing in other countries.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
DUTCH = "dutch"
|
|
15
|
+
BRITISH = "british"
|
|
16
|
+
SHIFTED = "shifted"
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from enum import Enum
|
|
5
|
+
from mollie import utils
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
class OrganizationVatRegulation(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
9
|
+
r"""Mollie applies Dutch VAT for merchants based in The Netherlands, British VAT for merchants based in The United
|
|
10
|
+
Kingdom, and shifted VAT for merchants in the European Union.
|
|
11
|
+
|
|
12
|
+
The field is not present for merchants residing in other countries.
|
|
13
|
+
"""
|
|
14
|
+
|
|
15
|
+
DUTCH = "dutch"
|
|
16
|
+
BRITISH = "british"
|
|
17
|
+
SHIFTED = "shifted"
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from mollie.types import BaseModel
|
|
5
|
+
import pydantic
|
|
6
|
+
from typing import Optional
|
|
7
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class PaymentAddressTypedDict(TypedDict):
|
|
11
|
+
title: NotRequired[str]
|
|
12
|
+
r"""The title of the person, for example *Mr.* or *Mrs.*."""
|
|
13
|
+
given_name: NotRequired[str]
|
|
14
|
+
r"""The given name (first name) of the person should be at least two characters and cannot contain only
|
|
15
|
+
numbers.
|
|
16
|
+
|
|
17
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
18
|
+
"""
|
|
19
|
+
family_name: NotRequired[str]
|
|
20
|
+
r"""The given family name (surname) of the person should be at least two characters and cannot contain only
|
|
21
|
+
numbers.
|
|
22
|
+
|
|
23
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
24
|
+
"""
|
|
25
|
+
organization_name: NotRequired[str]
|
|
26
|
+
r"""The name of the organization, in case the addressee is an organization."""
|
|
27
|
+
street_and_number: NotRequired[str]
|
|
28
|
+
r"""A street and street number.
|
|
29
|
+
|
|
30
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
31
|
+
"""
|
|
32
|
+
street_additional: NotRequired[str]
|
|
33
|
+
r"""Any additional addressing details, for example an apartment number."""
|
|
34
|
+
postal_code: NotRequired[str]
|
|
35
|
+
r"""A postal code. This field may be required if the provided country has a postal code system.
|
|
36
|
+
|
|
37
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
38
|
+
"""
|
|
39
|
+
email: NotRequired[str]
|
|
40
|
+
r"""A valid e-mail address.
|
|
41
|
+
|
|
42
|
+
If you provide the email address for a `banktransfer` payment, we will automatically send the instructions
|
|
43
|
+
email upon payment creation. The language of the email will follow the locale parameter of the payment.
|
|
44
|
+
|
|
45
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
46
|
+
"""
|
|
47
|
+
phone: NotRequired[str]
|
|
48
|
+
r"""If provided, it must be in the [E.164](https://en.wikipedia.org/wiki/E.164) format. For example: +31208202070."""
|
|
49
|
+
city: NotRequired[str]
|
|
50
|
+
r"""A city name.
|
|
51
|
+
|
|
52
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
53
|
+
"""
|
|
54
|
+
region: NotRequired[str]
|
|
55
|
+
r"""The top-level administrative subdivision of the country. For example: Noord-Holland."""
|
|
56
|
+
country: NotRequired[str]
|
|
57
|
+
r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
|
|
58
|
+
|
|
59
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
60
|
+
"""
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
class PaymentAddress(BaseModel):
|
|
64
|
+
title: Optional[str] = None
|
|
65
|
+
r"""The title of the person, for example *Mr.* or *Mrs.*."""
|
|
66
|
+
|
|
67
|
+
given_name: Annotated[Optional[str], pydantic.Field(alias="givenName")] = None
|
|
68
|
+
r"""The given name (first name) of the person should be at least two characters and cannot contain only
|
|
69
|
+
numbers.
|
|
70
|
+
|
|
71
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
72
|
+
"""
|
|
73
|
+
|
|
74
|
+
family_name: Annotated[Optional[str], pydantic.Field(alias="familyName")] = None
|
|
75
|
+
r"""The given family name (surname) of the person should be at least two characters and cannot contain only
|
|
76
|
+
numbers.
|
|
77
|
+
|
|
78
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
79
|
+
"""
|
|
80
|
+
|
|
81
|
+
organization_name: Annotated[
|
|
82
|
+
Optional[str], pydantic.Field(alias="organizationName")
|
|
83
|
+
] = None
|
|
84
|
+
r"""The name of the organization, in case the addressee is an organization."""
|
|
85
|
+
|
|
86
|
+
street_and_number: Annotated[
|
|
87
|
+
Optional[str], pydantic.Field(alias="streetAndNumber")
|
|
88
|
+
] = None
|
|
89
|
+
r"""A street and street number.
|
|
90
|
+
|
|
91
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
92
|
+
"""
|
|
93
|
+
|
|
94
|
+
street_additional: Annotated[
|
|
95
|
+
Optional[str], pydantic.Field(alias="streetAdditional")
|
|
96
|
+
] = None
|
|
97
|
+
r"""Any additional addressing details, for example an apartment number."""
|
|
98
|
+
|
|
99
|
+
postal_code: Annotated[Optional[str], pydantic.Field(alias="postalCode")] = None
|
|
100
|
+
r"""A postal code. This field may be required if the provided country has a postal code system.
|
|
101
|
+
|
|
102
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
103
|
+
"""
|
|
104
|
+
|
|
105
|
+
email: Optional[str] = None
|
|
106
|
+
r"""A valid e-mail address.
|
|
107
|
+
|
|
108
|
+
If you provide the email address for a `banktransfer` payment, we will automatically send the instructions
|
|
109
|
+
email upon payment creation. The language of the email will follow the locale parameter of the payment.
|
|
110
|
+
|
|
111
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
112
|
+
"""
|
|
113
|
+
|
|
114
|
+
phone: Optional[str] = None
|
|
115
|
+
r"""If provided, it must be in the [E.164](https://en.wikipedia.org/wiki/E.164) format. For example: +31208202070."""
|
|
116
|
+
|
|
117
|
+
city: Optional[str] = None
|
|
118
|
+
r"""A city name.
|
|
119
|
+
|
|
120
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
121
|
+
"""
|
|
122
|
+
|
|
123
|
+
region: Optional[str] = None
|
|
124
|
+
r"""The top-level administrative subdivision of the country. For example: Noord-Holland."""
|
|
125
|
+
|
|
126
|
+
country: Optional[str] = None
|
|
127
|
+
r"""A country code in [ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) format.
|
|
128
|
+
|
|
129
|
+
Required for payment methods `billie`, `in3`, `klarna` and `riverty`.
|
|
130
|
+
"""
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .entity_route import EntityRoute, EntityRouteTypedDict
|
|
5
|
+
from mollie.types import BaseModel
|
|
6
|
+
from mollie.utils import (
|
|
7
|
+
FieldMetadata,
|
|
8
|
+
HeaderMetadata,
|
|
9
|
+
PathParamMetadata,
|
|
10
|
+
RequestMetadata,
|
|
11
|
+
)
|
|
12
|
+
import pydantic
|
|
13
|
+
from typing import Optional
|
|
14
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class PaymentCreateRouteRequestTypedDict(TypedDict):
|
|
18
|
+
payment_id: str
|
|
19
|
+
r"""Provide the ID of the related payment."""
|
|
20
|
+
idempotency_key: NotRequired[str]
|
|
21
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
22
|
+
entity_route: NotRequired[EntityRouteTypedDict]
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class PaymentCreateRouteRequest(BaseModel):
|
|
26
|
+
payment_id: Annotated[
|
|
27
|
+
str,
|
|
28
|
+
pydantic.Field(alias="paymentId"),
|
|
29
|
+
FieldMetadata(path=PathParamMetadata(style="simple", explode=False)),
|
|
30
|
+
]
|
|
31
|
+
r"""Provide the ID of the related payment."""
|
|
32
|
+
|
|
33
|
+
idempotency_key: Annotated[
|
|
34
|
+
Optional[str],
|
|
35
|
+
pydantic.Field(alias="idempotency-key"),
|
|
36
|
+
FieldMetadata(header=HeaderMetadata(style="simple", explode=False)),
|
|
37
|
+
] = None
|
|
38
|
+
r"""A unique key to ensure idempotent requests. This key should be a UUID v4 string."""
|
|
39
|
+
|
|
40
|
+
entity_route: Annotated[
|
|
41
|
+
Optional[EntityRoute],
|
|
42
|
+
FieldMetadata(request=RequestMetadata(media_type="application/json")),
|
|
43
|
+
] = None
|