POST | /allchecks/submit/data |
---|
import Foundation
import ServiceStack
public class AllChecksDataRequestRequest : Codable
{
public var applicationGUID:String?
public var csr:Int?
public var applicationDetails:ApplicationDetails?
public var mainBusinessRepresentative:ContactDetails?
public var companyDetail:CompanyDetails?
public var bankDetail:BankDetails?
public var businessProfile:BusinessProfile?
public var owners:[OwnerDetails] = []
public var napPartyId:String?
required public init(){}
}
public class ApplicationDetails : Codable
{
public var specialInstructions:String?
public var typeAcquiring:Bool?
public var typePOS_F2F:Bool?
public var typePOS_MOTO:Bool?
public var typeOnlinePayments:Bool?
public var typeVirtualTerminal:Bool?
public var sellerCode:String?
public var numOutlets:Int?
public var mccCode:String?
public var offerDescription:String?
public var pricingPackage:String?
public var contractLength:Int?
public var settlementPeriodTPlus:String?
public var ecomPSP:String?
public var posPSP:String?
required public init(){}
}
public class ContactDetails : Codable
{
public var name:ContactNameData?
public var phone:String?
public var email:String?
public var position:String?
public var altPhone:String?
public var preferredContactMethod:String?
public var preferredContactBestTime:String?
required public init(){}
}
public class ContactNameData : Codable
{
public var title:String?
public var firstName:String?
public var middleName:String?
public var lastName:String?
required public init(){}
}
public class CompanyDetails : Codable
{
public var legalName:String?
public var tradingName:String?
public var tradingAddress:AddressData?
public var legalAddress:AddressData?
public var website:String?
public var companyType:String?
public var registrationNumber:String?
public var merchantCategoryPseudoName:String?
public var vatNumber:String?
public var hasStartedTrading:Bool?
public var startedTradingMonth:String?
public var startedTradingYear:String?
public var companyTypeOther:String?
public var isRegisteredCharity:Bool?
public var countryOfIncorporation:String?
public var regionOfIncorporation:String?
required public init(){}
}
public class AddressData : Codable
{
public var address1:String?
public var address2:String?
public var address3:String?
public var postalCode:String?
public var city:String?
public var state:String?
public var countryCode:String?
required public init(){}
}
public class BankDetails : Codable
{
public var sortCode:String?
public var accountNumber:String?
public var bankName:String?
public var bankAccountName:String?
public var settlementCurrency:String?
public var swiftCode:String?
required public init(){}
}
public class BusinessProfile : Codable
{
public var descriptionOfYourGoodsAndServices:String?
public var anticipatedAverageMonthlyTurnover:Double?
public var anticipatedPeakMonthlyTurnover:Double?
public var percentageOfPrepayments:Double?
public var percentageOfDeposits:Double?
public var percentageOfSubscriptions:Double?
public var daysFromOrderConfirmationToDelivery:[DaysToDelivery] = []
public var depositPaymentDetails:[PaymentDetails] = []
public var averageSubscriptionLengthInMonths:Int?
public var averageNumberOfSubscriptionPayments:Int?
public var anticipatedPercentageIncreaseInTurnoverForAYear:Double?
public var ccTurnover:Double?
public var totalCardTurnover:Double?
public var cnpPercentage:Double?
public var totalTurnover:Double?
public var avTransValue:Double?
public var cnpRequired:Bool?
public var cashbackRequired:Bool?
public var futurePayRequired:Bool?
public var newToCards:Bool?
required public init(){}
}
public class DaysToDelivery : Codable
{
public var percentageOfOrders:Double?
public var numberOfDays:Int?
required public init(){}
}
public class PaymentDetails : Codable
{
public var percentageOfTotalTurnoverToRelatedBusiness:Double?
public var percentageOfTotalTurnoverTakenAsDeposit:Double?
public var averageDaysBetweenDepositAndFullPayment:Int?
public var averageDaysBetweenFullPaymentAndDelivery:Int?
required public init(){}
}
public class OwnerDetails : Codable
{
public var dayOfBirth:Int?
public var monthOfBirth:Int?
public var yearOfBirth:Int?
public var ownershipPercentage:Double?
public var homeAddress:AddressData?
public var currentAddressLessThanThreeYears:Bool?
public var previousHomeAddress:AddressData?
public var name:ContactNameData?
public var director:Bool?
public var nationality:String?
public var position:String?
public var timeAtHomeAddressYears:Int?
public var timeAtHomeAddressMonths:Int?
public var primaryPartyID:String?
public var identityVerificationDocuments:[IdentityVerificationDocuments] = []
required public init(){}
}
public class IdentityVerificationDocuments : Codable
{
public var documentId:String?
public var authenticity:String?
required public init(){}
}
Swift AllChecksDataRequestRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /allchecks/submit/data HTTP/1.1
Host: wp-cddws-test.worldpay.com
Accept: text/jsv
Content-Type: text/jsv
Content-Length: length
{
ApplicationGUID: String,
CSR: 0,
ApplicationDetails:
{
specialInstructions: String,
typeAcquiring: False,
typePOS_F2F: False,
typePOS_MOTO: False,
typeOnlinePayments: False,
typeVirtualTerminal: False,
sellerCode: String,
numOutlets: 0,
mccCode: String,
offerDescription: String,
pricingPackage: Unknown,
contractLength: 0,
settlementPeriodTPlus: String,
ecomPSP: String,
posPSP: String
},
MainBusinessRepresentative:
{
name:
{
title: String,
firstName: String,
middleName: String,
lastName: String
},
phone: String,
email: String,
position: String,
altPhone: String,
preferredContactMethod: String,
preferredContactBestTime: String
},
CompanyDetail:
{
legalName: String,
tradingName: String,
tradingAddress:
{
address1: String,
address2: String,
address3: String,
postalCode: String,
city: String,
state: String,
countryCode: String
},
legalAddress:
{
address1: String,
address2: String,
address3: String,
postalCode: String,
city: String,
state: String,
countryCode: String
},
website: String,
companyType: String,
registrationNumber: String,
merchantCategoryPseudoName: String,
vatNumber: String,
hasStartedTrading: False,
startedTradingMonth: String,
startedTradingYear: String,
companyTypeOther: String,
isRegisteredCharity: False,
countryOfIncorporation: String,
regionOfIncorporation: String
},
BankDetail:
{
sortCode: String,
accountNumber: String,
bankName: String,
bankAccountName: String,
settlementCurrency: String,
swiftCode: String
},
BusinessProfile:
{
descriptionOfYourGoodsAndServices: String,
anticipatedAverageMonthlyTurnover: 0,
anticipatedPeakMonthlyTurnover: 0,
percentageOfPrepayments: 0,
percentageOfDeposits: 0,
percentageOfSubscriptions: 0,
daysFromOrderConfirmationToDelivery:
[
{
percentageOfOrders: 0,
numberOfDays: 0
}
],
depositPaymentDetails:
[
{
percentageOfTotalTurnoverToRelatedBusiness: 0,
percentageOfTotalTurnoverTakenAsDeposit: 0,
averageDaysBetweenDepositAndFullPayment: 0,
averageDaysBetweenFullPaymentAndDelivery: 0
}
],
averageSubscriptionLengthInMonths: 0,
averageNumberOfSubscriptionPayments: 0,
anticipatedPercentageIncreaseInTurnoverForAYear: 0,
ccTurnover: 0,
totalCardTurnover: 0,
cnpPercentage: 0,
totalTurnover: 0,
avTransValue: 0,
cnpRequired: False,
cashbackRequired: False,
futurePayRequired: False,
newToCards: False
},
Owners:
[
{
dayOfBirth: 0,
monthOfBirth: 0,
yearOfBirth: 0,
ownershipPercentage: 0,
homeAddress:
{
address1: String,
address2: String,
address3: String,
postalCode: String,
city: String,
state: String,
countryCode: String
},
currentAddressLessThanThreeYears: False,
previousHomeAddress:
{
address1: String,
address2: String,
address3: String,
postalCode: String,
city: String,
state: String,
countryCode: String
},
name:
{
title: String,
firstName: String,
middleName: String,
lastName: String
},
director: False,
nationality: String,
position: String,
timeAtHomeAddressYears: 0,
timeAtHomeAddressMonths: 0,
PrimaryPartyID: String,
identityVerificationDocuments:
[
{
documentId: String,
authenticity: String
}
]
}
],
NapPartyId: String
}