Get Loan Settings
This endpoint returns loan settings data for the authenticated business customer. Depending on the customer's funding state, the response may include one or more of three distinct models: prequalified offer options, a funding application lead status, and details of active or completed loans.
The response is context-driven — the fields populated in the response reflect where the customer is in the business funding lifecycle, from initial prequalification through funded repayment.
Endpoint
GET /api/loans/loanSettings
Authentication
Bearer token required. Obtain via:
POST https://api.banking.netevia.dev/api/auth/v2
Include in header: Authorization: Bearer {token}
Token lifetime: 10 minutes. Refresh via POST /api/auth/refresh.
When to use
Use this endpoint to render the business funding section of your partner application. It consolidates prequalified offer details, application progress, and active loan status into a single call, allowing you to display the correct view based on where the customer is in the funding lifecycle. This endpoint is intended for business customers only; personal customers do not have access to business funding features.
Response
200 OK
Top-level response fields (loansettingresponse)
| Field | Type | Description |
|---|---|---|
id | integer (int32) | Internal identifier for the loan settings record |
isNotLoan | boolean | When true, suppresses display of prequalified offer information |
exportedLoanServie | string (date-time) | Timestamp of when the loan service record was exported |
options | array of option | Prequalified business funding offer details (model: options) |
signUrl | string | URL for the customer to sign funding documents |
leadId | string | Identifier for the business funding application lead |
loans | array of loan | Active and historical funded loan details (model: loans) |
leadDetails | object (leaddetailsresponse) | Business funding application status (model: leadDetails) |
showLoanSection | boolean | Controls whether the loan section should be shown in the UI |
isDismiss | boolean | Indicates whether the customer has dismissed the funding prompt |
leadCreatedDate | string (date-time) | Date the funding application lead was created |
automatedDismissDate | string (date-time) | Date when the funding prompt will be automatically dismissed |
expiration | string (date-time) | Expiration date of the current prequalified offer |
termOfUse | string | URL or text of the terms of use for the funding product |
offerId | string | Identifier for the current prequalified offer |
privacy | string | URL or text of the privacy policy for the funding product |
Prequalified offer object (options[])
| Field | Type | Description |
|---|---|---|
amount | number (double) | The requested or offered funding amount |
fee | number (double) | Fee charged by the funding provider; may differ significantly in sandbox |
currencyISOCode | string | Currency code for the offer, typically USD |
fundedAmount | number (double) | The actual amount that will be disbursed to the customer |
sweep | number (double) | Percentage of each transaction allocated toward repayment |
expiration | string (date-time) | Expiration date and time of this offer |
isApproved | boolean | Indicates whether this offer has been approved |
daysUntilRepayment | integer (int32) | Number of days until the next repayment is due |
offerId | string | Unique identifier for this specific offer |
daysUntilMaturity | integer (int32) | Number of days until the funding reaches full maturity |
Application status object (leadDetails)
| Field | Type | Description |
|---|---|---|
leadSourceLendingPartnerId | string | Identifier of the lending partner source |
onboardingState | string | Current status of the business funding application; use this to track application progress |
onboardingStateReason | string | Reason for the current onboarding state, if applicable |
organisationDetailsStepComplete | boolean | Whether the organisation details step has been completed |
paymentDataStepComplete | boolean | Whether the payment data step has been completed |
offerStepComplete | boolean | Whether the offer acceptance step has been completed |
kycDocumentsStepComplete | boolean | Whether KYC document submission has been completed |
companyName | string | Legal name of the applying business |
leadType | string | Classification type of the application lead |
signingDetails | object | Document signing details for the application |
signingDetails.eligibleForInstantSigning | boolean | Whether the customer is eligible for instant document signing |
signingDetails.instantSigningDetails.leadId | string | Lead identifier for instant signing |
signingDetails.instantSigningDetails.documentId | string | Document identifier for instant signing |
signingDetails.instantSigningDetails.documentName | string | Name of the document to be signed |
signingDetails.instantSigningDetails.signatoryName | string | Name of the person required to sign |
signingDetails.instantSigningDetails.companyname | string | Company name on the signing document |
owner | string | Owner identifier associated with the lead |
thirdPartyCustomerId | string | External customer identifier used by the funding provider |
signUpDate | string (date-time) | Date the customer signed up for the funding application |
stateUpdated | string (date-time) | Timestamp of the last application state change |
merchantIds | array of string | Merchant identifiers associated with the lead |
additionalInfo.additionalProp | string | Additional metadata associated with the lead |
Active loan object (loans[])
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the loan record |
loanNumber | integer (int32) | Sequential loan number |
borrowerName | string | Name of the borrowing business |
currentAmount | number (double) | Outstanding balance remaining to be repaid |
loanType | string | Type classification of the loan |
status | string | Current status of the loan, from initiation through final repayment |
maturityDate | string (date-time) | Date by which the loan must be fully repaid |
sweep | number (double) | Percentage of each transaction allocated toward repayment |
autoRepaymentSweep | boolean | Whether automatic repayment sweep is enabled |
currencyISOCode | string | Currency code for the loan, typically USD |
currentAmountAtRepay | number (double) | Outstanding balance at the time of repayment action |
currentAmountAtDelete | number (double) | Outstanding balance at the time the loan was deleted |
currentAmountAtWriteOff | number (double) | Outstanding balance at the time the loan was written off |
merchantIds | array of string | Merchant identifiers associated with this loan |
creditRating | string | Credit rating assigned at origination |
fundingDate | string (date-time) | Date the loan was funded and disbursed |
fundedAmount | number (double) | Total amount disbursed to the customer |
originalAmount | number (double) | Initial total repayment amount due at origination |
aheadBehindValue | number (double) | Monetary value indicating if the borrower is ahead or behind on repayment |
aheadBehindPercentage | number (double) | Percentage indicating if the borrower is ahead or behind on repayment |
{
"id": 1042,
"isNotLoan": false,
"exportedLoanServie": "2025-11-15T09:00:00Z",
"options": [
{
"amount": 25000.00,
"fee": 3750.00,
"currencyISOCode": "USD",
"fundedAmount": 25000.00,
"sweep": 10.0,
"expiration": "2025-12-31T23:59:59Z",
"isApproved": true,
"daysUntilRepayment": 30,
"offerId": "offer-a1b2c3d4",
"daysUntilMaturity": 180
}
],
"signUrl": "https://sign.example.com/session/abc123",
"leadId": "lead-xyz789",
"loans": [
{
"id": "loan-00112233",
"loanNumber": 3,
"borrowerName": "Acme Corp LLC",
"currentAmount": 18500.00,
"loanType": "MerchantCashAdvance",
"status": "Active",
"maturityDate": "2026-05-01T00:00:00Z",
"sweep": 10.0,
"autoRepaymentSweep": true,
"currencyISOCode": "USD",
"currentAmountAtRepay": 0.00,
"currentAmountAtDelete": 0.00,
"currentAmountAtWriteOff": 0.00,
"merchantIds": ["merch-001", "merch-002"],
"creditRating": "A",
"fundingDate": "2025-11-01T08:30:00Z",
"fundedAmount": 25000.00,
"originalAmount": 28750.00,
"aheadBehindValue": 500.00,
"aheadBehindPercentage": 1.74
}
],
"leadDetails": {
"leadSourceLendingPartnerId": "partner-0099",
"onboardingState": "OfferAccepted",
"onboardingStateReason": null,
"organisationDetailsStepComplete": true,
"paymentDataStepComplete": true,
"offerStepComplete": true,
"kycDocumentsStepComplete": true,
"companyName": "Acme Corp LLC",
"leadType": "Standard",
"signingDetails": {
"eligibleForInstantSigning": true,
"instantSigningDetails": {
"leadId": "lead-xyz789",
"documentId": "doc-55667788",
"documentName": "Funding Agreement",
"signatoryName": "Jane Smith",
"companyname": "Acme Corp LLC"
}
},
"owner": "owner-44556677",
"thirdPartyCustomerId": "ext-cust-98765",
"signUpDate": "2025-10-20T10:00:00Z",
"stateUpdated": "2025-11-01T08:00:00Z",
"merchantIds": ["merch-001"],
"additionalInfo": {
"additionalProp": "value"
}
},
"showLoanSection": true,
"isDismiss": false,
"leadCreatedDate": "2025-10-20T10:00:00Z",
"automatedDismissDate": "2025-12-20T00:00:00Z",
"expiration": "2025-12-31T23:59:59Z",
"termOfUse": "https://netevia.com/terms",
"offerId": "offer-a1b2c3d4",
"privacy": "https://netevia.com/privacy"
}Error Codes
| Code | When it happens |
|---|---|
| 401 | Token missing, expired, or invalid |
| 403 | Caller is not a business customer or lacks permission to access funding data |
| 500 | Internal server error |
Common Mistakes
- Assuming all response models (
options,leadDetails,loans) will always be populated — each section is conditionally populated based on the customer's funding lifecycle stage. Always check for null or empty arrays before rendering. - Ignoring the
isNotLoanflag — whentrue, the prequalified offer section should not be displayed, even ifoptionsis populated. - Treating
fundedAmountandoriginalAmountin theloansmodel as the same value —fundedAmountis the disbursed amount, whileoriginalAmountis the total repayment due including fees. - Relying on sandbox
feevalues to match production — the documentation explicitly notes that fee amounts may differ significantly between environments. - Displaying the
optionssection without checkingexpiration— prequalified offers expire and should not be shown to customers after the expiration date and time.
Related Endpoints
POST /api/loans/apply— Submit a business funding applicationGET /api/loans/loanDetails/{loanId}— Retrieve detailed information for a specific active loanPOST /api/loans/dismiss— Dismiss the business funding prompt for the authenticated customer
Example
curl -X GET https://api.banking.netevia.dev/api/loans/loanSettings \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json"