POST | /allchecks/submit/json |
---|
import java.math.*
import java.util.*
import net.servicestack.client.*
open class AllChecksApplicationDataRequest
{
var Application:Application? = null
var CorrelationId:String? = null
var NapPartyId:String? = null
var LEID:String? = null
var OrderId:String? = null
var PartyIndividuals:ArrayList<String> = ArrayList<String>()
}
open class Application
{
var ApplicationDetails:ApplicationDetails? = null
var MerchantDetails:MerchantDetails? = null
var Acquiring:Acquiring? = null
var Products:Products? = null
}
open class ApplicationDetails
{
var SourceSystem:SourceSystemType? = null
var SourceSystemIdentifier:String? = null
var CustomerType:CustomerType? = null
var Csr:String? = null
var Partner:Partner? = null
var SellerCode:String? = null
var PricingPackage:PricingPackageType? = null
var ContactPerson:AuthorisedSigner? = null
var SpecialInstructions:String? = null
var OfferDetails:String? = null
var DateContractAccepted:Date? = null
var WorldpayBusinessFinanceInterest:Boolean? = null
var Sar:Boolean? = null
var SellerEmail:String? = null
var AnticipatedGoLiveDate:Date? = null
var AccessibilityOptions:AccessibilityOptions? = null
var UltimateParentId:String? = null
}
enum class SourceSystemType
{
Mars,
Asa,
Ols,
Inasa,
}
enum class CustomerType(val value:Int)
{
New(0),
Existing(1),
None(-1),
}
open class Partner
{
var PartnerId:String? = null
var PartnerName:String? = null
}
enum class PricingPackageType(val value:Int)
{
CustomUk(0),
MonthlyUk(1),
SimplicityUk(2),
PaygUk(3),
CustomRoi(4),
PaygeComUK(5),
None(-1),
}
open class AuthorisedSigner : ContactPerson()
{
var DateOfBirth:Date? = null
var CountryCode:String? = null
}
open class ContactPerson
{
var Title:String? = null
var FirstName:String? = null
var MiddleName:String? = null
var LastName:String? = null
var TelephoneNumber:String? = null
var AltTelephoneNumber:String? = null
var Email:String? = null
var Position:String? = null
var PreferredContactMethod:PreferredContactMethodType? = null
var PreferredContactBestTime:String? = null
}
enum class PreferredContactMethodType
{
Email,
Telephone,
Any,
}
open class AccessibilityOptions
{
var AudiotapeRequired:Boolean? = null
var LargePrintRequired:Boolean? = null
var UncontractedBrailleGrade1Required:Boolean? = null
var UncontractedBrailleGrade2Required:Boolean? = null
var NextGenerationTextRequired:Boolean? = null
}
open class MerchantDetails
{
var Business:Business? = null
var Principals:ArrayList<Principal> = ArrayList<Principal>()
var Outlets:ArrayList<Outlet> = ArrayList<Outlet>()
var GoodsAndServices:GoodsAndServices? = null
}
open class Business
{
var LegalName:String? = null
var LegalAddress:BusinessAddress? = null
var WebsiteAddress:String? = null
var CompanyType:CompanyType? = null
var CompanyTypeOther:String? = null
var CompanyRegistrationNumber:String? = null
var CharityNumber:String? = null
var MerchantCategoryCode:String? = null
var MerchantCategoryDescription:String? = null
var DescriptionOfGoodsAndServices:String? = null
var VatNumber:String? = null
var DateStartedTrading:Date? = null
var CountryOfIncorporation:String? = null
var RegionOfIncorporation:String? = null
var Financials:Financials? = null
var NewToCards:Boolean? = null
var TradeAssociation:TradeAssociation? = null
}
open class BusinessAddress : Address()
{
var IsCommercial:Boolean? = null
}
open class Address
{
var Address1:String? = null
var Address2:String? = null
var Address3:String? = null
var Postcode:String? = null
var City:String? = null
var State:String? = null
var Countrycode:String? = null
}
enum class CompanyType
{
SoleTrader,
Partnership,
LimitedCompany,
Trust,
RegisteredCharity,
PublicLimitedCompany,
LimitedByGuarantee,
ClubSocietyAssociation,
CommunityInterestCompanyOrIndustrialProvident,
LimitedLiabilityPartnership,
Other,
}
open class Financials
{
var Annual:BigDecimal? = null
var CardPercentage:BigDecimal? = null
var CreditCardPercentage:BigDecimal? = null
var AverageTransactionValue:BigDecimal? = null
}
open class TradeAssociation
{
var GroupName:String? = null
var MemberNumber:String? = null
}
open class Principal
{
var Title:String? = null
var FirstName:String? = null
var MiddleName:String? = null
var LastName:String? = null
var DateOfBirth:Date? = null
var Nationality:String? = null
var HomeAddresses:ArrayList<PrincipalAddress> = ArrayList<PrincipalAddress>()
var OwnershipPercentage:BigDecimal? = null
var Position:PositionType? = null
var IsFinancialController:Boolean? = null
}
open class PrincipalAddress : Address()
{
var StartDate:Date? = null
var EndDate:Date? = null
}
enum class PositionType(val value:Int)
{
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),
}
open class Outlet
{
var TradingName:String? = null
var TradingAddress:BusinessAddress? = null
var ContactPerson:ContactPerson? = null
var TerminalDeliveryAddress:BusinessAddress? = null
var CorrespondenceAddress:BusinessAddress? = null
var SettlementBankAccount:BankAccount? = null
var ChargesBankAccount:BankAccount? = null
var DirectDebitCorrespondenceEmail:String? = null
var ClearingDetails:ClearingDetails? = null
var ProductAllocation:ArrayList<OutletAllocatedProduct> = ArrayList<OutletAllocatedProduct>()
}
open class BankAccount
{
var SortCode:String? = null
var AccountNumber:String? = null
var BankName:String? = null
var BankAccountName:String? = null
}
open class ClearingDetails
{
var MerchantUrl:String? = null
var Telephone:String? = null
var Email:String? = null
}
open class OutletAllocatedProduct
{
var Id:Int? = null
var Quantity:Int? = null
}
open class GoodsAndServices
{
var GoodsProvidedByThirdParty:Boolean? = null
var Deposits:Deposits? = null
var WarrantiesAndGuarantees:WarrantiesAndGuarantees? = null
var Prepayments:Prepayments? = null
var MembershipsSubscriptionAndInsurancePremiums:MembershipsSubscriptionAndInsurancePremiums? = null
var StockHeldAtAnotherAddressLocation:Address? = null
}
open class Deposits
{
var Accepted:Boolean? = null
var PerOfSalesWhereInitialDepositTaken:Int? = null
var SizePercOfTotalValue:Int? = null
var AvgTimeBeforeDeliveryTaken:Int? = null
var AvgTimeBeforeDeliveryBalanceTaken:Int? = null
}
open class WarrantiesAndGuarantees
{
var LevyCharge:Boolean? = null
var PercCardTurnover:Int? = null
var AvgLengthInMonths:Int? = null
var PercGoodsReturned:Int? = null
var ThirdPartyProviders:String? = null
}
open class Prepayments
{
var FullPaymentAcceptedPriorToSupply:Boolean? = null
var PercGoodsWherePaymentTakenPriorToDelivery:Int? = null
var AvgDaysPaymentTakenInAdvance:Int? = null
}
open class MembershipsSubscriptionAndInsurancePremiums
{
var LevyCharge:Boolean? = null
var PercCardTurnover:Int? = null
var AvgLengthInMonths:Int? = null
var MembershipCost:BigDecimal? = null
}
open class Acquiring
{
var SettlementPeriodTPlus:Int? = null
var Rates:Rates? = null
var Services:Services? = null
var TradingCurrencies:ArrayList<TradingCurrency> = ArrayList<TradingCurrency>()
}
open class Rates
{
var CardCharges:ArrayList<CardCharge> = ArrayList<CardCharge>()
var PremiumTransactionCharges:ArrayList<PremiumTransactionCharge> = ArrayList<PremiumTransactionCharge>()
var AdditionalTarrifs:ArrayList<AdditionalTarrif> = ArrayList<AdditionalTarrif>()
}
open class CardCharge
{
var CardType:CardType? = null
var Purchase:RateChargePair? = null
var Refund:RateChargePair? = null
}
enum class CardType
{
VisaDebit,
VisaCredit,
VisaCommercial,
MastercardDebit,
MastercardCredit,
MastercardCommercial,
MastercardWorldSignia,
JcbCredit,
JcbDebit,
JcbCommercial,
DinersDiscoverCredit,
DinersDiscoverDebit,
DinersDiscoverCommercial,
Amex,
ChinaUnionPayCredit,
ChinaUnionPayDebit,
ChinaUnionPayCommercial,
VisaBusinessDebit,
MastercardBusiness,
}
open class RateChargePair
{
var Percent:BigDecimal? = null
var Cost:BigDecimal? = null
}
open class PremiumTransactionCharge
{
var Type:PremiumTransactionChargeType? = null
var CreditCard:RateChargePair? = null
var DebitCard:RateChargePair? = null
}
enum class PremiumTransactionChargeType
{
Magstripe,
CnpMoto,
Paper,
PanKeyEntry,
SecureEcom,
NonSecureEcom,
InterRegional,
IntraRegional,
NonAuth,
}
open class AdditionalTarrif
{
var Type:AdditionalTarrifType? = null
var Cost:BigDecimal? = null
}
enum class AdditionalTarrifType
{
NameAndAddressCheck,
Auth,
Chargeback,
Mmsc,
PaperStatement,
PciVerbalAssessment,
PciIpScan,
PciNonCompliance,
PciSaferPaymentsPlus,
JoiningFee,
PayMonthlyAcquiringFee,
PciSaferPayments,
}
open class Services
{
var Cnp:Cnp? = null
var Amex:Amex? = null
var CashbackRequired:Boolean? = null
var WorldpayDashboardRequired:Boolean? = null
var PaperInvoicingRequired:Boolean? = null
}
open class Cnp
{
var Required:Boolean? = null
var Percentage:BigDecimal? = null
}
open class Amex
{
var Required:Boolean? = null
var ExistingAmexNumber:String? = null
}
open class TradingCurrency
{
var TransactionCurrencies:ArrayList<CurrencyCodeType> = ArrayList<CurrencyCodeType>()
var SettlementCurrency:CurrencyCodeType? = null
var SettlementBankSwift:String? = null
var SettlementBankIban:String? = null
}
enum class CurrencyCodeType
{
Gbp,
Eur,
Usd,
Aed,
Afn,
All,
Amd,
Ang,
Aoa,
Ars,
Aud,
Awg,
Azn,
Bam,
Bbd,
Bdt,
Bgn,
Bhd,
Bif,
Bmd,
Bnd,
Bob,
Brl,
Bsd,
Btn,
Bwp,
Byr,
Bzd,
Cad,
Cdf,
Chf,
Clp,
Cny,
Cop,
Cou,
Crc,
Cuc,
Cup,
Cve,
Czk,
Djf,
Dkk,
Dop,
Dzd,
Eek,
Egp,
Ern,
Etb,
Fjd,
Fkp,
Gel,
Ghs,
Gip,
Gmd,
Gnf,
Gtq,
Gyd,
Hkd,
Hnl,
Hrk,
Htg,
Huf,
Idr,
Ils,
Inr,
Iqd,
Irr,
Isk,
Jmd,
Jod,
Jpy,
Kes,
Kgs,
Khr,
Kmf,
Kpw,
Krw,
Kwd,
Kyd,
Kzt,
Lak,
Lbp,
Lkr,
Lrd,
Lsl,
Ltl,
Lvl,
Lyd,
Mad,
Mdl,
Mga,
Mkd,
Mmk,
Mnt,
Mop,
Mro,
Mur,
Mvr,
Mwk,
Mxn,
Myr,
Mzn,
Nad,
Ngn,
Nio,
Nok,
Npr,
Nzd,
Omr,
Pab,
Pen,
Pgk,
Php,
Pkr,
Pln,
Pyg,
Qar,
Ron,
Rsd,
Rub,
Rwf,
Sar,
Sbd,
Scr,
Sdg,
Sek,
Sgd,
Shp,
Sll,
Sos,
Srd,
Std,
Syp,
Szl,
Thb,
Tjs,
Tmt,
Tnd,
Top,
Try,
Ttd,
Twd,
Tzs,
Uah,
Ugx,
Uyu,
Uzs,
Vef,
Vnd,
Vuv,
Wst,
Yer,
Zar,
Zmk,
Zwl,
}
open class Products
{
var PosProducts:PosProducts? = null
var EcomProducts:EcomProducts? = null
var WptProducts:WptProducts? = null
var IpProducts:IpProducts? = null
}
open class PosProducts
{
var Term:Int? = null
var RenewalLength:Int? = null
var Products:ArrayList<PosProduct> = ArrayList<PosProduct>()
}
open class PosProduct
{
var Id:Int? = null
var Type:PosProductType? = null
var Quantity:Int? = null
var RelatedFees:ArrayList<ProductFee> = ArrayList<ProductFee>()
var Options:ArrayList<PosProductOption> = ArrayList<PosProductOption>()
}
enum class PosProductType
{
Mobile,
Wifi,
Bluetooth,
Fixed,
PosMidOnly,
}
open class ProductFee
{
var Type:ProductFeeType? = null
var Cost:BigDecimal? = null
}
enum class ProductFeeType
{
HireCost,
TransactionCost,
ServiceFee,
ManagedServiceSetup,
ManagedServiceMonthly,
}
open class PosProductOption
{
var Type:PosProductOptionType? = null
var Value:String? = null
}
enum class PosProductOptionType
{
Psp,
}
open class EcomProducts
{
var Term:Int? = null
var RenewalLength:Int? = null
var Products:ArrayList<EcomProduct> = ArrayList<EcomProduct>()
var Options:ArrayList<EcomOption> = ArrayList<EcomOption>()
}
open class EcomProduct
{
var Id:Int? = null
var Type:EcomProductType? = null
var Quantity:Int? = null
var RelatedFees:ArrayList<ProductFee> = ArrayList<ProductFee>()
var Options:ArrayList<EcomProductOption> = ArrayList<EcomProductOption>()
}
enum class EcomProductType
{
Gateway,
VirtualTerminal,
PayByLink,
EcomMidOnly,
}
open class EcomProductOption
{
var Type:EcomProductOptionType? = null
var Value:String? = null
}
enum class EcomProductOptionType
{
Psp,
FreeTransactions,
}
open class EcomOption
{
var Type:EcomOptionType? = null
var RelatedFees:ArrayList<ProductFee> = ArrayList<ProductFee>()
}
enum class EcomOptionType
{
Paypal,
FuturePay,
Rmm,
}
open class WptProducts
{
var Term:Int? = null
var RenewalLength:Int? = null
var PosInstallationDate:Date? = null
var IntegratedSolutionProvider:IntegratedSolutionProvider? = null
var Products:ArrayList<WptProduct> = ArrayList<WptProduct>()
}
open class IntegratedSolutionProvider
{
var Name:String? = null
var Address:Address? = null
var Telephone:String? = null
var PrimaryContact:IspContact? = null
var TechnicalContact:IspContact? = null
var ProviderType:String? = null
var ProviderSoftware:String? = null
}
open class IspContact
{
var Title:String? = null
var FirstName:String? = null
var LastName:String? = null
var Position:String? = null
var EmailAddress:String? = null
}
open class WptProduct
{
var Type:WptProductType? = null
var Id:Int? = null
var Variant:WptVariantType? = null
var Quantity:Int? = null
var RelatedFees:ArrayList<ProductFee> = ArrayList<ProductFee>()
}
enum class WptProductType
{
VerifoneP400,
IngenicoWL258,
VerifoneV240,
}
enum class WptVariantType
{
Serial,
Usb,
Ethernet,
None,
}
open class IpProducts
{
var Term:Int? = null
var RenewalLength:Int? = null
var IntegratedSolutionProvider:IntegratedSolutionProvider? = null
var Products:ArrayList<IpProduct> = ArrayList<IpProduct>()
}
open class IpProduct
{
var Id:Int? = null
var Type:IpProductType? = null
var Quantity:Int? = null
var RelatedFees:ArrayList<ProductFee> = ArrayList<ProductFee>()
var Variant:IpVariantType? = null
}
enum class IpProductType
{
PaxA920,
MiuraM020,
}
enum class IpVariantType
{
Sdk,
Cloud,
None,
}
open class StandardResponse
{
var Status:Int? = null
var CorrelationId:String? = null
var Message:String? = null
}
Kotlin AllChecksApplicationDataRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /allchecks/submit/json HTTP/1.1
Host: wp-cddws-test.worldpay.com
Accept: text/csv
Content-Type: text/csv
Content-Length: length
{"Application":{"ApplicationDetails":{"SourceSystem":"MARS","SourceSystemIdentifier":"String","CustomerType":"New","Csr":"String","Partner":{"PartnerId":"String","PartnerName":"String"},"SellerCode":"String","PricingPackage":"CustomUk","ContactPerson":{"DateOfBirth":"\/Date(-62135596800000-0000)\/","CountryCode":"String","Title":"String","FirstName":"String","MiddleName":"String","LastName":"String","TelephoneNumber":"String","AltTelephoneNumber":"String","Email":"String","Position":"String","PreferredContactMethod":"Email","PreferredContactBestTime":"String"},"SpecialInstructions":"String","OfferDetails":"String","DateContractAccepted":"\/Date(-62135596800000-0000)\/","WorldpayBusinessFinanceInterest":false,"Sar":false,"SellerEmail":"String","AnticipatedGoLiveDate":"\/Date(-62135596800000-0000)\/","AccessibilityOptions":{"AudiotapeRequired":false,"LargePrintRequired":false,"UncontractedBrailleGrade1Required":false,"UncontractedBrailleGrade2Required":false,"NextGenerationTextRequired":false},"UltimateParentId":"String"},"MerchantDetails":{"Business":{"LegalName":"String","LegalAddress":{"IsCommercial":false,"Address1":"String","Address2":"String","Address3":"String","Postcode":"String","City":"String","State":"String","Countrycode":"String"},"WebsiteAddress":"String","CompanyType":"SoleTrader","CompanyTypeOther":"String","CompanyRegistrationNumber":"String","CharityNumber":"String","MerchantCategoryCode":"String","MerchantCategoryDescription":"String","DescriptionOfGoodsAndServices":"String","VatNumber":"String","DateStartedTrading":"\/Date(-62135596800000-0000)\/","CountryOfIncorporation":"String","RegionOfIncorporation":"String","Financials":{"Annual":0,"CardPercentage":0,"CreditCardPercentage":0,"AverageTransactionValue":0},"NewToCards":false,"TradeAssociation":{"GroupName":"String","MemberNumber":"String"}},"GoodsAndServices":{"GoodsProvidedByThirdParty":false,"Deposits":{"Accepted":false,"PerOfSalesWhereInitialDepositTaken":0,"SizePercOfTotalValue":0,"AvgTimeBeforeDeliveryTaken":0,"AvgTimeBeforeDeliveryBalanceTaken":0},"WarrantiesAndGuarantees":{"LevyCharge":false,"PercCardTurnover":0,"AvgLengthInMonths":0,"PercGoodsReturned":0,"ThirdPartyProviders":"String"},"Prepayments":{"FullPaymentAcceptedPriorToSupply":false,"PercGoodsWherePaymentTakenPriorToDelivery":0,"AvgDaysPaymentTakenInAdvance":0},"MembershipsSubscriptionAndInsurancePremiums":{"LevyCharge":false,"PercCardTurnover":0,"AvgLengthInMonths":0,"MembershipCost":0},"StockHeldAtAnotherAddressLocation":{"Address1":"String","Address2":"String","Address3":"String","Postcode":"String","City":"String","State":"String","Countrycode":"String"}}},"Acquiring":{"SettlementPeriodTPlus":0,"Rates":{},"Services":{"Cnp":{"Required":false,"Percentage":0},"Amex":{"Required":false,"ExistingAmexNumber":"String"},"CashbackRequired":false,"WorldpayDashboardRequired":false,"PaperInvoicingRequired":false}},"Products":{"PosProducts":{"Term":0,"RenewalLength":0},"EcomProducts":{"Term":0,"RenewalLength":0},"WptProducts":{"Term":0,"RenewalLength":0,"PosInstallationDate":"\/Date(-62135596800000-0000)\/","IntegratedSolutionProvider":{"Name":"String","Address":{"Address1":"String","Address2":"String","Address3":"String","Postcode":"String","City":"String","State":"String","Countrycode":"String"},"Telephone":"String","PrimaryContact":{"Title":"String","FirstName":"String","LastName":"String","Position":"String","EmailAddress":"String"},"TechnicalContact":{"Title":"String","FirstName":"String","LastName":"String","Position":"String","EmailAddress":"String"},"ProviderType":"String","ProviderSoftware":"String"}},"IpProducts":{"Term":0,"RenewalLength":0,"IntegratedSolutionProvider":{"Name":"String","Address":{"Address1":"String","Address2":"String","Address3":"String","Postcode":"String","City":"String","State":"String","Countrycode":"String"},"Telephone":"String","PrimaryContact":{"Title":"String","FirstName":"String","LastName":"String","Position":"String","EmailAddress":"String"},"TechnicalContact":{"Title":"String","FirstName":"String","LastName":"String","Position":"String","EmailAddress":"String"},"ProviderType":"String","ProviderSoftware":"String"}}}},"CorrelationId":"String","NapPartyId":"String","LEID":"String","OrderId":"String","PartyIndividuals":["String"]}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Status":0,"CorrelationId":"String","Message":"String"}