PUT | /CreateOCAv2/ |
---|
// @DataContract
export class CreateOCAv2RequestResponse
{
// @DataMember
public Code?: string;
// @DataMember
public Message?: string;
// @DataMember
public URN?: number;
public constructor(init?: Partial<CreateOCAv2RequestResponse>) { (Object as any).assign(this, init); }
}
export class GeneralDetailsv2
{
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 ProposalCreated?: string;
public LoadFullData?: string;
public ProposalNumber?: string;
public POSSystem?: string;
public constructor(init?: Partial<GeneralDetailsv2>) { (Object as any).assign(this, init); }
}
export class FinanceDetailsv2
{
public FinancialProduct?: string;
public CampaignCode?: string;
public PhoenixFinanceProductCode?: string;
public Fixed?: string;
public FleetNonFleet?: string;
public RFLCover?: string;
public Duration?: number;
public PaymentRentalAmount?: number;
public RentalAmountExcVAT?: number;
public AdvanceArrears?: string;
public AnnualMileage?: number;
public ExcessMileageRate?: number;
public CustomerDepositContribution?: number;
public RetailerDepositContribution?: number;
public RetailerDepositContributionNet?: number;
public ManufacturerDepositContribution?: number;
public ManufacturerDepositContributionNet?: number;
public TotalDepositContribution?: number;
public LumpSum?: number;
public CostForCredit?: number;
public PurchaseActivationFee?: number;
public TotalAmountPayable?: number;
public FixedInterestRate?: number;
public RepresentativeAPR?: number;
public TrueFlatRate?: string;
public RVReferenceNumber?: string;
public OptionalPurchasePayment?: number;
public AdvancedRentalAmount?: number;
public NumberofAdvanceRentals?: string;
public PaymentProfile?: string;
public RandMIncluded?: string;
public RandMLevel?: string;
public ProductType?: string;
public Frequency?: string;
public PauseType?: string;
public EqualsFinance?: number;
public AcceptanceFee?: number;
public constructor(init?: Partial<FinanceDetailsv2>) { (Object as any).assign(this, init); }
}
export class VehicleDetailsv2
{
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 CommissionNumber?: string;
public EngineNumber?: string;
public CurrentMileage?: number;
public MilesKilometers?: string;
public FirstRegistrationDate?: string;
public NewUsedFlag?: string;
public NewVehicleModelOptionDetails?: ModelOptionDetailsv2[];
public VID?: string;
public Baumuster?: string;
public VehiclePrice?: number;
public TotalVAT?: number;
public OLEVGrant?: number;
public ExtrasTotalExcVAT?: number;
public CombinedCO2?: string;
public VehicleVATTickBox?: string;
public FirstYearRFLIncluded?: string;
public FirstYearRFLAmount?: number;
public FirstRegFeeIncludedFlag?: string;
public FirstRegFeeAmount?: number;
public HighLowVEDSupplementFlag?: string;
public LeaseRFLSubsequentYears?: string;
public LeaseRFLSubsequentYearsAmount?: number;
public constructor(init?: Partial<VehicleDetailsv2>) { (Object as any).assign(this, init); }
}
export class DeliveryDetailsv2
{
public DealerCode?: string;
public DeliveryPreference?: string;
public DeliveryDate?: string;
public constructor(init?: Partial<DeliveryDetailsv2>) { (Object as any).assign(this, init); }
}
export class ExistingVehicleDetailsv2
{
public TradeInFlag?: string;
public TradeInIncludedInCalc?: string;
public TradeInValue?: number;
public TradeInValueNet?: number;
public TradeInRegNo?: string;
public TradeInVIN?: string;
public TradeInMileage?: number;
public TradeInCondition?: string;
public SettlementFlag?: string;
public SettlementIncludedInCalc?: string;
public SettlementValue?: number;
public SettlementValueNet?: number;
public SettlementRegNo?: string;
public SettlementVIN?: string;
public SettlementMileage?: number;
public constructor(init?: Partial<ExistingVehicleDetailsv2>) { (Object as any).assign(this, init); }
}
export class InsuranceDetails
{
public InterestedInFirstCoverFlag?: string;
public constructor(init?: Partial<InsuranceDetails>) { (Object as any).assign(this, init); }
}
export class AddressWithTimeLinev2
{
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 TotalNumberOfMonths?: string;
public constructor(init?: Partial<AddressWithTimeLinev2>) { (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<Address>) { (Object as any).assign(this, init); }
}
export class EmployerDetailsv2
{
public EmploymentType?: string;
public EmployersName?: string;
public Occupation?: string;
public EmployersAddress?: AddressWithTimeLinev2;
public constructor(init?: Partial<EmployerDetailsv2>) { (Object as any).assign(this, init); }
}
export class CurrentEmploymentDetailsv2
{
public EmployerDetails?: EmployerDetailsv2;
public MonthsAtEmployer?: string;
public DateEmploymentCommenced?: string;
public AnnualIncome?: string;
public constructor(init?: Partial<CurrentEmploymentDetailsv2>) { (Object as any).assign(this, init); }
}
export class MarketingPreference
{
public OptInMail?: string;
public OptInTelephone?: string;
public OptInEmail?: string;
public OptInSMS?: string;
public constructor(init?: Partial<MarketingPreference>) { (Object as any).assign(this, init); }
}
export class CreditApplicationIndividualV2
{
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?: AddressWithTimeLinev2;
public PreviousAddresses?: PreviousAddressv2[];
public HomePhone?: string;
public MobilePhone?: string;
public WorkPhone?: string;
public ContactAtWork?: string;
public Email?: string;
public BankSortCode?: string;
public BankAccountNumber?: string;
public BankAccountName?: string;
public BankName?: string;
public BankAddress?: Address;
public BankPaymentType?: string;
public DrivingLicenceNumber?: string;
public CurrentEmploymentDetails?: CurrentEmploymentDetailsv2;
public PreviousEmploymentDetails?: PreviousEmploymentv2[];
public MarketingPreference?: MarketingPreference;
public CreditCheckConsent?: string;
public constructor(init?: Partial<CreditApplicationIndividualV2>) { (Object as any).assign(this, init); }
}
export class CreditApplicationBusinessV2
{
public TypeOfBusiness?: string;
public BusinessContactPosition?: string;
public Title?: string;
public Initial?: string;
public FirstName?: string;
public Surname?: string;
public CurrentHomeAddress?: AddressWithTimeLinev2;
public HomePhone?: string;
public WorkPhone?: string;
public MobilePhone?: string;
public Email?: 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?: BusinessPartnerv2[];
public MarketingPreference?: MarketingPreference;
public PreviousAddresses?: PreviousAddressv2[];
public constructor(init?: Partial<CreditApplicationBusinessV2>) { (Object as any).assign(this, init); }
}
export class PaymentDetails
{
public paymentDetails?: PaymentDetail[];
public constructor(init?: Partial<PaymentDetails>) { (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<DiPDetails>) { (Object as any).assign(this, init); }
}
// @DataContract
export class CreateOCAv2Request
{
// @DataMember
public Username?: string;
// @DataMember
public Timestamp?: string;
// @DataMember
public Token?: string;
// @DataMember
public GeneralDetails?: GeneralDetailsv2;
// @DataMember
public FinanceDetails?: FinanceDetailsv2;
// @DataMember
public VehicleDetails?: VehicleDetailsv2;
// @DataMember
public DeliveryDetails?: DeliveryDetailsv2;
// @DataMember
public ExistingVehicleDetails?: ExistingVehicleDetailsv2;
// @DataMember
public InsuranceDetails?: InsuranceDetails;
// @DataMember
public CreditApplicationIndividual?: CreditApplicationIndividualV2;
// @DataMember
public CreditApplicationBusiness?: CreditApplicationBusinessV2;
// @DataMember
public PaymentDetails?: PaymentDetails;
// @DataMember
public Notes?: NoteDetails[];
// @DataMember
public DiPDetails?: DiPDetails;
public constructor(init?: Partial<CreateOCAv2Request>) { (Object as any).assign(this, init); }
}
export class ModelOptionDetailsv2
{
public Seq?: number;
public Type?: string;
public Code?: string;
public Description?: string;
public Price?: number;
public PriceGross?: number;
public VATCategory?: string;
public VATAmount?: number;
public constructor(init?: Partial<ModelOptionDetailsv2>) { (Object as any).assign(this, init); }
}
export class PreviousAddressv2
{
public Seq?: number;
public Address?: AddressWithTimeLinev2;
public constructor(init?: Partial<PreviousAddressv2>) { (Object as any).assign(this, init); }
}
export class PreviousEmploymentv2
{
public Seq?: number;
public previousEmployment?: EmployerDetailsv2;
public constructor(init?: Partial<PreviousEmploymentv2>) { (Object as any).assign(this, init); }
}
export class BusinessPartnerv2
{
public Seq?: number;
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?: AddressWithTimeLinev2;
public PreviousAddresses?: PreviousAddressv2[];
public HomePhone?: string;
public MobilePhone?: string;
public BusinessPhone?: string;
public Relationship?: string;
public Email?: string;
public CurrentEmploymentDetails?: CurrentEmploymentDetailsv2;
public PreviousEmploymentDetails?: PreviousEmploymentv2[];
public PartnerType?: string;
public constructor(init?: Partial<BusinessPartnerv2>) { (Object as any).assign(this, init); }
}
export class PaymentDetail
{
public Seq?: number;
public PaymentType?: string;
public AmountPaid?: number;
public PaymentTransactionID?: string;
public Description?: string;
public PaymentDateTime?: string;
public constructor(init?: Partial<PaymentDetail>) { (Object as any).assign(this, init); }
}
export class NoteDetails
{
public Seq?: number;
public Note?: string;
public constructor(init?: Partial<NoteDetails>) { (Object as any).assign(this, init); }
}
export class DiPReasons
{
public DipReasonSeq?: number;
public DipDecisionCode?: string;
public DiPDecisionReason?: string;
public DiPDealerMessage?: string;
public constructor(init?: Partial<DiPReasons>) { (Object as any).assign(this, init); }
}
TypeScript CreateOCAv2Request DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .csv suffix or ?format=csv
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /CreateOCAv2/ HTTP/1.1
Host: webservices.mbukdatabase.co.uk
Accept: text/csv
Content-Type: text/csv
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","ProposalCreated":"String","LoadFullData":"String","ProposalNumber":"String","POSSystem":"String"},"FinanceDetails":{"FinancialProduct":"String","CampaignCode":"String","PhoenixFinanceProductCode":"String","Fixed":"String","FleetNonFleet":"String","RFLCover":"String","Duration":0,"PaymentRentalAmount":0,"RentalAmountExcVAT":0,"AdvanceArrears":"String","AnnualMileage":0,"ExcessMileageRate":0,"CustomerDepositContribution":0,"RetailerDepositContribution":0,"RetailerDepositContributionNet":0,"ManufacturerDepositContribution":0,"ManufacturerDepositContributionNet":0,"TotalDepositContribution":0,"LumpSum":0,"CostForCredit":0,"PurchaseActivationFee":0,"TotalAmountPayable":0,"FixedInterestRate":0,"RepresentativeAPR":0,"TrueFlatRate":"String","RVReferenceNumber":"String","OptionalPurchasePayment":0,"AdvancedRentalAmount":0,"NumberofAdvanceRentals":"String","PaymentProfile":"String","RandMIncluded":"String","RandMLevel":"String","ProductType":"String","Frequency":"String","PauseType":"String","EqualsFinance":0,"AcceptanceFee":0},"VehicleDetails":{"OnlineCode":"String","ModelClass":"String","ModelBody":"String","ModelDerivative":"String","TotalPrice":0,"OTRPrice":0,"VIN":"String","RegNo":"String","CommissionNumber":"String","EngineNumber":"String","CurrentMileage":0,"MilesKilometers":"String","FirstRegistrationDate":"String","NewUsedFlag":"String","NewVehicleModelOptionDetails":[{"Seq":0,"Type":"String","Code":"String","Description":"String","Price":0,"PriceGross":0,"VATCategory":"String","VATAmount":0}],"VID":"String","Baumuster":"String","VehiclePrice":0,"TotalVAT":0,"OLEVGrant":0,"ExtrasTotalExcVAT":0,"CombinedCO2":"String","VehicleVATTickBox":"String","FirstYearRFLIncluded":"String","FirstYearRFLAmount":0,"FirstRegFeeIncludedFlag":"String","FirstRegFeeAmount":0,"HighLowVEDSupplementFlag":"String","LeaseRFLSubsequentYears":"String","LeaseRFLSubsequentYearsAmount":0},"DeliveryDetails":{"DealerCode":"String","DeliveryPreference":"String","DeliveryDate":"String"},"ExistingVehicleDetails":{"TradeInFlag":"String","TradeInIncludedInCalc":"String","TradeInValue":0,"TradeInValueNet":0,"TradeInRegNo":"String","TradeInVIN":"String","TradeInMileage":0,"TradeInCondition":"String","SettlementFlag":"String","SettlementIncludedInCalc":"String","SettlementValue":0,"SettlementValueNet":0,"SettlementRegNo":"String","SettlementVIN":"String","SettlementMileage":0},"InsuranceDetails":{"InterestedInFirstCoverFlag":"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","TotalNumberOfMonths":"String"},"PreviousAddresses":[{"Seq":0,"Address":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String","TotalNumberOfMonths":"String"}}],"HomePhone":"String","MobilePhone":"String","WorkPhone":"String","ContactAtWork":"String","Email":"String","BankSortCode":"String","BankAccountNumber":"String","BankAccountName":"String","BankName":"String","BankAddress":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","AddressLine4":"String","AddressLine5":"String","Postcode":"String"},"BankPaymentType":"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","TotalNumberOfMonths":"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","TotalNumberOfMonths":"String"}}}],"MarketingPreference":{"OptInMail":"String","OptInTelephone":"String","OptInEmail":"String","OptInSMS":"String"},"CreditCheckConsent":"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","TotalNumberOfMonths":"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","TotalNumberOfMonths":"String"},"PreviousAddresses":[{"Seq":0,"Address":{"AddressLine1":"String","AddressLine2":"String","AddressLine3":"String","Town":"String","County":"String","Country":"String","Postcode":"String","Duration":"String","DateStarted":"String","TotalNumberOfMonths":"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","TotalNumberOfMonths":"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","TotalNumberOfMonths":"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","TotalNumberOfMonths":"String"}}]},"PaymentDetails":{"paymentDetails":[{"Seq":0,"PaymentType":"String","AmountPaid":0,"PaymentTransactionID":"String","Description":"String","PaymentDateTime":"String"}]},"Notes":[{"Seq":0,"Note":"String"}],"DiPDetails":{"DiPCustomerId":"String","DiPTimestamp":"String","DiPRequestID":"String","DiPDecisionType":"String","DiPPrimaryDecisionCode":"String","DiPDecisionDescription":"String","DipDecisionDescriptionCode":"String","DipPrimaryDecisionReason":"String","DiPPrimaryDecisionReasonDealerMessage":"String","diPReasons":[{"DipReasonSeq":0,"DipDecisionCode":"String","DiPDecisionReason":"String","DiPDealerMessage":"String"}]}}
HTTP/1.1 200 OK Content-Type: text/csv Content-Length: length {"Code":"String","Message":"String","URN":0}