/* Options: Date: 2025-06-25 23:08:00 Version: 6.00 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: http://webservices.mbukdatabase.co.uk/MBOnlineCreditApplicationService //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateOCARequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class GeneralDetails { public OCAApprovalNumber: string; public EnquiryDateTime: string; public Brand: number; public CustomerReferenceNumber: string; public CustomerType: string; public SourceofBusiness: string; public TagURL: string; public RequestSource: number; public FormID: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class FinanceDetails { public FinancialProduct: string; public Duration: number; public PaymentRentalAmount: number; public AnnualMileage: number; public ExcessMileageRate: number; public CustomerDepositContribution?: number; public RetailerDepositContribution?: number; public ManufacturerDepositContribution?: number; public TotalDepositContribution?: number; public CostForCredit?: number; public PurchaseActivationFee?: number; public TotalAmountPayable?: number; public FixedInterestRate?: number; public RepresentativeAPR?: number; public OptionalPurchasePayment?: number; public AdvancedRentalAmount: number; public PaymentProfile: string; public RandMIncluded: string; public RandMLevel: string; public ProductType: string; public Frequency: string; public PauseType: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class VehicleDetails { public OnlineCode: string; public ModelClass: string; public ModelBody: string; public ModelDerivative: string; public TotalPrice: number; public OTRPrice: number; public VIN: string; public RegNo: string; public CurrentMileage: number; public FirstRegistrationDate: string; public NewUsedFlag: string; public NewVehicleModelOptionDetails: ModelOptionDetails[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class DeliveryDetails { public DealerCode: string; public DeliveryPreference: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class ExistingVehicleDetails { public TradeInFlag: string; public TradeInValue: number; public TradeInRegNo: string; public SettlementFlag: string; public SettlementValue: number; public SettlementRegNo: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class PaymentDetails { public paymentDetails: PaymentDetail[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class AddressWithTimeLine { public AddressLine1: string; public AddressLine2: string; public AddressLine3: string; public Town: string; public County: string; public Country: string; public Postcode: string; public Duration: string; public DateStarted: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Address { public AddressLine1: string; public AddressLine2: string; public AddressLine3: string; public AddressLine4: string; public AddressLine5: string; public Postcode: string; public constructor(init?: Partial
) { (Object as any).assign(this, init); } } export class EmployerDetails { public EmploymentType: string; public EmployersName: string; public Occupation: string; public EmployersAddress: AddressWithTimeLine; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CurrentEmploymentDetails { public EmployerDetails: EmployerDetails; public MonthsAtEmployer: string; public DateEmploymentCommenced: string; public AnnualIncome: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CreditApplicationIndividual { public Title: string; public Initial: string; public FirstName: string; public Surname: string; public DateofBirth: string; public Gender: string; public MaritalStatus: string; public ResidentialStatus: string; public CurrentAddress: AddressWithTimeLine; public PreviousAddresses: PreviousAddress[]; public HomePhone: string; public MobilePhone: string; public WorkPhone: string; public Email: string; public BankSortCode: string; public BankAccountNumber: string; public BankAccountName: string; public BankName: string; public BankAddress: Address; public DoNotEmail: string; public DoNotMail: string; public DoNotPhone: string; public DoNotSMS: string; public DrivingLicenceNumber: string; public CurrentEmploymentDetails: CurrentEmploymentDetails; public PreviousEmploymentDetails: PreviousEmployment[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CreditApplicationBusiness { public TypeOfBusiness: string; public BusinessContactPosition: string; public Title: string; public Initial: string; public FirstName: string; public Surname: string; public CurrentHomeAddress: AddressWithTimeLine; public HomePhone: string; public WorkPhone: string; public MobilePhone: string; public Email: string; public DoNotEmail: string; public DoNotMail: string; public DoNotPhone: string; public DoNotSMS: string; public CompanyName: string; public CompanyRegistrationNumber: string; public TradingAs: string; public BusinessActivity: string; public NumberOfEmployees: number; public YearsTrading: number; public Position: string; public BankSortCode: string; public BankAccountNumber: string; public BankAccountName: string; public BankName: string; public BankAddress: Address; public NumberofPartners: number; public BusinessPartners: BusinessPartner[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class DiPDetails { public DiPCustomerId: string; public DiPTimestamp: string; public DiPRequestID: string; public DiPDecisionType: string; public DiPPrimaryDecisionCode: string; public DiPDecisionDescription: string; public DipDecisionDescriptionCode: string; public DipPrimaryDecisionReason: string; public DiPPrimaryDecisionReasonDealerMessage: string; public diPReasons: DiPReasons[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class CreateOCARequestResponse { // @DataMember public Code: string; // @DataMember public Message: string; // @DataMember public URN: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/CreateOCA/", "PUT") // @DataContract export class CreateOCARequest implements IReturn { // @DataMember public Username: string; // @DataMember public Timestamp: string; // @DataMember public Token: string; // @DataMember public GeneralDetails: GeneralDetails; // @DataMember public FinanceDetails: FinanceDetails; // @DataMember public VehicleDetails: VehicleDetails; // @DataMember public DeliveryDetails: DeliveryDetails; // @DataMember public ExistingVehicleDetails: ExistingVehicleDetails; // @DataMember public CreditApplicationIndividual: CreditApplicationIndividual; // @DataMember public CreditApplicationBusiness: CreditApplicationBusiness; // @DataMember public PaymentDetails: PaymentDetails; // @DataMember public DiPDetails: DiPDetails; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'CreateOCARequest'; } public getMethod() { return 'PUT'; } public createResponse() { return new CreateOCARequestResponse(); } }