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,315 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .method_status import MethodStatus
|
|
5
|
+
from .url import URL, URLTypedDict
|
|
6
|
+
from enum import Enum
|
|
7
|
+
from mollie import utils
|
|
8
|
+
from mollie.types import BaseModel, Nullable, UNSET_SENTINEL
|
|
9
|
+
from mollie.utils import validate_open_enum
|
|
10
|
+
import pydantic
|
|
11
|
+
from pydantic import model_serializer
|
|
12
|
+
from pydantic.functional_validators import PlainValidator
|
|
13
|
+
from typing import List, Optional
|
|
14
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class ListEntityMethodID(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
18
|
+
r"""The unique identifier of the payment method. When used during [payment creation](create-payment), the payment
|
|
19
|
+
method selection screen will be skipped.
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
ALMA = "alma"
|
|
23
|
+
APPLEPAY = "applepay"
|
|
24
|
+
BACS = "bacs"
|
|
25
|
+
BANCOMATPAY = "bancomatpay"
|
|
26
|
+
BANCONTACT = "bancontact"
|
|
27
|
+
BANKTRANSFER = "banktransfer"
|
|
28
|
+
BELFIUS = "belfius"
|
|
29
|
+
BILLIE = "billie"
|
|
30
|
+
BIZUM = "bizum"
|
|
31
|
+
BLIK = "blik"
|
|
32
|
+
CREDITCARD = "creditcard"
|
|
33
|
+
DIRECTDEBIT = "directdebit"
|
|
34
|
+
EPS = "eps"
|
|
35
|
+
GIFTCARD = "giftcard"
|
|
36
|
+
IDEAL = "ideal"
|
|
37
|
+
IN3 = "in3"
|
|
38
|
+
KBC = "kbc"
|
|
39
|
+
KLARNA = "klarna"
|
|
40
|
+
MBWAY = "mbway"
|
|
41
|
+
MOBILEPAY = "mobilepay"
|
|
42
|
+
MULTIBANCO = "multibanco"
|
|
43
|
+
MYBANK = "mybank"
|
|
44
|
+
PAYBYBANK = "paybybank"
|
|
45
|
+
PAYPAL = "paypal"
|
|
46
|
+
PAYSAFECARD = "paysafecard"
|
|
47
|
+
PRZELEWY24 = "przelewy24"
|
|
48
|
+
RIVERTY = "riverty"
|
|
49
|
+
SATISPAY = "satispay"
|
|
50
|
+
SWISH = "swish"
|
|
51
|
+
TRUSTLY = "trustly"
|
|
52
|
+
TWINT = "twint"
|
|
53
|
+
VIPPS = "vipps"
|
|
54
|
+
VOUCHER = "voucher"
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
class ListEntityMethodMinimumAmountTypedDict(TypedDict):
|
|
58
|
+
r"""The minimum payment amount required to use this payment method."""
|
|
59
|
+
|
|
60
|
+
currency: str
|
|
61
|
+
r"""A three-character ISO 4217 currency code."""
|
|
62
|
+
value: str
|
|
63
|
+
r"""A string containing an exact monetary amount in the given currency."""
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
class ListEntityMethodMinimumAmount(BaseModel):
|
|
67
|
+
r"""The minimum payment amount required to use this payment method."""
|
|
68
|
+
|
|
69
|
+
currency: str
|
|
70
|
+
r"""A three-character ISO 4217 currency code."""
|
|
71
|
+
|
|
72
|
+
value: str
|
|
73
|
+
r"""A string containing an exact monetary amount in the given currency."""
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
class ListEntityMethodMaximumAmountTypedDict(TypedDict):
|
|
77
|
+
r"""The maximum payment amount allowed when using this payment method. If there is no method-specific maximum, `null`
|
|
78
|
+
is returned instead.
|
|
79
|
+
"""
|
|
80
|
+
|
|
81
|
+
currency: str
|
|
82
|
+
r"""A three-character ISO 4217 currency code."""
|
|
83
|
+
value: str
|
|
84
|
+
r"""A string containing an exact monetary amount in the given currency."""
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
class ListEntityMethodMaximumAmount(BaseModel):
|
|
88
|
+
r"""The maximum payment amount allowed when using this payment method. If there is no method-specific maximum, `null`
|
|
89
|
+
is returned instead.
|
|
90
|
+
"""
|
|
91
|
+
|
|
92
|
+
currency: str
|
|
93
|
+
r"""A three-character ISO 4217 currency code."""
|
|
94
|
+
|
|
95
|
+
value: str
|
|
96
|
+
r"""A string containing an exact monetary amount in the given currency."""
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
class ListEntityMethodImageTypedDict(TypedDict):
|
|
100
|
+
r"""URLs of images representing the payment method."""
|
|
101
|
+
|
|
102
|
+
size1x: str
|
|
103
|
+
r"""The URL pointing to an icon of 32 by 24 pixels."""
|
|
104
|
+
size2x: str
|
|
105
|
+
r"""The URL pointing to an icon of 64 by 48 pixels."""
|
|
106
|
+
svg: str
|
|
107
|
+
r"""The URL pointing to a vector version of the icon. Usage of this format is preferred, since the icon can
|
|
108
|
+
scale to any desired size without compromising visual quality.
|
|
109
|
+
"""
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
class ListEntityMethodImage(BaseModel):
|
|
113
|
+
r"""URLs of images representing the payment method."""
|
|
114
|
+
|
|
115
|
+
size1x: str
|
|
116
|
+
r"""The URL pointing to an icon of 32 by 24 pixels."""
|
|
117
|
+
|
|
118
|
+
size2x: str
|
|
119
|
+
r"""The URL pointing to an icon of 64 by 48 pixels."""
|
|
120
|
+
|
|
121
|
+
svg: str
|
|
122
|
+
r"""The URL pointing to a vector version of the icon. Usage of this format is preferred, since the icon can
|
|
123
|
+
scale to any desired size without compromising visual quality.
|
|
124
|
+
"""
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
class ListEntityMethodIssuerImageTypedDict(TypedDict):
|
|
128
|
+
r"""URLs of images representing the issuer.
|
|
129
|
+
required:
|
|
130
|
+
- size1x
|
|
131
|
+
- size2x
|
|
132
|
+
- svg
|
|
133
|
+
"""
|
|
134
|
+
|
|
135
|
+
size1x: NotRequired[str]
|
|
136
|
+
r"""The URL pointing to an icon of 32 by 24 pixels."""
|
|
137
|
+
size2x: NotRequired[str]
|
|
138
|
+
r"""The URL pointing to an icon of 64 by 48 pixels."""
|
|
139
|
+
svg: NotRequired[str]
|
|
140
|
+
r"""The URL pointing to a vector version of the icon. Usage of this format is preferred, since the icon can
|
|
141
|
+
scale to any desired size without compromising visual quality.
|
|
142
|
+
"""
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
class ListEntityMethodIssuerImage(BaseModel):
|
|
146
|
+
r"""URLs of images representing the issuer.
|
|
147
|
+
required:
|
|
148
|
+
- size1x
|
|
149
|
+
- size2x
|
|
150
|
+
- svg
|
|
151
|
+
"""
|
|
152
|
+
|
|
153
|
+
size1x: Optional[str] = None
|
|
154
|
+
r"""The URL pointing to an icon of 32 by 24 pixels."""
|
|
155
|
+
|
|
156
|
+
size2x: Optional[str] = None
|
|
157
|
+
r"""The URL pointing to an icon of 64 by 48 pixels."""
|
|
158
|
+
|
|
159
|
+
svg: Optional[str] = None
|
|
160
|
+
r"""The URL pointing to a vector version of the icon. Usage of this format is preferred, since the icon can
|
|
161
|
+
scale to any desired size without compromising visual quality.
|
|
162
|
+
"""
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
class ListEntityMethodIssuerTypedDict(TypedDict):
|
|
166
|
+
resource: str
|
|
167
|
+
id: str
|
|
168
|
+
name: str
|
|
169
|
+
r"""The full name of the issuer."""
|
|
170
|
+
image: ListEntityMethodIssuerImageTypedDict
|
|
171
|
+
r"""URLs of images representing the issuer.
|
|
172
|
+
required:
|
|
173
|
+
- size1x
|
|
174
|
+
- size2x
|
|
175
|
+
- svg
|
|
176
|
+
"""
|
|
177
|
+
|
|
178
|
+
|
|
179
|
+
class ListEntityMethodIssuer(BaseModel):
|
|
180
|
+
resource: str
|
|
181
|
+
|
|
182
|
+
id: str
|
|
183
|
+
|
|
184
|
+
name: str
|
|
185
|
+
r"""The full name of the issuer."""
|
|
186
|
+
|
|
187
|
+
image: ListEntityMethodIssuerImage
|
|
188
|
+
r"""URLs of images representing the issuer.
|
|
189
|
+
required:
|
|
190
|
+
- size1x
|
|
191
|
+
- size2x
|
|
192
|
+
- svg
|
|
193
|
+
"""
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
class ListEntityMethodLinksTypedDict(TypedDict):
|
|
197
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
198
|
+
|
|
199
|
+
self_: URLTypedDict
|
|
200
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
class ListEntityMethodLinks(BaseModel):
|
|
204
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
205
|
+
|
|
206
|
+
self_: Annotated[URL, pydantic.Field(alias="self")]
|
|
207
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
class ListEntityMethodTypedDict(TypedDict):
|
|
211
|
+
resource: str
|
|
212
|
+
r"""Indicates the response contains a payment method object. Will always contain the string `method` for this
|
|
213
|
+
endpoint.
|
|
214
|
+
"""
|
|
215
|
+
id: Nullable[ListEntityMethodID]
|
|
216
|
+
r"""The unique identifier of the payment method. When used during [payment creation](create-payment), the payment
|
|
217
|
+
method selection screen will be skipped.
|
|
218
|
+
"""
|
|
219
|
+
description: str
|
|
220
|
+
r"""The full name of the payment method.
|
|
221
|
+
|
|
222
|
+
If a `locale` parameter is provided, the name is translated to the given locale if possible.
|
|
223
|
+
"""
|
|
224
|
+
minimum_amount: ListEntityMethodMinimumAmountTypedDict
|
|
225
|
+
r"""The minimum payment amount required to use this payment method."""
|
|
226
|
+
maximum_amount: Nullable[ListEntityMethodMaximumAmountTypedDict]
|
|
227
|
+
r"""The maximum payment amount allowed when using this payment method. If there is no method-specific maximum, `null`
|
|
228
|
+
is returned instead.
|
|
229
|
+
"""
|
|
230
|
+
image: ListEntityMethodImageTypedDict
|
|
231
|
+
r"""URLs of images representing the payment method."""
|
|
232
|
+
status: Nullable[MethodStatus]
|
|
233
|
+
r"""The payment method's activation status for this profile."""
|
|
234
|
+
links: ListEntityMethodLinksTypedDict
|
|
235
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
236
|
+
issuers: NotRequired[List[ListEntityMethodIssuerTypedDict]]
|
|
237
|
+
r"""**Optional include.** Array of objects for each 'issuer' that is available for this payment method. Only relevant
|
|
238
|
+
for iDEAL, KBC/CBC, gift cards, and vouchers.
|
|
239
|
+
"""
|
|
240
|
+
|
|
241
|
+
|
|
242
|
+
class ListEntityMethod(BaseModel):
|
|
243
|
+
resource: str
|
|
244
|
+
r"""Indicates the response contains a payment method object. Will always contain the string `method` for this
|
|
245
|
+
endpoint.
|
|
246
|
+
"""
|
|
247
|
+
|
|
248
|
+
id: Annotated[
|
|
249
|
+
Nullable[ListEntityMethodID], PlainValidator(validate_open_enum(False))
|
|
250
|
+
]
|
|
251
|
+
r"""The unique identifier of the payment method. When used during [payment creation](create-payment), the payment
|
|
252
|
+
method selection screen will be skipped.
|
|
253
|
+
"""
|
|
254
|
+
|
|
255
|
+
description: str
|
|
256
|
+
r"""The full name of the payment method.
|
|
257
|
+
|
|
258
|
+
If a `locale` parameter is provided, the name is translated to the given locale if possible.
|
|
259
|
+
"""
|
|
260
|
+
|
|
261
|
+
minimum_amount: Annotated[
|
|
262
|
+
ListEntityMethodMinimumAmount, pydantic.Field(alias="minimumAmount")
|
|
263
|
+
]
|
|
264
|
+
r"""The minimum payment amount required to use this payment method."""
|
|
265
|
+
|
|
266
|
+
maximum_amount: Annotated[
|
|
267
|
+
Nullable[ListEntityMethodMaximumAmount], pydantic.Field(alias="maximumAmount")
|
|
268
|
+
]
|
|
269
|
+
r"""The maximum payment amount allowed when using this payment method. If there is no method-specific maximum, `null`
|
|
270
|
+
is returned instead.
|
|
271
|
+
"""
|
|
272
|
+
|
|
273
|
+
image: ListEntityMethodImage
|
|
274
|
+
r"""URLs of images representing the payment method."""
|
|
275
|
+
|
|
276
|
+
status: Annotated[Nullable[MethodStatus], PlainValidator(validate_open_enum(False))]
|
|
277
|
+
r"""The payment method's activation status for this profile."""
|
|
278
|
+
|
|
279
|
+
links: Annotated[ListEntityMethodLinks, pydantic.Field(alias="_links")]
|
|
280
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
281
|
+
|
|
282
|
+
issuers: Optional[List[ListEntityMethodIssuer]] = None
|
|
283
|
+
r"""**Optional include.** Array of objects for each 'issuer' that is available for this payment method. Only relevant
|
|
284
|
+
for iDEAL, KBC/CBC, gift cards, and vouchers.
|
|
285
|
+
"""
|
|
286
|
+
|
|
287
|
+
@model_serializer(mode="wrap")
|
|
288
|
+
def serialize_model(self, handler):
|
|
289
|
+
optional_fields = ["issuers"]
|
|
290
|
+
nullable_fields = ["id", "maximumAmount", "status"]
|
|
291
|
+
null_default_fields = []
|
|
292
|
+
|
|
293
|
+
serialized = handler(self)
|
|
294
|
+
|
|
295
|
+
m = {}
|
|
296
|
+
|
|
297
|
+
for n, f in type(self).model_fields.items():
|
|
298
|
+
k = f.alias or n
|
|
299
|
+
val = serialized.get(k)
|
|
300
|
+
serialized.pop(k, None)
|
|
301
|
+
|
|
302
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
303
|
+
is_set = (
|
|
304
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
305
|
+
or k in null_default_fields
|
|
306
|
+
) # pylint: disable=no-member
|
|
307
|
+
|
|
308
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
309
|
+
m[k] = val
|
|
310
|
+
elif val != UNSET_SENTINEL and (
|
|
311
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
312
|
+
):
|
|
313
|
+
m[k] = val
|
|
314
|
+
|
|
315
|
+
return m
|
|
@@ -0,0 +1,391 @@
|
|
|
1
|
+
"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
from .amount import Amount, AmountTypedDict
|
|
5
|
+
from .method_status import MethodStatus
|
|
6
|
+
from .url import URL, URLTypedDict
|
|
7
|
+
from enum import Enum
|
|
8
|
+
from mollie import utils
|
|
9
|
+
from mollie.types import BaseModel, Nullable, OptionalNullable, UNSET, UNSET_SENTINEL
|
|
10
|
+
from mollie.utils import validate_open_enum
|
|
11
|
+
import pydantic
|
|
12
|
+
from pydantic import model_serializer
|
|
13
|
+
from pydantic.functional_validators import PlainValidator
|
|
14
|
+
from typing import List, Optional
|
|
15
|
+
from typing_extensions import Annotated, NotRequired, TypedDict
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
class ListEntityMethodAllID(str, Enum, metaclass=utils.OpenEnumMeta):
|
|
19
|
+
r"""The unique identifier of the payment method. When used during [payment creation](create-payment), the payment
|
|
20
|
+
method selection screen will be skipped.
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
ALMA = "alma"
|
|
24
|
+
APPLEPAY = "applepay"
|
|
25
|
+
BACS = "bacs"
|
|
26
|
+
BANCOMATPAY = "bancomatpay"
|
|
27
|
+
BANCONTACT = "bancontact"
|
|
28
|
+
BANKTRANSFER = "banktransfer"
|
|
29
|
+
BELFIUS = "belfius"
|
|
30
|
+
BILLIE = "billie"
|
|
31
|
+
BIZUM = "bizum"
|
|
32
|
+
BLIK = "blik"
|
|
33
|
+
CREDITCARD = "creditcard"
|
|
34
|
+
DIRECTDEBIT = "directdebit"
|
|
35
|
+
EPS = "eps"
|
|
36
|
+
GIFTCARD = "giftcard"
|
|
37
|
+
IDEAL = "ideal"
|
|
38
|
+
IN3 = "in3"
|
|
39
|
+
KBC = "kbc"
|
|
40
|
+
KLARNA = "klarna"
|
|
41
|
+
MBWAY = "mbway"
|
|
42
|
+
MOBILEPAY = "mobilepay"
|
|
43
|
+
MULTIBANCO = "multibanco"
|
|
44
|
+
MYBANK = "mybank"
|
|
45
|
+
PAYBYBANK = "paybybank"
|
|
46
|
+
PAYPAL = "paypal"
|
|
47
|
+
PAYSAFECARD = "paysafecard"
|
|
48
|
+
PRZELEWY24 = "przelewy24"
|
|
49
|
+
RIVERTY = "riverty"
|
|
50
|
+
SATISPAY = "satispay"
|
|
51
|
+
SWISH = "swish"
|
|
52
|
+
TRUSTLY = "trustly"
|
|
53
|
+
TWINT = "twint"
|
|
54
|
+
VIPPS = "vipps"
|
|
55
|
+
VOUCHER = "voucher"
|
|
56
|
+
|
|
57
|
+
|
|
58
|
+
class ListEntityMethodAllMinimumAmountTypedDict(TypedDict):
|
|
59
|
+
r"""The minimum payment amount required to use this payment method."""
|
|
60
|
+
|
|
61
|
+
currency: str
|
|
62
|
+
r"""A three-character ISO 4217 currency code."""
|
|
63
|
+
value: str
|
|
64
|
+
r"""A string containing an exact monetary amount in the given currency."""
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class ListEntityMethodAllMinimumAmount(BaseModel):
|
|
68
|
+
r"""The minimum payment amount required to use this payment method."""
|
|
69
|
+
|
|
70
|
+
currency: str
|
|
71
|
+
r"""A three-character ISO 4217 currency code."""
|
|
72
|
+
|
|
73
|
+
value: str
|
|
74
|
+
r"""A string containing an exact monetary amount in the given currency."""
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
class ListEntityMethodAllMaximumAmountTypedDict(TypedDict):
|
|
78
|
+
r"""The maximum payment amount allowed when using this payment method. If there is no method-specific maximum, `null`
|
|
79
|
+
is returned instead.
|
|
80
|
+
"""
|
|
81
|
+
|
|
82
|
+
currency: str
|
|
83
|
+
r"""A three-character ISO 4217 currency code."""
|
|
84
|
+
value: str
|
|
85
|
+
r"""A string containing an exact monetary amount in the given currency."""
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
class ListEntityMethodAllMaximumAmount(BaseModel):
|
|
89
|
+
r"""The maximum payment amount allowed when using this payment method. If there is no method-specific maximum, `null`
|
|
90
|
+
is returned instead.
|
|
91
|
+
"""
|
|
92
|
+
|
|
93
|
+
currency: str
|
|
94
|
+
r"""A three-character ISO 4217 currency code."""
|
|
95
|
+
|
|
96
|
+
value: str
|
|
97
|
+
r"""A string containing an exact monetary amount in the given currency."""
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
class ListEntityMethodAllImageTypedDict(TypedDict):
|
|
101
|
+
r"""URLs of images representing the payment method."""
|
|
102
|
+
|
|
103
|
+
size1x: str
|
|
104
|
+
r"""The URL pointing to an icon of 32 by 24 pixels."""
|
|
105
|
+
size2x: str
|
|
106
|
+
r"""The URL pointing to an icon of 64 by 48 pixels."""
|
|
107
|
+
svg: str
|
|
108
|
+
r"""The URL pointing to a vector version of the icon. Usage of this format is preferred, since the icon can
|
|
109
|
+
scale to any desired size without compromising visual quality.
|
|
110
|
+
"""
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
class ListEntityMethodAllImage(BaseModel):
|
|
114
|
+
r"""URLs of images representing the payment method."""
|
|
115
|
+
|
|
116
|
+
size1x: str
|
|
117
|
+
r"""The URL pointing to an icon of 32 by 24 pixels."""
|
|
118
|
+
|
|
119
|
+
size2x: str
|
|
120
|
+
r"""The URL pointing to an icon of 64 by 48 pixels."""
|
|
121
|
+
|
|
122
|
+
svg: str
|
|
123
|
+
r"""The URL pointing to a vector version of the icon. Usage of this format is preferred, since the icon can
|
|
124
|
+
scale to any desired size without compromising visual quality.
|
|
125
|
+
"""
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
class ListEntityMethodAllIssuerImageTypedDict(TypedDict):
|
|
129
|
+
r"""URLs of images representing the issuer.
|
|
130
|
+
required:
|
|
131
|
+
- size1x
|
|
132
|
+
- size2x
|
|
133
|
+
- svg
|
|
134
|
+
"""
|
|
135
|
+
|
|
136
|
+
size1x: NotRequired[str]
|
|
137
|
+
r"""The URL pointing to an icon of 32 by 24 pixels."""
|
|
138
|
+
size2x: NotRequired[str]
|
|
139
|
+
r"""The URL pointing to an icon of 64 by 48 pixels."""
|
|
140
|
+
svg: NotRequired[str]
|
|
141
|
+
r"""The URL pointing to a vector version of the icon. Usage of this format is preferred, since the icon can
|
|
142
|
+
scale to any desired size without compromising visual quality.
|
|
143
|
+
"""
|
|
144
|
+
|
|
145
|
+
|
|
146
|
+
class ListEntityMethodAllIssuerImage(BaseModel):
|
|
147
|
+
r"""URLs of images representing the issuer.
|
|
148
|
+
required:
|
|
149
|
+
- size1x
|
|
150
|
+
- size2x
|
|
151
|
+
- svg
|
|
152
|
+
"""
|
|
153
|
+
|
|
154
|
+
size1x: Optional[str] = None
|
|
155
|
+
r"""The URL pointing to an icon of 32 by 24 pixels."""
|
|
156
|
+
|
|
157
|
+
size2x: Optional[str] = None
|
|
158
|
+
r"""The URL pointing to an icon of 64 by 48 pixels."""
|
|
159
|
+
|
|
160
|
+
svg: Optional[str] = None
|
|
161
|
+
r"""The URL pointing to a vector version of the icon. Usage of this format is preferred, since the icon can
|
|
162
|
+
scale to any desired size without compromising visual quality.
|
|
163
|
+
"""
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
class ListEntityMethodAllIssuerTypedDict(TypedDict):
|
|
167
|
+
resource: str
|
|
168
|
+
id: str
|
|
169
|
+
name: str
|
|
170
|
+
r"""The full name of the issuer."""
|
|
171
|
+
image: ListEntityMethodAllIssuerImageTypedDict
|
|
172
|
+
r"""URLs of images representing the issuer.
|
|
173
|
+
required:
|
|
174
|
+
- size1x
|
|
175
|
+
- size2x
|
|
176
|
+
- svg
|
|
177
|
+
"""
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
class ListEntityMethodAllIssuer(BaseModel):
|
|
181
|
+
resource: str
|
|
182
|
+
|
|
183
|
+
id: str
|
|
184
|
+
|
|
185
|
+
name: str
|
|
186
|
+
r"""The full name of the issuer."""
|
|
187
|
+
|
|
188
|
+
image: ListEntityMethodAllIssuerImage
|
|
189
|
+
r"""URLs of images representing the issuer.
|
|
190
|
+
required:
|
|
191
|
+
- size1x
|
|
192
|
+
- size2x
|
|
193
|
+
- svg
|
|
194
|
+
"""
|
|
195
|
+
|
|
196
|
+
|
|
197
|
+
class ListEntityMethodAllLinksTypedDict(TypedDict):
|
|
198
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
199
|
+
|
|
200
|
+
self_: URLTypedDict
|
|
201
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
202
|
+
|
|
203
|
+
|
|
204
|
+
class ListEntityMethodAllLinks(BaseModel):
|
|
205
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
206
|
+
|
|
207
|
+
self_: Annotated[URL, pydantic.Field(alias="self")]
|
|
208
|
+
r"""In v2 endpoints, URLs are commonly represented as objects with an `href` and `type` field."""
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
class PricingTypedDict(TypedDict):
|
|
212
|
+
description: str
|
|
213
|
+
r"""A description of what the pricing applies to. For example, a specific country (`The Netherlands`) or a
|
|
214
|
+
category of cards (`American Express`). If a `locale` is provided, the description may be translated.
|
|
215
|
+
"""
|
|
216
|
+
fixed: AmountTypedDict
|
|
217
|
+
r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
|
|
218
|
+
variable: str
|
|
219
|
+
r"""The variable price charged per payment, as a percentage string."""
|
|
220
|
+
fee_region: NotRequired[Nullable[str]]
|
|
221
|
+
r"""Only present for credit card pricing. It will correspond with the `feeRegion` of credit card payments as
|
|
222
|
+
returned in the [Payments API](get-payment).
|
|
223
|
+
"""
|
|
224
|
+
|
|
225
|
+
|
|
226
|
+
class Pricing(BaseModel):
|
|
227
|
+
description: str
|
|
228
|
+
r"""A description of what the pricing applies to. For example, a specific country (`The Netherlands`) or a
|
|
229
|
+
category of cards (`American Express`). If a `locale` is provided, the description may be translated.
|
|
230
|
+
"""
|
|
231
|
+
|
|
232
|
+
fixed: Amount
|
|
233
|
+
r"""In v2 endpoints, monetary amounts are represented as objects with a `currency` and `value` field."""
|
|
234
|
+
|
|
235
|
+
variable: str
|
|
236
|
+
r"""The variable price charged per payment, as a percentage string."""
|
|
237
|
+
|
|
238
|
+
fee_region: Annotated[OptionalNullable[str], pydantic.Field(alias="feeRegion")] = (
|
|
239
|
+
UNSET
|
|
240
|
+
)
|
|
241
|
+
r"""Only present for credit card pricing. It will correspond with the `feeRegion` of credit card payments as
|
|
242
|
+
returned in the [Payments API](get-payment).
|
|
243
|
+
"""
|
|
244
|
+
|
|
245
|
+
@model_serializer(mode="wrap")
|
|
246
|
+
def serialize_model(self, handler):
|
|
247
|
+
optional_fields = ["feeRegion"]
|
|
248
|
+
nullable_fields = ["feeRegion"]
|
|
249
|
+
null_default_fields = []
|
|
250
|
+
|
|
251
|
+
serialized = handler(self)
|
|
252
|
+
|
|
253
|
+
m = {}
|
|
254
|
+
|
|
255
|
+
for n, f in type(self).model_fields.items():
|
|
256
|
+
k = f.alias or n
|
|
257
|
+
val = serialized.get(k)
|
|
258
|
+
serialized.pop(k, None)
|
|
259
|
+
|
|
260
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
261
|
+
is_set = (
|
|
262
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
263
|
+
or k in null_default_fields
|
|
264
|
+
) # pylint: disable=no-member
|
|
265
|
+
|
|
266
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
267
|
+
m[k] = val
|
|
268
|
+
elif val != UNSET_SENTINEL and (
|
|
269
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
270
|
+
):
|
|
271
|
+
m[k] = val
|
|
272
|
+
|
|
273
|
+
return m
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
class ListEntityMethodAllTypedDict(TypedDict):
|
|
277
|
+
resource: str
|
|
278
|
+
r"""Indicates the response contains a payment method object. Will always contain the string `method` for this
|
|
279
|
+
endpoint.
|
|
280
|
+
"""
|
|
281
|
+
id: Nullable[ListEntityMethodAllID]
|
|
282
|
+
r"""The unique identifier of the payment method. When used during [payment creation](create-payment), the payment
|
|
283
|
+
method selection screen will be skipped.
|
|
284
|
+
"""
|
|
285
|
+
description: str
|
|
286
|
+
r"""The full name of the payment method.
|
|
287
|
+
|
|
288
|
+
If a `locale` parameter is provided, the name is translated to the given locale if possible.
|
|
289
|
+
"""
|
|
290
|
+
minimum_amount: ListEntityMethodAllMinimumAmountTypedDict
|
|
291
|
+
r"""The minimum payment amount required to use this payment method."""
|
|
292
|
+
maximum_amount: Nullable[ListEntityMethodAllMaximumAmountTypedDict]
|
|
293
|
+
r"""The maximum payment amount allowed when using this payment method. If there is no method-specific maximum, `null`
|
|
294
|
+
is returned instead.
|
|
295
|
+
"""
|
|
296
|
+
image: ListEntityMethodAllImageTypedDict
|
|
297
|
+
r"""URLs of images representing the payment method."""
|
|
298
|
+
status: Nullable[MethodStatus]
|
|
299
|
+
r"""The payment method's activation status for this profile."""
|
|
300
|
+
links: ListEntityMethodAllLinksTypedDict
|
|
301
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
302
|
+
issuers: NotRequired[List[ListEntityMethodAllIssuerTypedDict]]
|
|
303
|
+
r"""**Optional include.** Array of objects for each 'issuer' that is available for this payment method. Only relevant
|
|
304
|
+
for iDEAL, KBC/CBC, gift cards, and vouchers.
|
|
305
|
+
"""
|
|
306
|
+
pricing: NotRequired[List[PricingTypedDict]]
|
|
307
|
+
r"""**Optional include.** Array of objects describing the pricing configuration applicable for this payment method on
|
|
308
|
+
your account.
|
|
309
|
+
"""
|
|
310
|
+
|
|
311
|
+
|
|
312
|
+
class ListEntityMethodAll(BaseModel):
|
|
313
|
+
resource: str
|
|
314
|
+
r"""Indicates the response contains a payment method object. Will always contain the string `method` for this
|
|
315
|
+
endpoint.
|
|
316
|
+
"""
|
|
317
|
+
|
|
318
|
+
id: Annotated[
|
|
319
|
+
Nullable[ListEntityMethodAllID], PlainValidator(validate_open_enum(False))
|
|
320
|
+
]
|
|
321
|
+
r"""The unique identifier of the payment method. When used during [payment creation](create-payment), the payment
|
|
322
|
+
method selection screen will be skipped.
|
|
323
|
+
"""
|
|
324
|
+
|
|
325
|
+
description: str
|
|
326
|
+
r"""The full name of the payment method.
|
|
327
|
+
|
|
328
|
+
If a `locale` parameter is provided, the name is translated to the given locale if possible.
|
|
329
|
+
"""
|
|
330
|
+
|
|
331
|
+
minimum_amount: Annotated[
|
|
332
|
+
ListEntityMethodAllMinimumAmount, pydantic.Field(alias="minimumAmount")
|
|
333
|
+
]
|
|
334
|
+
r"""The minimum payment amount required to use this payment method."""
|
|
335
|
+
|
|
336
|
+
maximum_amount: Annotated[
|
|
337
|
+
Nullable[ListEntityMethodAllMaximumAmount],
|
|
338
|
+
pydantic.Field(alias="maximumAmount"),
|
|
339
|
+
]
|
|
340
|
+
r"""The maximum payment amount allowed when using this payment method. If there is no method-specific maximum, `null`
|
|
341
|
+
is returned instead.
|
|
342
|
+
"""
|
|
343
|
+
|
|
344
|
+
image: ListEntityMethodAllImage
|
|
345
|
+
r"""URLs of images representing the payment method."""
|
|
346
|
+
|
|
347
|
+
status: Annotated[Nullable[MethodStatus], PlainValidator(validate_open_enum(False))]
|
|
348
|
+
r"""The payment method's activation status for this profile."""
|
|
349
|
+
|
|
350
|
+
links: Annotated[ListEntityMethodAllLinks, pydantic.Field(alias="_links")]
|
|
351
|
+
r"""An object with several relevant URLs. Every URL object will contain an `href` and a `type` field."""
|
|
352
|
+
|
|
353
|
+
issuers: Optional[List[ListEntityMethodAllIssuer]] = None
|
|
354
|
+
r"""**Optional include.** Array of objects for each 'issuer' that is available for this payment method. Only relevant
|
|
355
|
+
for iDEAL, KBC/CBC, gift cards, and vouchers.
|
|
356
|
+
"""
|
|
357
|
+
|
|
358
|
+
pricing: Optional[List[Pricing]] = None
|
|
359
|
+
r"""**Optional include.** Array of objects describing the pricing configuration applicable for this payment method on
|
|
360
|
+
your account.
|
|
361
|
+
"""
|
|
362
|
+
|
|
363
|
+
@model_serializer(mode="wrap")
|
|
364
|
+
def serialize_model(self, handler):
|
|
365
|
+
optional_fields = ["issuers", "pricing"]
|
|
366
|
+
nullable_fields = ["id", "maximumAmount", "status"]
|
|
367
|
+
null_default_fields = []
|
|
368
|
+
|
|
369
|
+
serialized = handler(self)
|
|
370
|
+
|
|
371
|
+
m = {}
|
|
372
|
+
|
|
373
|
+
for n, f in type(self).model_fields.items():
|
|
374
|
+
k = f.alias or n
|
|
375
|
+
val = serialized.get(k)
|
|
376
|
+
serialized.pop(k, None)
|
|
377
|
+
|
|
378
|
+
optional_nullable = k in optional_fields and k in nullable_fields
|
|
379
|
+
is_set = (
|
|
380
|
+
self.__pydantic_fields_set__.intersection({n})
|
|
381
|
+
or k in null_default_fields
|
|
382
|
+
) # pylint: disable=no-member
|
|
383
|
+
|
|
384
|
+
if val is not None and val != UNSET_SENTINEL:
|
|
385
|
+
m[k] = val
|
|
386
|
+
elif val != UNSET_SENTINEL and (
|
|
387
|
+
not k in optional_fields or (optional_nullable and is_set)
|
|
388
|
+
):
|
|
389
|
+
m[k] = val
|
|
390
|
+
|
|
391
|
+
return m
|