CDD Engine Web Service v2.14.0.0

<back to all web services

AllChecksDataRequestRequest

Requires Authentication
The following routes are available for this service:
POST/allchecks/submit/data
import 'package:servicestack/servicestack.dart';

class ApplicationDetails implements IConvertible
{
    String? specialInstructions;
    bool? typeAcquiring;
    bool? typePOS_F2F;
    bool? typePOS_MOTO;
    bool? typeOnlinePayments;
    bool? typeVirtualTerminal;
    String? sellerCode;
    int? numOutlets;
    String? mccCode;
    String? offerDescription;
    String? pricingPackage;
    int? contractLength;
    String? settlementPeriodTPlus;
    String? ecomPSP;
    String? posPSP;

    ApplicationDetails({this.specialInstructions,this.typeAcquiring,this.typePOS_F2F,this.typePOS_MOTO,this.typeOnlinePayments,this.typeVirtualTerminal,this.sellerCode,this.numOutlets,this.mccCode,this.offerDescription,this.pricingPackage,this.contractLength,this.settlementPeriodTPlus,this.ecomPSP,this.posPSP});
    ApplicationDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        specialInstructions = json['specialInstructions'];
        typeAcquiring = json['typeAcquiring'];
        typePOS_F2F = json['typePOS_F2F'];
        typePOS_MOTO = json['typePOS_MOTO'];
        typeOnlinePayments = json['typeOnlinePayments'];
        typeVirtualTerminal = json['typeVirtualTerminal'];
        sellerCode = json['sellerCode'];
        numOutlets = json['numOutlets'];
        mccCode = json['mccCode'];
        offerDescription = json['offerDescription'];
        pricingPackage = json['pricingPackage'];
        contractLength = json['contractLength'];
        settlementPeriodTPlus = json['settlementPeriodTPlus'];
        ecomPSP = json['ecomPSP'];
        posPSP = json['posPSP'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'specialInstructions': specialInstructions,
        'typeAcquiring': typeAcquiring,
        'typePOS_F2F': typePOS_F2F,
        'typePOS_MOTO': typePOS_MOTO,
        'typeOnlinePayments': typeOnlinePayments,
        'typeVirtualTerminal': typeVirtualTerminal,
        'sellerCode': sellerCode,
        'numOutlets': numOutlets,
        'mccCode': mccCode,
        'offerDescription': offerDescription,
        'pricingPackage': pricingPackage,
        'contractLength': contractLength,
        'settlementPeriodTPlus': settlementPeriodTPlus,
        'ecomPSP': ecomPSP,
        'posPSP': posPSP
    };

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

class ContactNameData implements IConvertible
{
    String? title;
    String? firstName;
    String? middleName;
    String? lastName;

    ContactNameData({this.title,this.firstName,this.middleName,this.lastName});
    ContactNameData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        title = json['title'];
        firstName = json['firstName'];
        middleName = json['middleName'];
        lastName = json['lastName'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'title': title,
        'firstName': firstName,
        'middleName': middleName,
        'lastName': lastName
    };

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

class ContactDetails implements IConvertible
{
    ContactNameData? name;
    String? phone;
    String? email;
    String? position;
    String? altPhone;
    String? preferredContactMethod;
    String? preferredContactBestTime;

    ContactDetails({this.name,this.phone,this.email,this.position,this.altPhone,this.preferredContactMethod,this.preferredContactBestTime});
    ContactDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = JsonConverters.fromJson(json['name'],'ContactNameData',context!);
        phone = json['phone'];
        email = json['email'];
        position = json['position'];
        altPhone = json['altPhone'];
        preferredContactMethod = json['preferredContactMethod'];
        preferredContactBestTime = json['preferredContactBestTime'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': JsonConverters.toJson(name,'ContactNameData',context!),
        'phone': phone,
        'email': email,
        'position': position,
        'altPhone': altPhone,
        'preferredContactMethod': preferredContactMethod,
        'preferredContactBestTime': preferredContactBestTime
    };

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

class AddressData implements IConvertible
{
    String? address1;
    String? address2;
    String? address3;
    String? postalCode;
    String? city;
    String? state;
    String? countryCode;

    AddressData({this.address1,this.address2,this.address3,this.postalCode,this.city,this.state,this.countryCode});
    AddressData.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        address1 = json['address1'];
        address2 = json['address2'];
        address3 = json['address3'];
        postalCode = json['postalCode'];
        city = json['city'];
        state = json['state'];
        countryCode = json['countryCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'address1': address1,
        'address2': address2,
        'address3': address3,
        'postalCode': postalCode,
        'city': city,
        'state': state,
        'countryCode': countryCode
    };

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

class CompanyDetails implements IConvertible
{
    String? legalName;
    String? tradingName;
    AddressData? tradingAddress;
    AddressData? legalAddress;
    String? website;
    String? companyType;
    String? registrationNumber;
    String? merchantCategoryPseudoName;
    String? vatNumber;
    bool? hasStartedTrading;
    String? startedTradingMonth;
    String? startedTradingYear;
    String? companyTypeOther;
    bool? isRegisteredCharity;
    String? countryOfIncorporation;
    String? regionOfIncorporation;

    CompanyDetails({this.legalName,this.tradingName,this.tradingAddress,this.legalAddress,this.website,this.companyType,this.registrationNumber,this.merchantCategoryPseudoName,this.vatNumber,this.hasStartedTrading,this.startedTradingMonth,this.startedTradingYear,this.companyTypeOther,this.isRegisteredCharity,this.countryOfIncorporation,this.regionOfIncorporation});
    CompanyDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        legalName = json['legalName'];
        tradingName = json['tradingName'];
        tradingAddress = JsonConverters.fromJson(json['tradingAddress'],'AddressData',context!);
        legalAddress = JsonConverters.fromJson(json['legalAddress'],'AddressData',context!);
        website = json['website'];
        companyType = json['companyType'];
        registrationNumber = json['registrationNumber'];
        merchantCategoryPseudoName = json['merchantCategoryPseudoName'];
        vatNumber = json['vatNumber'];
        hasStartedTrading = json['hasStartedTrading'];
        startedTradingMonth = json['startedTradingMonth'];
        startedTradingYear = json['startedTradingYear'];
        companyTypeOther = json['companyTypeOther'];
        isRegisteredCharity = json['isRegisteredCharity'];
        countryOfIncorporation = json['countryOfIncorporation'];
        regionOfIncorporation = json['regionOfIncorporation'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'legalName': legalName,
        'tradingName': tradingName,
        'tradingAddress': JsonConverters.toJson(tradingAddress,'AddressData',context!),
        'legalAddress': JsonConverters.toJson(legalAddress,'AddressData',context!),
        'website': website,
        'companyType': companyType,
        'registrationNumber': registrationNumber,
        'merchantCategoryPseudoName': merchantCategoryPseudoName,
        'vatNumber': vatNumber,
        'hasStartedTrading': hasStartedTrading,
        'startedTradingMonth': startedTradingMonth,
        'startedTradingYear': startedTradingYear,
        'companyTypeOther': companyTypeOther,
        'isRegisteredCharity': isRegisteredCharity,
        'countryOfIncorporation': countryOfIncorporation,
        'regionOfIncorporation': regionOfIncorporation
    };

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

class BankDetails implements IConvertible
{
    String? sortCode;
    String? accountNumber;
    String? bankName;
    String? bankAccountName;
    String? settlementCurrency;
    String? swiftCode;

    BankDetails({this.sortCode,this.accountNumber,this.bankName,this.bankAccountName,this.settlementCurrency,this.swiftCode});
    BankDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        sortCode = json['sortCode'];
        accountNumber = json['accountNumber'];
        bankName = json['bankName'];
        bankAccountName = json['bankAccountName'];
        settlementCurrency = json['settlementCurrency'];
        swiftCode = json['swiftCode'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'sortCode': sortCode,
        'accountNumber': accountNumber,
        'bankName': bankName,
        'bankAccountName': bankAccountName,
        'settlementCurrency': settlementCurrency,
        'swiftCode': swiftCode
    };

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

class DaysToDelivery implements IConvertible
{
    double? percentageOfOrders;
    int? numberOfDays;

    DaysToDelivery({this.percentageOfOrders,this.numberOfDays});
    DaysToDelivery.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        percentageOfOrders = JsonConverters.toDouble(json['percentageOfOrders']);
        numberOfDays = json['numberOfDays'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'percentageOfOrders': percentageOfOrders,
        'numberOfDays': numberOfDays
    };

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

class PaymentDetails implements IConvertible
{
    double? percentageOfTotalTurnoverToRelatedBusiness;
    double? percentageOfTotalTurnoverTakenAsDeposit;
    int? averageDaysBetweenDepositAndFullPayment;
    int? averageDaysBetweenFullPaymentAndDelivery;

    PaymentDetails({this.percentageOfTotalTurnoverToRelatedBusiness,this.percentageOfTotalTurnoverTakenAsDeposit,this.averageDaysBetweenDepositAndFullPayment,this.averageDaysBetweenFullPaymentAndDelivery});
    PaymentDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        percentageOfTotalTurnoverToRelatedBusiness = JsonConverters.toDouble(json['percentageOfTotalTurnoverToRelatedBusiness']);
        percentageOfTotalTurnoverTakenAsDeposit = JsonConverters.toDouble(json['percentageOfTotalTurnoverTakenAsDeposit']);
        averageDaysBetweenDepositAndFullPayment = json['averageDaysBetweenDepositAndFullPayment'];
        averageDaysBetweenFullPaymentAndDelivery = json['averageDaysBetweenFullPaymentAndDelivery'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'percentageOfTotalTurnoverToRelatedBusiness': percentageOfTotalTurnoverToRelatedBusiness,
        'percentageOfTotalTurnoverTakenAsDeposit': percentageOfTotalTurnoverTakenAsDeposit,
        'averageDaysBetweenDepositAndFullPayment': averageDaysBetweenDepositAndFullPayment,
        'averageDaysBetweenFullPaymentAndDelivery': averageDaysBetweenFullPaymentAndDelivery
    };

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

class BusinessProfile implements IConvertible
{
    String? descriptionOfYourGoodsAndServices;
    double? anticipatedAverageMonthlyTurnover;
    double? anticipatedPeakMonthlyTurnover;
    double? percentageOfPrepayments;
    double? percentageOfDeposits;
    double? percentageOfSubscriptions;
    List<DaysToDelivery>? daysFromOrderConfirmationToDelivery;
    List<PaymentDetails>? depositPaymentDetails;
    int? averageSubscriptionLengthInMonths;
    int? averageNumberOfSubscriptionPayments;
    double? anticipatedPercentageIncreaseInTurnoverForAYear;
    double? ccTurnover;
    double? totalCardTurnover;
    double? cnpPercentage;
    double? totalTurnover;
    double? avTransValue;
    bool? cnpRequired;
    bool? cashbackRequired;
    bool? futurePayRequired;
    bool? newToCards;

    BusinessProfile({this.descriptionOfYourGoodsAndServices,this.anticipatedAverageMonthlyTurnover,this.anticipatedPeakMonthlyTurnover,this.percentageOfPrepayments,this.percentageOfDeposits,this.percentageOfSubscriptions,this.daysFromOrderConfirmationToDelivery,this.depositPaymentDetails,this.averageSubscriptionLengthInMonths,this.averageNumberOfSubscriptionPayments,this.anticipatedPercentageIncreaseInTurnoverForAYear,this.ccTurnover,this.totalCardTurnover,this.cnpPercentage,this.totalTurnover,this.avTransValue,this.cnpRequired,this.cashbackRequired,this.futurePayRequired,this.newToCards});
    BusinessProfile.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        descriptionOfYourGoodsAndServices = json['descriptionOfYourGoodsAndServices'];
        anticipatedAverageMonthlyTurnover = JsonConverters.toDouble(json['anticipatedAverageMonthlyTurnover']);
        anticipatedPeakMonthlyTurnover = JsonConverters.toDouble(json['anticipatedPeakMonthlyTurnover']);
        percentageOfPrepayments = JsonConverters.toDouble(json['percentageOfPrepayments']);
        percentageOfDeposits = JsonConverters.toDouble(json['percentageOfDeposits']);
        percentageOfSubscriptions = JsonConverters.toDouble(json['percentageOfSubscriptions']);
        daysFromOrderConfirmationToDelivery = JsonConverters.fromJson(json['daysFromOrderConfirmationToDelivery'],'List<DaysToDelivery>',context!);
        depositPaymentDetails = JsonConverters.fromJson(json['depositPaymentDetails'],'List<PaymentDetails>',context!);
        averageSubscriptionLengthInMonths = json['averageSubscriptionLengthInMonths'];
        averageNumberOfSubscriptionPayments = json['averageNumberOfSubscriptionPayments'];
        anticipatedPercentageIncreaseInTurnoverForAYear = JsonConverters.toDouble(json['anticipatedPercentageIncreaseInTurnoverForAYear']);
        ccTurnover = JsonConverters.toDouble(json['ccTurnover']);
        totalCardTurnover = JsonConverters.toDouble(json['totalCardTurnover']);
        cnpPercentage = JsonConverters.toDouble(json['cnpPercentage']);
        totalTurnover = JsonConverters.toDouble(json['totalTurnover']);
        avTransValue = JsonConverters.toDouble(json['avTransValue']);
        cnpRequired = json['cnpRequired'];
        cashbackRequired = json['cashbackRequired'];
        futurePayRequired = json['futurePayRequired'];
        newToCards = json['newToCards'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'descriptionOfYourGoodsAndServices': descriptionOfYourGoodsAndServices,
        'anticipatedAverageMonthlyTurnover': anticipatedAverageMonthlyTurnover,
        'anticipatedPeakMonthlyTurnover': anticipatedPeakMonthlyTurnover,
        'percentageOfPrepayments': percentageOfPrepayments,
        'percentageOfDeposits': percentageOfDeposits,
        'percentageOfSubscriptions': percentageOfSubscriptions,
        'daysFromOrderConfirmationToDelivery': JsonConverters.toJson(daysFromOrderConfirmationToDelivery,'List<DaysToDelivery>',context!),
        'depositPaymentDetails': JsonConverters.toJson(depositPaymentDetails,'List<PaymentDetails>',context!),
        'averageSubscriptionLengthInMonths': averageSubscriptionLengthInMonths,
        'averageNumberOfSubscriptionPayments': averageNumberOfSubscriptionPayments,
        'anticipatedPercentageIncreaseInTurnoverForAYear': anticipatedPercentageIncreaseInTurnoverForAYear,
        'ccTurnover': ccTurnover,
        'totalCardTurnover': totalCardTurnover,
        'cnpPercentage': cnpPercentage,
        'totalTurnover': totalTurnover,
        'avTransValue': avTransValue,
        'cnpRequired': cnpRequired,
        'cashbackRequired': cashbackRequired,
        'futurePayRequired': futurePayRequired,
        'newToCards': newToCards
    };

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

class IdentityVerificationDocuments implements IConvertible
{
    String? documentId;
    String? authenticity;

    IdentityVerificationDocuments({this.documentId,this.authenticity});
    IdentityVerificationDocuments.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        documentId = json['documentId'];
        authenticity = json['authenticity'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'documentId': documentId,
        'authenticity': authenticity
    };

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

class OwnerDetails implements IConvertible
{
    int? dayOfBirth;
    int? monthOfBirth;
    int? yearOfBirth;
    double? ownershipPercentage;
    AddressData? homeAddress;
    bool? currentAddressLessThanThreeYears;
    AddressData? previousHomeAddress;
    ContactNameData? name;
    bool? director;
    String? nationality;
    String? position;
    int? timeAtHomeAddressYears;
    int? timeAtHomeAddressMonths;
    String? PrimaryPartyID;
    List<IdentityVerificationDocuments>? identityVerificationDocuments;

    OwnerDetails({this.dayOfBirth,this.monthOfBirth,this.yearOfBirth,this.ownershipPercentage,this.homeAddress,this.currentAddressLessThanThreeYears,this.previousHomeAddress,this.name,this.director,this.nationality,this.position,this.timeAtHomeAddressYears,this.timeAtHomeAddressMonths,this.PrimaryPartyID,this.identityVerificationDocuments});
    OwnerDetails.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        dayOfBirth = json['dayOfBirth'];
        monthOfBirth = json['monthOfBirth'];
        yearOfBirth = json['yearOfBirth'];
        ownershipPercentage = JsonConverters.toDouble(json['ownershipPercentage']);
        homeAddress = JsonConverters.fromJson(json['homeAddress'],'AddressData',context!);
        currentAddressLessThanThreeYears = json['currentAddressLessThanThreeYears'];
        previousHomeAddress = JsonConverters.fromJson(json['previousHomeAddress'],'AddressData',context!);
        name = JsonConverters.fromJson(json['name'],'ContactNameData',context!);
        director = json['director'];
        nationality = json['nationality'];
        position = json['position'];
        timeAtHomeAddressYears = json['timeAtHomeAddressYears'];
        timeAtHomeAddressMonths = json['timeAtHomeAddressMonths'];
        PrimaryPartyID = json['PrimaryPartyID'];
        identityVerificationDocuments = JsonConverters.fromJson(json['identityVerificationDocuments'],'List<IdentityVerificationDocuments>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'dayOfBirth': dayOfBirth,
        'monthOfBirth': monthOfBirth,
        'yearOfBirth': yearOfBirth,
        'ownershipPercentage': ownershipPercentage,
        'homeAddress': JsonConverters.toJson(homeAddress,'AddressData',context!),
        'currentAddressLessThanThreeYears': currentAddressLessThanThreeYears,
        'previousHomeAddress': JsonConverters.toJson(previousHomeAddress,'AddressData',context!),
        'name': JsonConverters.toJson(name,'ContactNameData',context!),
        'director': director,
        'nationality': nationality,
        'position': position,
        'timeAtHomeAddressYears': timeAtHomeAddressYears,
        'timeAtHomeAddressMonths': timeAtHomeAddressMonths,
        'PrimaryPartyID': PrimaryPartyID,
        'identityVerificationDocuments': JsonConverters.toJson(identityVerificationDocuments,'List<IdentityVerificationDocuments>',context!)
    };

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

class AllChecksDataRequestRequest implements IConvertible
{
    String? ApplicationGUID;
    int? CSR;
    ApplicationDetails? ApplicationDetails;
    ContactDetails? MainBusinessRepresentative;
    CompanyDetails? CompanyDetail;
    BankDetails? BankDetail;
    BusinessProfile? BusinessProfile;
    List<OwnerDetails>? Owners;
    String? NapPartyId;

    AllChecksDataRequestRequest({this.ApplicationGUID,this.CSR,this.ApplicationDetails,this.MainBusinessRepresentative,this.CompanyDetail,this.BankDetail,this.BusinessProfile,this.Owners,this.NapPartyId});
    AllChecksDataRequestRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        ApplicationGUID = json['ApplicationGUID'];
        CSR = json['CSR'];
        ApplicationDetails = JsonConverters.fromJson(json['ApplicationDetails'],'ApplicationDetails',context!);
        MainBusinessRepresentative = JsonConverters.fromJson(json['MainBusinessRepresentative'],'ContactDetails',context!);
        CompanyDetail = JsonConverters.fromJson(json['CompanyDetail'],'CompanyDetails',context!);
        BankDetail = JsonConverters.fromJson(json['BankDetail'],'BankDetails',context!);
        BusinessProfile = JsonConverters.fromJson(json['BusinessProfile'],'BusinessProfile',context!);
        Owners = JsonConverters.fromJson(json['Owners'],'List<OwnerDetails>',context!);
        NapPartyId = json['NapPartyId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'ApplicationGUID': ApplicationGUID,
        'CSR': CSR,
        'ApplicationDetails': JsonConverters.toJson(ApplicationDetails,'ApplicationDetails',context!),
        'MainBusinessRepresentative': JsonConverters.toJson(MainBusinessRepresentative,'ContactDetails',context!),
        'CompanyDetail': JsonConverters.toJson(CompanyDetail,'CompanyDetails',context!),
        'BankDetail': JsonConverters.toJson(BankDetail,'BankDetails',context!),
        'BusinessProfile': JsonConverters.toJson(BusinessProfile,'BusinessProfile',context!),
        'Owners': JsonConverters.toJson(Owners,'List<OwnerDetails>',context!),
        'NapPartyId': NapPartyId
    };

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

TypeContext _ctx = TypeContext(library: 'wp_cddws_test.worldpay.com', types: <String, TypeInfo> {
    'ApplicationDetails': TypeInfo(TypeOf.Class, create:() => ApplicationDetails()),
    'ContactNameData': TypeInfo(TypeOf.Class, create:() => ContactNameData()),
    'ContactDetails': TypeInfo(TypeOf.Class, create:() => ContactDetails()),
    'AddressData': TypeInfo(TypeOf.Class, create:() => AddressData()),
    'CompanyDetails': TypeInfo(TypeOf.Class, create:() => CompanyDetails()),
    'BankDetails': TypeInfo(TypeOf.Class, create:() => BankDetails()),
    'DaysToDelivery': TypeInfo(TypeOf.Class, create:() => DaysToDelivery()),
    'PaymentDetails': TypeInfo(TypeOf.Class, create:() => PaymentDetails()),
    'BusinessProfile': TypeInfo(TypeOf.Class, create:() => BusinessProfile()),
    'List<DaysToDelivery>': TypeInfo(TypeOf.Class, create:() => <DaysToDelivery>[]),
    'List<PaymentDetails>': TypeInfo(TypeOf.Class, create:() => <PaymentDetails>[]),
    'IdentityVerificationDocuments': TypeInfo(TypeOf.Class, create:() => IdentityVerificationDocuments()),
    'OwnerDetails': TypeInfo(TypeOf.Class, create:() => OwnerDetails()),
    'List<IdentityVerificationDocuments>': TypeInfo(TypeOf.Class, create:() => <IdentityVerificationDocuments>[]),
    'AllChecksDataRequestRequest': TypeInfo(TypeOf.Class, create:() => AllChecksDataRequestRequest()),
    'List<OwnerDetails>': TypeInfo(TypeOf.Class, create:() => <OwnerDetails>[]),
});

Dart AllChecksDataRequestRequest 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/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
}