openapi: 3.0.1 info: title: Customer Score description: This API is used to determine the customer's score based on various activities performed within a specified period of time. license: name: MADAPI url: https://developers.mtn.com/ version: 3.0.0 - Last updated date:2026-09-07 08:39:11 servers: - url: https://api.mtn.com/v1 description: Production Server security: - OAuth2: [] tags: - name: CustomerScore paths: /customers/creditreport/score: get: tags: - CustomerScore summary: Get obligor credit limit info description: "Returns credit limit details by customerId or accountId for a\ \ given target system. Parameters may include transactionId, countryCode,\ \ auth, targetSystem as headers, and accountId or customerId as query parameters." operationId: CustomerScoreService_get_getCreditLimitInfo_customerscreditrepor parameters: - name: accountId in: query required: false schema: type: string - name: customerId in: query required: false schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: true schema: type: string - name: x-authorization in: header required: false schema: type: string - name: x-country-code in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer score flows. content: application/json: schema: title: CreditLimitDetailsResponse type: object properties: statusCode: type: string transactionId: type: string sequenceNo: type: string statusMessage: type: string data: title: DataClassificationInsType type: object properties: classificationInsType: type: array items: title: ClassificationInsType type: object properties: approvedCreditSanctioned: type: string amountOverdue: type: string outstandingBalance: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/score: get: tags: - CustomerScore summary: Get Customer score. description: This Endpoint is used to determine the customer's score based on various activities performed within a specified period of time. operationId: CustomerScoreService_get_getCustomerScore_customerscustomerIds parameters: - name: customerId in: path required: true schema: type: string - name: dob in: query required: false schema: type: string - name: endDate in: query required: false schema: type: string - name: fullName in: query required: false schema: type: string - name: idNumber in: header required: false schema: type: string - name: reportId in: query required: false schema: type: string - name: startDate in: query required: false schema: type: string - name: targetSystem in: query required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: type in: query required: false schema: type: string - name: userId in: query required: false schema: type: string - name: x-country-code in: header required: false schema: type: string - name: x-origin-channelid in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer score flows. content: application/json: schema: title: CustomerScoreResponse type: object properties: statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string data: type: array items: title: CustomerScoreResponseData type: object properties: msisdn: type: string firstScore: type: string summaryAttributes: type: string loyaltyScore: type: string scoreClass: type: string month: type: string creditLimitRecommended: type: string moLoanEnd: type: string momoProbablityDefault: type: string creditScore: type: string creditLimit: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/score/creditinfo: post: tags: - CustomerScore summary: This operation post credit information description: "This operation posts credit information related to the specific\ \ customer, allowing for scoring and analysis purposes." operationId: CustomerScoreService_post_postCreditInfo_customerscustomerIds parameters: - name: countryCode in: header required: false schema: type: string - name: customerId in: path required: true schema: type: string - name: requestType in: header required: true schema: type: string - name: targetSystem in: header required: false schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-origin-channelid in: header required: false schema: type: string requestBody: content: application/json: schema: title: CreditInfoRequest type: object properties: creditInfo: type: array items: title: CreditInfo type: object properties: customerId: type: string branchCode: type: string lastName: type: string firstName: type: string middleName: type: string dateOfBirth: type: string nationalIdentityNumber: type: string driversLicense: type: string BVN: type: string passportNo: type: string gender: type: string nationality: type: string maritalStatus: type: string phoneNumberOne: type: string primaryAddressOne: type: string primaryAddressTwo: type: string countryLgaOne: type: string countryStateOne: type: string countryOne: type: string employmentStatus: type: string occupation: type: string businessCategory: type: string businessSector: type: string BorrowerType: type: string otherID: type: string taxID: type: string pictureFilePath: type: string emailAddress: type: string employerName: type: string employerAddressOne: type: string employerAddressTwo: type: string employerLga: type: string employerState: type: string employerCountry: type: string title: type: string placeOfBirth: type: string phoneNumberTwo: type: string phoneNumberThree: type: string secondaryAddressOne: type: string secondaryAddressTwo: type: string secondaryAddressLga: type: string secondaryAddressState: type: string secondaryAddressCountry: type: string spousesLastName: type: string spousesFirstName: type: string spousesMiddleName: type: string businessInfo: title: BusinessInfo type: object properties: Id: type: string name: type: string type: type: string category: type: string dateOfIncorporation: type: string customerId: type: string branchCode: type: string contactMedium: type: array items: title: ContactMedium type: object properties: addressOne: type: string addressTwo: type: string lga: type: string state: type: string preferred: type: boolean country: type: string guarantorInfo: type: array items: title: GuarantorInfo type: object properties: corporateName: type: string bizID: type: string lastName: type: string firstname: type: string middleName: type: string date: type: string gender: type: string nationalID: type: string passportNo: type: string driversLicence: type: string BVN: type: string otherID: type: string addressOne: type: string addressTwo: type: string lga: type: string state: type: string country: type: string phoneNumber: type: string emailAddress: type: string creditInfo: title: CreditRecord type: object properties: dateOfLoan: type: string creditLimit: type: string availedLimit: type: string outstandingBalance: type: string installmentAmount: type: string currency: type: string daysInArrears: type: string overDueAmount: type: string loanType: type: string loanTenor: type: string repaymentFrequency: type: string lastPaymentDate: type: string lastPaymentAmount: type: string maturityDate: type: string loanClassification: type: string legalChallengeStatus: type: string litigationDate: type: string consentStatus: type: string loanSecurityStatus: type: string collateralType: type: string collateralDetails: type: string previousAccountNumber: type: string previousName: type: string previousCustomerId: type: string previousBranchCode: type: string principalInfo: type: array items: title: PrincipalInfo type: object properties: lastName: type: string firstName: type: string middleName: type: string dateOfBirth: type: string gender: type: string addressOne: type: string addressTwo: type: string lga: type: string state: type: string country: type: string nationalId: type: string driversLicence: type: string BVN: type: string passportNo: type: string phoneNumber: type: string email: type: string designation: type: string loanStatus: type: string guaranteeType: type: string accountNumber: type: string accountStatus: type: string accountStatusDate: type: string taxId: type: string dateOfLoan: type: string creditLimit: type: string availedLimit: type: string outstandingBalance: type: string installmentAmount: type: string currency: type: string daysInArrears: type: string overDueAmount: type: string loanType: type: string loanTenor: type: string repaymentFrequency: type: string lastPaymentDate: type: string lastPaymentAmount: type: string maturityDate: type: string loanClassification: type: string legalChallengeStatus: type: string litigationDate: type: string consentStatus: type: string loanSecurityStatus: type: string collateralType: type: string collateralDetails: type: string previousAccountNumber: type: string previousName: type: string previousCustomerId: type: string previousBranchCode: type: string userId: type: string required: true responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer score flows. content: application/json: schema: title: CRCResponse type: object properties: transactionId: type: string timestamp: type: string status: type: string error: type: string message: type: string sequenceNo: type: string result: title: Result type: object properties: resultCode: type: string resultDescription: type: string transactionId: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false /customers/{customerId}/score/creditreport: get: tags: - CustomerScore summary: retrieve credit score report for an individual and coorporate entity description: "Retrieve credit score report for an individual and corporate entity\ \ by customer ID, returning the credit score data." operationId: CustomerScoreService_get_getCreditInfo_customerscustomerIds parameters: - name: callBackUrl in: header required: false schema: type: string - name: countryCode in: header required: false schema: type: string - name: customerCode in: query required: false schema: type: string - name: customerId in: path required: true schema: type: string - name: dateOfBirth in: query required: false schema: type: string - name: facilityId in: query required: false schema: type: string - name: facilityList in: query required: false schema: type: string - name: fullName in: query required: false schema: type: string - name: gender in: query required: false schema: type: string - name: idValue in: query required: false schema: type: string - name: referenceNumber in: query required: false schema: type: string - name: reportType in: query required: false schema: type: string - name: requestType in: query required: true schema: type: string - name: transactionId in: header required: false schema: type: string - name: x-origin-channelid in: header required: false schema: type: string responses: "200": description: HTTP 200 indicating the request succeeded; the response body follows the documented schema for this operation and includes correlation identifiers where applicable for traceability across MTN MADAPI customer score flows. content: application/json: schema: title: CreditInfoResponse type: object properties: statusCode: type: string statusMessage: type: string supportMessage: type: string transactionId: type: string timestamp: type: string sequenceNo: type: string "400": description: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "400" statusMessage: "Bad request. Invalid request parameters, missing required\ \ fields, or validation errors." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "401": description: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "401" statusMessage: "Unauthorized. Invalid or missing authorization credentials,\ \ insufficient permissions, or authentication failure." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "403": description: Forbidden. Access denied. The request is valid but the server refuses to perform it. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "403" statusMessage: Forbidden. Access denied. The request is valid but the server refuses to perform it. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "404": description: Not found. The requested resource was not found or does not exist. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "404" statusMessage: Not found. The requested resource was not found or does not exist. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "500": description: "Internal server error. Unexpected system failure, database\ \ connectivity issues, or external service integration problems." content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "500" statusMessage: "Internal server error. Unexpected system failure,\ \ database connectivity issues, or external service integration\ \ problems." supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "502": description: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "502" statusMessage: Bad gateway. The server acting as a gateway received an invalid response from an upstream server. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z "503": description: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. content: application/json: schema: $ref: '#/components/schemas/APIError' example: statusCode: "503" statusMessage: Service unavailable. The server is temporarily unable to handle the request due to maintenance or overload. supportMessage: API_ERROR transactionId: "1234567890" sequenceNo: "20250115120000001" timestamp: 2025-01-15T12:00:00Z deprecated: false components: schemas: com_mtn_aggregator_models_response_customercredit_CreditLimitDetailsResponse: title: CreditLimitDetailsResponse type: object properties: statusCode: type: string transactionId: type: string sequenceNo: type: string statusMessage: type: string data: title: DataClassificationInsType type: object properties: classificationInsType: type: array items: title: ClassificationInsType type: object properties: approvedCreditSanctioned: type: string amountOverdue: type: string outstandingBalance: type: string com_mtn_aggregator_models_response_crc_Result: title: Result type: object properties: resultCode: type: string resultDescription: type: string transactionId: type: string com_mtn_aggregator_models_response_customerscore_CustomerScoreResponse: title: CustomerScoreResponse type: object properties: statusCode: type: string statusMessage: type: string transactionId: type: string sequenceNo: type: string data: type: array items: title: CustomerScoreResponseData type: object properties: msisdn: type: string firstScore: type: string summaryAttributes: type: string loyaltyScore: type: string scoreClass: type: string month: type: string creditLimitRecommended: type: string moLoanEnd: type: string momoProbablityDefault: type: string creditScore: type: string creditLimit: type: string com_mtn_aggregator_models_request_GuarantorInfo: title: GuarantorInfo type: object properties: corporateName: type: string bizID: type: string lastName: type: string firstname: type: string middleName: type: string date: type: string gender: type: string nationalID: type: string passportNo: type: string driversLicence: type: string BVN: type: string otherID: type: string addressOne: type: string addressTwo: type: string lga: type: string state: type: string country: type: string phoneNumber: type: string emailAddress: type: string com_mtn_aggregator_models_request_PrincipalInfo: title: PrincipalInfo type: object properties: lastName: type: string firstName: type: string middleName: type: string dateOfBirth: type: string gender: type: string addressOne: type: string addressTwo: type: string lga: type: string state: type: string country: type: string nationalId: type: string driversLicence: type: string BVN: type: string passportNo: type: string phoneNumber: type: string email: type: string designation: type: string com_mtn_aggregator_models_response_customerscore_CustomerScoreResponseData: title: CustomerScoreResponseData type: object properties: msisdn: type: string firstScore: type: string summaryAttributes: type: string loyaltyScore: type: string scoreClass: type: string month: type: string creditLimitRecommended: type: string moLoanEnd: type: string momoProbablityDefault: type: string creditScore: type: string creditLimit: type: string com_mtn_aggregator_models_request_BusinessInfo: title: BusinessInfo type: object properties: Id: type: string name: type: string type: type: string category: type: string dateOfIncorporation: type: string customerId: type: string branchCode: type: string contactMedium: type: array items: title: ContactMedium type: object properties: addressOne: type: string addressTwo: type: string lga: type: string state: type: string preferred: type: boolean country: type: string com_mtn_aggregator_models_response_customercredit_ClassificationInsType: title: ClassificationInsType type: object properties: approvedCreditSanctioned: type: string amountOverdue: type: string outstandingBalance: type: string com_mtn_aggregator_models_request_CreditInfo: title: CreditInfo type: object properties: customerId: type: string branchCode: type: string lastName: type: string firstName: type: string middleName: type: string dateOfBirth: type: string nationalIdentityNumber: type: string driversLicense: type: string BVN: type: string passportNo: type: string gender: type: string nationality: type: string maritalStatus: type: string phoneNumberOne: type: string primaryAddressOne: type: string primaryAddressTwo: type: string countryLgaOne: type: string countryStateOne: type: string countryOne: type: string employmentStatus: type: string occupation: type: string businessCategory: type: string businessSector: type: string BorrowerType: type: string otherID: type: string taxID: type: string pictureFilePath: type: string emailAddress: type: string employerName: type: string employerAddressOne: type: string employerAddressTwo: type: string employerLga: type: string employerState: type: string employerCountry: type: string title: type: string placeOfBirth: type: string phoneNumberTwo: type: string phoneNumberThree: type: string secondaryAddressOne: type: string secondaryAddressTwo: type: string secondaryAddressLga: type: string secondaryAddressState: type: string secondaryAddressCountry: type: string spousesLastName: type: string spousesFirstName: type: string spousesMiddleName: type: string businessInfo: title: BusinessInfo type: object properties: Id: type: string name: type: string type: type: string category: type: string dateOfIncorporation: type: string customerId: type: string branchCode: type: string contactMedium: type: array items: title: ContactMedium type: object properties: addressOne: type: string addressTwo: type: string lga: type: string state: type: string preferred: type: boolean country: type: string guarantorInfo: type: array items: title: GuarantorInfo type: object properties: corporateName: type: string bizID: type: string lastName: type: string firstname: type: string middleName: type: string date: type: string gender: type: string nationalID: type: string passportNo: type: string driversLicence: type: string BVN: type: string otherID: type: string addressOne: type: string addressTwo: type: string lga: type: string state: type: string country: type: string phoneNumber: type: string emailAddress: type: string creditInfo: title: CreditRecord type: object properties: dateOfLoan: type: string creditLimit: type: string availedLimit: type: string outstandingBalance: type: string installmentAmount: type: string currency: type: string daysInArrears: type: string overDueAmount: type: string loanType: type: string loanTenor: type: string repaymentFrequency: type: string lastPaymentDate: type: string lastPaymentAmount: type: string maturityDate: type: string loanClassification: type: string legalChallengeStatus: type: string litigationDate: type: string consentStatus: type: string loanSecurityStatus: type: string collateralType: type: string collateralDetails: type: string previousAccountNumber: type: string previousName: type: string previousCustomerId: type: string previousBranchCode: type: string principalInfo: type: array items: title: PrincipalInfo type: object properties: lastName: type: string firstName: type: string middleName: type: string dateOfBirth: type: string gender: type: string addressOne: type: string addressTwo: type: string lga: type: string state: type: string country: type: string nationalId: type: string driversLicence: type: string BVN: type: string passportNo: type: string phoneNumber: type: string email: type: string designation: type: string loanStatus: type: string guaranteeType: type: string accountNumber: type: string accountStatus: type: string accountStatusDate: type: string taxId: type: string dateOfLoan: type: string creditLimit: type: string availedLimit: type: string outstandingBalance: type: string installmentAmount: type: string currency: type: string daysInArrears: type: string overDueAmount: type: string loanType: type: string loanTenor: type: string repaymentFrequency: type: string lastPaymentDate: type: string lastPaymentAmount: type: string maturityDate: type: string loanClassification: type: string legalChallengeStatus: type: string litigationDate: type: string consentStatus: type: string loanSecurityStatus: type: string collateralType: type: string collateralDetails: type: string previousAccountNumber: type: string previousName: type: string previousCustomerId: type: string previousBranchCode: type: string com_mtn_aggregator_models_response_crc_CRCResponse: title: CRCResponse type: object properties: transactionId: type: string timestamp: type: string status: type: string error: type: string message: type: string sequenceNo: type: string result: title: Result type: object properties: resultCode: type: string resultDescription: type: string transactionId: type: string com_mtn_aggregator_models_response_customercredit_DataClassificationInsType: title: DataClassificationInsType type: object properties: classificationInsType: type: array items: title: ClassificationInsType type: object properties: approvedCreditSanctioned: type: string amountOverdue: type: string outstandingBalance: type: string com_mtn_aggregator_models_request_CreditRecord: title: CreditRecord type: object properties: dateOfLoan: type: string creditLimit: type: string availedLimit: type: string outstandingBalance: type: string installmentAmount: type: string currency: type: string daysInArrears: type: string overDueAmount: type: string loanType: type: string loanTenor: type: string repaymentFrequency: type: string lastPaymentDate: type: string lastPaymentAmount: type: string maturityDate: type: string loanClassification: type: string legalChallengeStatus: type: string litigationDate: type: string consentStatus: type: string loanSecurityStatus: type: string collateralType: type: string collateralDetails: type: string previousAccountNumber: type: string previousName: type: string previousCustomerId: type: string previousBranchCode: type: string com_mtn_aggregator_models_request_CreditInfoRequest: title: CreditInfoRequest type: object properties: creditInfo: type: array items: title: CreditInfo type: object properties: customerId: type: string branchCode: type: string lastName: type: string firstName: type: string middleName: type: string dateOfBirth: type: string nationalIdentityNumber: type: string driversLicense: type: string BVN: type: string passportNo: type: string gender: type: string nationality: type: string maritalStatus: type: string phoneNumberOne: type: string primaryAddressOne: type: string primaryAddressTwo: type: string countryLgaOne: type: string countryStateOne: type: string countryOne: type: string employmentStatus: type: string occupation: type: string businessCategory: type: string businessSector: type: string BorrowerType: type: string otherID: type: string taxID: type: string pictureFilePath: type: string emailAddress: type: string employerName: type: string employerAddressOne: type: string employerAddressTwo: type: string employerLga: type: string employerState: type: string employerCountry: type: string title: type: string placeOfBirth: type: string phoneNumberTwo: type: string phoneNumberThree: type: string secondaryAddressOne: type: string secondaryAddressTwo: type: string secondaryAddressLga: type: string secondaryAddressState: type: string secondaryAddressCountry: type: string spousesLastName: type: string spousesFirstName: type: string spousesMiddleName: type: string businessInfo: title: BusinessInfo type: object properties: Id: type: string name: type: string type: type: string category: type: string dateOfIncorporation: type: string customerId: type: string branchCode: type: string contactMedium: type: array items: title: ContactMedium type: object properties: addressOne: type: string addressTwo: type: string lga: type: string state: type: string preferred: type: boolean country: type: string guarantorInfo: type: array items: title: GuarantorInfo type: object properties: corporateName: type: string bizID: type: string lastName: type: string firstname: type: string middleName: type: string date: type: string gender: type: string nationalID: type: string passportNo: type: string driversLicence: type: string BVN: type: string otherID: type: string addressOne: type: string addressTwo: type: string lga: type: string state: type: string country: type: string phoneNumber: type: string emailAddress: type: string creditInfo: title: CreditRecord type: object properties: dateOfLoan: type: string creditLimit: type: string availedLimit: type: string outstandingBalance: type: string installmentAmount: type: string currency: type: string daysInArrears: type: string overDueAmount: type: string loanType: type: string loanTenor: type: string repaymentFrequency: type: string lastPaymentDate: type: string lastPaymentAmount: type: string maturityDate: type: string loanClassification: type: string legalChallengeStatus: type: string litigationDate: type: string consentStatus: type: string loanSecurityStatus: type: string collateralType: type: string collateralDetails: type: string previousAccountNumber: type: string previousName: type: string previousCustomerId: type: string previousBranchCode: type: string principalInfo: type: array items: title: PrincipalInfo type: object properties: lastName: type: string firstName: type: string middleName: type: string dateOfBirth: type: string gender: type: string addressOne: type: string addressTwo: type: string lga: type: string state: type: string country: type: string nationalId: type: string driversLicence: type: string BVN: type: string passportNo: type: string phoneNumber: type: string email: type: string designation: type: string loanStatus: type: string guaranteeType: type: string accountNumber: type: string accountStatus: type: string accountStatusDate: type: string taxId: type: string dateOfLoan: type: string creditLimit: type: string availedLimit: type: string outstandingBalance: type: string installmentAmount: type: string currency: type: string daysInArrears: type: string overDueAmount: type: string loanType: type: string loanTenor: type: string repaymentFrequency: type: string lastPaymentDate: type: string lastPaymentAmount: type: string maturityDate: type: string loanClassification: type: string legalChallengeStatus: type: string litigationDate: type: string consentStatus: type: string loanSecurityStatus: type: string collateralType: type: string collateralDetails: type: string previousAccountNumber: type: string previousName: type: string previousCustomerId: type: string previousBranchCode: type: string userId: type: string com_mtn_aggregator_models_response_crc_CreditInfoResponse: title: CreditInfoResponse type: object properties: statusCode: type: string statusMessage: type: string supportMessage: type: string transactionId: type: string timestamp: type: string sequenceNo: type: string APIError: title: APIError required: - statusCode - statusMessage type: object properties: statusCode: type: string description: Error status code statusMessage: type: string description: Human-readable error message supportMessage: type: string description: Technical support message or error code for troubleshooting transactionId: type: string description: Transaction identifier for tracking and correlation sequenceNo: type: string description: Sequence number for request tracking timestamp: type: string description: Error timestamp in ISO 8601 format format: date-time path: type: string description: API endpoint path where the error occurred method: type: string description: HTTP method of the request that caused the error downstreamStatusCode: type: string description: Downstream service error code if applicable description: Generic MADAPI error response structure com_mtn_aggregator_models_request_ContactMedium: title: ContactMedium type: object properties: addressOne: type: string addressTwo: type: string lga: type: string state: type: string preferred: type: boolean securitySchemes: OAuth2: type: oauth2 flows: clientCredentials: tokenUrl: https://api.mtn.com/v1/oauth/access_token scopes: {} Bearer: type: http description: Bearer token received from OAuth2.0 authentication with the MADAPI scheme: bearer bearerFormat: JWT