Autoboard Webservice v5.13.0.0

<back to all web services

OrderBoardingRequest

json-order
Requires Authentication
The following routes are available for this service:
POST/OrderBoarding
import Foundation
import ServiceStack

public class OrderBoardingRequest : Codable
{
    // @ApiMember(IsRequired=true)
    public var correlationId:String?

    // @ApiMember(IsRequired=true)
    public var orderJson:Order?

    public var onboardingRequestId:String?
    public var localEnterpriseId:String?
    public var audience:String?

    required public init(){}
}

public class Order : Codable
{
    public var meta:OrderMeta?
    public var payload:OrderPayload?

    required public init(){}
}

public class OrderMeta : Codable
{
    public var sourceSystem:String?
    public var sourceSystemIdentifier:String?
    public var csr:String?
    public var ultimateParentId:String?
    public var orderType:String?
    public var customerType:String?
    public var partner:Partner?
    public var sellerCode:String?
    public var sellerEmail:String?
    public var specialInstructions:String?
    public var contact:AuthorisedSigner?
    public var offerDetails:String?
    public var dateContractAccepted:Date?
    public var worldpayBusinessFinanceInterest:Bool?
    public var sar:Bool?
    public var hasSupportingFiles:Bool?

    required public init(){}
}

public class Partner : Codable
{
    public var partnerName:String?
    public var partnerId:String?

    required public init(){}
}

public class AuthorisedSigner : Contact
{
    public var dateOfBirth:Date?
    public var countryCode:String?

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case dateOfBirth
        case countryCode
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        dateOfBirth = try container.decodeIfPresent(Date.self, forKey: .dateOfBirth)
        countryCode = try container.decodeIfPresent(String.self, forKey: .countryCode)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if dateOfBirth != nil { try container.encode(dateOfBirth, forKey: .dateOfBirth) }
        if countryCode != nil { try container.encode(countryCode, forKey: .countryCode) }
    }
}

public class Contact : Person
{
    public var idpGuid:String?
    public var telephoneNumber:String?
    public var altTelephoneNumber:String?
    public var email:String?
    public var position:String?
    public var preferredContactMethod:String?
    public var preferredContactBestTime:String?

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case idpGuid
        case telephoneNumber
        case altTelephoneNumber
        case email
        case position
        case preferredContactMethod
        case preferredContactBestTime
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        idpGuid = try container.decodeIfPresent(String.self, forKey: .idpGuid)
        telephoneNumber = try container.decodeIfPresent(String.self, forKey: .telephoneNumber)
        altTelephoneNumber = try container.decodeIfPresent(String.self, forKey: .altTelephoneNumber)
        email = try container.decodeIfPresent(String.self, forKey: .email)
        position = try container.decodeIfPresent(String.self, forKey: .position)
        preferredContactMethod = try container.decodeIfPresent(String.self, forKey: .preferredContactMethod)
        preferredContactBestTime = try container.decodeIfPresent(String.self, forKey: .preferredContactBestTime)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if idpGuid != nil { try container.encode(idpGuid, forKey: .idpGuid) }
        if telephoneNumber != nil { try container.encode(telephoneNumber, forKey: .telephoneNumber) }
        if altTelephoneNumber != nil { try container.encode(altTelephoneNumber, forKey: .altTelephoneNumber) }
        if email != nil { try container.encode(email, forKey: .email) }
        if position != nil { try container.encode(position, forKey: .position) }
        if preferredContactMethod != nil { try container.encode(preferredContactMethod, forKey: .preferredContactMethod) }
        if preferredContactBestTime != nil { try container.encode(preferredContactBestTime, forKey: .preferredContactBestTime) }
    }
}

public class Person : Codable
{
    public var title:String?
    public var firstName:String?
    public var middleName:String?
    public var lastName:String?

    required public init(){}
}

public class OrderPayload : Codable
{
    public var partyId:String?
    public var parentPartyId:String?
    public var legalName:String?
    public var tradingName:String?
    public var addresses:[MerchantAddress] = []
    public var tradingContact:Contact?
    public var invoiceContact:InvoiceContact?
    public var settlementBankAccount:BankAccount?
    public var chargesBankAccount:BankAccount?
    public var directDebitCorrespondenceEmail:String?
    public var websiteAddress:String?
    public var companyType:String?
    public var companyTypeOther:String?
    public var companyRegistrationNumber:String?
    public var charityNumber:String?
    public var merchantCategories:[MerchantCategory] = []
    public var vatNumber:String?
    public var dateStartedTrading:Date?
    public var anticipatedGoLiveDate:Date?
    public var countryOfIncorporation:String?
    public var regionOfIncorporation:String?
    public var financials:Financials?
    public var newToCards:Bool?
    public var tradeAssociation:TradeAssociation?
    public var principals:[Principal] = []
    public var goodsAndServices:GoodsAndServices?
    public var accessibilityOptions:AccessibilityOptions?
    public var clearingDetails:ClearingDetails?
    public var acquiring:Acquiring?
    public var subscriptions:[Subscription] = []
    public var children:[OrderPayload] = []

    required public init(){}
}

public class MerchantAddress : Address
{
    public var addressType:String?
    public var isCommercial:Bool?

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case addressType
        case isCommercial
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        addressType = try container.decodeIfPresent(String.self, forKey: .addressType)
        isCommercial = try container.decodeIfPresent(Bool.self, forKey: .isCommercial)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if addressType != nil { try container.encode(addressType, forKey: .addressType) }
        if isCommercial != nil { try container.encode(isCommercial, forKey: .isCommercial) }
    }
}

public class Address : Codable
{
    public var address1:String?
    public var address2:String?
    public var address3:String?
    public var postcode:String?
    public var city:String?
    public var state:String?
    public var countryCode:String?

    required public init(){}
}

public class InvoiceContact : Person
{
    public var email:String?
    public var position:String?

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case email
        case position
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        email = try container.decodeIfPresent(String.self, forKey: .email)
        position = try container.decodeIfPresent(String.self, forKey: .position)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if email != nil { try container.encode(email, forKey: .email) }
        if position != nil { try container.encode(position, forKey: .position) }
    }
}

public class BankAccount : Codable
{
    public var sortCode:String?
    public var accountNumber:String?
    public var bankName:String?
    public var bankAccountName:String?
    public var swiftCode:String?
    public var internationalBankAccountNumber:String?

    required public init(){}
}

public class MerchantCategory : Codable
{
    public var merchantCategoryCode:String?
    public var merchantCategoryDescription:String?
    public var descriptionOfGoodsAndServices:String?

    required public init(){}
}

public class Financials : Codable
{
    public var annual:Double?
    public var cardPercentage:Double?
    public var creditCardPercentage:Double?
    public var averageTransactionValue:Double?
    public var cardNotPresentPercentage:Double?

    required public init(){}
}

public class TradeAssociation : Codable
{
    public var groupName:String?
    public var memberNumber:String?

    required public init(){}
}

public class Principal : Codable
{
    public var title:String?
    public var firstName:String?
    public var middleName:String?
    public var lastName:String?
    public var dateOfBirth:Date?
    public var nationality:String?
    public var homeAddresses:[PrincipalAddress] = []
    public var ownershipPercentage:Double?
    public var position:PositionType?
    public var isFinancialController:Bool?

    required public init(){}
}

public class PrincipalAddress : Address
{
    public var startDate:Date?
    public var endDate:Date?

    required public init(){ super.init() }

    private enum CodingKeys : String, CodingKey {
        case startDate
        case endDate
    }

    required public init(from decoder: Decoder) throws {
        try super.init(from: decoder)
        let container = try decoder.container(keyedBy: CodingKeys.self)
        startDate = try container.decodeIfPresent(Date.self, forKey: .startDate)
        endDate = try container.decodeIfPresent(Date.self, forKey: .endDate)
    }

    public override func encode(to encoder: Encoder) throws {
        try super.encode(to: encoder)
        var container = encoder.container(keyedBy: CodingKeys.self)
        if startDate != nil { try container.encode(startDate, forKey: .startDate) }
        if endDate != nil { try container.encode(endDate, forKey: .endDate) }
    }
}

public class Address : Codable
{
    public var address1:String?
    public var address2:String?
    public var address3:String?
    public var postcode:String?
    public var city:String?
    public var state:String?
    public var countrycode:String?

    required public init(){}
}

public enum PositionType : Int, Codable
{
    case SoleTrader = 0
    case Partner = 1
    case Director = 2
    case CompanySecretary = 3
    case ChiefFinancialOfficer = 4
    case Chairman = 5
    case DesignatedBoardMember = 7
    case Settlor = 8
    case Treasurer = 9
    case Trustee = 10
    case ChiefExecutive = 11
    case AuthorisedPersonWithConsent = 12
    case NonExecutiveDirector = 13
    case ContactPerson = 14
    case Shareholder = 15
}

public class GoodsAndServices : Codable
{
    public var goodsProvidedByThirdParty:Bool?
    public var deposits:Deposits?
    public var warrantiesAndGuarantees:WarrantiesAndGuarantees?
    public var prepayments:Prepayments?
    public var membershipsSubscriptionAndInsurancePremiums:MembershipsSubscriptionAndInsurancePremiums?
    public var stockHeldAtAnotherAddressLocation:Address?

    required public init(){}
}

public class Deposits : Codable
{
    public var perOfSalesWhereInitialDepositTaken:Int?
    public var sizePerTotalValue:Int?
    public var avgTimeBeforeDeliveryDepositTaken:Int?
    public var avgTimeBeforeDeliveryBalanceTaken:Int?

    required public init(){}
}

public class WarrantiesAndGuarantees : Codable
{
    public var percCardTurnover:Int?
    public var avgLengthInMonths:Int?
    public var percGoodsReturned:Int?
    public var thirdPartyProviders:String?

    required public init(){}
}

public class Prepayments : Codable
{
    public var percGoodsWherePaymentTakenPriorToDelivery:Int?
    public var avgDaysPaymentTakenInAdvance:Int?

    required public init(){}
}

public class MembershipsSubscriptionAndInsurancePremiums : Codable
{
    public var percCardTurnover:Int?
    public var avgLengthInMonths:Int?
    public var membershipCost:Double?

    required public init(){}
}

public class AccessibilityOptions : Codable
{
    public var audiotapeRequired:Bool?
    public var largePrintRequired:Bool?
    public var uncontractedBrailleGrade1Required:Bool?
    public var uncontractedBrailleGrade2Required:Bool?
    public var nextGenerationTextRequired:Bool?

    required public init(){}
}

public class ClearingDetails : Codable
{
    public var merchantUrl:String?
    public var telephone:String?
    public var email:String?

    required public init(){}
}

public class Acquiring : Codable
{
    public var settlementPeriod:Int?
    public var fundingMode:String?
    public var rates:Rates?
    public var tradingCurrencies:[TradingCurrency] = []

    required public init(){}
}

public class Rates : Codable
{
    public var cardCharges:[CardCharge] = []
    public var premiumTransactionCharges:[PremiumTransactionCharge] = []
    public var additionalTariffs:[AdditionalTariff] = []

    required public init(){}
}

public class CardCharge : Codable
{
    public var cardType:CardType?
    public var purchase:RateChargePair?
    public var refund:RateChargePair?

    required public init(){}
}

public enum CardType : String, Codable
{
    case VisaDebit
    case VisaCredit
    case VisaCommercial
    case MastercardDebit
    case MastercardCredit
    case MastercardCommercial
    case MastercardWorldSignia
    case JcbCredit
    case JcbDebit
    case JcbCommercial
    case DinersDiscoverCredit
    case DinersDiscoverDebit
    case DinersDiscoverCommercial
    case Amex
    case ChinaUnionPayCredit
    case ChinaUnionPayDebit
    case ChinaUnionPayCommercial
    case VisaBusinessDebit
    case MastercardBusiness
}

public class RateChargePair : Codable
{
    public var percent:Double?
    public var cost:Double?

    required public init(){}
}

public class PremiumTransactionCharge : Codable
{
    public var type:PremiumTransactionChargeType?
    public var creditCard:RateChargePair?
    public var debitCard:RateChargePair?

    required public init(){}
}

public enum PremiumTransactionChargeType : String, Codable
{
    case Magstripe
    case CnpMoto
    case Paper
    case PanKeyEntry
    case SecureEcom
    case NonSecureEcom
    case InterRegional
    case IntraRegional
    case NonAuth
}

public class AdditionalTariff : Codable
{
    public var type:String?
    public var cost:Double?

    required public init(){}
}

public class TradingCurrency : Codable
{
    public var transactionCurrencies:[CurrencyCodeType] = []
    public var settlementCurrency:CurrencyCodeType?
    public var settlementBankSwift:String?
    public var settlementBankIban:String?

    required public init(){}
}

public enum CurrencyCodeType : String, Codable
{
    case GBP
    case EUR
    case USD
    case AED
    case AFN
    case ALL
    case AMD
    case ANG
    case AOA
    case ARS
    case AUD
    case AWG
    case AZN
    case BAM
    case BBD
    case BDT
    case BGN
    case BHD
    case BIF
    case BMD
    case BND
    case BOB
    case BRL
    case BSD
    case BTN
    case BWP
    case BYR
    case BZD
    case CAD
    case CDF
    case CHF
    case CLP
    case CNY
    case COP
    case COU
    case CRC
    case CUC
    case CUP
    case CVE
    case CZK
    case DJF
    case DKK
    case DOP
    case DZD
    case EEK
    case EGP
    case ERN
    case ETB
    case FJD
    case FKP
    case GEL
    case GHS
    case GIP
    case GMD
    case GNF
    case GTQ
    case GYD
    case HKD
    case HNL
    case HRK
    case HTG
    case HUF
    case IDR
    case ILS
    case INR
    case IQD
    case IRR
    case ISK
    case JMD
    case JOD
    case JPY
    case KES
    case KGS
    case KHR
    case KMF
    case KPW
    case KRW
    case KWD
    case KYD
    case KZT
    case LAK
    case LBP
    case LKR
    case LRD
    case LSL
    case LTL
    case LVL
    case LYD
    case MAD
    case MDL
    case MGA
    case MKD
    case MMK
    case MNT
    case MOP
    case MRO
    case MUR
    case MVR
    case MWK
    case MXN
    case MYR
    case MZN
    case NAD
    case NGN
    case NIO
    case NOK
    case NPR
    case NZD
    case OMR
    case PAB
    case PEN
    case PGK
    case PHP
    case PKR
    case PLN
    case PYG
    case QAR
    case RON
    case RSD
    case RUB
    case RWF
    case SAR
    case SBD
    case SCR
    case SDG
    case SEK
    case SGD
    case SHP
    case SLL
    case SOS
    case SRD
    case STD
    case SYP
    case SZL
    case THB
    case TJS
    case TMT
    case TND
    case TOP
    case TRY
    case TTD
    case TWD
    case TZS
    case UAH
    case UGX
    case UYU
    case UZS
    case VEF
    case VND
    case VUV
    case WST
    case YER
    case ZAR
    case ZMK
    case ZWL
}

public class Subscription : Codable
{
    public var proposition:String?
    public var pricingPackage:String?
    public var term:Int?
    public var renewalLength:Int?
    public var acquiring:Acquiring?
    public var products:[Product] = []

    required public init(){}
}

public class Product : Codable
{
    public var name:String?
    public var type:String?
    public var variant:String?
    public var quantity:Int?
    public var relatedFees:[ProductFee] = []
    public var options:[ProductOption] = []

    required public init(){}
}

public class ProductFee : Codable
{
    public var type:ProductFeeType?
    public var cost:Double?

    required public init(){}
}

public enum ProductFeeType : String, Codable
{
    case HireCost
    case TransactionCost
    case ServiceFee
    case ManagedServiceSetup
    case ManagedServiceMonthly
}

public class ProductOption : Codable
{
    public var type:String?
    public var value:String?

    required public init(){}
}

public class InitiateBoardingResponse : Codable
{
    public var applicationGuid:String?
    public var csr:Int?
    public var applicationQueueGuid:String?
    public var queueStatus:ApplicationQueueStatus?
    public var boardingStatus:ApplicationBoardingStatus?
    public var errorMessages:[String] = []

    required public init(){}
}

// @DataContract
public enum ApplicationQueueStatus : Int, Codable
{
    case Queued = 0
    case StandardisedXML = 20
    case ReadyToDistribute = 40
    case AwaitingDistributeResponse = 60
    case ReadyToAutoboard = 80
    case ThrottleCheckPassed = 100
    case EligibilityCheckPassed = 300
    case SentToAutoboardService = 400
    case AutoboardingSuspended = 450
    case SuccessfullyBoarded = 500
    case QueueError = 1000
    case ThrottleCheckError = 1100
    case XMLStandardisationError = 1200
    case EligibilityCheckError = 1300
    case AutoboardingError = 1400
    case IneligibleThrottleLimit = 2100
    case IneligibleApplication = 2300
}

// @DataContract
public enum ApplicationBoardingStatus : Int, Codable
{
    case PENDING = 0
    case IN_PROGRESS = 5
    case FAILED = 9
    case COMPLETED = 10
}


Swift OrderBoardingRequest 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 /OrderBoarding HTTP/1.1 
Host: abservice.worldpay.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<OrderBoardingRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Autoboarding.Common.Requests">
  <Audience>String</Audience>
  <CorrelationId>00000000-0000-0000-0000-000000000000</CorrelationId>
  <LocalEnterpriseId>00000000-0000-0000-0000-000000000000</LocalEnterpriseId>
  <OnboardingRequestId>00000000-0000-0000-0000-000000000000</OnboardingRequestId>
  <OrderJson xmlns:d2p1="http://schemas.datacontract.org/2004/07/BoardingGateway.Common.Requests.Orders">
    <d2p1:Meta>
      <d2p1:Contact>
        <d2p1:FirstName>String</d2p1:FirstName>
        <d2p1:LastName>String</d2p1:LastName>
        <d2p1:MiddleName>String</d2p1:MiddleName>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:AltTelephoneNumber>String</d2p1:AltTelephoneNumber>
        <d2p1:Email>String</d2p1:Email>
        <d2p1:IdpGuid>00000000-0000-0000-0000-000000000000</d2p1:IdpGuid>
        <d2p1:Position>String</d2p1:Position>
        <d2p1:PreferredContactBestTime>String</d2p1:PreferredContactBestTime>
        <d2p1:PreferredContactMethod>String</d2p1:PreferredContactMethod>
        <d2p1:TelephoneNumber>String</d2p1:TelephoneNumber>
        <d2p1:CountryCode>String</d2p1:CountryCode>
        <d2p1:DateOfBirth>0001-01-01T00:00:00</d2p1:DateOfBirth>
      </d2p1:Contact>
      <d2p1:Csr>String</d2p1:Csr>
      <d2p1:CustomerType>String</d2p1:CustomerType>
      <d2p1:DateContractAccepted>0001-01-01T00:00:00</d2p1:DateContractAccepted>
      <d2p1:HasSupportingFiles>false</d2p1:HasSupportingFiles>
      <d2p1:OfferDetails>String</d2p1:OfferDetails>
      <d2p1:OrderType>String</d2p1:OrderType>
      <d2p1:Partner>
        <d2p1:PartnerId>String</d2p1:PartnerId>
        <d2p1:PartnerName>String</d2p1:PartnerName>
      </d2p1:Partner>
      <d2p1:Sar>false</d2p1:Sar>
      <d2p1:SellerCode>String</d2p1:SellerCode>
      <d2p1:SellerEmail>String</d2p1:SellerEmail>
      <d2p1:SourceSystem>String</d2p1:SourceSystem>
      <d2p1:SourceSystemIdentifier>String</d2p1:SourceSystemIdentifier>
      <d2p1:SpecialInstructions>String</d2p1:SpecialInstructions>
      <d2p1:UltimateParentId>String</d2p1:UltimateParentId>
      <d2p1:WorldpayBusinessFinanceInterest>false</d2p1:WorldpayBusinessFinanceInterest>
    </d2p1:Meta>
    <d2p1:Payload>
      <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:Acquiring>
        <d2p1:FundingMode>String</d2p1:FundingMode>
        <d2p1:Rates>
          <d2p1:AdditionalTariffs i:nil="true" />
          <d2p1:CardCharges i:nil="true" />
          <d2p1:PremiumTransactionCharges i:nil="true" />
        </d2p1:Rates>
        <d2p1:SettlementPeriod>0</d2p1:SettlementPeriod>
        <d2p1:TradingCurrencies i:nil="true" />
      </d2p1:Acquiring>
      <d2p1:Addresses i:nil="true" />
      <d2p1:AnticipatedGoLiveDate>0001-01-01T00:00:00</d2p1:AnticipatedGoLiveDate>
      <d2p1:ChargesBankAccount>
        <d2p1:AccountNumber>String</d2p1:AccountNumber>
        <d2p1:BankAccountName>String</d2p1:BankAccountName>
        <d2p1:BankName>String</d2p1:BankName>
        <d2p1:InternationalBankAccountNumber>String</d2p1:InternationalBankAccountNumber>
        <d2p1:SortCode>String</d2p1:SortCode>
        <d2p1:SwiftCode>String</d2p1:SwiftCode>
      </d2p1:ChargesBankAccount>
      <d2p1:CharityNumber>String</d2p1:CharityNumber>
      <d2p1:Children i:nil="true" />
      <d2p1:ClearingDetails>
        <d2p1:Email>String</d2p1:Email>
        <d2p1:MerchantUrl>String</d2p1:MerchantUrl>
        <d2p1:Telephone>String</d2p1:Telephone>
      </d2p1:ClearingDetails>
      <d2p1:CompanyRegistrationNumber>String</d2p1:CompanyRegistrationNumber>
      <d2p1:CompanyType>String</d2p1:CompanyType>
      <d2p1:CompanyTypeOther>String</d2p1:CompanyTypeOther>
      <d2p1:CountryOfIncorporation>String</d2p1:CountryOfIncorporation>
      <d2p1:DateStartedTrading>0001-01-01T00:00:00</d2p1:DateStartedTrading>
      <d2p1:DirectDebitCorrespondenceEmail>String</d2p1:DirectDebitCorrespondenceEmail>
      <d2p1:Financials>
        <d2p1:Annual>0</d2p1:Annual>
        <d2p1:AverageTransactionValue>0</d2p1:AverageTransactionValue>
        <d2p1:CardNotPresentPercentage>0</d2p1:CardNotPresentPercentage>
        <d2p1:CardPercentage>0</d2p1:CardPercentage>
        <d2p1:CreditCardPercentage>0</d2p1:CreditCardPercentage>
      </d2p1:Financials>
      <d2p1:GoodsAndServices>
        <d2p1:Deposits>
          <d2p1:AvgTimeBeforeDeliveryBalanceTaken>0</d2p1:AvgTimeBeforeDeliveryBalanceTaken>
          <d2p1:AvgTimeBeforeDeliveryDepositTaken>0</d2p1:AvgTimeBeforeDeliveryDepositTaken>
          <d2p1:PerOfSalesWhereInitialDepositTaken>0</d2p1:PerOfSalesWhereInitialDepositTaken>
          <d2p1:SizePerTotalValue>0</d2p1:SizePerTotalValue>
        </d2p1:Deposits>
        <d2p1:GoodsProvidedByThirdParty>false</d2p1:GoodsProvidedByThirdParty>
        <d2p1:MembershipsSubscriptionAndInsurancePremiums>
          <d2p1:AvgLengthInMonths>0</d2p1:AvgLengthInMonths>
          <d2p1:MembershipCost>0</d2p1:MembershipCost>
          <d2p1:PercCardTurnover>0</d2p1:PercCardTurnover>
        </d2p1:MembershipsSubscriptionAndInsurancePremiums>
        <d2p1:Prepayments>
          <d2p1:AvgDaysPaymentTakenInAdvance>0</d2p1:AvgDaysPaymentTakenInAdvance>
          <d2p1:PercGoodsWherePaymentTakenPriorToDelivery>0</d2p1:PercGoodsWherePaymentTakenPriorToDelivery>
        </d2p1:Prepayments>
        <d2p1:StockHeldAtAnotherAddressLocation>
          <d2p1:Address1>String</d2p1:Address1>
          <d2p1:Address2>String</d2p1:Address2>
          <d2p1:Address3>String</d2p1:Address3>
          <d2p1:City>String</d2p1:City>
          <d2p1:CountryCode>String</d2p1:CountryCode>
          <d2p1:Postcode>String</d2p1:Postcode>
          <d2p1:State>String</d2p1:State>
        </d2p1:StockHeldAtAnotherAddressLocation>
        <d2p1:WarrantiesAndGuarantees>
          <d2p1:AvgLengthInMonths>0</d2p1:AvgLengthInMonths>
          <d2p1:PercCardTurnover>0</d2p1:PercCardTurnover>
          <d2p1:PercGoodsReturned>0</d2p1:PercGoodsReturned>
          <d2p1:ThirdPartyProviders>String</d2p1:ThirdPartyProviders>
        </d2p1:WarrantiesAndGuarantees>
      </d2p1:GoodsAndServices>
      <d2p1:InvoiceContact>
        <d2p1:FirstName>String</d2p1:FirstName>
        <d2p1:LastName>String</d2p1:LastName>
        <d2p1:MiddleName>String</d2p1:MiddleName>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:Email>String</d2p1:Email>
        <d2p1:Position>String</d2p1:Position>
      </d2p1:InvoiceContact>
      <d2p1:LegalName>String</d2p1:LegalName>
      <d2p1:MerchantCategories i:nil="true" />
      <d2p1:NewToCards>false</d2p1:NewToCards>
      <d2p1:ParentPartyId>String</d2p1:ParentPartyId>
      <d2p1:PartyId>String</d2p1:PartyId>
      <d2p1:Principals i:nil="true" />
      <d2p1:RegionOfIncorporation>String</d2p1:RegionOfIncorporation>
      <d2p1:SettlementBankAccount>
        <d2p1:AccountNumber>String</d2p1:AccountNumber>
        <d2p1:BankAccountName>String</d2p1:BankAccountName>
        <d2p1:BankName>String</d2p1:BankName>
        <d2p1:InternationalBankAccountNumber>String</d2p1:InternationalBankAccountNumber>
        <d2p1:SortCode>String</d2p1:SortCode>
        <d2p1:SwiftCode>String</d2p1:SwiftCode>
      </d2p1:SettlementBankAccount>
      <d2p1:Subscriptions i:nil="true" />
      <d2p1:TradeAssociation>
        <d2p1:GroupName>String</d2p1:GroupName>
        <d2p1:MemberNumber>String</d2p1:MemberNumber>
      </d2p1:TradeAssociation>
      <d2p1:TradingContact>
        <d2p1:FirstName>String</d2p1:FirstName>
        <d2p1:LastName>String</d2p1:LastName>
        <d2p1:MiddleName>String</d2p1:MiddleName>
        <d2p1:Title>String</d2p1:Title>
        <d2p1:AltTelephoneNumber>String</d2p1:AltTelephoneNumber>
        <d2p1:Email>String</d2p1:Email>
        <d2p1:IdpGuid>00000000-0000-0000-0000-000000000000</d2p1:IdpGuid>
        <d2p1:Position>String</d2p1:Position>
        <d2p1:PreferredContactBestTime>String</d2p1:PreferredContactBestTime>
        <d2p1:PreferredContactMethod>String</d2p1:PreferredContactMethod>
        <d2p1:TelephoneNumber>String</d2p1:TelephoneNumber>
      </d2p1:TradingContact>
      <d2p1:TradingName>String</d2p1:TradingName>
      <d2p1:VatNumber>String</d2p1:VatNumber>
      <d2p1:WebsiteAddress>String</d2p1:WebsiteAddress>
    </d2p1:Payload>
  </OrderJson>
</OrderBoardingRequest>
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>