Autoboard Webservice v5.13.0.0

<back to all web services

ApplicationBoarding

json-app
Requires Authentication
The following routes are available for this service:
POST/ApplicationBoarding
namespace Autoboarding.Common

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<DataContract>]
    type ApplicationQueueStatus =
        | Queued = 0
        | StandardisedXML = 20
        | ReadyToDistribute = 40
        | AwaitingDistributeResponse = 60
        | ReadyToAutoboard = 80
        | ThrottleCheckPassed = 100
        | EligibilityCheckPassed = 300
        | SentToAutoboardService = 400
        | AutoboardingSuspended = 450
        | SuccessfullyBoarded = 500
        | QueueError = 1000
        | ThrottleCheckError = 1100
        | XMLStandardisationError = 1200
        | EligibilityCheckError = 1300
        | AutoboardingError = 1400
        | IneligibleThrottleLimit = 2100
        | IneligibleApplication = 2300

    [<DataContract>]
    type ApplicationBoardingStatus =
        | PENDING = 0
        | IN_PROGRESS = 5
        | FAILED = 9
        | COMPLETED = 10

    [<AllowNullLiteral>]
    type InitiateBoardingResponse() = 
        member val ApplicationGuid:Guid = new Guid() with get,set
        member val CSR:Int32 = new Int32() with get,set
        member val ApplicationQueueGuid:Nullable<Guid> = new Nullable<Guid>() with get,set
        member val QueueStatus:ApplicationQueueStatus = new ApplicationQueueStatus() with get,set
        member val BoardingStatus:Nullable<ApplicationBoardingStatus> = new Nullable<ApplicationBoardingStatus>() with get,set
        member val ErrorMessages:ResizeArray<String> = new ResizeArray<String>() with get,set

    type SourceSystemType =
        | MARS = 0
        | ASA = 1
        | OLS = 2
        | INASA = 3

    type CustomerType =
        | New = 0
        | Existing = 1
        | None = -1

    [<AllowNullLiteral>]
    type Partner() = 
        member val PartnerId:String = null with get,set
        member val PartnerName:String = null with get,set

    type PricingPackageType =
        | CustomUk = 0
        | MonthlyUk = 1
        | SimplicityUk = 2
        | PaygUk = 3
        | CustomRoi = 4
        | PaygeComUK = 5
        | None = -1

    type PreferredContactMethodType =
        | Email = 0
        | Telephone = 1
        | Any = 2

    [<AllowNullLiteral>]
    type ContactPerson() = 
        member val Title:String = null with get,set
        member val FirstName:String = null with get,set
        member val MiddleName:String = null with get,set
        member val LastName:String = null with get,set
        member val TelephoneNumber:String = null with get,set
        member val AltTelephoneNumber:String = null with get,set
        member val Email:String = null with get,set
        member val Position:String = null with get,set
        member val PreferredContactMethod:PreferredContactMethodType = new PreferredContactMethodType() with get,set
        member val PreferredContactBestTime:String = null with get,set

    [<AllowNullLiteral>]
    type AuthorisedSigner() = 
        inherit ContactPerson()
        member val DateOfBirth:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val CountryCode:String = null with get,set

    [<AllowNullLiteral>]
    type AccessibilityOptions() = 
        member val AudiotapeRequired:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val LargePrintRequired:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val UncontractedBrailleGrade1Required:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val UncontractedBrailleGrade2Required:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val NextGenerationTextRequired:Nullable<Boolean> = new Nullable<Boolean>() with get,set

    [<AllowNullLiteral>]
    type ApplicationDetails() = 
        member val SourceSystem:SourceSystemType = new SourceSystemType() with get,set
        member val SourceSystemIdentifier:String = null with get,set
        member val CustomerType:CustomerType = new CustomerType() with get,set
        member val Csr:String = null with get,set
        member val Partner:Partner = null with get,set
        member val SellerCode:String = null with get,set
        member val PricingPackage:PricingPackageType = new PricingPackageType() with get,set
        member val ContactPerson:AuthorisedSigner = null with get,set
        member val SpecialInstructions:String = null with get,set
        member val OfferDetails:String = null with get,set
        member val DateContractAccepted:DateTime = new DateTime() with get,set
        member val WorldpayBusinessFinanceInterest:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val Sar:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val SellerEmail:String = null with get,set
        member val AnticipatedGoLiveDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val AccessibilityOptions:AccessibilityOptions = null with get,set
        member val UltimateParentId:String = null with get,set

    [<AllowNullLiteral>]
    type Address() = 
        member val Address1:String = null with get,set
        member val Address2:String = null with get,set
        member val Address3:String = null with get,set
        member val Postcode:String = null with get,set
        member val City:String = null with get,set
        member val State:String = null with get,set
        member val Countrycode:String = null with get,set

    [<AllowNullLiteral>]
    type BusinessAddress() = 
        inherit Address()
        member val IsCommercial:Nullable<Boolean> = new Nullable<Boolean>() with get,set

    type CompanyType =
        | SoleTrader = 0
        | Partnership = 1
        | LimitedCompany = 2
        | Trust = 3
        | RegisteredCharity = 4
        | PublicLimitedCompany = 5
        | LimitedByGuarantee = 6
        | ClubSocietyAssociation = 7
        | CommunityInterestCompanyOrIndustrialProvident = 8
        | LimitedLiabilityPartnership = 9
        | Other = 10

    [<AllowNullLiteral>]
    type Financials() = 
        member val Annual:Decimal = new Decimal() with get,set
        member val CardPercentage:Decimal = new Decimal() with get,set
        member val CreditCardPercentage:Decimal = new Decimal() with get,set
        member val AverageTransactionValue:Decimal = new Decimal() with get,set

    [<AllowNullLiteral>]
    type TradeAssociation() = 
        member val GroupName:String = null with get,set
        member val MemberNumber:String = null with get,set

    [<AllowNullLiteral>]
    type Business() = 
        member val LegalName:String = null with get,set
        member val LegalAddress:BusinessAddress = null with get,set
        member val WebsiteAddress:String = null with get,set
        member val CompanyType:CompanyType = new CompanyType() with get,set
        member val CompanyTypeOther:String = null with get,set
        member val CompanyRegistrationNumber:String = null with get,set
        member val CharityNumber:String = null with get,set
        member val MerchantCategoryCode:String = null with get,set
        member val MerchantCategoryDescription:String = null with get,set
        member val DescriptionOfGoodsAndServices:String = null with get,set
        member val VatNumber:String = null with get,set
        member val DateStartedTrading:Nullable<DateTime> = new Nullable<DateTime>() with get,set
        member val CountryOfIncorporation:String = null with get,set
        member val RegionOfIncorporation:String = null with get,set
        member val Financials:Financials = null with get,set
        member val NewToCards:Boolean = new Boolean() with get,set
        member val TradeAssociation:TradeAssociation = null with get,set

    [<AllowNullLiteral>]
    type PrincipalAddress() = 
        inherit Address()
        member val StartDate:DateTime = new DateTime() with get,set
        member val EndDate:Nullable<DateTime> = new Nullable<DateTime>() with get,set

    type PositionType =
        | SoleTrader = 0
        | Partner = 1
        | Director = 2
        | CompanySecretary = 3
        | ChiefFinancialOfficer = 4
        | Chairman = 5
        | DesignatedBoardMember = 7
        | Settlor = 8
        | Treasurer = 9
        | Trustee = 10
        | ChiefExecutive = 11
        | AuthorisedPersonWithConsent = 12
        | NonExecutiveDirector = 13
        | ContactPerson = 14
        | Shareholder = 15

    [<AllowNullLiteral>]
    type Principal() = 
        member val Title:String = null with get,set
        member val FirstName:String = null with get,set
        member val MiddleName:String = null with get,set
        member val LastName:String = null with get,set
        member val DateOfBirth:DateTime = new DateTime() with get,set
        member val Nationality:String = null with get,set
        member val HomeAddresses:IEnumerable<PrincipalAddress> = null with get,set
        member val OwnershipPercentage:Decimal = new Decimal() with get,set
        member val Position:PositionType = new PositionType() with get,set
        member val IsFinancialController:Nullable<Boolean> = new Nullable<Boolean>() with get,set

    [<AllowNullLiteral>]
    type BankAccount() = 
        member val SortCode:String = null with get,set
        member val AccountNumber:String = null with get,set
        member val BankName:String = null with get,set
        member val BankAccountName:String = null with get,set

    [<AllowNullLiteral>]
    type ClearingDetails() = 
        member val MerchantUrl:String = null with get,set
        member val Telephone:String = null with get,set
        member val Email:String = null with get,set

    [<AllowNullLiteral>]
    type OutletAllocatedProduct() = 
        member val Id:Int32 = new Int32() with get,set
        member val Quantity:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type Outlet() = 
        member val TradingName:String = null with get,set
        member val TradingAddress:BusinessAddress = null with get,set
        member val ContactPerson:ContactPerson = null with get,set
        member val TerminalDeliveryAddress:BusinessAddress = null with get,set
        member val CorrespondenceAddress:BusinessAddress = null with get,set
        member val SettlementBankAccount:BankAccount = null with get,set
        member val ChargesBankAccount:BankAccount = null with get,set
        member val DirectDebitCorrespondenceEmail:String = null with get,set
        member val ClearingDetails:ClearingDetails = null with get,set
        member val ProductAllocation:IEnumerable<OutletAllocatedProduct> = null with get,set

    [<AllowNullLiteral>]
    type Deposits() = 
        member val Accepted:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val PerOfSalesWhereInitialDepositTaken:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val SizePercOfTotalValue:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val AvgTimeBeforeDeliveryTaken:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val AvgTimeBeforeDeliveryBalanceTaken:Nullable<Int32> = new Nullable<Int32>() with get,set

    [<AllowNullLiteral>]
    type WarrantiesAndGuarantees() = 
        member val LevyCharge:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val PercCardTurnover:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val AvgLengthInMonths:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val PercGoodsReturned:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val ThirdPartyProviders:String = null with get,set

    [<AllowNullLiteral>]
    type Prepayments() = 
        member val FullPaymentAcceptedPriorToSupply:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val PercGoodsWherePaymentTakenPriorToDelivery:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val AvgDaysPaymentTakenInAdvance:Nullable<Int32> = new Nullable<Int32>() with get,set

    [<AllowNullLiteral>]
    type MembershipsSubscriptionAndInsurancePremiums() = 
        member val LevyCharge:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val PercCardTurnover:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val AvgLengthInMonths:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val MembershipCost:Nullable<Decimal> = new Nullable<Decimal>() with get,set

    [<AllowNullLiteral>]
    type GoodsAndServices() = 
        member val GoodsProvidedByThirdParty:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val Deposits:Deposits = null with get,set
        member val WarrantiesAndGuarantees:WarrantiesAndGuarantees = null with get,set
        member val Prepayments:Prepayments = null with get,set
        member val MembershipsSubscriptionAndInsurancePremiums:MembershipsSubscriptionAndInsurancePremiums = null with get,set
        member val StockHeldAtAnotherAddressLocation:Address = null with get,set

    [<AllowNullLiteral>]
    type MerchantDetails() = 
        member val Business:Business = null with get,set
        member val Principals:IEnumerable<Principal> = null with get,set
        member val Outlets:IEnumerable<Outlet> = null with get,set
        member val GoodsAndServices:GoodsAndServices = null with get,set

    type CardType =
        | VisaDebit = 0
        | VisaCredit = 1
        | VisaCommercial = 2
        | MastercardDebit = 3
        | MastercardCredit = 4
        | MastercardCommercial = 5
        | MastercardWorldSignia = 6
        | JcbCredit = 7
        | JcbDebit = 8
        | JcbCommercial = 9
        | DinersDiscoverCredit = 10
        | DinersDiscoverDebit = 11
        | DinersDiscoverCommercial = 12
        | Amex = 13
        | ChinaUnionPayCredit = 14
        | ChinaUnionPayDebit = 15
        | ChinaUnionPayCommercial = 16
        | VisaBusinessDebit = 17
        | MastercardBusiness = 18

    [<AllowNullLiteral>]
    type RateChargePair() = 
        member val Percent:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val Cost:Nullable<Decimal> = new Nullable<Decimal>() with get,set

    [<AllowNullLiteral>]
    type CardCharge() = 
        member val CardType:CardType = new CardType() with get,set
        member val Purchase:RateChargePair = null with get,set
        member val Refund:RateChargePair = null with get,set

    type PremiumTransactionChargeType =
        | Magstripe = 0
        | CnpMoto = 1
        | Paper = 2
        | PanKeyEntry = 3
        | SecureEcom = 4
        | NonSecureEcom = 5
        | InterRegional = 6
        | IntraRegional = 7
        | NonAuth = 8

    [<AllowNullLiteral>]
    type PremiumTransactionCharge() = 
        member val Type:PremiumTransactionChargeType = new PremiumTransactionChargeType() with get,set
        member val CreditCard:RateChargePair = null with get,set
        member val DebitCard:RateChargePair = null with get,set

    type AdditionalTarrifType =
        | NameAndAddressCheck = 0
        | Auth = 1
        | chargeback = 2
        | Mmsc = 3
        | PaperStatement = 4
        | PciVerbalAssessment = 5
        | PciIpScan = 6
        | PciNonCompliance = 7
        | PciSaferPaymentsPlus = 8
        | JoiningFee = 9
        | PayMonthlyAcquiringFee = 10
        | PciSaferPayments = 11

    [<AllowNullLiteral>]
    type AdditionalTarrif() = 
        member val Type:AdditionalTarrifType = new AdditionalTarrifType() with get,set
        member val Cost:Decimal = new Decimal() with get,set

    [<AllowNullLiteral>]
    type Rates() = 
        member val CardCharges:IEnumerable<CardCharge> = null with get,set
        member val PremiumTransactionCharges:IEnumerable<PremiumTransactionCharge> = null with get,set
        member val AdditionalTarrifs:IEnumerable<AdditionalTarrif> = null with get,set

    [<AllowNullLiteral>]
    type Cnp() = 
        member val Required:Boolean = new Boolean() with get,set
        member val Percentage:Decimal = new Decimal() with get,set

    [<AllowNullLiteral>]
    type Amex() = 
        member val Required:Boolean = new Boolean() with get,set
        member val ExistingAmexNumber:String = null with get,set

    [<AllowNullLiteral>]
    type Services() = 
        member val Cnp:Cnp = null with get,set
        member val Amex:Amex = null with get,set
        member val CashbackRequired:Boolean = new Boolean() with get,set
        member val WorldpayDashboardRequired:Boolean = new Boolean() with get,set
        member val PaperInvoicingRequired:Boolean = new Boolean() with get,set

    type CurrencyCodeType =
        | GBP = 0
        | EUR = 1
        | USD = 2
        | AED = 3
        | AFN = 4
        | ALL = 5
        | AMD = 6
        | ANG = 7
        | AOA = 8
        | ARS = 9
        | AUD = 10
        | AWG = 11
        | AZN = 12
        | BAM = 13
        | BBD = 14
        | BDT = 15
        | BGN = 16
        | BHD = 17
        | BIF = 18
        | BMD = 19
        | BND = 20
        | BOB = 21
        | BRL = 22
        | BSD = 23
        | BTN = 24
        | BWP = 25
        | BYR = 26
        | BZD = 27
        | CAD = 28
        | CDF = 29
        | CHF = 30
        | CLP = 31
        | CNY = 32
        | COP = 33
        | COU = 34
        | CRC = 35
        | CUC = 36
        | CUP = 37
        | CVE = 38
        | CZK = 39
        | DJF = 40
        | DKK = 41
        | DOP = 42
        | DZD = 43
        | EEK = 44
        | EGP = 45
        | ERN = 46
        | ETB = 47
        | FJD = 48
        | FKP = 49
        | GEL = 50
        | GHS = 51
        | GIP = 52
        | GMD = 53
        | GNF = 54
        | GTQ = 55
        | GYD = 56
        | HKD = 57
        | HNL = 58
        | HRK = 59
        | HTG = 60
        | HUF = 61
        | IDR = 62
        | ILS = 63
        | INR = 64
        | IQD = 65
        | IRR = 66
        | ISK = 67
        | JMD = 68
        | JOD = 69
        | JPY = 70
        | KES = 71
        | KGS = 72
        | KHR = 73
        | KMF = 74
        | KPW = 75
        | KRW = 76
        | KWD = 77
        | KYD = 78
        | KZT = 79
        | LAK = 80
        | LBP = 81
        | LKR = 82
        | LRD = 83
        | LSL = 84
        | LTL = 85
        | LVL = 86
        | LYD = 87
        | MAD = 88
        | MDL = 89
        | MGA = 90
        | MKD = 91
        | MMK = 92
        | MNT = 93
        | MOP = 94
        | MRO = 95
        | MUR = 96
        | MVR = 97
        | MWK = 98
        | MXN = 99
        | MYR = 100
        | MZN = 101
        | NAD = 102
        | NGN = 103
        | NIO = 104
        | NOK = 105
        | NPR = 106
        | NZD = 107
        | OMR = 108
        | PAB = 109
        | PEN = 110
        | PGK = 111
        | PHP = 112
        | PKR = 113
        | PLN = 114
        | PYG = 115
        | QAR = 116
        | RON = 117
        | RSD = 118
        | RUB = 119
        | RWF = 120
        | SAR = 121
        | SBD = 122
        | SCR = 123
        | SDG = 124
        | SEK = 125
        | SGD = 126
        | SHP = 127
        | SLL = 128
        | SOS = 129
        | SRD = 130
        | STD = 131
        | SYP = 132
        | SZL = 133
        | THB = 134
        | TJS = 135
        | TMT = 136
        | TND = 137
        | TOP = 138
        | TRY = 139
        | TTD = 140
        | TWD = 141
        | TZS = 142
        | UAH = 143
        | UGX = 144
        | UYU = 145
        | UZS = 146
        | VEF = 147
        | VND = 148
        | VUV = 149
        | WST = 150
        | YER = 151
        | ZAR = 152
        | ZMK = 153
        | ZWL = 154

    [<AllowNullLiteral>]
    type TradingCurrency() = 
        member val TransactionCurrencies:IEnumerable<CurrencyCodeType> = null with get,set
        member val SettlementCurrency:CurrencyCodeType = new CurrencyCodeType() with get,set
        member val SettlementBankSwift:String = null with get,set
        member val SettlementBankIban:String = null with get,set

    [<AllowNullLiteral>]
    type Acquiring() = 
        member val SettlementPeriodTPlus:Int32 = new Int32() with get,set
        member val Rates:Rates = null with get,set
        member val Services:Services = null with get,set
        member val TradingCurrencies:IEnumerable<TradingCurrency> = null with get,set

    type PosProductType =
        | Mobile = 0
        | Wifi = 1
        | Bluetooth = 2
        | Fixed = 3
        | PosMidOnly = 4

    type ProductFeeType =
        | HireCost = 0
        | TransactionCost = 1
        | ServiceFee = 2
        | ManagedServiceSetup = 3
        | ManagedServiceMonthly = 4

    [<AllowNullLiteral>]
    type ProductFee() = 
        member val Type:ProductFeeType = new ProductFeeType() with get,set
        member val Cost:Decimal = new Decimal() with get,set

    type PosProductOptionType =
        | PSP = 0

    [<AllowNullLiteral>]
    type PosProductOption() = 
        member val Type:PosProductOptionType = new PosProductOptionType() with get,set
        member val Value:String = null with get,set

    [<AllowNullLiteral>]
    type PosProduct() = 
        member val Id:Int32 = new Int32() with get,set
        member val Type:PosProductType = new PosProductType() with get,set
        member val Quantity:Int32 = new Int32() with get,set
        member val RelatedFees:IEnumerable<ProductFee> = null with get,set
        member val Options:IEnumerable<PosProductOption> = null with get,set

    [<AllowNullLiteral>]
    type PosProducts() = 
        member val Term:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val RenewalLength:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Products:IEnumerable<PosProduct> = null with get,set

    type EcomProductType =
        | Gateway = 0
        | VirtualTerminal = 1
        | PayByLink = 2
        | EcomMidOnly = 3

    type EcomProductOptionType =
        | PSP = 0
        | FreeTransactions = 1

    [<AllowNullLiteral>]
    type EcomProductOption() = 
        member val Type:EcomProductOptionType = new EcomProductOptionType() with get,set
        member val Value:String = null with get,set

    [<AllowNullLiteral>]
    type EcomProduct() = 
        member val Id:Int32 = new Int32() with get,set
        member val Type:EcomProductType = new EcomProductType() with get,set
        member val Quantity:Int32 = new Int32() with get,set
        member val RelatedFees:IEnumerable<ProductFee> = null with get,set
        member val Options:IEnumerable<EcomProductOption> = null with get,set

    type EcomOptionType =
        | Paypal = 0
        | FuturePay = 1
        | RMM = 2

    [<AllowNullLiteral>]
    type EcomOption() = 
        member val Type:EcomOptionType = new EcomOptionType() with get,set
        member val RelatedFees:IEnumerable<ProductFee> = null with get,set

    [<AllowNullLiteral>]
    type EcomProducts() = 
        member val Term:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val RenewalLength:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Products:IEnumerable<EcomProduct> = null with get,set
        member val Options:IEnumerable<EcomOption> = null with get,set

    [<AllowNullLiteral>]
    type IspContact() = 
        member val Title:String = null with get,set
        member val FirstName:String = null with get,set
        member val LastName:String = null with get,set
        member val Position:String = null with get,set
        member val EmailAddress:String = null with get,set

    [<AllowNullLiteral>]
    type IntegratedSolutionProvider() = 
        member val Name:String = null with get,set
        member val Address:Address = null with get,set
        member val Telephone:String = null with get,set
        member val PrimaryContact:IspContact = null with get,set
        member val TechnicalContact:IspContact = null with get,set
        member val ProviderType:String = null with get,set
        member val ProviderSoftware:String = null with get,set

    type WptProductType =
        | VerifoneP400 = 0
        | IngenicoWL258 = 1
        | VerifoneV240 = 2

    type WptVariantType =
        | Serial = 0
        | Usb = 1
        | Ethernet = 2
        | None = 3

    [<AllowNullLiteral>]
    type WptProduct() = 
        member val Type:WptProductType = new WptProductType() with get,set
        member val Id:Int32 = new Int32() with get,set
        member val Variant:Nullable<WptVariantType> = new Nullable<WptVariantType>() with get,set
        member val Quantity:Int32 = new Int32() with get,set
        member val RelatedFees:IEnumerable<ProductFee> = null with get,set

    [<AllowNullLiteral>]
    type WptProducts() = 
        member val Term:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val RenewalLength:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val PosInstallationDate:DateTime = new DateTime() with get,set
        member val IntegratedSolutionProvider:IntegratedSolutionProvider = null with get,set
        member val Products:IEnumerable<WptProduct> = null with get,set

    type IpProductType =
        | PaxA920 = 0
        | MiuraM020 = 1

    type IpVariantType =
        | Sdk = 0
        | Cloud = 1
        | None = 2

    [<AllowNullLiteral>]
    type IpProduct() = 
        member val Id:Int32 = new Int32() with get,set
        member val Type:IpProductType = new IpProductType() with get,set
        member val Quantity:Int32 = new Int32() with get,set
        member val RelatedFees:IEnumerable<ProductFee> = null with get,set
        member val Variant:Nullable<IpVariantType> = new Nullable<IpVariantType>() with get,set

    [<AllowNullLiteral>]
    type IpProducts() = 
        member val Term:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val RenewalLength:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val IntegratedSolutionProvider:IntegratedSolutionProvider = null with get,set
        member val Products:IEnumerable<IpProduct> = null with get,set

    [<AllowNullLiteral>]
    type Products() = 
        member val PosProducts:PosProducts = null with get,set
        member val EcomProducts:EcomProducts = null with get,set
        member val WptProducts:WptProducts = null with get,set
        member val IpProducts:IpProducts = null with get,set

    [<AllowNullLiteral>]
    type Application() = 
        member val ApplicationDetails:ApplicationDetails = null with get,set
        member val MerchantDetails:MerchantDetails = null with get,set
        member val Acquiring:Acquiring = null with get,set
        member val Products:Products = null with get,set

    [<AllowNullLiteral>]
    type ApplicationBoarding() = 
        member val CorrelationId:Guid = new Guid() with get,set
        member val Csr:Int32 = new Int32() with get,set
        member val SellerCode:String = null with get,set
        member val SellerEmail:String = null with get,set
        member val ApplicationSource:Int32 = new Int32() with get,set
        member val ApplicationJson:Application = null with get,set

F# ApplicationBoarding 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 /ApplicationBoarding HTTP/1.1 
Host: abservice-test.worldpay.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<ApplicationBoarding xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Autoboarding.Common.Requests">
  <ApplicationJson xmlns:d2p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding">
    <d2p1:Acquiring xmlns:d3p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.Acquiring">
      <d3p1:Rates>
        <d3p1:AdditionalTarrifs i:nil="true" />
        <d3p1:CardCharges i:nil="true" />
        <d3p1:PremiumTransactionCharges i:nil="true" />
      </d3p1:Rates>
      <d3p1:Services xmlns:d4p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.Acquiring.Services">
        <d4p1:Amex>
          <d4p1:ExistingAmexNumber>String</d4p1:ExistingAmexNumber>
          <d4p1:Required>false</d4p1:Required>
        </d4p1:Amex>
        <d4p1:CashbackRequired>false</d4p1:CashbackRequired>
        <d4p1:Cnp>
          <d4p1:Percentage>0</d4p1:Percentage>
          <d4p1:Required>false</d4p1:Required>
        </d4p1:Cnp>
        <d4p1:PaperInvoicingRequired>false</d4p1:PaperInvoicingRequired>
        <d4p1:WorldpayDashboardRequired>false</d4p1:WorldpayDashboardRequired>
      </d3p1:Services>
      <d3p1:SettlementPeriodTPlus>0</d3p1:SettlementPeriodTPlus>
      <d3p1:TradingCurrencies i:nil="true" />
    </d2p1:Acquiring>
    <d2p1:ApplicationDetails>
      <d2p1:AccessibilityOptions>
        <d2p1:AudiotapeRequired>false</d2p1:AudiotapeRequired>
        <d2p1:LargePrintRequired>false</d2p1:LargePrintRequired>
        <d2p1:NextGenerationTextRequired>false</d2p1:NextGenerationTextRequired>
        <d2p1:UncontractedBrailleGrade1Required>false</d2p1:UncontractedBrailleGrade1Required>
        <d2p1:UncontractedBrailleGrade2Required>false</d2p1:UncontractedBrailleGrade2Required>
      </d2p1:AccessibilityOptions>
      <d2p1:AnticipatedGoLiveDate>0001-01-01T00:00:00</d2p1:AnticipatedGoLiveDate>
      <d2p1:ContactPerson xmlns:d4p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.BusinessDetails">
        <d4p1:AltTelephoneNumber>String</d4p1:AltTelephoneNumber>
        <d4p1:Email>String</d4p1:Email>
        <d4p1:FirstName>String</d4p1:FirstName>
        <d4p1:LastName>String</d4p1:LastName>
        <d4p1:MiddleName>String</d4p1:MiddleName>
        <d4p1:Position>String</d4p1:Position>
        <d4p1:PreferredContactBestTime>String</d4p1:PreferredContactBestTime>
        <d4p1:PreferredContactMethod>Email</d4p1:PreferredContactMethod>
        <d4p1:TelephoneNumber>String</d4p1:TelephoneNumber>
        <d4p1:Title>String</d4p1:Title>
        <d4p1:CountryCode>String</d4p1:CountryCode>
        <d4p1:DateOfBirth>0001-01-01T00:00:00</d4p1:DateOfBirth>
      </d2p1:ContactPerson>
      <d2p1:Csr>String</d2p1:Csr>
      <d2p1:CustomerType>New</d2p1:CustomerType>
      <d2p1:DateContractAccepted>0001-01-01T00:00:00</d2p1:DateContractAccepted>
      <d2p1:OfferDetails>String</d2p1:OfferDetails>
      <d2p1:Partner>
        <d2p1:PartnerId>String</d2p1:PartnerId>
        <d2p1:PartnerName>String</d2p1:PartnerName>
      </d2p1:Partner>
      <d2p1:PricingPackage>CustomUk</d2p1:PricingPackage>
      <d2p1:Sar>false</d2p1:Sar>
      <d2p1:SellerCode>String</d2p1:SellerCode>
      <d2p1:SellerEmail>String</d2p1:SellerEmail>
      <d2p1:SourceSystem>MARS</d2p1:SourceSystem>
      <d2p1:SourceSystemIdentifier>String</d2p1:SourceSystemIdentifier>
      <d2p1:SpecialInstructions>String</d2p1:SpecialInstructions>
      <d2p1:UltimateParentId>String</d2p1:UltimateParentId>
      <d2p1:WorldpayBusinessFinanceInterest>false</d2p1:WorldpayBusinessFinanceInterest>
    </d2p1:ApplicationDetails>
    <d2p1:MerchantDetails xmlns:d3p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.BusinessDetails">
      <d3p1:Business>
        <d3p1:CharityNumber>String</d3p1:CharityNumber>
        <d3p1:CompanyRegistrationNumber>String</d3p1:CompanyRegistrationNumber>
        <d3p1:CompanyType>SoleTrader</d3p1:CompanyType>
        <d3p1:CompanyTypeOther>String</d3p1:CompanyTypeOther>
        <d3p1:CountryOfIncorporation>String</d3p1:CountryOfIncorporation>
        <d3p1:DateStartedTrading>0001-01-01T00:00:00</d3p1:DateStartedTrading>
        <d3p1:DescriptionOfGoodsAndServices>String</d3p1:DescriptionOfGoodsAndServices>
        <d3p1:Financials>
          <d3p1:Annual>0</d3p1:Annual>
          <d3p1:AverageTransactionValue>0</d3p1:AverageTransactionValue>
          <d3p1:CardPercentage>0</d3p1:CardPercentage>
          <d3p1:CreditCardPercentage>0</d3p1:CreditCardPercentage>
        </d3p1:Financials>
        <d3p1:LegalAddress>
          <d3p1:Address1>String</d3p1:Address1>
          <d3p1:Address2>String</d3p1:Address2>
          <d3p1:Address3>String</d3p1:Address3>
          <d3p1:City>String</d3p1:City>
          <d3p1:Countrycode>String</d3p1:Countrycode>
          <d3p1:Postcode>String</d3p1:Postcode>
          <d3p1:State>String</d3p1:State>
          <d3p1:IsCommercial>false</d3p1:IsCommercial>
        </d3p1:LegalAddress>
        <d3p1:LegalName>String</d3p1:LegalName>
        <d3p1:MerchantCategoryCode>String</d3p1:MerchantCategoryCode>
        <d3p1:MerchantCategoryDescription>String</d3p1:MerchantCategoryDescription>
        <d3p1:NewToCards>false</d3p1:NewToCards>
        <d3p1:RegionOfIncorporation>String</d3p1:RegionOfIncorporation>
        <d3p1:TradeAssociation>
          <d3p1:GroupName>String</d3p1:GroupName>
          <d3p1:MemberNumber>String</d3p1:MemberNumber>
        </d3p1:TradeAssociation>
        <d3p1:VatNumber>String</d3p1:VatNumber>
        <d3p1:WebsiteAddress>String</d3p1:WebsiteAddress>
      </d3p1:Business>
      <d3p1:GoodsAndServices xmlns:d4p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.BusinessDetails.GoodsAndServices">
        <d4p1:Deposits>
          <d4p1:Accepted>false</d4p1:Accepted>
          <d4p1:AvgTimeBeforeDeliveryBalanceTaken>0</d4p1:AvgTimeBeforeDeliveryBalanceTaken>
          <d4p1:AvgTimeBeforeDeliveryTaken>0</d4p1:AvgTimeBeforeDeliveryTaken>
          <d4p1:PerOfSalesWhereInitialDepositTaken>0</d4p1:PerOfSalesWhereInitialDepositTaken>
          <d4p1:SizePercOfTotalValue>0</d4p1:SizePercOfTotalValue>
        </d4p1:Deposits>
        <d4p1:GoodsProvidedByThirdParty>false</d4p1:GoodsProvidedByThirdParty>
        <d4p1:MembershipsSubscriptionAndInsurancePremiums>
          <d4p1:AvgLengthInMonths>0</d4p1:AvgLengthInMonths>
          <d4p1:LevyCharge>false</d4p1:LevyCharge>
          <d4p1:MembershipCost>0</d4p1:MembershipCost>
          <d4p1:PercCardTurnover>0</d4p1:PercCardTurnover>
        </d4p1:MembershipsSubscriptionAndInsurancePremiums>
        <d4p1:Prepayments>
          <d4p1:AvgDaysPaymentTakenInAdvance>0</d4p1:AvgDaysPaymentTakenInAdvance>
          <d4p1:FullPaymentAcceptedPriorToSupply>false</d4p1:FullPaymentAcceptedPriorToSupply>
          <d4p1:PercGoodsWherePaymentTakenPriorToDelivery>0</d4p1:PercGoodsWherePaymentTakenPriorToDelivery>
        </d4p1:Prepayments>
        <d4p1:StockHeldAtAnotherAddressLocation>
          <d3p1:Address1>String</d3p1:Address1>
          <d3p1:Address2>String</d3p1:Address2>
          <d3p1:Address3>String</d3p1:Address3>
          <d3p1:City>String</d3p1:City>
          <d3p1:Countrycode>String</d3p1:Countrycode>
          <d3p1:Postcode>String</d3p1:Postcode>
          <d3p1:State>String</d3p1:State>
        </d4p1:StockHeldAtAnotherAddressLocation>
        <d4p1:WarrantiesAndGuarantees>
          <d4p1:AvgLengthInMonths>0</d4p1:AvgLengthInMonths>
          <d4p1:LevyCharge>false</d4p1:LevyCharge>
          <d4p1:PercCardTurnover>0</d4p1:PercCardTurnover>
          <d4p1:PercGoodsReturned>0</d4p1:PercGoodsReturned>
          <d4p1:ThirdPartyProviders>String</d4p1:ThirdPartyProviders>
        </d4p1:WarrantiesAndGuarantees>
      </d3p1:GoodsAndServices>
      <d3p1:Outlets i:nil="true" />
      <d3p1:Principals i:nil="true" />
    </d2p1:MerchantDetails>
    <d2p1:Products xmlns:d3p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.Products">
      <d3p1:EcomProducts xmlns:d4p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.Products.EcomProducts">
        <d4p1:Options i:nil="true" />
        <d4p1:Products i:nil="true" />
        <d4p1:RenewalLength>0</d4p1:RenewalLength>
        <d4p1:Term>0</d4p1:Term>
      </d3p1:EcomProducts>
      <d3p1:IpProducts xmlns:d4p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.Products.IpProducts">
        <d4p1:IntegratedSolutionProvider xmlns:d5p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.Products.WptProducts">
          <d5p1:Address xmlns:d6p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.BusinessDetails">
            <d6p1:Address1>String</d6p1:Address1>
            <d6p1:Address2>String</d6p1:Address2>
            <d6p1:Address3>String</d6p1:Address3>
            <d6p1:City>String</d6p1:City>
            <d6p1:Countrycode>String</d6p1:Countrycode>
            <d6p1:Postcode>String</d6p1:Postcode>
            <d6p1:State>String</d6p1:State>
          </d5p1:Address>
          <d5p1:Name>String</d5p1:Name>
          <d5p1:PrimaryContact>
            <d5p1:EmailAddress>String</d5p1:EmailAddress>
            <d5p1:FirstName>String</d5p1:FirstName>
            <d5p1:LastName>String</d5p1:LastName>
            <d5p1:Position>String</d5p1:Position>
            <d5p1:Title>String</d5p1:Title>
          </d5p1:PrimaryContact>
          <d5p1:ProviderSoftware>String</d5p1:ProviderSoftware>
          <d5p1:ProviderType>String</d5p1:ProviderType>
          <d5p1:TechnicalContact>
            <d5p1:EmailAddress>String</d5p1:EmailAddress>
            <d5p1:FirstName>String</d5p1:FirstName>
            <d5p1:LastName>String</d5p1:LastName>
            <d5p1:Position>String</d5p1:Position>
            <d5p1:Title>String</d5p1:Title>
          </d5p1:TechnicalContact>
          <d5p1:Telephone>String</d5p1:Telephone>
        </d4p1:IntegratedSolutionProvider>
        <d4p1:Products i:nil="true" />
        <d4p1:RenewalLength>0</d4p1:RenewalLength>
        <d4p1:Term>0</d4p1:Term>
      </d3p1:IpProducts>
      <d3p1:PosProducts xmlns:d4p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.Products.PosProducts">
        <d4p1:Products i:nil="true" />
        <d4p1:RenewalLength>0</d4p1:RenewalLength>
        <d4p1:Term>0</d4p1:Term>
      </d3p1:PosProducts>
      <d3p1:WptProducts xmlns:d4p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.Products.WptProducts">
        <d4p1:IntegratedSolutionProvider>
          <d4p1:Address xmlns:d6p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Boarding.BusinessDetails">
            <d6p1:Address1>String</d6p1:Address1>
            <d6p1:Address2>String</d6p1:Address2>
            <d6p1:Address3>String</d6p1:Address3>
            <d6p1:City>String</d6p1:City>
            <d6p1:Countrycode>String</d6p1:Countrycode>
            <d6p1:Postcode>String</d6p1:Postcode>
            <d6p1:State>String</d6p1:State>
          </d4p1:Address>
          <d4p1:Name>String</d4p1:Name>
          <d4p1:PrimaryContact>
            <d4p1:EmailAddress>String</d4p1:EmailAddress>
            <d4p1:FirstName>String</d4p1:FirstName>
            <d4p1:LastName>String</d4p1:LastName>
            <d4p1:Position>String</d4p1:Position>
            <d4p1:Title>String</d4p1:Title>
          </d4p1:PrimaryContact>
          <d4p1:ProviderSoftware>String</d4p1:ProviderSoftware>
          <d4p1:ProviderType>String</d4p1:ProviderType>
          <d4p1:TechnicalContact>
            <d4p1:EmailAddress>String</d4p1:EmailAddress>
            <d4p1:FirstName>String</d4p1:FirstName>
            <d4p1:LastName>String</d4p1:LastName>
            <d4p1:Position>String</d4p1:Position>
            <d4p1:Title>String</d4p1:Title>
          </d4p1:TechnicalContact>
          <d4p1:Telephone>String</d4p1:Telephone>
        </d4p1:IntegratedSolutionProvider>
        <d4p1:PosInstallationDate>0001-01-01T00:00:00</d4p1:PosInstallationDate>
        <d4p1:Products i:nil="true" />
        <d4p1:RenewalLength>0</d4p1:RenewalLength>
        <d4p1:Term>0</d4p1:Term>
      </d3p1:WptProducts>
    </d2p1:Products>
  </ApplicationJson>
  <ApplicationSource>0</ApplicationSource>
  <CorrelationId>00000000-0000-0000-0000-000000000000</CorrelationId>
  <Csr>0</Csr>
  <SellerCode>String</SellerCode>
  <SellerEmail>String</SellerEmail>
</ApplicationBoarding>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<InitiateBoardingResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Autoboarding.Common.Responses">
  <ApplicationGuid>00000000-0000-0000-0000-000000000000</ApplicationGuid>
  <ApplicationQueueGuid>00000000-0000-0000-0000-000000000000</ApplicationQueueGuid>
  <BoardingStatus>PENDING</BoardingStatus>
  <CSR>0</CSR>
  <ErrorMessages xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
    <d2p1:string>String</d2p1:string>
  </ErrorMessages>
  <QueueStatus>Queued</QueueStatus>
</InitiateBoardingResponse>