--- swagger: "2.0" info: title: Vehicle Asset Finance Business description: API used for marketplace business to business integration into MFC Non Dealer Direct application contact: name: Oertel, H. (Henry) email: henryo@mfc.co.za version: 3.6.0 x-swaggerversion: "2" x-swaggercreationdate: 20-07-2021 x-ibm-name: vehicle-asset-finance-business name: "" host: tempuri.com basePath: /vehicleassetfinance/business/v3 schemes: - https paths: /apps/{applicationid}: delete: tags: - App produces: - application/json parameters: - in: path name: applicationid required: true type: integer format: int32 responses: 200: description: OK [Success] schema: $ref: '#/definitions/BooleanApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /apps/{applicationid}/{properties}: get: tags: - App produces: - application/json parameters: - in: path name: applicationid required: true type: integer format: int32 - in: path name: properties required: true type: string responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationInformationResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /apps: post: tags: - App consumes: - application/json produces: - application/json parameters: - in: body name: body schema: $ref: '#/definitions/NewApplicationRequest' responses: 201: description: Created schema: $ref: '#/definitions/ApplicationApiResponse' default: description: Any HTTP returned code other than 201. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' put: tags: - App consumes: - application/json produces: - application/json parameters: - in: body name: body schema: $ref: '#/definitions/SaveApplicationInformationRequest' responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationInformationResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /applications/{applicationid}: get: tags: - Application produces: - application/json parameters: - in: path name: applicationid required: true type: integer format: int32 responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /applications/buyer/{idnumberoremail}: get: tags: - Application produces: - application/json parameters: - in: path name: idnumberoremail required: true type: string responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationIEnumerableApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /applications/seed/{applicationseedid}: get: tags: - Application produces: - application/json parameters: - in: path name: applicationseedid required: true type: integer format: int32 responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationIEnumerableApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /applications/seller/{idnumberoremail}: get: tags: - Application produces: - application/json parameters: - in: path name: idnumberoremail required: true type: string responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationIEnumerableApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /seeds/{applicationseedid}: delete: tags: - Seed produces: - application/json parameters: - in: path name: applicationseedid required: true type: integer format: int32 responses: 200: description: OK [Success] schema: $ref: '#/definitions/BooleanApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /seeds/identifier/{applicationseedid}: get: tags: - Seed produces: - application/json parameters: - in: path name: applicationseedid required: true type: integer format: int32 responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationSeedResponseApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /seeds/reference/{externalreference}: get: tags: - Seed produces: - application/json parameters: - in: path name: externalreference required: true type: string responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationSeedResponseApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' /seeds: post: tags: - Seed consumes: - application/json produces: - application/json parameters: - in: body name: body schema: $ref: '#/definitions/NewApplicationSeedRequest' responses: 200: description: OK [Success] schema: $ref: '#/definitions/ApplicationSeedResponseApiResponse' default: description: Any HTTP returned code other than 200. Provider application specific error may be found in ResultSet schema: $ref: '#/definitions/ResultSet' definitions: ResponseMetaData: type: object properties: code: type: string detail: type: string message: type: string name: type: string BooleanApiResponse: type: object properties: data: type: boolean metaData: $ref: '#/definitions/ResponseMetaData' Result: type: object properties: errorCode: format: int64 type: integer errorMessage: type: string success: type: boolean ResultSet: type: array items: $ref: '#/definitions/Result' Address: required: - address1 - city - postCode - suburb type: object properties: address1: maxLength: 100 minLength: 0 type: string address2: maxLength: 100 minLength: 0 type: string city: maxLength: 100 minLength: 0 type: string postalAddress1: maxLength: 100 minLength: 0 type: string postalAddress2: maxLength: 100 minLength: 0 type: string postalCity: maxLength: 100 minLength: 0 type: string postalPostCode: maxLength: 5 minLength: 0 type: string postalSuburb: maxLength: 100 minLength: 0 type: string postCode: maxLength: 5 minLength: 0 type: string receiveMailAtAddress: type: boolean residentialStatusCode: type: string readOnly: true residentialStatusId: format: int32 type: integer residentialStatusName: type: string readOnly: true residentSince: format: date-time type: string suburb: maxLength: 100 minLength: 0 type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean Status: description: 'Posible values are: InProgress, Approved, Declined, Referred, Pending, Expired, PaidOut' type: string ApplicationStatus: type: object properties: color: type: string description: type: string key: type: string name: type: string order: format: int32 type: integer State: description: 'Posible values are: Buyer, Address, Employment, Banking, Income, Vehicle, SellerContact, Status, BuyerDone, SellerVehicle, SellerVehicleResult, SellerDetail, SellerBanking, SellerDone, CreditStatus, BuyerDocuments, BuyerDocumentsData, SellerDocuments, SellerDocumentsData, BuyerDoneDocuments' type: string ChildState: type: object properties: name: type: string url: type: string DealType: description: 'Posible values are: Private, Dealer, Dealer_Branch, Switch' type: string UserType: description: 'Posible values are: Buyer, Seller, Banker, Any, Dekra' type: string DocumentType: required: - category - code - description - name type: object properties: agnosticCategory: maxLength: 100 minLength: 0 type: string agnosticDescription: maxLength: 100 minLength: 0 type: string agnosticName: maxLength: 100 minLength: 0 type: string allowMultiple: type: boolean category: maxLength: 100 minLength: 0 type: string code: maxLength: 10 minLength: 0 type: string controlId: type: string readOnly: true description: maxLength: 200 minLength: 0 type: string limitDealTypeId: $ref: '#/definitions/DealType' name: maxLength: 200 minLength: 0 type: string order: format: int32 type: integer retainContent: type: boolean uploadedDocuments: $ref: '#/definitions/ArrayOfObject' userType: $ref: '#/definitions/UserType' id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean ApplicationState: type: object properties: category: type: string categoryVisible: type: boolean childrenStates: $ref: '#/definitions/ArrayOfChildState' documentTypes: $ref: '#/definitions/ArrayOfDocumentType' isComplete: type: boolean isCurrent: type: boolean isLocked: type: boolean lockPriorToState: type: boolean name: type: string order: format: int32 type: integer state: $ref: '#/definitions/State' static: type: boolean submitPriorToState: type: boolean url: type: string userType: $ref: '#/definitions/UserType' ApplicationCategory: type: object properties: isComplete: type: boolean readOnly: true isCurrent: type: boolean readOnly: true isLocked: type: boolean readOnly: true name: type: string order: format: int32 type: integer states: $ref: '#/definitions/ArrayOfApplicationState' visible: type: boolean Application: required: - buyerCellphone - buyerIdentityNumber type: object properties: ageInDays: format: int32 type: integer readOnly: true applicationSeedId: format: int32 type: integer appSource: type: string applicationStatus: $ref: '#/definitions/Status' applicationStatusDetail: $ref: '#/definitions/ApplicationStatus' assistedBy: maxLength: 10 minLength: 0 type: string assistedByEmail: type: string bankerEmail: type: string bankStatementsConsent: type: boolean buyerCellphone: maxLength: 12 minLength: 0 type: string buyerCreditCheckPassed: type: boolean buyerDocumentationProcessed: type: boolean buyerFullName: type: string readOnly: true buyerIdentityNumber: maxLength: 13 minLength: 0 type: string buyerInitialFullName: type: string readOnly: true canCancel: type: boolean readOnly: true canResume: type: boolean readOnly: true canView: type: boolean readOnly: true commencementDate: format: date-time type: string creditConsent: type: boolean crossSellConsent: type: boolean currentBuyerState: $ref: '#/definitions/State' currentBuyerStateDetail: $ref: '#/definitions/ApplicationState' currentSellerState: $ref: '#/definitions/State' currentSellerStateDetail: $ref: '#/definitions/ApplicationState' currentState: $ref: '#/definitions/State' currentStateDetail: $ref: '#/definitions/ApplicationState' dealType: $ref: '#/definitions/DealType' description: maxLength: 100 minLength: 0 type: string displayMigrationAlert: type: boolean foxReference: maxLength: 15 minLength: 0 type: string foxStatus: maxLength: 50 minLength: 0 type: string foxSubmitRequired: type: boolean initialSubmittedDate: format: date-time type: string lastSubmittedDate: format: date-time type: string monthlyExpensesCaptured: type: boolean notifyUsers: type: boolean payslipConsent: type: boolean reasonConditions: maxLength: 1000 minLength: 0 type: string sellerCellphone: maxLength: 12 minLength: 0 type: string sellerContactCaptured: type: boolean sellerDocumentationProcessed: type: boolean sellerFullName: type: string readOnly: true sellerIdentityNumber: maxLength: 13 minLength: 0 type: string sellerInitialFullName: type: string readOnly: true sourceClientId: type: string sourceClientName: type: string staffApplication: type: boolean userType: $ref: '#/definitions/UserType' workflow: $ref: '#/definitions/ArrayOfApplicationCategory' createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean Banking: required: - accountNumber - branchCode type: object properties: accountHolder: maxLength: 100 minLength: 0 type: string accountNumber: maxLength: 11 minLength: 0 type: string accountTypeCode: type: string readOnly: true accountTypeId: format: int32 type: integer accountTypeName: type: string readOnly: true bankCode: type: string readOnly: true bankId: format: int32 type: integer bankName: type: string readOnly: true branchCode: maxLength: 6 minLength: 0 type: string paymentAccountHolder: maxLength: 100 minLength: 0 type: string paymentAccountNumber: maxLength: 11 minLength: 0 type: string paymentAccountTypeCode: type: string readOnly: true paymentAccountTypeId: format: int32 type: integer paymentAccountTypeName: type: string readOnly: true paymentAmount: format: double type: number paymentBankCode: type: string readOnly: true paymentBankId: format: int32 type: integer paymentBankName: type: string readOnly: true paymentBranchCode: maxLength: 6 minLength: 0 type: string paymentReference: maxLength: 100 minLength: 0 type: string paymentTypeCode: type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean Buyer: required: - cellphone - email - firstName - identityNumber - lastName type: object properties: birthCountryCode: type: string readOnly: true birthCountryId: format: int32 type: integer birthCountryName: type: string readOnly: true cellphone: maxLength: 12 minLength: 0 type: string email: maxLength: 100 minLength: 0 type: string ethnicGroupCode: type: string readOnly: true ethnicGroupId: format: int32 type: integer ethnicGroupName: type: string readOnly: true firstName: maxLength: 100 minLength: 0 type: string fullName: type: string readOnly: true genderCode: type: string readOnly: true genderId: format: int32 type: integer genderName: type: string readOnly: true hasForeignTaxObligation: type: boolean hasMultiNationality: type: boolean hasUsNationality: type: boolean homePhoneNumber: maxLength: 12 minLength: 0 type: string identityNumber: maxLength: 13 minLength: 0 type: string initialFullName: type: string readOnly: true initials: type: string readOnly: true lastName: maxLength: 100 minLength: 0 type: string maritalStatusCode: type: string readOnly: true maritalStatusId: format: int32 type: integer maritalStatusName: type: string readOnly: true maritalTypeCode: type: string readOnly: true maritalTypeId: format: int32 type: integer maritalTypeName: type: string readOnly: true nationalityCountryCode: type: string readOnly: true nationalityCountryId: format: int32 type: integer nationalityCountryName: type: string readOnly: true titleCode: type: string readOnly: true titleId: format: int32 type: integer titleName: type: string readOnly: true workPhoneNumber: maxLength: 12 minLength: 0 type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean Employment: required: - employer type: object properties: employer: maxLength: 100 minLength: 0 type: string employmentStartDate: format: date-time type: string employmentTypeCode: type: string readOnly: true employmentTypeId: format: int32 type: integer employmentTypeName: type: string readOnly: true industryTypeCode: type: string readOnly: true industryTypeId: format: int32 type: integer industryTypeName: type: string readOnly: true occupationTypeCode: type: string readOnly: true occupationTypeId: format: int32 type: integer occupationTypeName: type: string readOnly: true salaryDay: format: int32 type: integer createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean FinanceEngineResponse: type: object properties: code: type: string description: type: string reference: type: string status: type: string MonthlyExpense: type: object properties: account: format: double type: number clothing: format: double type: number creditCard: format: double type: number education: format: double type: number entertainment: format: double type: number food: format: double type: number foodAndHousehold: format: double type: number furniture: format: double type: number grossSalary: format: double type: number hasAccountPayments: type: boolean readOnly: true hasCreditCardPayments: type: boolean readOnly: true hasLoanPayments: type: boolean readOnly: true hasOtherPayments: type: boolean readOnly: true homeLoans: format: double type: number homeLoansOrRent: format: double type: number household: format: double type: number loan: format: double type: number maintenance: format: double type: number maxMotorPayments: format: double type: number netSalary: format: double type: number other: format: double type: number overdraft: format: double type: number phone: format: double type: number policiesAndInsurance: format: double type: number remainingSurplus: format: double type: number rent: format: double type: number savings: format: double type: number totalExpenses: format: double type: number transportation: format: double type: number utilities: format: double type: number vehicle: format: double type: number vehicleCashPrice: format: double type: number createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean Seller: required: - cellphone - email - firstName - lastName type: object properties: address1: maxLength: 100 minLength: 0 type: string address2: maxLength: 100 minLength: 0 type: string cellphone: maxLength: 12 minLength: 0 type: string city: maxLength: 100 minLength: 0 type: string email: maxLength: 100 minLength: 0 type: string firstName: maxLength: 100 minLength: 0 type: string fullName: type: string readOnly: true identityNumber: maxLength: 13 minLength: 0 type: string initialFullName: type: string readOnly: true initials: type: string readOnly: true lastName: maxLength: 100 minLength: 0 type: string postCode: maxLength: 5 minLength: 0 type: string suburb: maxLength: 100 minLength: 0 type: string titleName: type: string readOnly: true createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean SellerBanking: required: - accountHolder - accountNumber - branchCode type: object properties: accountHolder: maxLength: 100 minLength: 0 type: string accountNumber: maxLength: 11 minLength: 0 type: string accountTypeCode: type: string readOnly: true accountTypeId: format: int32 type: integer accountTypeName: type: string readOnly: true bankCode: type: string readOnly: true bankId: format: int32 type: integer bankName: type: string readOnly: true branchCode: maxLength: 6 minLength: 0 type: string paymentAccountHolder: maxLength: 100 minLength: 0 type: string paymentAccountNumber: maxLength: 11 minLength: 0 type: string paymentAccountTypeCode: type: string readOnly: true paymentAccountTypeId: format: int32 type: integer paymentAccountTypeName: type: string readOnly: true paymentAmount: format: double type: number paymentBankCode: type: string readOnly: true paymentBankId: format: int32 type: integer paymentBankName: type: string readOnly: true paymentBranchCode: maxLength: 6 minLength: 0 type: string paymentReference: maxLength: 100 minLength: 0 type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean VerificationResponseCode: description: 'Posible values are: SUCCESS, FAILED, NOT_FOUND' type: string Vehicle: required: - make - model type: object properties: balloonPercentage: format: int32 type: integer calculatedLoanAmount: format: double type: number dataReadyForInspection: type: boolean readOnly: true dealer: maxLength: 100 minLength: 0 type: string dealerCode: maxLength: 6 minLength: 0 type: string deposit: format: double type: number description: type: string readOnly: true engineNumber: maxLength: 17 minLength: 0 type: string estimatedMonthlyInstalments: format: double type: number financeHouseId: format: int32 type: integer firstInstalmentDate: format: date-time type: string hasBalloon: type: boolean readOnly: true hasDeposit: type: boolean readOnly: true initiationFee: format: double type: number interestRate: format: double type: number invoiceAmount: format: double type: number loanPeriod: format: int32 type: integer make: maxLength: 50 minLength: 0 type: string mmCode: maxLength: 10 minLength: 0 type: string model: maxLength: 100 minLength: 0 type: string monthlyFee: format: double type: number new: type: boolean offerAccepted: type: boolean principalDebt: format: double type: number purchasePrice: format: double type: number regFeeInPrincipalDebt: type: boolean regNumber: maxLength: 9 minLength: 0 type: string rejectionReason: maxLength: 4000 minLength: 0 type: string vehicleTypeCode: type: string readOnly: true vehicleTypeId: format: int32 type: integer vehicleTypeName: type: string readOnly: true verificationReportUrl: type: string verificationResponseCode: $ref: '#/definitions/VerificationResponseCode' verificationResponseId: format: int32 type: integer readOnly: true verified: type: boolean vinNumber: maxLength: 17 minLength: 0 type: string year: format: int32 type: integer createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean ApplicationInformationResponse: type: object properties: address: $ref: '#/definitions/Address' application: $ref: '#/definitions/Application' applicationId: format: int32 type: integer banking: $ref: '#/definitions/Banking' buyer: $ref: '#/definitions/Buyer' employment: $ref: '#/definitions/Employment' financeEngineResponse: $ref: '#/definitions/FinanceEngineResponse' monthlyExpense: $ref: '#/definitions/MonthlyExpense' nextState: $ref: '#/definitions/State' nextStateDetail: $ref: '#/definitions/ApplicationState' seller: $ref: '#/definitions/Seller' sellerBanking: $ref: '#/definitions/SellerBanking' vehicle: $ref: '#/definitions/Vehicle' ApplicationApiResponse: type: object properties: data: $ref: '#/definitions/Application' metaData: $ref: '#/definitions/ResponseMetaData' NewApplicationRequest: required: - bankStatementsConsent - buyerCellphone - buyerIdentityNumber - crossSellConsent - dealType - payslipConsent type: object properties: applicationSeedId: format: int32 type: integer bankStatementsConsent: type: boolean buyerCellphone: maxLength: 12 minLength: 0 type: string buyerIdentityNumber: maxLength: 13 minLength: 0 type: string crossSellConsent: type: boolean dealType: $ref: '#/definitions/DealType' payslipConsent: type: boolean AddressInformation: required: - address1 - city - postCode - suburb type: object properties: address1: maxLength: 100 minLength: 0 type: string address2: maxLength: 100 minLength: 0 type: string city: maxLength: 100 minLength: 0 type: string postalAddress1: maxLength: 100 minLength: 0 type: string postalAddress2: maxLength: 100 minLength: 0 type: string postalCity: maxLength: 100 minLength: 0 type: string postalPostCode: maxLength: 5 minLength: 0 type: string postalSuburb: maxLength: 100 minLength: 0 type: string postCode: maxLength: 5 minLength: 0 type: string receiveMailAtAddress: type: boolean residentialStatusId: format: int32 type: integer residentSince: format: date-time type: string suburb: maxLength: 100 minLength: 0 type: string BankingInformation: required: - accountNumber - branchCode type: object properties: accountNumber: maxLength: 11 minLength: 0 type: string accountTypeId: format: int32 type: integer bankId: format: int32 type: integer branchCode: maxLength: 6 minLength: 0 type: string BuyerInformation: required: - cellphone - email - firstName - identityNumber - lastName type: object properties: birthCountryId: format: int32 type: integer cellphone: maxLength: 12 minLength: 0 type: string email: maxLength: 100 minLength: 0 type: string ethnicGroupId: format: int32 type: integer firstName: maxLength: 100 minLength: 0 type: string hasForeignTaxObligation: type: boolean hasMultiNationality: type: boolean hasUsNationality: type: boolean homePhoneNumber: maxLength: 12 minLength: 0 type: string identityNumber: maxLength: 13 minLength: 0 type: string lastName: maxLength: 100 minLength: 0 type: string maritalStatusId: format: int32 type: integer maritalTypeId: format: int32 type: integer nationalityCountryId: format: int32 type: integer titleId: format: int32 type: integer workPhoneNumber: maxLength: 12 minLength: 0 type: string EmploymentInformation: required: - employer type: object properties: employer: maxLength: 100 minLength: 0 type: string employmentStartDate: format: date-time type: string employmentTypeId: format: int32 type: integer industryTypeId: format: int32 type: integer occupationTypeId: format: int32 type: integer MonthlyExpenseInformation: type: object properties: account: format: double type: number clothing: format: double type: number creditCard: format: double type: number education: format: double type: number entertainment: format: double type: number foodAndHousehold: format: double type: number grossSalary: format: double type: number homeLoansOrRent: format: double type: number loan: format: double type: number netSalary: format: double type: number other: format: double type: number phone: format: double type: number policiesAndInsurance: format: double type: number savings: format: double type: number transportation: format: double type: number utilities: format: double type: number SellerInformation: required: - cellphone - email - firstName - lastName type: object properties: address1: maxLength: 100 minLength: 0 type: string address2: maxLength: 100 minLength: 0 type: string cellphone: maxLength: 12 minLength: 0 type: string city: maxLength: 100 minLength: 0 type: string email: maxLength: 100 minLength: 0 type: string firstName: maxLength: 100 minLength: 0 type: string identityNumber: maxLength: 13 minLength: 0 type: string lastName: maxLength: 100 minLength: 0 type: string postCode: maxLength: 5 minLength: 0 type: string suburb: maxLength: 100 minLength: 0 type: string SellerBankingInformation: type: object properties: accountNumber: type: string accountTypeId: format: int32 type: integer bankId: format: int32 type: integer branchCode: type: string VehicleInformation: required: - mmCode type: object properties: balloonPercentage: format: int32 type: integer dealerCode: maxLength: 6 minLength: 0 type: string deposit: format: double type: number firstInstalmentDate: format: date-time type: string loanPeriod: format: int32 type: integer mmCode: maxLength: 10 minLength: 0 type: string new: type: boolean offerAccepted: type: boolean purchasePrice: format: double type: number registrationFeeIndicator: type: boolean vehicleTypeId: format: int32 type: integer year: format: int32 type: integer SaveApplicationInformationRequest: required: - applicationId type: object properties: address: $ref: '#/definitions/AddressInformation' applicationId: format: int32 type: integer banking: $ref: '#/definitions/BankingInformation' buyer: $ref: '#/definitions/BuyerInformation' employment: $ref: '#/definitions/EmploymentInformation' monthlyExpense: $ref: '#/definitions/MonthlyExpenseInformation' seller: $ref: '#/definitions/SellerInformation' sellerBanking: $ref: '#/definitions/SellerBankingInformation' vehicle: $ref: '#/definitions/VehicleInformation' ApplicationIEnumerableApiResponse: type: object properties: data: $ref: '#/definitions/ArrayOfApplication' metaData: $ref: '#/definitions/ResponseMetaData' ApplicationSeed: type: object properties: buyerCellphone: maxLength: 12 minLength: 0 type: string buyerIdentityNumber: maxLength: 13 minLength: 0 type: string dealType: $ref: '#/definitions/DealType' description: maxLength: 100 minLength: 0 type: string externalReference: maxLength: 100 minLength: 0 type: string locked: type: boolean notifyUsers: type: boolean sellerCellphone: maxLength: 12 minLength: 0 type: string sellerIdentityNumber: maxLength: 13 minLength: 0 type: string sourceClientId: maxLength: 40 minLength: 0 type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean BuyerSeed: type: object properties: birthCountryCode: type: string readOnly: true birthCountryId: format: int32 type: integer birthCountryName: type: string readOnly: true cellphone: maxLength: 12 minLength: 0 type: string email: maxLength: 100 minLength: 0 type: string ethnicGroupCode: type: string readOnly: true ethnicGroupId: format: int32 type: integer ethnicGroupName: type: string readOnly: true firstName: maxLength: 100 minLength: 0 type: string genderCode: type: string readOnly: true genderId: format: int32 type: integer genderName: type: string readOnly: true hasForeignTaxObligation: type: boolean hasMultiNationality: type: boolean hasUsNationality: type: boolean homePhoneNumber: maxLength: 12 minLength: 0 type: string identityNumber: maxLength: 13 minLength: 0 type: string initials: type: string readOnly: true lastName: maxLength: 100 minLength: 0 type: string maritalStatusCode: type: string readOnly: true maritalStatusId: format: int32 type: integer maritalStatusName: type: string readOnly: true maritalTypeCode: type: string readOnly: true maritalTypeId: format: int32 type: integer maritalTypeName: type: string readOnly: true nationalityCountryCode: type: string readOnly: true nationalityCountryId: format: int32 type: integer nationalityCountryName: type: string readOnly: true titleCode: type: string readOnly: true titleId: format: int32 type: integer titleName: type: string readOnly: true workPhoneNumber: maxLength: 12 minLength: 0 type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean AddressSeed: type: object properties: address1: maxLength: 100 minLength: 0 type: string address2: maxLength: 100 minLength: 0 type: string city: maxLength: 100 minLength: 0 type: string postalAddress1: maxLength: 100 minLength: 0 type: string postalAddress2: maxLength: 100 minLength: 0 type: string postalCity: maxLength: 100 minLength: 0 type: string postalPostCode: maxLength: 5 minLength: 0 type: string postalSuburb: maxLength: 100 minLength: 0 type: string postCode: maxLength: 5 minLength: 0 type: string receiveMailAtAddress: type: boolean residentialStatusCode: type: string readOnly: true residentialStatusId: format: int32 type: integer residentialStatusName: type: string readOnly: true residentSince: format: date-time type: string suburb: maxLength: 100 minLength: 0 type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean BankingSeed: type: object properties: accountNumber: maxLength: 11 minLength: 0 type: string accountTypeCode: type: string readOnly: true accountTypeId: format: int32 type: integer accountTypeName: type: string readOnly: true bankCode: type: string readOnly: true bankId: format: int32 type: integer bankName: type: string readOnly: true branchCode: maxLength: 6 minLength: 0 type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean EmploymentSeed: type: object properties: employer: maxLength: 100 minLength: 0 type: string employmentStartDate: format: date-time type: string employmentTypeCode: type: string readOnly: true employmentTypeId: format: int32 type: integer employmentTypeName: type: string readOnly: true industryTypeCode: type: string readOnly: true industryTypeId: format: int32 type: integer industryTypeName: type: string readOnly: true occupationTypeCode: type: string readOnly: true occupationTypeId: format: int32 type: integer occupationTypeName: type: string readOnly: true createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean MonthlyExpenseSeed: type: object properties: account: format: double type: number clothing: format: double type: number creditCard: format: double type: number education: format: double type: number entertainment: format: double type: number foodAndHousehold: format: double type: number grossSalary: format: double type: number hasAccountPayments: type: boolean readOnly: true hasCreditCardPayments: type: boolean readOnly: true hasLoanPayments: type: boolean readOnly: true hasOtherPayments: type: boolean readOnly: true homeLoansOrRent: format: double type: number loan: format: double type: number maxMotorPayments: format: double type: number netSalary: format: double type: number other: format: double type: number phone: format: double type: number policiesAndInsurance: format: double type: number remainingSurplus: format: double type: number savings: format: double type: number totalExpenses: format: double type: number transportation: format: double type: number utilities: format: double type: number vehicleCashPrice: format: double type: number createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean SellerSeed: type: object properties: address1: maxLength: 100 minLength: 0 type: string address2: maxLength: 100 minLength: 0 type: string cellphone: maxLength: 12 minLength: 0 type: string city: maxLength: 100 minLength: 0 type: string email: maxLength: 100 minLength: 0 type: string firstName: maxLength: 100 minLength: 0 type: string identityNumber: maxLength: 13 minLength: 0 type: string lastName: maxLength: 100 minLength: 0 type: string postCode: maxLength: 5 minLength: 0 type: string suburb: maxLength: 100 minLength: 0 type: string titleName: type: string readOnly: true createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean SellerBankingSeed: type: object properties: accountHolder: maxLength: 100 minLength: 0 type: string accountNumber: maxLength: 11 minLength: 0 type: string accountTypeCode: type: string readOnly: true accountTypeId: format: int32 type: integer accountTypeName: type: string readOnly: true bankCode: type: string readOnly: true bankId: format: int32 type: integer bankName: type: string readOnly: true branchCode: maxLength: 6 minLength: 0 type: string createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean VehicleSeed: type: object properties: balloonPercentage: format: int32 type: integer calculatedLoanAmount: format: double type: number dealer: maxLength: 100 minLength: 0 type: string dealerCode: maxLength: 6 minLength: 0 type: string deposit: format: double type: number estimatedMonthlyInstalments: format: double type: number financeHouseId: format: int32 type: integer firstInstalmentDate: format: date-time type: string hasBalloon: type: boolean hasDeposit: type: boolean interestRate: format: double type: number loanPeriod: format: int32 type: integer make: maxLength: 50 minLength: 0 type: string mmCode: maxLength: 10 minLength: 0 type: string model: maxLength: 100 minLength: 0 type: string new: type: boolean offerAccepted: type: boolean purchasePrice: format: double type: number regNumber: maxLength: 9 minLength: 0 type: string rejectionReason: maxLength: 4000 minLength: 0 type: string vehicleTypeCode: type: string readOnly: true vehicleTypeId: format: int32 type: integer vehicleTypeName: type: string readOnly: true verificationReportUrl: type: string verificationResponseCode: $ref: '#/definitions/VerificationResponseCode' verificationResponseId: format: int32 type: integer readOnly: true verified: type: boolean vinNumber: maxLength: 17 minLength: 0 type: string year: format: int32 type: integer createdDate: format: date-time type: string modifiedDate: format: date-time type: string id: format: int32 type: integer lockedFields: $ref: '#/definitions/ArrayOfString' populated: type: boolean ApplicationSeedResponse: type: object properties: application: $ref: '#/definitions/ApplicationSeed' applicationSeedId: format: int32 type: integer readOnly: true applicationSeedUrl: type: string readOnly: true buyer: $ref: '#/definitions/BuyerSeed' buyerAddress: $ref: '#/definitions/AddressSeed' buyerBanking: $ref: '#/definitions/BankingSeed' buyerEmployment: $ref: '#/definitions/EmploymentSeed' buyerMonthlyExpense: $ref: '#/definitions/MonthlyExpenseSeed' lockedFields: $ref: '#/definitions/ArrayOfString' seller: $ref: '#/definitions/SellerSeed' sellerBanking: $ref: '#/definitions/SellerBankingSeed' vehicle: $ref: '#/definitions/VehicleSeed' vehicleVerified: type: boolean readOnly: true ApplicationSeedResponseApiResponse: type: object properties: data: $ref: '#/definitions/ApplicationSeedResponse' metaData: $ref: '#/definitions/ResponseMetaData' BuyerSeedInformation: type: object properties: birthCountryId: format: int32 type: integer cellphone: maxLength: 12 minLength: 0 type: string email: maxLength: 100 minLength: 0 type: string ethnicGroupId: format: int32 type: integer firstName: maxLength: 100 minLength: 0 type: string hasForeignTaxObligation: type: boolean hasMultiNationality: type: boolean hasUsNationality: type: boolean homePhoneNumber: maxLength: 12 minLength: 0 type: string identityNumber: maxLength: 13 minLength: 0 type: string lastName: maxLength: 100 minLength: 0 type: string maritalStatusId: format: int32 type: integer maritalTypeId: format: int32 type: integer nationalityCountryId: format: int32 type: integer titleId: format: int32 type: integer workPhoneNumber: maxLength: 12 minLength: 0 type: string AddressSeedInformation: type: object properties: address1: maxLength: 100 minLength: 0 type: string address2: maxLength: 100 minLength: 0 type: string city: maxLength: 100 minLength: 0 type: string postalAddress1: maxLength: 100 minLength: 0 type: string postalAddress2: maxLength: 100 minLength: 0 type: string postalCity: maxLength: 100 minLength: 0 type: string postalPostCode: maxLength: 5 minLength: 0 type: string postalSuburb: maxLength: 100 minLength: 0 type: string postCode: maxLength: 5 minLength: 0 type: string receiveMailAtAddress: type: boolean residentialStatusId: format: int32 type: integer residentSince: format: date-time type: string suburb: maxLength: 100 minLength: 0 type: string BankingSeedInformation: type: object properties: accountNumber: maxLength: 11 minLength: 0 type: string accountTypeId: format: int32 type: integer bankId: format: int32 type: integer branchCode: maxLength: 6 minLength: 0 type: string EmploymentSeedInformation: type: object properties: employer: maxLength: 100 minLength: 0 type: string employmentStartDate: format: date-time type: string employmentTypeId: format: int32 type: integer industryTypeId: format: int32 type: integer occupationTypeId: format: int32 type: integer MonthlyExpenseSeedInformation: type: object properties: account: format: double type: number clothing: format: double type: number creditCard: format: double type: number education: format: double type: number entertainment: format: double type: number foodAndHousehold: format: double type: number grossSalary: format: double type: number homeLoansOrRent: format: double type: number loan: format: double type: number netSalary: format: double type: number other: format: double type: number phone: format: double type: number policiesAndInsurance: format: double type: number savings: format: double type: number transportation: format: double type: number utilities: format: double type: number SellerSeedInformation: type: object properties: address1: maxLength: 100 minLength: 0 type: string address2: maxLength: 100 minLength: 0 type: string cellphone: maxLength: 12 minLength: 0 type: string city: maxLength: 100 minLength: 0 type: string email: maxLength: 100 minLength: 0 type: string firstName: maxLength: 100 minLength: 0 type: string identityNumber: maxLength: 13 minLength: 0 type: string lastName: maxLength: 100 minLength: 0 type: string postCode: maxLength: 5 minLength: 0 type: string suburb: maxLength: 100 minLength: 0 type: string SellerBankingSeedInformation: type: object properties: accountHolder: maxLength: 100 minLength: 0 type: string accountNumber: maxLength: 11 minLength: 0 type: string accountTypeId: format: int32 type: integer bankId: format: int32 type: integer branchCode: maxLength: 6 minLength: 0 type: string VehicleSeedInformation: type: object properties: balloonPercentage: format: int32 type: integer dealer: maxLength: 100 minLength: 0 type: string dealerCode: maxLength: 6 minLength: 0 type: string deposit: format: double type: number financeHouseId: format: int32 type: integer firstInstalmentDate: format: date-time type: string loanPeriod: format: int32 type: integer mmCode: maxLength: 10 minLength: 0 type: string new: type: boolean offerAccepted: type: boolean purchasePrice: format: double type: number registrationFeeIndicator: type: boolean regNumber: maxLength: 9 minLength: 0 type: string rejectionReason: maxLength: 4000 minLength: 0 type: string vehicleTypeId: format: int32 type: integer vinNumber: maxLength: 17 minLength: 0 type: string year: format: int32 type: integer SeedInformation: type: object properties: buyer: $ref: '#/definitions/BuyerSeedInformation' buyerAddress: $ref: '#/definitions/AddressSeedInformation' buyerBanking: $ref: '#/definitions/BankingSeedInformation' buyerEmployment: $ref: '#/definitions/EmploymentSeedInformation' buyerMonthlyExpense: $ref: '#/definitions/MonthlyExpenseSeedInformation' seller: $ref: '#/definitions/SellerSeedInformation' sellerBanking: $ref: '#/definitions/SellerBankingSeedInformation' vehicle: $ref: '#/definitions/VehicleSeedInformation' NewApplicationSeedRequest: type: object properties: applicationSeedId: format: int32 type: integer data: $ref: '#/definitions/SeedInformation' dealType: $ref: '#/definitions/DealType' externalReference: type: string lockData: type: boolean verifyVehicle: type: boolean ArrayOfString: type: array items: type: string ArrayOfObject: type: array items: type: object ArrayOfChildState: type: array items: $ref: '#/definitions/ChildState' ArrayOfDocumentType: type: array items: $ref: '#/definitions/DocumentType' ArrayOfApplicationState: type: array items: $ref: '#/definitions/ApplicationState' ArrayOfApplicationCategory: type: array items: $ref: '#/definitions/ApplicationCategory' ArrayOfApplication: type: array items: $ref: '#/definitions/Application' securityDefinitions: API Secret: type: apiKey description: "" in: header name: X-IBM-Client-Secret API Key: type: apiKey name: X-IBM-Client-Id in: header description: CC308476 security: - API Key: [] API Secret: [] consumes: - application/json produces: - application/json x-ibm-configuration: enforced: true phase: realized testable: true x-ibm-endpoints: - endpointUrl: https://api.nedbank.co.za/apimarket/sandbox type: - production ...