fineract_sdk
Version:
Wrapper around fineract api.
726 lines • 65.1 kB
JavaScript
"use strict";
/* tslint:disable */
/* eslint-disable */
/**
* Apache Fineract
* Apache Fineract is a secure, multi-tenanted microfinance platform The goal of the Apache Fineract API is to empower developers to build apps on top of the Apache Fineract Platform<br>The [reference app](https://cui.fineract.dev) (username: mifos, password: password) works on the same demo tenant as the interactive links in this documentation - The API is organized around [REST](https://en.wikipedia.org/wiki/Representational_state_transfer) - Find out more about Apache Fineract [here](/fineract-provider/api-docs/apiLive.htm#top) - You can [Try The API From Your Browser](/fineract-provider/api-docs/apiLive.htm#interact) - The Generic Options are available [here](/fineract-provider/api-docs/apiLive.htm#genopts) - Find out more about [Updating Dates and Numbers](/fineract-provider/api-docs/apiLive.htm#dates_and_numbers) - For the Authentication and the Basic of HTTP and HTTPS refer [here](/fineract-provider/api-docs/apiLive.htm#authentication_overview) - Check about ERROR codes [here](/fineract-provider/api-docs/apiLive.htm#errors) Please refer to the [old documentation](/fineract-provider/api-docs/apiLive.htm) for any documentation queries
*
* The version of the OpenAPI document: 1.5.0-66-gffae7d4-dirty
* Contact: dev@fineract.apache.org
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __generator = (this && this.__generator) || function (thisArg, body) {
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
function verb(n) { return function (v) { return step([n, v]); }; }
function step(op) {
if (f) throw new TypeError("Generator is already executing.");
while (_) try {
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
if (y = 0, t) op = [op[0] & 2, t.value];
switch (op[0]) {
case 0: case 1: t = op; break;
case 4: _.label++; return { value: op[1], done: false };
case 5: _.label++; y = op[1]; op = [0]; continue;
case 7: op = _.ops.pop(); _.trys.pop(); continue;
default:
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
if (t[2]) _.ops.pop();
_.trys.pop(); continue;
}
op = body.call(thisArg, _);
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
}
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.SelfLoansApi = exports.SelfLoansApiFactory = exports.SelfLoansApiFp = exports.SelfLoansApiAxiosParamCreator = void 0;
var axios_1 = require("axios");
// Some imports not used depending on template conditions
// @ts-ignore
var common_1 = require("../common");
// @ts-ignore
var base_1 = require("../base");
/**
* SelfLoansApi - axios parameter creator
* @export
*/
exports.SelfLoansApiAxiosParamCreator = function (configuration) {
var _this = this;
return {
/**
* Calculate Loan Repayment Schedule: Calculates Loan Repayment Schedule Mandatory Fields: productId, principal, loanTermFrequency, loanTermFrequencyType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, expectedDisbursementDate, transactionProcessingStrategyId Submit a new Loan Application: Mandatory Fields: clientId, productId, principal, loanTermFrequency, loanTermFrequencyType, loanType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, expectedDisbursementDate, submittedOnDate, loanType Additional Mandatory Fields if interest recalculation is enabled for product and Rest frequency not same as repayment period: recalculationRestFrequencyDate Additional Mandatory Fields if interest recalculation with interest/fee compounding is enabled for product and compounding frequency not same as repayment period: recalculationCompoundingFrequencyDate Additional Mandatory Field if Entity-Datatable Check is enabled for the entity of type loan: datatables Optional Fields: graceOnPrincipalPayment, graceOnInterestPayment, graceOnInterestCharged, linkAccountId, allowPartialPeriodInterestCalcualtion, fixedEmiAmount, maxOutstandingLoanBalance, disbursementData, graceOnArrearsAgeing, createStandingInstructionAtDisbursement (requires linkedAccountId if set to true) Showing request/response for \'Submit a new Loan Application\'
* @summary Calculate Loan Repayment Schedule | Submit a new Loan Application
* @param {PostSelfLoansRequest} postSelfLoansRequest
* @param {string} [command] command
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
calculateLoanScheduleOrSubmitLoanApplication1: function (postSelfLoansRequest, command, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
// verify required parameter 'postSelfLoansRequest' is not null or undefined
common_1.assertParamExists('calculateLoanScheduleOrSubmitLoanApplication1', 'postSelfLoansRequest', postSelfLoansRequest);
localVarPath = "/self/loans";
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
if (command !== undefined) {
localVarQueryParameter['command'] = command;
}
localVarHeaderParameter['Content-Type'] = 'application/json';
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
localVarRequestOptions.data = common_1.serializeDataIfNeeded(postSelfLoansRequest, localVarRequestOptions, configuration);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
/**
* Loan application can only be modified when in \'Submitted and pending approval\' state. Once the application is approved, the details cannot be changed using this method.
* @summary Update a Loan Application
* @param {number} loanId loanId
* @param {PutSelfLoansLoanIdRequest} putSelfLoansLoanIdRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
modifyLoanApplication1: function (loanId, putSelfLoansLoanIdRequest, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
// verify required parameter 'loanId' is not null or undefined
common_1.assertParamExists('modifyLoanApplication1', 'loanId', loanId);
// verify required parameter 'putSelfLoansLoanIdRequest' is not null or undefined
common_1.assertParamExists('modifyLoanApplication1', 'putSelfLoansLoanIdRequest', putSelfLoansLoanIdRequest);
localVarPath = "/self/loans/{loanId}"
.replace("{" + "loanId" + "}", encodeURIComponent(String(loanId)));
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'PUT' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
localVarHeaderParameter['Content-Type'] = 'application/json';
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
localVarRequestOptions.data = common_1.serializeDataIfNeeded(putSelfLoansLoanIdRequest, localVarRequestOptions, configuration);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
/**
* Lists loan Charges Example Requests: self/loans/1/charges self/loans/1/charges?fields=name,amountOrPercentage
* @summary List Loan Charges
* @param {number} loanId loanId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveAllLoanCharges1: function (loanId, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
// verify required parameter 'loanId' is not null or undefined
common_1.assertParamExists('retrieveAllLoanCharges1', 'loanId', loanId);
localVarPath = "/self/loans/{loanId}/charges"
.replace("{" + "loanId" + "}", encodeURIComponent(String(loanId)));
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
/**
*
* @param {number} loanId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveGuarantorDetails2: function (loanId, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
// verify required parameter 'loanId' is not null or undefined
common_1.assertParamExists('retrieveGuarantorDetails2', 'loanId', loanId);
localVarPath = "/self/loans/{loanId}/guarantors"
.replace("{" + "loanId" + "}", encodeURIComponent(String(loanId)));
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
/**
* Retrieves a Loan Example Requests: self/loans/1 self/loans/1?fields=id,principal,annualInterestRate self/loans/1?fields=id,principal,annualInterestRate&associations=repaymentSchedule,transactions
* @summary Retrieve a Loan
* @param {number} loanId loanId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveLoan1: function (loanId, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
// verify required parameter 'loanId' is not null or undefined
common_1.assertParamExists('retrieveLoan1', 'loanId', loanId);
localVarPath = "/self/loans/{loanId}"
.replace("{" + "loanId" + "}", encodeURIComponent(String(loanId)));
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
/**
* Retrieves a Loan Charge Example Requests: self/loans/1/charges/1 self/loans/1/charges/1?fields=name,amountOrPercentage
* @summary Retrieve a Loan Charge
* @param {number} loanId loanId
* @param {number} chargeId chargeId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveLoanCharge1: function (loanId, chargeId, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
// verify required parameter 'loanId' is not null or undefined
common_1.assertParamExists('retrieveLoanCharge1', 'loanId', loanId);
// verify required parameter 'chargeId' is not null or undefined
common_1.assertParamExists('retrieveLoanCharge1', 'chargeId', chargeId);
localVarPath = "/self/loans/{loanId}/charges/{chargeId}"
.replace("{" + "loanId" + "}", encodeURIComponent(String(loanId)))
.replace("{" + "chargeId" + "}", encodeURIComponent(String(chargeId)));
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
/**
* Retrieves a Loan Transaction DetailsExample Request: self/loans/5/transactions/3
* @summary Retrieve a Loan Transaction Details
* @param {number} loanId loanId
* @param {number} transactionId transactionId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveTransaction1: function (loanId, transactionId, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
// verify required parameter 'loanId' is not null or undefined
common_1.assertParamExists('retrieveTransaction1', 'loanId', loanId);
// verify required parameter 'transactionId' is not null or undefined
common_1.assertParamExists('retrieveTransaction1', 'transactionId', transactionId);
localVarPath = "/self/loans/{loanId}/transactions/{transactionId}"
.replace("{" + "loanId" + "}", encodeURIComponent(String(loanId)))
.replace("{" + "transactionId" + "}", encodeURIComponent(String(transactionId)));
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
/**
* Applicant Withdraws from Loan Application Mandatory Fields: withdrawnOnDate
* @summary Applicant Withdraws from Loan Application
* @param {number} loanId loanId
* @param {PostSelfLoansLoanIdRequest} postSelfLoansLoanIdRequest
* @param {string} [command] command
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
stateTransitions1: function (loanId, postSelfLoansLoanIdRequest, command, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
// verify required parameter 'loanId' is not null or undefined
common_1.assertParamExists('stateTransitions1', 'loanId', loanId);
// verify required parameter 'postSelfLoansLoanIdRequest' is not null or undefined
common_1.assertParamExists('stateTransitions1', 'postSelfLoansLoanIdRequest', postSelfLoansLoanIdRequest);
localVarPath = "/self/loans/{loanId}"
.replace("{" + "loanId" + "}", encodeURIComponent(String(loanId)));
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'POST' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
if (command !== undefined) {
localVarQueryParameter['command'] = command;
}
localVarHeaderParameter['Content-Type'] = 'application/json';
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
localVarRequestOptions.data = common_1.serializeDataIfNeeded(postSelfLoansLoanIdRequest, localVarRequestOptions, configuration);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
/**
* Retrieves Loan Details Template This is a convenience resource. It can be useful when building maintenance user interface screens for client applications. The template data returned consists of any or all of: Field Defaults Allowed description Lists Example Requests: self/loans/template?templateType=individual&clientId=1 self/loans/template?templateType=individual&clientId=1&productId=1
* @summary Retrieve Loan Details Template
* @param {number} [clientId] clientId
* @param {number} [productId] productId
* @param {string} [templateType] templateType
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
template17: function (clientId, productId, templateType, options) {
if (options === void 0) { options = {}; }
return __awaiter(_this, void 0, void 0, function () {
var localVarPath, localVarUrlObj, baseOptions, localVarRequestOptions, localVarHeaderParameter, localVarQueryParameter, headersFromBaseOptions;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
localVarPath = "/self/loans/template";
localVarUrlObj = new URL(localVarPath, common_1.DUMMY_BASE_URL);
if (configuration) {
baseOptions = configuration.baseOptions;
}
localVarRequestOptions = __assign(__assign({ method: 'GET' }, baseOptions), options);
localVarHeaderParameter = {};
localVarQueryParameter = {};
// authentication basicAuth required
// http basic authentication required
common_1.setBasicAuthToObject(localVarRequestOptions, configuration);
// authentication tenantid required
return [4 /*yield*/, common_1.setApiKeyToObject(localVarHeaderParameter, "fineract-platform-tenantid", configuration)];
case 1:
// authentication tenantid required
_a.sent();
if (clientId !== undefined) {
localVarQueryParameter['clientId'] = clientId;
}
if (productId !== undefined) {
localVarQueryParameter['productId'] = productId;
}
if (templateType !== undefined) {
localVarQueryParameter['templateType'] = templateType;
}
common_1.setSearchParams(localVarUrlObj, localVarQueryParameter, options.query);
headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
localVarRequestOptions.headers = __assign(__assign(__assign({}, localVarHeaderParameter), headersFromBaseOptions), options.headers);
return [2 /*return*/, {
url: common_1.toPathString(localVarUrlObj),
options: localVarRequestOptions,
}];
}
});
});
},
};
};
/**
* SelfLoansApi - functional programming interface
* @export
*/
exports.SelfLoansApiFp = function (configuration) {
var localVarAxiosParamCreator = exports.SelfLoansApiAxiosParamCreator(configuration);
return {
/**
* Calculate Loan Repayment Schedule: Calculates Loan Repayment Schedule Mandatory Fields: productId, principal, loanTermFrequency, loanTermFrequencyType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, expectedDisbursementDate, transactionProcessingStrategyId Submit a new Loan Application: Mandatory Fields: clientId, productId, principal, loanTermFrequency, loanTermFrequencyType, loanType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, expectedDisbursementDate, submittedOnDate, loanType Additional Mandatory Fields if interest recalculation is enabled for product and Rest frequency not same as repayment period: recalculationRestFrequencyDate Additional Mandatory Fields if interest recalculation with interest/fee compounding is enabled for product and compounding frequency not same as repayment period: recalculationCompoundingFrequencyDate Additional Mandatory Field if Entity-Datatable Check is enabled for the entity of type loan: datatables Optional Fields: graceOnPrincipalPayment, graceOnInterestPayment, graceOnInterestCharged, linkAccountId, allowPartialPeriodInterestCalcualtion, fixedEmiAmount, maxOutstandingLoanBalance, disbursementData, graceOnArrearsAgeing, createStandingInstructionAtDisbursement (requires linkedAccountId if set to true) Showing request/response for \'Submit a new Loan Application\'
* @summary Calculate Loan Repayment Schedule | Submit a new Loan Application
* @param {PostSelfLoansRequest} postSelfLoansRequest
* @param {string} [command] command
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
calculateLoanScheduleOrSubmitLoanApplication1: function (postSelfLoansRequest, command, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.calculateLoanScheduleOrSubmitLoanApplication1(postSelfLoansRequest, command, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
/**
* Loan application can only be modified when in \'Submitted and pending approval\' state. Once the application is approved, the details cannot be changed using this method.
* @summary Update a Loan Application
* @param {number} loanId loanId
* @param {PutSelfLoansLoanIdRequest} putSelfLoansLoanIdRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
modifyLoanApplication1: function (loanId, putSelfLoansLoanIdRequest, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.modifyLoanApplication1(loanId, putSelfLoansLoanIdRequest, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
/**
* Lists loan Charges Example Requests: self/loans/1/charges self/loans/1/charges?fields=name,amountOrPercentage
* @summary List Loan Charges
* @param {number} loanId loanId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveAllLoanCharges1: function (loanId, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveAllLoanCharges1(loanId, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
/**
*
* @param {number} loanId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveGuarantorDetails2: function (loanId, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveGuarantorDetails2(loanId, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
/**
* Retrieves a Loan Example Requests: self/loans/1 self/loans/1?fields=id,principal,annualInterestRate self/loans/1?fields=id,principal,annualInterestRate&associations=repaymentSchedule,transactions
* @summary Retrieve a Loan
* @param {number} loanId loanId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveLoan1: function (loanId, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveLoan1(loanId, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
/**
* Retrieves a Loan Charge Example Requests: self/loans/1/charges/1 self/loans/1/charges/1?fields=name,amountOrPercentage
* @summary Retrieve a Loan Charge
* @param {number} loanId loanId
* @param {number} chargeId chargeId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveLoanCharge1: function (loanId, chargeId, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveLoanCharge1(loanId, chargeId, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
/**
* Retrieves a Loan Transaction DetailsExample Request: self/loans/5/transactions/3
* @summary Retrieve a Loan Transaction Details
* @param {number} loanId loanId
* @param {number} transactionId transactionId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveTransaction1: function (loanId, transactionId, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.retrieveTransaction1(loanId, transactionId, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
/**
* Applicant Withdraws from Loan Application Mandatory Fields: withdrawnOnDate
* @summary Applicant Withdraws from Loan Application
* @param {number} loanId loanId
* @param {PostSelfLoansLoanIdRequest} postSelfLoansLoanIdRequest
* @param {string} [command] command
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
stateTransitions1: function (loanId, postSelfLoansLoanIdRequest, command, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.stateTransitions1(loanId, postSelfLoansLoanIdRequest, command, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
/**
* Retrieves Loan Details Template This is a convenience resource. It can be useful when building maintenance user interface screens for client applications. The template data returned consists of any or all of: Field Defaults Allowed description Lists Example Requests: self/loans/template?templateType=individual&clientId=1 self/loans/template?templateType=individual&clientId=1&productId=1
* @summary Retrieve Loan Details Template
* @param {number} [clientId] clientId
* @param {number} [productId] productId
* @param {string} [templateType] templateType
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
template17: function (clientId, productId, templateType, options) {
return __awaiter(this, void 0, void 0, function () {
var localVarAxiosArgs;
return __generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, localVarAxiosParamCreator.template17(clientId, productId, templateType, options)];
case 1:
localVarAxiosArgs = _a.sent();
return [2 /*return*/, common_1.createRequestFunction(localVarAxiosArgs, axios_1.default, base_1.BASE_PATH, configuration)];
}
});
});
},
};
};
/**
* SelfLoansApi - factory interface
* @export
*/
exports.SelfLoansApiFactory = function (configuration, basePath, axios) {
var localVarFp = exports.SelfLoansApiFp(configuration);
return {
/**
* Calculate Loan Repayment Schedule: Calculates Loan Repayment Schedule Mandatory Fields: productId, principal, loanTermFrequency, loanTermFrequencyType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, expectedDisbursementDate, transactionProcessingStrategyId Submit a new Loan Application: Mandatory Fields: clientId, productId, principal, loanTermFrequency, loanTermFrequencyType, loanType, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, expectedDisbursementDate, submittedOnDate, loanType Additional Mandatory Fields if interest recalculation is enabled fo