ClubManager.Api

<back to all web services

PaymentGatewayService.GetPaymentGatewayByIdRequest

Requires Authentication
The following routes are available for this service:
POST,GET/api/PaymentGateway/GetPaymentGatewayById
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

enum GatewayType
{
    Stripe,
    GoCardlessPro,
    Dfc,
    SmartDebit,
    Harlands,
    SageOne,
    NuPay,
    EFT,
    PesaPal,
    PayPalSms,
    PayChoiceCreditCard,
    PayChoiceBankAccount,
    eDebitCreditCard,
    eDebitBankAccount,
    DoBillingPayFastCreditCard,
    DoBillingNedBankEFTBankAccount,
    HarlandsCloud,
    IntegraPayCreditCard,
    IntegraPayBankAccount,
    Payfast,
}

class Configuration implements IConvertible
{
    bool? ShowConfirmation;
    bool? ShowBillingDetails;
    String? GatewayKey;
    bool? HideCvv;
    DateTime? MinimumAdultDateOfBirth;

    Configuration({this.ShowConfirmation,this.ShowBillingDetails,this.GatewayKey,this.HideCvv,this.MinimumAdultDateOfBirth});
    Configuration.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ShowConfirmation = json['ShowConfirmation'];
        ShowBillingDetails = json['ShowBillingDetails'];
        GatewayKey = json['GatewayKey'];
        HideCvv = json['HideCvv'];
        MinimumAdultDateOfBirth = JsonConverters.fromJson(json['MinimumAdultDateOfBirth'],'DateTime',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ShowConfirmation': ShowConfirmation,
        'ShowBillingDetails': ShowBillingDetails,
        'GatewayKey': GatewayKey,
        'HideCvv': HideCvv,
        'MinimumAdultDateOfBirth': JsonConverters.toJson(MinimumAdultDateOfBirth,'DateTime',context!)
    };

    getTypeName() => "Configuration";
    TypeContext? context = _ctx;
}

class Creditor implements IConvertible
{
    String? Id;
    List<Scheme>? Schemes;
    String? Name;
    String? AddressLine1;
    String? AddressLine2;
    String? AddressLine3;
    String? City;
    String? CountryCode;
    String? PostalCode;
    String? Region;
    String? TermsAndConditionsUrl;
    List<String>? Countries;

    Creditor({this.Id,this.Schemes,this.Name,this.AddressLine1,this.AddressLine2,this.AddressLine3,this.City,this.CountryCode,this.PostalCode,this.Region,this.TermsAndConditionsUrl,this.Countries});
    Creditor.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        Schemes = JsonConverters.fromJson(json['Schemes'],'List<Scheme>',context!);
        Name = json['Name'];
        AddressLine1 = json['AddressLine1'];
        AddressLine2 = json['AddressLine2'];
        AddressLine3 = json['AddressLine3'];
        City = json['City'];
        CountryCode = json['CountryCode'];
        PostalCode = json['PostalCode'];
        Region = json['Region'];
        TermsAndConditionsUrl = json['TermsAndConditionsUrl'];
        Countries = JsonConverters.fromJson(json['Countries'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'Schemes': JsonConverters.toJson(Schemes,'List<Scheme>',context!),
        'Name': Name,
        'AddressLine1': AddressLine1,
        'AddressLine2': AddressLine2,
        'AddressLine3': AddressLine3,
        'City': City,
        'CountryCode': CountryCode,
        'PostalCode': PostalCode,
        'Region': Region,
        'TermsAndConditionsUrl': TermsAndConditionsUrl,
        'Countries': JsonConverters.toJson(Countries,'List<String>',context!)
    };

    getTypeName() => "Creditor";
    TypeContext? context = _ctx;
}

class PaymentGateway implements IConvertible
{
    int? PaymentGatewayId;
    String? Name;
    String? Currency;
    String? TypeName;
    GatewayType? GatewayType;
    DateTime? Created;
    DateTime? AccountingStartDate;
    bool? IsDefault;
    bool? IsPublic;
    bool? Disabled;
    String? DisabledReason;
    Configuration? Configuration;
    Creditor? Creditor;
    bool? IsCreditCard;
    bool? IsClubManagerCreditCard;
    bool? IsDirectDebit;
    bool? HasSignUpLink;
    bool? CanProvidePaymentToken;
    bool? CanProvidePaymentRedirect;
    bool? CanImport;
    bool? CanSupplyRawData;
    bool? CanImportPaymentMethod;
    String? PublicTranslation;
    String? BankAccount;

    PaymentGateway({this.PaymentGatewayId,this.Name,this.Currency,this.TypeName,this.GatewayType,this.Created,this.AccountingStartDate,this.IsDefault,this.IsPublic,this.Disabled,this.DisabledReason,this.Configuration,this.Creditor,this.IsCreditCard,this.IsClubManagerCreditCard,this.IsDirectDebit,this.HasSignUpLink,this.CanProvidePaymentToken,this.CanProvidePaymentRedirect,this.CanImport,this.CanSupplyRawData,this.CanImportPaymentMethod,this.PublicTranslation,this.BankAccount});
    PaymentGateway.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        PaymentGatewayId = json['PaymentGatewayId'];
        Name = json['Name'];
        Currency = json['Currency'];
        TypeName = json['TypeName'];
        GatewayType = JsonConverters.fromJson(json['GatewayType'],'GatewayType',context!);
        Created = JsonConverters.fromJson(json['Created'],'DateTime',context!);
        AccountingStartDate = JsonConverters.fromJson(json['AccountingStartDate'],'DateTime',context!);
        IsDefault = json['IsDefault'];
        IsPublic = json['IsPublic'];
        Disabled = json['Disabled'];
        DisabledReason = json['DisabledReason'];
        Configuration = JsonConverters.fromJson(json['Configuration'],'Configuration',context!);
        Creditor = JsonConverters.fromJson(json['Creditor'],'Creditor',context!);
        IsCreditCard = json['IsCreditCard'];
        IsClubManagerCreditCard = json['IsClubManagerCreditCard'];
        IsDirectDebit = json['IsDirectDebit'];
        HasSignUpLink = json['HasSignUpLink'];
        CanProvidePaymentToken = json['CanProvidePaymentToken'];
        CanProvidePaymentRedirect = json['CanProvidePaymentRedirect'];
        CanImport = json['CanImport'];
        CanSupplyRawData = json['CanSupplyRawData'];
        CanImportPaymentMethod = json['CanImportPaymentMethod'];
        PublicTranslation = json['PublicTranslation'];
        BankAccount = json['BankAccount'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'PaymentGatewayId': PaymentGatewayId,
        'Name': Name,
        'Currency': Currency,
        'TypeName': TypeName,
        'GatewayType': JsonConverters.toJson(GatewayType,'GatewayType',context!),
        'Created': JsonConverters.toJson(Created,'DateTime',context!),
        'AccountingStartDate': JsonConverters.toJson(AccountingStartDate,'DateTime',context!),
        'IsDefault': IsDefault,
        'IsPublic': IsPublic,
        'Disabled': Disabled,
        'DisabledReason': DisabledReason,
        'Configuration': JsonConverters.toJson(Configuration,'Configuration',context!),
        'Creditor': JsonConverters.toJson(Creditor,'Creditor',context!),
        'IsCreditCard': IsCreditCard,
        'IsClubManagerCreditCard': IsClubManagerCreditCard,
        'IsDirectDebit': IsDirectDebit,
        'HasSignUpLink': HasSignUpLink,
        'CanProvidePaymentToken': CanProvidePaymentToken,
        'CanProvidePaymentRedirect': CanProvidePaymentRedirect,
        'CanImport': CanImport,
        'CanSupplyRawData': CanSupplyRawData,
        'CanImportPaymentMethod': CanImportPaymentMethod,
        'PublicTranslation': PublicTranslation,
        'BankAccount': BankAccount
    };

    getTypeName() => "PaymentGateway";
    TypeContext? context = _ctx;
}

class Scheme implements IConvertible
{
    String? Id;
    String? Reference;
    String? Email;
    String? PhoneNumber;

    Scheme({this.Id,this.Reference,this.Email,this.PhoneNumber});
    Scheme.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        Id = json['Id'];
        Reference = json['Reference'];
        Email = json['Email'];
        PhoneNumber = json['PhoneNumber'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'Id': Id,
        'Reference': Reference,
        'Email': Email,
        'PhoneNumber': PhoneNumber
    };

    getTypeName() => "Scheme";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'api.clubmanagercentral.com', types: <String, TypeInfo> {
    'GatewayType': TypeInfo(TypeOf.Enum, enumValues:GatewayType.values),
    'Configuration': TypeInfo(TypeOf.Class, create:() => Configuration()),
    'Creditor': TypeInfo(TypeOf.Class, create:() => Creditor()),
    'List<Scheme>': TypeInfo(TypeOf.Class, create:() => <Scheme>[]),
    'Scheme': TypeInfo(TypeOf.Class, create:() => Scheme()),
    'PaymentGateway': TypeInfo(TypeOf.Class, create:() => PaymentGateway()),
});

Dart PaymentGatewayService.GetPaymentGatewayByIdRequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /api/PaymentGateway/GetPaymentGatewayById HTTP/1.1 
Host: api.clubmanagercentral.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<PaymentGatewayService.GetPaymentGatewayByIdRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ClubManager.Api.Services">
  <PaymentGatewayId>0</PaymentGatewayId>
</PaymentGatewayService.GetPaymentGatewayByIdRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<PaymentGateway xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ClubManager.Interfaces.Models.PaymentGateway">
  <AccountingStartDate>0001-01-01T00:00:00</AccountingStartDate>
  <BankAccount>String</BankAccount>
  <BranchId>0</BranchId>
  <Created>0001-01-01T00:00:00</Created>
  <Creditor>
    <AddressLine1>String</AddressLine1>
    <AddressLine2>String</AddressLine2>
    <AddressLine3>String</AddressLine3>
    <City>String</City>
    <Countries xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:string>String</d3p1:string>
    </Countries>
    <CountryCode>String</CountryCode>
    <Id>String</Id>
    <Name>String</Name>
    <PostalCode>String</PostalCode>
    <Region>String</Region>
    <Schemes>
      <Scheme>
        <Email>String</Email>
        <Id>String</Id>
        <PhoneNumber>String</PhoneNumber>
        <Reference>String</Reference>
      </Scheme>
    </Schemes>
    <TermsAndConditionsUrl>String</TermsAndConditionsUrl>
  </Creditor>
  <Currency>String</Currency>
  <Disabled>false</Disabled>
  <DisabledReason>String</DisabledReason>
  <GatewayType>Stripe</GatewayType>
  <IsDefault>false</IsDefault>
  <IsPublic>false</IsPublic>
  <Metadata>String</Metadata>
  <Name>String</Name>
  <PaymentGatewayId>0</PaymentGatewayId>
  <Token>String</Token>
  <TypeName>String</TypeName>
</PaymentGateway>