MBOnlineCreditApplicationService

<back to all web services

CreateVanOCARequest

The following routes are available for this service:
PUT/CreateVanOCA/
namespace MBOnlineCreditApplicationService.BusinessLib.DomainClasses

open System
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<DataContract>]
    [<AllowNullLiteral>]
    type CreateVanOCARequestResponse() = 
        [<DataMember>]
        member val Code:String = null with get,set

        [<DataMember>]
        member val Message:String = null with get,set

        [<DataMember>]
        member val URN:Int32 = new Int32() with get,set

    [<AllowNullLiteral>]
    type GeneralDetails() = 
        member val OCAApprovalNumber:String = null with get,set
        member val EnquiryDateTime:String = null with get,set
        member val Brand:Int32 = new Int32() with get,set
        member val CustomerReferenceNumber:String = null with get,set
        member val CustomerType:String = null with get,set
        member val SourceofBusiness:String = null with get,set
        member val TagURL:String = null with get,set
        member val RequestSource:Int32 = new Int32() with get,set
        member val FormID:String = null with get,set

    [<AllowNullLiteral>]
    type FinanceDetails() = 
        member val FinancialProduct:String = null with get,set
        member val Duration:Int32 = new Int32() with get,set
        member val PaymentRentalAmount:Decimal = new Decimal() with get,set
        member val AnnualMileage:Int32 = new Int32() with get,set
        member val ExcessMileageRate:Decimal = new Decimal() with get,set
        member val CustomerDepositContribution:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val RetailerDepositContribution:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val ManufacturerDepositContribution:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalDepositContribution:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val CostForCredit:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val PurchaseActivationFee:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val TotalAmountPayable:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val FixedInterestRate:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val RepresentativeAPR:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val OptionalPurchasePayment:Nullable<Decimal> = new Nullable<Decimal>() with get,set
        member val AdvancedRentalAmount:Decimal = new Decimal() with get,set
        member val PaymentProfile:String = null with get,set
        member val RandMIncluded:String = null with get,set
        member val RandMLevel:String = null with get,set
        member val ProductType:String = null with get,set
        member val Frequency:String = null with get,set
        member val PauseType:String = null with get,set

    [<AllowNullLiteral>]
    type VehicleDetails() = 
        member val OnlineCode:String = null with get,set
        member val ModelClass:String = null with get,set
        member val ModelBody:String = null with get,set
        member val ModelDerivative:String = null with get,set
        member val TotalPrice:Decimal = new Decimal() with get,set
        member val OTRPrice:Decimal = new Decimal() with get,set
        member val VIN:String = null with get,set
        member val RegNo:String = null with get,set
        member val CurrentMileage:Int32 = new Int32() with get,set
        member val FirstRegistrationDate:String = null with get,set
        member val NewUsedFlag:String = null with get,set
        member val NewVehicleModelOptionDetails:ModelOptionDetails[] = [||] with get,set

    [<AllowNullLiteral>]
    type DeliveryDetails() = 
        member val DealerCode:String = null with get,set
        member val DeliveryPreference:String = null with get,set

    [<AllowNullLiteral>]
    type ExistingVehicleDetails() = 
        member val TradeInFlag:String = null with get,set
        member val TradeInValue:Decimal = new Decimal() with get,set
        member val TradeInRegNo:String = null with get,set
        member val SettlementFlag:String = null with get,set
        member val SettlementValue:Decimal = new Decimal() with get,set
        member val SettlementRegNo:String = null with get,set

    [<AllowNullLiteral>]
    type AddressWithTimeLine() = 
        member val AddressLine1:String = null with get,set
        member val AddressLine2:String = null with get,set
        member val AddressLine3:String = null with get,set
        member val Town:String = null with get,set
        member val County:String = null with get,set
        member val Country:String = null with get,set
        member val Postcode:String = null with get,set
        member val Duration:String = null with get,set
        member val DateStarted:String = null with get,set

    [<AllowNullLiteral>]
    type Address() = 
        member val AddressLine1:String = null with get,set
        member val AddressLine2:String = null with get,set
        member val AddressLine3:String = null with get,set
        member val AddressLine4:String = null with get,set
        member val AddressLine5:String = null with get,set
        member val Postcode:String = null with get,set

    [<AllowNullLiteral>]
    type EmployerDetails() = 
        member val EmploymentType:String = null with get,set
        member val EmployersName:String = null with get,set
        member val Occupation:String = null with get,set
        member val EmployersAddress:AddressWithTimeLine = null with get,set

    [<AllowNullLiteral>]
    type CurrentEmploymentDetails() = 
        member val EmployerDetails:EmployerDetails = null with get,set
        member val MonthsAtEmployer:String = null with get,set
        member val DateEmploymentCommenced:String = null with get,set
        member val AnnualIncome:String = null with get,set

    [<AllowNullLiteral>]
    type MarketingPreference() = 
        member val OptInMail:String = null with get,set
        member val OptInTelephone:String = null with get,set
        member val OptInEmail:String = null with get,set
        member val OptInSMS:String = null with get,set

    [<AllowNullLiteral>]
    type CreditApplicationIndividualVans() = 
        member val Title:String = null with get,set
        member val Initial:String = null with get,set
        member val FirstName:String = null with get,set
        member val Surname:String = null with get,set
        member val DateofBirth:String = null with get,set
        member val Gender:String = null with get,set
        member val MaritalStatus:String = null with get,set
        member val ResidentialStatus:String = null with get,set
        member val CurrentAddress:AddressWithTimeLine = null with get,set
        member val PreviousAddresses:PreviousAddress[] = [||] with get,set
        member val HomePhone:String = null with get,set
        member val MobilePhone:String = null with get,set
        member val WorkPhone:String = null with get,set
        member val Email:String = null with get,set
        member val BankSortCode:String = null with get,set
        member val BankAccountNumber:String = null with get,set
        member val BankAccountName:String = null with get,set
        member val BankName:String = null with get,set
        member val BankAddress:Address = null with get,set
        member val DrivingLicenceNumber:String = null with get,set
        member val CurrentEmploymentDetails:CurrentEmploymentDetails = null with get,set
        member val PreviousEmploymentDetails:PreviousEmployment[] = [||] with get,set
        member val MarketingPreference:MarketingPreference = null with get,set

    [<AllowNullLiteral>]
    type CreditApplicationBusinessVans() = 
        member val TypeOfBusiness:String = null with get,set
        member val BusinessContactPosition:String = null with get,set
        member val Title:String = null with get,set
        member val Initial:String = null with get,set
        member val FirstName:String = null with get,set
        member val Surname:String = null with get,set
        member val CurrentHomeAddress:AddressWithTimeLine = null with get,set
        member val HomePhone:String = null with get,set
        member val WorkPhone:String = null with get,set
        member val MobilePhone:String = null with get,set
        member val Email:String = null with get,set
        member val CompanyName:String = null with get,set
        member val CompanyRegistrationNumber:String = null with get,set
        member val TradingAs:String = null with get,set
        member val BusinessActivity:String = null with get,set
        member val NumberOfEmployees:Int32 = new Int32() with get,set
        member val YearsTrading:Int32 = new Int32() with get,set
        member val Position:String = null with get,set
        member val BankSortCode:String = null with get,set
        member val BankAccountNumber:String = null with get,set
        member val BankAccountName:String = null with get,set
        member val BankName:String = null with get,set
        member val BankAddress:Address = null with get,set
        member val NumberofPartners:Int32 = new Int32() with get,set
        member val BusinessPartners:BusinessPartner[] = [||] with get,set
        member val MarketingPreference:MarketingPreference = null with get,set
        member val PreviousAddresses:PreviousAddress[] = [||] with get,set

    [<AllowNullLiteral>]
    type PaymentDetails() = 
        member val paymentDetails:PaymentDetail[] = [||] with get,set

    [<DataContract>]
    [<AllowNullLiteral>]
    type CreateVanOCARequest() = 
        [<DataMember>]
        member val Username:String = null with get,set

        [<DataMember>]
        member val Timestamp:String = null with get,set

        [<DataMember>]
        member val Token:String = null with get,set

        [<DataMember>]
        member val GeneralDetails:GeneralDetails = null with get,set

        [<DataMember>]
        member val FinanceDetails:FinanceDetails = null with get,set

        [<DataMember>]
        member val VehicleDetails:VehicleDetails = null with get,set

        [<DataMember>]
        member val DeliveryDetails:DeliveryDetails = null with get,set

        [<DataMember>]
        member val ExistingVehicleDetails:ExistingVehicleDetails = null with get,set

        [<DataMember>]
        member val CreditApplicationIndividual:CreditApplicationIndividualVans = null with get,set

        [<DataMember>]
        member val CreditApplicationBusiness:CreditApplicationBusinessVans = null with get,set

        [<DataMember>]
        member val PaymentDetails:PaymentDetails = null with get,set

        [<DataMember>]
        member val Notes:NoteDetails[] = [||] with get,set

    [<AllowNullLiteral>]
    type ModelOptionDetails() = 
        member val Seq:Int32 = new Int32() with get,set
        member val Code:String = null with get,set
        member val Description:String = null with get,set
        member val Price:Decimal = new Decimal() with get,set

    [<AllowNullLiteral>]
    type PreviousAddress() = 
        member val Seq:Int32 = new Int32() with get,set
        member val Address:AddressWithTimeLine = null with get,set

    [<AllowNullLiteral>]
    type PreviousEmployment() = 
        member val Seq:Int32 = new Int32() with get,set
        member val previousEmployment:EmployerDetails = null with get,set

    [<AllowNullLiteral>]
    type BusinessPartner() = 
        member val Seq:Int32 = new Int32() with get,set
        member val Title:String = null with get,set
        member val Initial:String = null with get,set
        member val FirstName:String = null with get,set
        member val Surname:String = null with get,set
        member val DateofBirth:String = null with get,set
        member val Gender:String = null with get,set
        member val MaritalStatus:String = null with get,set
        member val ResidentialStatus:String = null with get,set
        member val CurrentAddress:AddressWithTimeLine = null with get,set
        member val PreviousAddresses:PreviousAddress[] = [||] with get,set
        member val HomePhone:String = null with get,set
        member val MobilePhone:String = null with get,set
        member val BusinessPhone:String = null with get,set
        member val Relationship:String = null with get,set
        member val Email:String = null with get,set
        member val CurrentEmploymentDetails:CurrentEmploymentDetails = null with get,set
        member val PreviousEmploymentDetails:PreviousEmployment[] = [||] with get,set
        member val PartnerType:String = null with get,set

    [<AllowNullLiteral>]
    type PaymentDetail() = 
        member val Seq:Int32 = new Int32() with get,set
        member val PaymentType:String = null with get,set
        member val AmountPaid:Decimal = new Decimal() with get,set
        member val PaymentTransactionID:String = null with get,set
        member val Description:String = null with get,set
        member val PaymentDateTime:String = null with get,set

    [<AllowNullLiteral>]
    type NoteDetails() = 
        member val Seq:Int32 = new Int32() with get,set
        member val Note:String = null with get,set

F# CreateVanOCARequest DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json

To embed the response in a jsonp callback, append ?callback=myCallback

HTTP + JSON

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

PUT /CreateVanOCA/ HTTP/1.1 
Host: webservices.mbukdatabase.co.uk 
Accept: application/json
Content-Type: application/json
Content-Length: length

{"Username":"String","Timestamp":"String","Token":"String","GeneralDetails":{"OCAApprovalNumber":"String","EnquiryDateTime":"String","Brand":0,"CustomerReferenceNumber":"String","CustomerType":"String","SourceofBusiness":"String","TagURL":"String","RequestSource":0,"FormID":"String"},"FinanceDetails":{"FinancialProduct":"String","Duration":0,"PaymentRentalAmount":0,"AnnualMileage":0,"ExcessMileageRate":0,"CustomerDepositContribution":0,"RetailerDepositContribution":0,"ManufacturerDepositContribution":0,"TotalDepositContribution":0,"CostForCredit":0,"PurchaseActivationFee":0,"TotalAmountPayable":0,"FixedInterestRate":0,"RepresentativeAPR":0,"OptionalPurchasePayment":0,"AdvancedRentalAmount":0,"PaymentProfile":"String","RandMIncluded":"String","RandMLevel":"String","ProductType":"String","Frequency":"String","PauseType":"String"},"VehicleDetails":{"OnlineCode":"String","ModelClass":"String","ModelBody":"String","ModelDerivative":"String","TotalPrice":0,"OTRPrice":0,"VIN":"String","RegNo":"String","CurrentMileage":0,"FirstRegistrationDate":"String","NewUsedFlag":"String","NewVehicleModelOptionDetails":[{"Seq":0,"Code":"String","Description":"String","Price":0}]},"DeliveryDetails":{"DealerCode":"String","DeliveryPreference":"String"},"ExistingVehicleDetails":{"TradeInFlag":"String","TradeInValue":0,"TradeInRegNo":"String","SettlementFlag":"String","SettlementValue":0,"SettlementRegNo":"String"},"CreditApplicationIndividual":{"Title":"String","Initial":"String","FirstName":"String","Surname":"String","DateofBirth":"String","Gender":"String","MaritalStatus":"String","ResidentialStatus":"String","CurrentAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"},"PreviousAddresses":[{"Seq":0,"Address":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}],"HomePhone":"String","MobilePhone":"String","WorkPhone":"String","Email":"String","BankSortCode":"String","BankAccountNumber":"String","BankAccountName":"String","BankName":"String","BankAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","AddressLine4":"String","AddressLine5":"String","Postcode":"String"},"DrivingLicenceNumber":"String","CurrentEmploymentDetails":{"EmployerDetails":{"EmploymentType":"String","EmployersName":"String","Occupation":"String","EmployersAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}},"MonthsAtEmployer":"String","DateEmploymentCommenced":"String","AnnualIncome":"String"},"PreviousEmploymentDetails":[{"Seq":0,"previousEmployment":{"EmploymentType":"String","EmployersName":"String","Occupation":"String","EmployersAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}}],"MarketingPreference":{"OptInMail":"String","OptInTelephone":"String","OptInEmail":"String","OptInSMS":"String"}},"CreditApplicationBusiness":{"TypeOfBusiness":"String","BusinessContactPosition":"String","Title":"String","Initial":"String","FirstName":"String","Surname":"String","CurrentHomeAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"},"HomePhone":"String","WorkPhone":"String","MobilePhone":"String","Email":"String","CompanyName":"String","CompanyRegistrationNumber":"String","TradingAs":"String","BusinessActivity":"String","NumberOfEmployees":0,"YearsTrading":0,"Position":"String","BankSortCode":"String","BankAccountNumber":"String","BankAccountName":"String","BankName":"String","BankAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","AddressLine4":"String","AddressLine5":"String","Postcode":"String"},"NumberofPartners":0,"BusinessPartners":[{"Seq":0,"Title":"String","Initial":"String","FirstName":"String","Surname":"String","DateofBirth":"String","Gender":"String","MaritalStatus":"String","ResidentialStatus":"String","CurrentAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"},"PreviousAddresses":[{"Seq":0,"Address":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}],"HomePhone":"String","MobilePhone":"String","BusinessPhone":"String","Relationship":"String","Email":"String","CurrentEmploymentDetails":{"EmployerDetails":{"EmploymentType":"String","EmployersName":"String","Occupation":"String","EmployersAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}},"MonthsAtEmployer":"String","DateEmploymentCommenced":"String","AnnualIncome":"String"},"PreviousEmploymentDetails":[{"Seq":0,"previousEmployment":{"EmploymentType":"String","EmployersName":"String","Occupation":"String","EmployersAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}}],"PartnerType":"String"}],"MarketingPreference":{"OptInMail":"String","OptInTelephone":"String","OptInEmail":"String","OptInSMS":"String"},"PreviousAddresses":[{"Seq":0,"Address":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String"}}]},"PaymentDetails":{"paymentDetails":[{"Seq":0,"PaymentType":"String","AmountPaid":0,"PaymentTransactionID":"String","Description":"String","PaymentDateTime":"String"}]},"Notes":[{"Seq":0,"Note":"String"}]}
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: length

{"Code":"String","Message":"String","URN":0}