/* Options: Date: 2024-07-06 11:55:56 Version: 5.140 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: http://abservice-test.worldpay.com //GlobalNamespace: //MakePartial: True //MakeVirtual: True //MakeInternal: False //MakeDataContractsExtensible: False //AddReturnMarker: True //AddDescriptionAsComments: True //AddDataContractAttributes: False //AddIndexesToDataMembers: False //AddGeneratedCodeAttributes: False //AddResponseStatus: False //AddImplicitVersion: //InitializeCollections: True //ExportValueTypes: False IncludeTypes: OrderBoardingRequest.* //ExcludeTypes: //AddNamespaces: //AddDefaultXmlNamespace: http://schemas.servicestack.net/types */ using System; using System.Collections; using System.Collections.Generic; using System.Runtime.Serialization; using ServiceStack; using ServiceStack.DataAnnotations; using BoardingGateway.Common.Requests.Orders; using Autoboarding.Common; using BoardingGateway.Common.Requests.Boarding.Acquiring; using BoardingGateway.Common.Requests.Boarding; using BoardingGateway.Common.Requests.Boarding.BusinessDetails; using BoardingGateway.Common.Requests.Boarding.BusinessDetails.GoodsAndServices; using BoardingGateway.Common.Requests.Boarding.Products; using Autoboarding.Common.Requests; using Autoboarding.Common.Responses; namespace Autoboarding.Common { [DataContract] public enum ApplicationBoardingStatus { PENDING = 0, IN_PROGRESS = 5, FAILED = 9, COMPLETED = 10, } [DataContract] public enum ApplicationQueueStatus { Queued = 0, StandardisedXML = 20, ReadyToDistribute = 40, AwaitingDistributeResponse = 60, ReadyToAutoboard = 80, ThrottleCheckPassed = 100, EligibilityCheckPassed = 300, SentToAutoboardService = 400, AutoboardingSuspended = 450, SuccessfullyBoarded = 500, QueueError = 1000, ThrottleCheckError = 1100, XMLStandardisationError = 1200, EligibilityCheckError = 1300, AutoboardingError = 1400, IneligibleThrottleLimit = 2100, IneligibleApplication = 2300, } } namespace Autoboarding.Common.Requests { [Route("/OrderBoarding", "POST")] public partial class OrderBoardingRequest : IReturn { [ApiMember(IsRequired=true)] public virtual Guid CorrelationId { get; set; } [ApiMember(IsRequired=true)] public virtual Order OrderJson { get; set; } public virtual Guid? OnboardingRequestId { get; set; } public virtual Guid? LocalEnterpriseId { get; set; } public virtual string Audience { get; set; } } } namespace Autoboarding.Common.Responses { public partial class InitiateBoardingResponse { public InitiateBoardingResponse() { ErrorMessages = new List{}; } public virtual Guid ApplicationGuid { get; set; } public virtual int CSR { get; set; } public virtual Guid? ApplicationQueueGuid { get; set; } public virtual ApplicationQueueStatus QueueStatus { get; set; } public virtual ApplicationBoardingStatus? BoardingStatus { get; set; } public virtual List ErrorMessages { get; set; } } } namespace BoardingGateway.Common.Requests.Boarding { public partial class AccessibilityOptions { public virtual bool? AudiotapeRequired { get; set; } public virtual bool? LargePrintRequired { get; set; } public virtual bool? UncontractedBrailleGrade1Required { get; set; } public virtual bool? UncontractedBrailleGrade2Required { get; set; } public virtual bool? NextGenerationTextRequired { get; set; } } public partial class Partner { public virtual string PartnerId { get; set; } public virtual string PartnerName { get; set; } } } namespace BoardingGateway.Common.Requests.Boarding.Acquiring { public partial class Acquiring { public virtual int SettlementPeriodTPlus { get; set; } public virtual Rates Rates { get; set; } public virtual Services Services { get; set; } public virtual IEnumerable TradingCurrencies { get; set; } } } namespace BoardingGateway.Common.Requests.Boarding.BusinessDetails { public partial class Address { public virtual string Address1 { get; set; } public virtual string Address2 { get; set; } public virtual string Address3 { get; set; } public virtual string Postcode { get; set; } public virtual string City { get; set; } public virtual string State { get; set; } public virtual string Countrycode { get; set; } } public partial class AuthorisedSigner : ContactPerson { public virtual DateTime? DateOfBirth { get; set; } public virtual string CountryCode { get; set; } } public partial class BankAccount { public virtual string SortCode { get; set; } public virtual string AccountNumber { get; set; } public virtual string BankName { get; set; } public virtual string BankAccountName { get; set; } } public partial class ClearingDetails { public virtual string MerchantUrl { get; set; } public virtual string Telephone { get; set; } public virtual string Email { get; set; } } public partial class Financials { public virtual decimal Annual { get; set; } public virtual decimal CardPercentage { get; set; } public virtual decimal CreditCardPercentage { get; set; } public virtual decimal AverageTransactionValue { get; set; } } public partial class Principal { public virtual string Title { get; set; } public virtual string FirstName { get; set; } public virtual string MiddleName { get; set; } public virtual string LastName { get; set; } public virtual DateTime DateOfBirth { get; set; } public virtual string Nationality { get; set; } public virtual IEnumerable HomeAddresses { get; set; } public virtual decimal OwnershipPercentage { get; set; } public virtual PositionType Position { get; set; } public virtual bool? IsFinancialController { get; set; } } public partial class TradeAssociation { public virtual string GroupName { get; set; } public virtual string MemberNumber { get; set; } } } namespace BoardingGateway.Common.Requests.Boarding.BusinessDetails.GoodsAndServices { public partial class GoodsAndServices { public virtual bool? GoodsProvidedByThirdParty { get; set; } public virtual Deposits Deposits { get; set; } public virtual WarrantiesAndGuarantees WarrantiesAndGuarantees { get; set; } public virtual Prepayments Prepayments { get; set; } public virtual MembershipsSubscriptionAndInsurancePremiums MembershipsSubscriptionAndInsurancePremiums { get; set; } public virtual Address StockHeldAtAnotherAddressLocation { get; set; } } } namespace BoardingGateway.Common.Requests.Boarding.Products { public partial class ProductFee { public virtual ProductFeeType Type { get; set; } public virtual decimal Cost { get; set; } } } namespace BoardingGateway.Common.Requests.Orders { public partial class AccessibilityOptions { public virtual bool? AudiotapeRequired { get; set; } public virtual bool? LargePrintRequired { get; set; } public virtual bool? UncontractedBrailleGrade1Required { get; set; } public virtual bool? UncontractedBrailleGrade2Required { get; set; } public virtual bool? NextGenerationTextRequired { get; set; } } public partial class Acquiring { public virtual int SettlementPeriod { get; set; } public virtual string FundingMode { get; set; } public virtual Rates Rates { get; set; } public virtual IEnumerable TradingCurrencies { get; set; } } public partial class Address { public virtual string Address1 { get; set; } public virtual string Address2 { get; set; } public virtual string Address3 { get; set; } public virtual string Postcode { get; set; } public virtual string City { get; set; } public virtual string State { get; set; } public virtual string CountryCode { get; set; } } public partial class AuthorisedSigner : Contact { public virtual DateTime? DateOfBirth { get; set; } public virtual string CountryCode { get; set; } } public partial class BankAccount { public virtual string SortCode { get; set; } public virtual string AccountNumber { get; set; } public virtual string BankName { get; set; } public virtual string BankAccountName { get; set; } public virtual string SwiftCode { get; set; } public virtual string InternationalBankAccountNumber { get; set; } } public partial class ClearingDetails { public virtual string MerchantUrl { get; set; } public virtual string Telephone { get; set; } public virtual string Email { get; set; } } public partial class Contact : Person { public virtual Guid? IdpGuid { get; set; } public virtual string TelephoneNumber { get; set; } public virtual string AltTelephoneNumber { get; set; } public virtual string Email { get; set; } public virtual string Position { get; set; } public virtual string PreferredContactMethod { get; set; } public virtual string PreferredContactBestTime { get; set; } } public partial class Financials { public virtual decimal Annual { get; set; } public virtual decimal CardPercentage { get; set; } public virtual decimal CreditCardPercentage { get; set; } public virtual decimal AverageTransactionValue { get; set; } public virtual decimal? CardNotPresentPercentage { get; set; } } public partial class GoodsAndServices { public virtual bool? GoodsProvidedByThirdParty { get; set; } public virtual Deposits Deposits { get; set; } public virtual WarrantiesAndGuarantees WarrantiesAndGuarantees { get; set; } public virtual Prepayments Prepayments { get; set; } public virtual MembershipsSubscriptionAndInsurancePremiums MembershipsSubscriptionAndInsurancePremiums { get; set; } public virtual Address StockHeldAtAnotherAddressLocation { get; set; } } public partial class InvoiceContact : Person { public virtual string Email { get; set; } public virtual string Position { get; set; } } public partial class MerchantAddress : Address { public virtual string AddressType { get; set; } public virtual bool IsCommercial { get; set; } } public partial class MerchantCategory { public virtual string MerchantCategoryCode { get; set; } public virtual string MerchantCategoryDescription { get; set; } public virtual string DescriptionOfGoodsAndServices { get; set; } } public partial class Order { public virtual OrderMeta Meta { get; set; } public virtual OrderPayload Payload { get; set; } } public partial class OrderMeta { public virtual string SourceSystem { get; set; } public virtual string SourceSystemIdentifier { get; set; } public virtual string Csr { get; set; } public virtual string UltimateParentId { get; set; } public virtual string OrderType { get; set; } public virtual string CustomerType { get; set; } public virtual Partner Partner { get; set; } public virtual string SellerCode { get; set; } public virtual string SellerEmail { get; set; } public virtual string SpecialInstructions { get; set; } public virtual AuthorisedSigner Contact { get; set; } public virtual string OfferDetails { get; set; } public virtual DateTime DateContractAccepted { get; set; } public virtual bool? WorldpayBusinessFinanceInterest { get; set; } public virtual bool? Sar { get; set; } public virtual bool HasSupportingFiles { get; set; } } public partial class OrderPayload { public virtual string PartyId { get; set; } public virtual string ParentPartyId { get; set; } public virtual string LegalName { get; set; } public virtual string TradingName { get; set; } public virtual IEnumerable Addresses { get; set; } public virtual Contact TradingContact { get; set; } public virtual InvoiceContact InvoiceContact { get; set; } public virtual BankAccount SettlementBankAccount { get; set; } public virtual BankAccount ChargesBankAccount { get; set; } public virtual string DirectDebitCorrespondenceEmail { get; set; } public virtual string WebsiteAddress { get; set; } public virtual string CompanyType { get; set; } public virtual string CompanyTypeOther { get; set; } public virtual string CompanyRegistrationNumber { get; set; } public virtual string CharityNumber { get; set; } public virtual IEnumerable MerchantCategories { get; set; } public virtual string VatNumber { get; set; } public virtual DateTime? DateStartedTrading { get; set; } public virtual DateTime? AnticipatedGoLiveDate { get; set; } public virtual string CountryOfIncorporation { get; set; } public virtual string RegionOfIncorporation { get; set; } public virtual Financials Financials { get; set; } public virtual bool? NewToCards { get; set; } public virtual TradeAssociation TradeAssociation { get; set; } public virtual IEnumerable Principals { get; set; } public virtual GoodsAndServices GoodsAndServices { get; set; } public virtual AccessibilityOptions AccessibilityOptions { get; set; } public virtual ClearingDetails ClearingDetails { get; set; } public virtual Acquiring Acquiring { get; set; } public virtual IEnumerable Subscriptions { get; set; } public virtual IEnumerable Children { get; set; } } public partial class Partner { public virtual string PartnerName { get; set; } public virtual string PartnerId { get; set; } } public partial class Person { public virtual string Title { get; set; } public virtual string FirstName { get; set; } public virtual string MiddleName { get; set; } public virtual string LastName { get; set; } } public partial class Principal : Person { public virtual string Position { get; set; } public virtual bool IsFinancialController { get; set; } public virtual DateTime DateOfBirth { get; set; } public virtual string Nationality { get; set; } public virtual decimal OwnershipPercentage { get; set; } public virtual IEnumerable HomeAddresses { get; set; } public virtual IEnumerable PrincipalIdDocuments { get; set; } } public partial class Product { public virtual string Name { get; set; } public virtual string Type { get; set; } public virtual string Variant { get; set; } public virtual int? Quantity { get; set; } public virtual IEnumerable RelatedFees { get; set; } public virtual IEnumerable Options { get; set; } } public partial class ProductFee { public virtual string Type { get; set; } public virtual decimal Cost { get; set; } public virtual string BillingParty { get; set; } } public partial class ProductOption { public virtual string Type { get; set; } public virtual string Value { get; set; } } public partial class Subscription { public virtual string Proposition { get; set; } public virtual string PricingPackage { get; set; } public virtual int? Term { get; set; } public virtual int? RenewalLength { get; set; } public virtual Acquiring Acquiring { get; set; } public virtual IEnumerable Products { get; set; } } public partial class TradeAssociation { public virtual string GroupName { get; set; } public virtual string MemberNumber { get; set; } } }