""" Options: Date: 2025-02-05 11:57:40 Version: 5.140 Tip: To override a DTO option, remove "#" prefix before updating BaseUrl: https://api.clubmanagercentral.com #GlobalNamespace: #AddServiceStackTypes: True #AddResponseStatus: False #AddImplicitVersion: #AddDescriptionAsComments: True IncludeTypes: PaymentGatewayService.GetPaymentGatewayByIdRequest.* #ExcludeTypes: #DefaultImports: datetime,decimal,marshmallow.fields:*,servicestack:*,typing:*,dataclasses:dataclass/field,dataclasses_json:dataclass_json/LetterCase/Undefined/config,enum:Enum/IntEnum #DataClass: #DataClassJson: """ import datetime import decimal from marshmallow.fields import * from servicestack import * from typing import * from dataclasses import dataclass, field from dataclasses_json import dataclass_json, LetterCase, Undefined, config from enum import Enum, IntEnum class GatewayType(IntEnum): STRIPE = 1 GO_CARDLESS_PRO = 2 DFC = 3 SMART_DEBIT = 4 HARLANDS = 6 SAGE_ONE = 7 NU_PAY = 8 EFT = 9 PESA_PAL = 10 PAY_PAL_SMS = 12 PAY_CHOICE_CREDIT_CARD = 13 PAY_CHOICE_BANK_ACCOUNT = 14 E_DEBIT_CREDIT_CARD = 15 E_DEBIT_BANK_ACCOUNT = 16 DO_BILLING_PAY_FAST_CREDIT_CARD = 17 DO_BILLING_NED_BANK_E_F_T_BANK_ACCOUNT = 18 HARLANDS_CLOUD = 19 INTEGRA_PAY_CREDIT_CARD = 20 INTEGRA_PAY_BANK_ACCOUNT = 21 PAYFAST = 22 @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Configuration: show_confirmation: bool = False show_billing_details: bool = False gateway_key: Optional[str] = None hide_cvv: bool = False minimum_adult_date_of_birth: datetime.datetime = datetime.datetime(1, 1, 1) @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class Creditor: id: Optional[str] = None schemes: Optional[List[Scheme]] = None name: Optional[str] = None address_line1: Optional[str] = None address_line2: Optional[str] = None address_line3: Optional[str] = None city: Optional[str] = None country_code: Optional[str] = None postal_code: Optional[str] = None region: Optional[str] = None terms_and_conditions_url: Optional[str] = None countries: Optional[List[str]] = None @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class PaymentGateway: payment_gateway_id: int = 0 name: Optional[str] = None currency: Optional[str] = None type_name: Optional[str] = None gateway_type: Optional[GatewayType] = None created: datetime.datetime = datetime.datetime(1, 1, 1) accounting_start_date: datetime.datetime = datetime.datetime(1, 1, 1) is_default: bool = False is_public: bool = False disabled: bool = False disabled_reason: Optional[str] = None configuration: Optional[Configuration] = None creditor: Optional[Creditor] = None is_credit_card: bool = False is_club_manager_credit_card: bool = False is_direct_debit: bool = False has_sign_up_link: bool = False can_provide_payment_token: bool = False can_provide_payment_redirect: bool = False can_import: bool = False can_supply_raw_data: bool = False can_import_payment_method: bool = False public_translation: Optional[str] = None bank_account: Optional[str] = None # @Route("/api/PaymentGateway/GetPaymentGatewayById", "POST,GET") @dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE) @dataclass class GetPaymentGatewayByIdRequest(IReturn[PaymentGateway]): payment_gateway_id: int = 0