CDD Engine Web Service v2.14.0.0

<back to all web services

AllChecksOrderDataRequest

Requires Authentication
The following routes are available for this service:
POST/allchecks/submit/order
namespace BoardingGateway.Common.Requests.Boarding.Acquiring

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

    [<AllowNullLiteral>]
    type StandardOrderResponse() = 
        member val Status:Int32 = new Int32() with get,set
        member val CorrelationId:String = null with get,set
        member val Message:String = null with get,set

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

    [<AllowNullLiteral>]
    type Person() = 
        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

    [<AllowNullLiteral>]
    type Contact() = 
        inherit Person()
        member val IdpGuid:Nullable<Guid> = new Nullable<Guid>() 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:String = null with get,set
        member val PreferredContactBestTime:String = null with get,set

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

    [<AllowNullLiteral>]
    type OrderMeta() = 
        member val SourceSystem:String = null with get,set
        member val SourceSystemIdentifier:String = null with get,set
        member val Csr:String = null with get,set
        member val UltimateParentId:String = null with get,set
        member val OrderType:String = null with get,set
        member val CustomerType:String = null with get,set
        member val Partner:Partner = null with get,set
        member val SellerCode:String = null with get,set
        member val SellerEmail:String = null with get,set
        member val SpecialInstructions:String = null with get,set
        member val Contact:AuthorisedSigner = 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 HasSupportingFiles:Boolean = new Boolean() 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 MerchantAddress() = 
        inherit Address()
        member val AddressType:String = null with get,set
        member val IsCommercial:Boolean = new Boolean() with get,set

    [<AllowNullLiteral>]
    type InvoiceContact() = 
        inherit Person()
        member val Email:String = null with get,set
        member val Position:String = null 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
        member val SwiftCode:String = null with get,set
        member val InternationalBankAccountNumber:String = null with get,set

    [<AllowNullLiteral>]
    type MerchantCategory() = 
        member val MerchantCategoryCode:String = null with get,set
        member val MerchantCategoryDescription:String = null with get,set
        member val DescriptionOfGoodsAndServices:String = null with get,set

    [<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
        member val CardNotPresentPercentage:Nullable<Decimal> = new Nullable<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 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 Deposits() = 
        member val PerOfSalesWhereInitialDepositTaken:Int32 = new Int32() with get,set
        member val SizePerTotalValue:Int32 = new Int32() with get,set
        member val AvgTimeBeforeDeliveryDepositTaken:Int32 = new Int32() with get,set
        member val AvgTimeBeforeDeliveryBalanceTaken:Int32 = new Int32() with get,set

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

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

    [<AllowNullLiteral>]
    type MembershipsSubscriptionAndInsurancePremiums() = 
        member val PercCardTurnover:Int32 = new Int32() with get,set
        member val AvgLengthInMonths:Int32 = new Int32() with get,set
        member val MembershipCost:Decimal = new 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 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 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

    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

    [<AllowNullLiteral>]
    type AdditionalTariff() = 
        member val Type:String = null 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 AdditionalTariffs:IEnumerable<AdditionalTariff> = null 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 SettlementPeriod:Int32 = new Int32() with get,set
        member val FundingMode:String = null with get,set
        member val Rates:Rates = null with get,set
        member val TradingCurrencies:IEnumerable<TradingCurrency> = null with get,set

    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

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

    [<AllowNullLiteral>]
    type Product() = 
        member val Name:String = null with get,set
        member val Type:String = null with get,set
        member val Variant:String = null with get,set
        member val Quantity:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val RelatedFees:IEnumerable<ProductFee> = null with get,set
        member val Options:IEnumerable<ProductOption> = null with get,set

    [<AllowNullLiteral>]
    type Subscription() = 
        member val Proposition:String = null with get,set
        member val PricingPackage:String = null with get,set
        member val Term:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val RenewalLength:Nullable<Int32> = new Nullable<Int32>() with get,set
        member val Acquiring:Acquiring = null with get,set
        member val Products:IEnumerable<Product> = null with get,set

    [<AllowNullLiteral>]
    type OrderPayload() = 
        member val PartyId:String = null with get,set
        member val ParentPartyId:String = null with get,set
        member val LegalName:String = null with get,set
        member val TradingName:String = null with get,set
        member val PartyName:String = null with get,set
        member val Addresses:IEnumerable<MerchantAddress> = null with get,set
        member val TradingContact:Contact = null with get,set
        member val InvoiceContact:InvoiceContact = 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 WebsiteAddress:String = null with get,set
        member val CompanyType:String = null 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 MerchantCategories:IEnumerable<MerchantCategory> = 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 AnticipatedGoLiveDate: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:Nullable<Boolean> = new Nullable<Boolean>() with get,set
        member val TradeAssociation:TradeAssociation = null with get,set
        member val Principals:IEnumerable<Principal> = null with get,set
        member val GoodsAndServices:GoodsAndServices = null with get,set
        member val AccessibilityOptions:AccessibilityOptions = null with get,set
        member val ClearingDetails:ClearingDetails = null with get,set
        member val Acquiring:Acquiring = null with get,set
        member val Subscriptions:IEnumerable<Subscription> = null with get,set
        member val Children:IEnumerable<OrderPayload> = null with get,set

    [<AllowNullLiteral>]
    type Order() = 
        member val Meta:OrderMeta = null with get,set
        member val Payload:OrderPayload = null with get,set

    [<AllowNullLiteral>]
    type IdentityVerificationDocuments() = 
        member val documentId:String = null with get,set
        member val authenticity:String = null with get,set

    [<AllowNullLiteral>]
    type AllChecksOrderDataRequest() = 
        member val CorrelationId:String = null with get,set
        member val OrderJson:Order = null with get,set
        member val NapPartyId:String = null with get,set
        member val LEID:String = null with get,set
        member val OrderId:String = null with get,set
        member val PartyIndividuals:ResizeArray<String> = new ResizeArray<String>() with get,set
        member val IdentityVerificationDocuments:ResizeArray<IdentityVerificationDocuments> = new ResizeArray<IdentityVerificationDocuments>() 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

F# AllChecksOrderDataRequest DTOs

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

HTTP + JSV

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

POST /allchecks/submit/order HTTP/1.1 
Host: wpcdd-featuretest-ws.worldpay.com 
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length

{
	CorrelationId: String,
	OrderJson: 
	{
		Meta: 
		{
			SourceSystem: String,
			SourceSystemIdentifier: String,
			Csr: String,
			UltimateParentId: String,
			OrderType: String,
			CustomerType: String,
			Partner: 
			{
				PartnerName: String,
				PartnerId: String
			},
			SellerCode: String,
			SellerEmail: String,
			SpecialInstructions: String,
			Contact: 
			{
				DateOfBirth: 0001-01-01,
				CountryCode: String,
				IdpGuid: 00000000000000000000000000000000,
				TelephoneNumber: String,
				AltTelephoneNumber: String,
				Email: String,
				Position: String,
				PreferredContactMethod: String,
				PreferredContactBestTime: String,
				Title: String,
				FirstName: String,
				MiddleName: String,
				LastName: String
			},
			OfferDetails: String,
			DateContractAccepted: 0001-01-01,
			WorldpayBusinessFinanceInterest: False,
			Sar: False,
			HasSupportingFiles: False
		},
		Payload: 
		{
			PartyId: String,
			ParentPartyId: String,
			LegalName: String,
			TradingName: String,
			PartyName: String,
			TradingContact: 
			{
				IdpGuid: 00000000000000000000000000000000,
				TelephoneNumber: String,
				AltTelephoneNumber: String,
				Email: String,
				Position: String,
				PreferredContactMethod: String,
				PreferredContactBestTime: String,
				Title: String,
				FirstName: String,
				MiddleName: String,
				LastName: String
			},
			InvoiceContact: 
			{
				Email: String,
				Position: String,
				Title: String,
				FirstName: String,
				MiddleName: String,
				LastName: String
			},
			SettlementBankAccount: 
			{
				SortCode: String,
				AccountNumber: String,
				BankName: String,
				BankAccountName: String,
				SwiftCode: String,
				InternationalBankAccountNumber: String
			},
			ChargesBankAccount: 
			{
				SortCode: String,
				AccountNumber: String,
				BankName: String,
				BankAccountName: String,
				SwiftCode: String,
				InternationalBankAccountNumber: String
			},
			DirectDebitCorrespondenceEmail: String,
			WebsiteAddress: String,
			CompanyType: String,
			CompanyTypeOther: String,
			CompanyRegistrationNumber: String,
			CharityNumber: String,
			VatNumber: String,
			DateStartedTrading: 0001-01-01,
			AnticipatedGoLiveDate: 0001-01-01,
			CountryOfIncorporation: String,
			RegionOfIncorporation: String,
			Financials: 
			{
				Annual: 0,
				CardPercentage: 0,
				CreditCardPercentage: 0,
				AverageTransactionValue: 0,
				CardNotPresentPercentage: 0
			},
			NewToCards: False,
			TradeAssociation: 
			{
				GroupName: String,
				MemberNumber: String
			},
			GoodsAndServices: 
			{
				GoodsProvidedByThirdParty: False,
				Deposits: 
				{
					PerOfSalesWhereInitialDepositTaken: 0,
					SizePerTotalValue: 0,
					AvgTimeBeforeDeliveryDepositTaken: 0,
					AvgTimeBeforeDeliveryBalanceTaken: 0
				},
				WarrantiesAndGuarantees: 
				{
					PercCardTurnover: 0,
					AvgLengthInMonths: 0,
					PercGoodsReturned: 0,
					ThirdPartyProviders: String
				},
				Prepayments: 
				{
					PercGoodsWherePaymentTakenPriorToDelivery: 0,
					AvgDaysPaymentTakenInAdvance: 0
				},
				MembershipsSubscriptionAndInsurancePremiums: 
				{
					PercCardTurnover: 0,
					AvgLengthInMonths: 0,
					MembershipCost: 0
				},
				StockHeldAtAnotherAddressLocation: 
				{
					Address1: String,
					Address2: String,
					Address3: String,
					Postcode: String,
					City: String,
					State: String,
					CountryCode: String
				}
			},
			AccessibilityOptions: 
			{
				AudiotapeRequired: False,
				LargePrintRequired: False,
				UncontractedBrailleGrade1Required: False,
				UncontractedBrailleGrade2Required: False,
				NextGenerationTextRequired: False
			},
			ClearingDetails: 
			{
				MerchantUrl: String,
				Telephone: String,
				Email: String
			},
			Acquiring: 
			{
				SettlementPeriod: 0,
				FundingMode: String,
				Rates: {}
			}
		}
	},
	NapPartyId: String,
	LEID: String,
	OrderId: String,
	PartyIndividuals: 
	[
		String
	],
	IdentityVerificationDocuments: 
	[
		{
			documentId: String,
			authenticity: String
		}
	]
}
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	Status: 0,
	CorrelationId: String,
	Message: String
}