Credilinq.ai Report API
The Report API from Credilinq.ai — 3 operation(s) for report.
The Report API from Credilinq.ai — 3 operation(s) for report.
openapi: 3.0.0
info:
title: CrediLinq Authentication Report API
description: 'CrediLinq embedded finance API: B2B PayLater and GMV Financing for platforms and marketplaces. Covers Auth0 token generation, merchant onboarding and eligibility, customer and director KYC, credit line and loan (drawdown) management, payments and reconciliation, reporting, and demographic reference data.'
version: '1.0'
contact:
name: CrediLinq Support
email: support@credilinq.ai
url: https://docs.credilinq.ai/
servers:
- url: https://sandbox-api.credilinq.ai
description: Sandbox
- url: https://stage-api.credilinq.ai
description: Staging
- url: https://api.credilinq.ai
description: Production
security:
- access-token: []
tags:
- name: Report
paths:
/v1/reports/partner/partner-report:
get:
operationId: ReportController_getPartnerReport
summary: Get Partner Report
description: ''
parameters:
- name: accept-language
in: header
description: 'Language of the response, supported languages: en-us, in'
schema:
type: string
default: en-us
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/GetPartnerReportDTO'
responses:
'200':
description: Partner's Report Details
content:
application/json:
schema:
$ref: '#/components/schemas/GetPartnerDashboardResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'401':
description: Invalid credentials
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
'403':
description: Forbidden resource
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenResponse'
'404':
description: Requested Data Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/PartnerNotFoundResponse'
'500':
description: Internal Server Error, Some problem is there, please try after sometime
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorResponse'
tags:
- Report
security:
- access-token: []
/v1/reports/customer/{customerReferenceNo}/dashboard:
get:
operationId: ReportController_getClientDashboardData
summary: Get Customer Dashboard
description: ''
parameters:
- name: accept-language
in: header
description: 'Language of the response, supported languages: en-us, in'
schema:
type: string
default: en-us
- name: customerReferenceNo
required: true
in: path
schema:
type: string
responses:
'200':
description: Customer's Dashboard Details
content:
application/json:
schema:
$ref: '#/components/schemas/GetCustomerDashboardResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'401':
description: Invalid credentials
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
'403':
description: Forbidden resource
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenResponse'
'404':
description: Requested Data Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerNotFoundResponse'
'500':
description: Internal Server Error, Some problem is there, please try after sometime
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorResponse'
tags:
- Report
security:
- access-token: []
/v1/reports/credit-history/{customerReferenceNo}:
get:
operationId: ReportController_GetAllCreditHistoryByRefNo
summary: Get Credit History
description: ''
parameters:
- name: accept-language
in: header
description: 'Language of the response, supported languages: en-us, in'
schema:
type: string
default: en-us
- name: customerReferenceNo
required: true
in: path
schema:
type: string
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/GetAllCreditHistoryResponse'
'400':
description: Invalid Request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'401':
description: Invalid credentials
content:
application/json:
schema:
$ref: '#/components/schemas/UnauthorizedResponse'
'403':
description: Forbidden resource
content:
application/json:
schema:
$ref: '#/components/schemas/ForbiddenResponse'
'404':
description: Customer Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/CustomerNotFoundResponse'
'500':
description: Internal Server Error, Some problem is there, please try after sometime
content:
application/json:
schema:
$ref: '#/components/schemas/InternalErrorResponse'
tags:
- Report
security:
- access-token: []
components:
schemas:
ForbiddenResponse:
type: object
properties:
statusCode:
type: number
default: 403
description: The HTTP status code of the error
error:
type: string
default: string
description: Human-readable generic error message
errorCode:
type: string
default: E_FORBIDDEN
description: Computer-readable code for error handling
message:
type: string
default: string
description: Human-readable error message containing all available details about how the error occurred
success:
type: boolean
default: false
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- error
- errorCode
- message
- success
InternalErrorResponse:
type: object
properties:
statusCode:
type: number
default: 500
description: The HTTP status code of the error
error:
type: string
default: string
description: Human-readable generic error message
errorCode:
type: string
default: E_INTERNAL_ERROR
description: Computer-readable code for error handling
message:
type: string
default: string
description: Human-readable error message containing all available details about how the error occurred
success:
type: boolean
default: false
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- error
- errorCode
- message
- success
CustomerSummaryResponse:
type: object
properties:
customerName:
type: string
description: Customer or a Company's Full Name
default: John Doe
customerEmail:
type: string
description: Email address of Customer/company which is used for login to B2B PayLater portal
default: johndoe2@gmail.com
mobileNo:
type: string
description: Company/Customer's Mobile number along with country code
default: '7744559977'
businessRegistrationNo:
type: string
description: Business Registration Number is a company registration number provided by the government agency
default: ''
customerReferenceNo:
type: string
default: string
description: Customer Reference number this will be used to execute all APIs further to activate customer, to create loan and so on
availableCredit:
type: number
default: 10000
description: Customer's available credit limit
approvedCredit:
type: number
default: 15000
description: Customer's approved credit limit
totalOutstandingAmount:
type: number
default: 1500000
description: Total payable outstanding amount by customer
loans:
description: All loans of customer
type: array
items:
$ref: '#/components/schemas/LoanSummaryResponse'
createdAt:
type: string
default: '2025-01-08T05:12:17.406Z'
description: Created Timestamp of the customer in UTC Format eg. 2023-03-30T11:46:42.195Z
updatedAt:
type: string
default: '2025-01-08T05:12:17.406Z'
description: Updated Timestamp of the customer in UTC Format eg. 2023-03-30T11:46:42.195Z
required:
- customerName
- customerEmail
- mobileNo
- businessRegistrationNo
- customerReferenceNo
- availableCredit
- approvedCredit
- totalOutstandingAmount
- loans
- createdAt
- updatedAt
LoanSummaryResponse:
type: object
properties:
loanId:
type: string
default: string
description: Id of the created loan
loanStatus:
type: string
description: "Status of loan\n \n We support these three statuses,\n \n 1. ```pending-for-approval``` - Loan is pending for approval\n \n 2. ```waiting-for-disbursal``` - Loan is pending for disbursal,\n \n 3. ```active``` - Loan is active,\n \n 4. ```rejected``` - Loan is rejected for some reason,\n \n 5. ```closed``` - Loan is paid & closed"
example: active
loanReferenceNo:
type: string
default: BNPL180820235070
description: Loan Reference number
loanType:
type: string
description: "Type of loan\n \n We support these 4 types,\n \n 1. ```BNPL``` - Buyer Financing\n \n 2. ```BNPL_Term``` - Buyer Financing Term Loan\n \n 3. ```GMV``` - Seller Financing\n \n 4. ```GMV_Term``` - Seller Financing Term Loan"
example: BNPL
customerReferenceNo:
type: string
default: ''
description: Customer Reference number, for which loan is created
loanTerm:
type: number
example: 30
description: Duration of the loan. Based on loan terms selected at the cusomer level, The customer for whom loan is being created should be
enum:
- 30
- 45
- 60
- 90
- 120
- 150
- 180
- 210
- 240
- 270
- 300
- 330
- 360
default: 30
loanAmount:
type: number
description: Loan Amount
example: 3500
totalServiceFee:
type: number
description: Total Service fee applied on loan
example: 99.17
totalServiceFeeDue:
type: number
description: Total Service fee Due for loan
example: 99.17
expectedRepaymentAmount:
type: number
description: Total Expected Repayment Amount
default: 3599.17
totalDueAmount:
type: number
description: Total Due amount that is remaining to repay
default: 3599.17
loanDueDate:
type: string
description: Loan Due Date eg. 18 September 2023
default: 18 September 2023
example: 18 September 2023
dueDatePostGracePeriod:
type: string
description: Due date with Grace Period, eg. Loan Due date is 18 September 2023, and grace period is 3 days. so dueDatePostGracePeriod will be 21 September 2023
default: 18 September 2023
example: 21 September 2023
gracePeriodInDays:
type: number
description: Grace Period(In Days), After which loan goes into overdue.
default: 3
example: 3
totalPenaltyDue:
type: number
description: Penalty outstanding that needs to repay
default: 0
example: 0
currency:
type: string
default: SGD
description: Currency Code
requestedDate:
type: string
description: Loan Due Date eg. 18 Aug 2023
default: 18 Aug 2023
example: 18 Aug 2023
repaymentSchedule:
description: Repayment schedule for loan
type: array
items:
$ref: '#/components/schemas/RepaymentScheduleV2Response'
payments:
description: All payments done by customer for the loan
type: array
items:
$ref: '#/components/schemas/LoanPayment'
required:
- loanId
- loanStatus
- loanReferenceNo
- loanType
- customerReferenceNo
- loanTerm
- loanAmount
- totalServiceFee
- totalServiceFeeDue
- expectedRepaymentAmount
- totalDueAmount
- loanDueDate
- dueDatePostGracePeriod
- gracePeriodInDays
- totalPenaltyDue
- currency
- requestedDate
- repaymentSchedule
- payments
LoanPayment:
type: object
properties:
paymentId:
type: string
default: string
description: Id of the payment
paymentDate:
type: string
default: '2025-01-08T05:12:17.404Z'
description: Date of the payment in UTC Format eg. 2023-03-30T11:46:42.195Z
paymentAmount:
type: number
default: 1000
description: Payment Amount
paymentMethod:
type: string
default: 1000
description: Payment Amount
example: Bank Transfer/UEN Payment/QR Code Payment
paymentReferenceNo:
type: string
default: string
description: Payment reference number provided while making payment
accountNumber:
type: string
default: string
description: "Account Number varies based on payment types.\n \n\nSo for bank transfer payment( this field will contain ```bank account number``` & for UEN number payment this will contain ```UEN Number```"
accountName:
type: string
default: string
description: Account Name to which payment has been made.
bankName:
type: string
default: string
description: "Bank Name varies based on payment types.\n \n\nSo for bank transfer payment this field will be present, for rest of the types it will be empty"
bankSwiftCode:
type: string
default: string
description: "Bank Swift Code varies based on payment types.\n \n\nSo for bank transfer payment this field will be present, for rest of the types it will be empty"
paymentStatus:
type: number
default: 2
description: "We have 3 types of payment status codes. \n \n For payment rejected: ```0``` \n \n For payment done, but verification pending: ```1```\n \n For payment done & verified: ```2```"
loanId:
type: string
default: string
description: Loan Id, for which payment has been made.
customerReferenceNo:
type: string
default: string
description: Customer Reference Number, for which payment has been made.
metadata:
type: string
default: string
description: Metadata for payments. It can be used for reporting, reconciliation purpose.
createdAt:
type: string
default: '2025-01-08T05:12:17.405Z'
description: Created Timestamp of the payment in UTC Format eg. 2023-03-30T11:46:42.195Z
updatedAt:
type: string
default: '2025-01-08T05:12:17.405Z'
description: Updated Timestamp of the payment in UTC Format eg. 2023-03-30T11:46:42.195Z
currency:
type: string
default: SGD
description: Currency Code
required:
- paymentId
- paymentDate
- paymentAmount
- paymentMethod
- paymentReferenceNo
- accountNumber
- accountName
- bankName
- bankSwiftCode
- paymentStatus
- loanId
- customerReferenceNo
- metadata
- createdAt
- updatedAt
- currency
GetAllCreditHistoryResponse:
type: object
properties:
statusCode:
type: number
default: 200
description: The HTTP status code of the error
data:
description: Response Data from the operation
type: array
items:
$ref: '#/components/schemas/CreditHistoryResponse'
message:
type: string
default: Success
description: Human-readable message containing all available details about the operation
success:
type: boolean
default: true
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- data
- message
- success
PartnerDashboardResponse:
type: object
properties:
partnerId:
type: string
default: string
description: Id of the partner
mobileNo:
type: string
default: string
description: Mobile No of the partner
companyEmail:
type: string
default: string
description: Email Address of the partner's company
companyName:
type: string
default: string
description: Name of the partner's company
positionWithinCompany:
type: string
default: string
description: Position of the partner in company
customers:
type: array
items:
$ref: '#/components/schemas/CustomerSummaryResponse'
createdAt:
type: string
default: '2025-01-08T05:12:17.426Z'
description: Created Timestamp of the partner in UTC Format eg. 2023-03-30T11:46:42.195Z
updatedAt:
type: string
default: '2025-01-08T05:12:17.426Z'
description: Updated Timestamp of the partner in UTC Format eg. 2023-03-30T11:46:42.195Z
required:
- partnerId
- mobileNo
- companyEmail
- companyName
- positionWithinCompany
- customers
- createdAt
- updatedAt
BadRequestResponse:
type: object
properties:
statusCode:
type: number
default: 400
description: The HTTP status code of the error
error:
type: string
default: string
description: Human-readable generic error message
errorCode:
type: string
default: E_BAD_REQUEST
description: Computer-readable code for error handling
message:
type: string
default: string
description: Human-readable error message containing all available details about how the error occurred
success:
type: boolean
default: false
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- error
- errorCode
- message
- success
CreditHistoryResponse:
type: object
properties:
customerReferenceNo:
type: string
default: string
description: Customer Reference number this will be used to execute all APIs further to activate customer, to create loan and so on
availableCredit:
type: number
default: 10000
description: Customer's available credit limit
approvedCredit:
type: number
default: 15000
description: Customer's approved credit limit
createdAt:
type: string
default: 2023-01-25T05:47:33.215Z01
description: Created Timestamp of the Credit History in UTC Format eg. 2023-03-30T11:46:42.195Z
updatedAt:
type: string
default: 2023-01-25T05:47:33.215Z01
description: Updated Timestamp of the Credit History in UTC Format eg. 2023-03-30T11:46:42.195Z
currency:
type: string
default: SGD
description: Currency Code
required:
- customerReferenceNo
- availableCredit
- approvedCredit
- createdAt
- updatedAt
- currency
RepaymentScheduleV2Response:
type: object
properties:
dueDate:
type: string
description: Loan Due Date eg. 18 September 2023
default: 18 September 2023
example: 18 September 2023
totalDueForPeriod:
type: number
description: Total due payment for current period
example: 3599.17
penaltyDueForPeriod:
type: number
description: Total due penalty for current period
example: 0
totalServiceFeeForPeriod:
type: number
description: Total Service fee for current period
example: 99.17
totalServiceFeeDueForPeriod:
type: number
description: Total Service fee due for current period
example: 99.17
principalDueForPeriod:
type: number
description: Total due principal for current period
example: 3500
dueDatePostGracePeriod:
type: string
description: Due date with grace period eg. 21 September 2023
example: 21 September 2023
paid:
type: boolean
description: indicates that payment is completed or not
example: false
required:
- dueDate
- totalDueForPeriod
- penaltyDueForPeriod
- totalServiceFeeForPeriod
- totalServiceFeeDueForPeriod
- principalDueForPeriod
- dueDatePostGracePeriod
- paid
GetCustomerDashboardResponse:
type: object
properties:
statusCode:
type: number
default: 200
description: The HTTP status code of the error
data:
description: Response Data from the operation
allOf:
- $ref: '#/components/schemas/CustomerSummaryResponse'
message:
type: string
default: Success
description: Human-readable message containing all available details about the operation
success:
type: boolean
default: true
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- data
- message
- success
CustomerNotFoundResponse:
type: object
properties:
statusCode:
type: number
default: 404
description: The HTTP status code of the error
error:
type: string
default: string
description: Human-readable generic error message
errorCode:
type: string
default: E_C_CUSTOMER_NOT_FOUND
description: Computer-readable code for error handling
message:
type: string
default: string
description: Human-readable error message containing all available details about how the error occurred
success:
type: boolean
default: false
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- error
- errorCode
- message
- success
GetPartnerReportDTO:
type: object
properties:
limit:
type: number
example: 7
description: Limit
skip:
type: number
example: 0
description: Skip
sortColumn:
type: string
example: finractDueDate | finractSubmittedOnDate | loanDisbursementDate | loanAmount
description: Sort By Column
enum:
- finractDueDate
- finractSubmittedOnDate
- loanDisbursementDate
- loanAmount
sortDirection:
type: string
example: asc | desc
description: Sorting Direction
actualDisbursementDateLte:
type: string
description: Actual Disbursement Date Less Than or Equal To
example: YYYY-MM-DD
actualDisbursementDateGte:
type: string
description: Actual Disbursement Date Greater Than or Equal To
example: YYYY-MM-DD
loanType:
type: string
description: "\nType of loan.\n \n We support these two types,\n \n 1. ```BNPL``` - Buyer Financing\n \n 2. ```GMV``` - Seller Financing"
enum:
- BNPL
- GMV
- BNPL_Term
- GMV_Term
example: BNPL
clientId:
type: string
description: Client ID
example: 12345678-1234-1234-1234-123467890123
clientIdIn:
description: Client IDs (in array)
example:
- 12345678-1234-1234-1234-123467890123
type: array
items:
type: string
paymentAmountLTE:
type: number
description: Payment Amount Less Than or Equal To
example: 1000
paymentAmountGTE:
type: number
description: Payment Amount Greater Than or Equal To
example: 1000
status:
type: number
description: Status
statusIn:
description: Statuses (in array)
type: array
items:
type: number
PartnerNotFoundResponse:
type: object
properties:
statusCode:
type: number
default: 404
description: The HTTP status code of the error
error:
type: string
default: string
description: Human-readable generic error message
errorCode:
type: string
default: E_P_PARTNER_NOT_FOUND
description: Computer-readable code for error handling
message:
type: string
default: string
description: Human-readable error message containing all available details about how the error occurred
success:
type: boolean
default: false
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- error
- errorCode
- message
- success
GetPartnerDashboardResponse:
type: object
properties:
statusCode:
type: number
default: 200
description: The HTTP status code of the error
data:
description: Response Data from the operation
allOf:
- $ref: '#/components/schemas/PartnerDashboardResponse'
message:
type: string
default: Success
description: Human-readable message containing all available details about the operation
success:
type: boolean
default: true
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- data
- message
- success
UnauthorizedResponse:
type: object
properties:
statusCode:
type: number
default: 401
description: The HTTP status code of the error
error:
type: string
default: string
description: Human-readable generic error message
errorCode:
type: string
default: E_UNAUTHORIZED
description: Computer-readable code for error handling
message:
type: string
default: string
description: Human-readable error message containing all available details about how the error occurred
success:
type: boolean
default: false
description: A boolean indicating whether this was a success response or an error response
required:
- statusCode
- error
- errorCode
- message
- success
securitySchemes:
access-token:
scheme: bearer
bearerFormat: JWT
type: http