fineract_sdk
Version:
Wrapper around fineract api.
213 lines (212 loc) • 25 kB
TypeScript
/**
* 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.
*/
import { AxiosPromise, AxiosInstance } from 'axios';
import { Configuration } from '../configuration';
import { RequestArgs, BaseAPI } from '../base';
import { GetLoanProductsProductIdResponse } from '../models';
import { GetLoanProductsResponse } from '../models';
import { GetLoanProductsTemplateResponse } from '../models';
import { PostLoanProductsRequest } from '../models';
import { PostLoanProductsResponse } from '../models';
import { PutLoanProductsProductIdRequest } from '../models';
import { PutLoanProductsProductIdResponse } from '../models';
/**
* LoanProductsApi - axios parameter creator
* @export
*/
export declare const LoanProductsApiAxiosParamCreator: (configuration?: Configuration) => {
/**
* Depending of the Accounting Rule (accountingRule) selected, additional fields with details of the appropriate Ledger Account identifiers would need to be passed in. Refer MifosX Accounting Specs Draft for more details regarding the significance of the selected accounting rule Mandatory Fields: name, shortName, currencyCode, digitsAfterDecimal, inMultiplesOf, principal, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, interestRateFrequencyType, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, accountingRule, isInterestRecalculationEnabled, daysInYearType, daysInMonthType Optional Fields: inArrearsTolerance, graceOnPrincipalPayment, graceOnInterestPayment, graceOnInterestCharged, graceOnArrearsAgeing, charges, paymentChannelToFundSourceMappings, feeToIncomeAccountMappings, penaltyToIncomeAccountMappings, includeInBorrowerCycle, useBorrowerCycle,principalVariationsForBorrowerCycle, numberOfRepaymentVariationsForBorrowerCycle, interestRateVariationsForBorrowerCycle, multiDisburseLoan,maxTrancheCount, outstandingLoanBalance,overdueDaysForNPA,holdGuaranteeFunds, principalThresholdForLastInstalment, accountMovesOutOfNPAOnlyOnArrearsCompletion, canDefineInstallmentAmount, installmentAmountInMultiplesOf, allowAttributeOverrides, allowPartialPeriodInterestCalcualtion Additional Mandatory Fields for Cash(2) based accounting: fundSourceAccountId, loanPortfolioAccountId, interestOnLoanAccountId, incomeFromFeeAccountId, incomeFromPenaltyAccountId, writeOffAccountId, transfersInSuspenseAccountId, overpaymentLiabilityAccountId Additional Mandatory Fields for periodic (3) and upfront (4)accrual accounting: fundSourceAccountId, loanPortfolioAccountId, interestOnLoanAccountId, incomeFromFeeAccountId, incomeFromPenaltyAccountId, writeOffAccountId, receivableInterestAccountId, receivableFeeAccountId, receivablePenaltyAccountId, transfersInSuspenseAccountId, overpaymentLiabilityAccountId Additional Mandatory Fields if interest recalculation is enabled(true): interestRecalculationCompoundingMethod, rescheduleStrategyMethod, recalculationRestFrequencyType Additional Optional Fields if interest recalculation is enabled(true): isArrearsBasedOnOriginalSchedule, preClosureInterestCalculationStrategy Additional Optional Fields if interest recalculation is enabled(true) and recalculationRestFrequencyType is not same as repayment period: recalculationRestFrequencyInterval, recalculationRestFrequencyDate Additional Optional Fields if interest recalculation is enabled(true) and interestRecalculationCompoundingMethod is enabled: recalculationCompoundingFrequencyType Additional Optional Fields if interest recalculation is enabled(true) and interestRecalculationCompoundingMethod is enabled and recalculationCompoundingFrequencyType is not same as repayment period: recalculationCompoundingFrequencyInterval, recalculationCompoundingFrequencyDate Additional Mandatory Fields if Hold Guarantee funds is enabled(true): mandatoryGuarantee Additional Optional Fields if Hold Guarantee funds is enabled(true): minimumGuaranteeFromOwnFunds,minimumGuaranteeFromGuarantor
* @summary Create a Loan Product
* @param {PostLoanProductsRequest} postLoanProductsRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createLoanProduct: (postLoanProductsRequest: PostLoanProductsRequest, options?: any) => Promise<RequestArgs>;
/**
* Lists Loan Products Example Requests: loanproducts loanproducts?fields=name,description,interestRateFrequencyType,amortizationType
* @summary List Loan Products
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveAllLoanProducts: (options?: any) => Promise<RequestArgs>;
/**
* Retrieves a Loan Product Example Requests: loanproducts/1 loanproducts/1?template=true loanproducts/1?fields=name,description,numberOfRepayments
* @summary Retrieve a Loan Product
* @param {number} productId productId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveLoanProductDetails: (productId: number, options?: any) => Promise<RequestArgs>;
/**
* 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 Request: loanproducts/template
* @summary Retrieve Loan Product Details Template
* @param {boolean} [isProductMixTemplate] isProductMixTemplate
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveTemplate10: (isProductMixTemplate?: boolean, options?: any) => Promise<RequestArgs>;
/**
* Updates a Loan Product
* @summary Update a Loan Product
* @param {number} productId productId
* @param {PutLoanProductsProductIdRequest} putLoanProductsProductIdRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
updateLoanProduct: (productId: number, putLoanProductsProductIdRequest: PutLoanProductsProductIdRequest, options?: any) => Promise<RequestArgs>;
};
/**
* LoanProductsApi - functional programming interface
* @export
*/
export declare const LoanProductsApiFp: (configuration?: Configuration) => {
/**
* Depending of the Accounting Rule (accountingRule) selected, additional fields with details of the appropriate Ledger Account identifiers would need to be passed in. Refer MifosX Accounting Specs Draft for more details regarding the significance of the selected accounting rule Mandatory Fields: name, shortName, currencyCode, digitsAfterDecimal, inMultiplesOf, principal, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, interestRateFrequencyType, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, accountingRule, isInterestRecalculationEnabled, daysInYearType, daysInMonthType Optional Fields: inArrearsTolerance, graceOnPrincipalPayment, graceOnInterestPayment, graceOnInterestCharged, graceOnArrearsAgeing, charges, paymentChannelToFundSourceMappings, feeToIncomeAccountMappings, penaltyToIncomeAccountMappings, includeInBorrowerCycle, useBorrowerCycle,principalVariationsForBorrowerCycle, numberOfRepaymentVariationsForBorrowerCycle, interestRateVariationsForBorrowerCycle, multiDisburseLoan,maxTrancheCount, outstandingLoanBalance,overdueDaysForNPA,holdGuaranteeFunds, principalThresholdForLastInstalment, accountMovesOutOfNPAOnlyOnArrearsCompletion, canDefineInstallmentAmount, installmentAmountInMultiplesOf, allowAttributeOverrides, allowPartialPeriodInterestCalcualtion Additional Mandatory Fields for Cash(2) based accounting: fundSourceAccountId, loanPortfolioAccountId, interestOnLoanAccountId, incomeFromFeeAccountId, incomeFromPenaltyAccountId, writeOffAccountId, transfersInSuspenseAccountId, overpaymentLiabilityAccountId Additional Mandatory Fields for periodic (3) and upfront (4)accrual accounting: fundSourceAccountId, loanPortfolioAccountId, interestOnLoanAccountId, incomeFromFeeAccountId, incomeFromPenaltyAccountId, writeOffAccountId, receivableInterestAccountId, receivableFeeAccountId, receivablePenaltyAccountId, transfersInSuspenseAccountId, overpaymentLiabilityAccountId Additional Mandatory Fields if interest recalculation is enabled(true): interestRecalculationCompoundingMethod, rescheduleStrategyMethod, recalculationRestFrequencyType Additional Optional Fields if interest recalculation is enabled(true): isArrearsBasedOnOriginalSchedule, preClosureInterestCalculationStrategy Additional Optional Fields if interest recalculation is enabled(true) and recalculationRestFrequencyType is not same as repayment period: recalculationRestFrequencyInterval, recalculationRestFrequencyDate Additional Optional Fields if interest recalculation is enabled(true) and interestRecalculationCompoundingMethod is enabled: recalculationCompoundingFrequencyType Additional Optional Fields if interest recalculation is enabled(true) and interestRecalculationCompoundingMethod is enabled and recalculationCompoundingFrequencyType is not same as repayment period: recalculationCompoundingFrequencyInterval, recalculationCompoundingFrequencyDate Additional Mandatory Fields if Hold Guarantee funds is enabled(true): mandatoryGuarantee Additional Optional Fields if Hold Guarantee funds is enabled(true): minimumGuaranteeFromOwnFunds,minimumGuaranteeFromGuarantor
* @summary Create a Loan Product
* @param {PostLoanProductsRequest} postLoanProductsRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createLoanProduct(postLoanProductsRequest: PostLoanProductsRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PostLoanProductsResponse>>;
/**
* Lists Loan Products Example Requests: loanproducts loanproducts?fields=name,description,interestRateFrequencyType,amortizationType
* @summary List Loan Products
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveAllLoanProducts(options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<Array<GetLoanProductsResponse>>>;
/**
* Retrieves a Loan Product Example Requests: loanproducts/1 loanproducts/1?template=true loanproducts/1?fields=name,description,numberOfRepayments
* @summary Retrieve a Loan Product
* @param {number} productId productId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveLoanProductDetails(productId: number, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetLoanProductsProductIdResponse>>;
/**
* 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 Request: loanproducts/template
* @summary Retrieve Loan Product Details Template
* @param {boolean} [isProductMixTemplate] isProductMixTemplate
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveTemplate10(isProductMixTemplate?: boolean, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<GetLoanProductsTemplateResponse>>;
/**
* Updates a Loan Product
* @summary Update a Loan Product
* @param {number} productId productId
* @param {PutLoanProductsProductIdRequest} putLoanProductsProductIdRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
updateLoanProduct(productId: number, putLoanProductsProductIdRequest: PutLoanProductsProductIdRequest, options?: any): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise<PutLoanProductsProductIdResponse>>;
};
/**
* LoanProductsApi - factory interface
* @export
*/
export declare const LoanProductsApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => {
/**
* Depending of the Accounting Rule (accountingRule) selected, additional fields with details of the appropriate Ledger Account identifiers would need to be passed in. Refer MifosX Accounting Specs Draft for more details regarding the significance of the selected accounting rule Mandatory Fields: name, shortName, currencyCode, digitsAfterDecimal, inMultiplesOf, principal, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, interestRateFrequencyType, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, accountingRule, isInterestRecalculationEnabled, daysInYearType, daysInMonthType Optional Fields: inArrearsTolerance, graceOnPrincipalPayment, graceOnInterestPayment, graceOnInterestCharged, graceOnArrearsAgeing, charges, paymentChannelToFundSourceMappings, feeToIncomeAccountMappings, penaltyToIncomeAccountMappings, includeInBorrowerCycle, useBorrowerCycle,principalVariationsForBorrowerCycle, numberOfRepaymentVariationsForBorrowerCycle, interestRateVariationsForBorrowerCycle, multiDisburseLoan,maxTrancheCount, outstandingLoanBalance,overdueDaysForNPA,holdGuaranteeFunds, principalThresholdForLastInstalment, accountMovesOutOfNPAOnlyOnArrearsCompletion, canDefineInstallmentAmount, installmentAmountInMultiplesOf, allowAttributeOverrides, allowPartialPeriodInterestCalcualtion Additional Mandatory Fields for Cash(2) based accounting: fundSourceAccountId, loanPortfolioAccountId, interestOnLoanAccountId, incomeFromFeeAccountId, incomeFromPenaltyAccountId, writeOffAccountId, transfersInSuspenseAccountId, overpaymentLiabilityAccountId Additional Mandatory Fields for periodic (3) and upfront (4)accrual accounting: fundSourceAccountId, loanPortfolioAccountId, interestOnLoanAccountId, incomeFromFeeAccountId, incomeFromPenaltyAccountId, writeOffAccountId, receivableInterestAccountId, receivableFeeAccountId, receivablePenaltyAccountId, transfersInSuspenseAccountId, overpaymentLiabilityAccountId Additional Mandatory Fields if interest recalculation is enabled(true): interestRecalculationCompoundingMethod, rescheduleStrategyMethod, recalculationRestFrequencyType Additional Optional Fields if interest recalculation is enabled(true): isArrearsBasedOnOriginalSchedule, preClosureInterestCalculationStrategy Additional Optional Fields if interest recalculation is enabled(true) and recalculationRestFrequencyType is not same as repayment period: recalculationRestFrequencyInterval, recalculationRestFrequencyDate Additional Optional Fields if interest recalculation is enabled(true) and interestRecalculationCompoundingMethod is enabled: recalculationCompoundingFrequencyType Additional Optional Fields if interest recalculation is enabled(true) and interestRecalculationCompoundingMethod is enabled and recalculationCompoundingFrequencyType is not same as repayment period: recalculationCompoundingFrequencyInterval, recalculationCompoundingFrequencyDate Additional Mandatory Fields if Hold Guarantee funds is enabled(true): mandatoryGuarantee Additional Optional Fields if Hold Guarantee funds is enabled(true): minimumGuaranteeFromOwnFunds,minimumGuaranteeFromGuarantor
* @summary Create a Loan Product
* @param {PostLoanProductsRequest} postLoanProductsRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
createLoanProduct(postLoanProductsRequest: PostLoanProductsRequest, options?: any): AxiosPromise<PostLoanProductsResponse>;
/**
* Lists Loan Products Example Requests: loanproducts loanproducts?fields=name,description,interestRateFrequencyType,amortizationType
* @summary List Loan Products
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveAllLoanProducts(options?: any): AxiosPromise<Array<GetLoanProductsResponse>>;
/**
* Retrieves a Loan Product Example Requests: loanproducts/1 loanproducts/1?template=true loanproducts/1?fields=name,description,numberOfRepayments
* @summary Retrieve a Loan Product
* @param {number} productId productId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveLoanProductDetails(productId: number, options?: any): AxiosPromise<GetLoanProductsProductIdResponse>;
/**
* 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 Request: loanproducts/template
* @summary Retrieve Loan Product Details Template
* @param {boolean} [isProductMixTemplate] isProductMixTemplate
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
retrieveTemplate10(isProductMixTemplate?: boolean, options?: any): AxiosPromise<GetLoanProductsTemplateResponse>;
/**
* Updates a Loan Product
* @summary Update a Loan Product
* @param {number} productId productId
* @param {PutLoanProductsProductIdRequest} putLoanProductsProductIdRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
updateLoanProduct(productId: number, putLoanProductsProductIdRequest: PutLoanProductsProductIdRequest, options?: any): AxiosPromise<PutLoanProductsProductIdResponse>;
};
/**
* LoanProductsApi - object-oriented interface
* @export
* @class LoanProductsApi
* @extends {BaseAPI}
*/
export declare class LoanProductsApi extends BaseAPI {
/**
* Depending of the Accounting Rule (accountingRule) selected, additional fields with details of the appropriate Ledger Account identifiers would need to be passed in. Refer MifosX Accounting Specs Draft for more details regarding the significance of the selected accounting rule Mandatory Fields: name, shortName, currencyCode, digitsAfterDecimal, inMultiplesOf, principal, numberOfRepayments, repaymentEvery, repaymentFrequencyType, interestRatePerPeriod, interestRateFrequencyType, amortizationType, interestType, interestCalculationPeriodType, transactionProcessingStrategyId, accountingRule, isInterestRecalculationEnabled, daysInYearType, daysInMonthType Optional Fields: inArrearsTolerance, graceOnPrincipalPayment, graceOnInterestPayment, graceOnInterestCharged, graceOnArrearsAgeing, charges, paymentChannelToFundSourceMappings, feeToIncomeAccountMappings, penaltyToIncomeAccountMappings, includeInBorrowerCycle, useBorrowerCycle,principalVariationsForBorrowerCycle, numberOfRepaymentVariationsForBorrowerCycle, interestRateVariationsForBorrowerCycle, multiDisburseLoan,maxTrancheCount, outstandingLoanBalance,overdueDaysForNPA,holdGuaranteeFunds, principalThresholdForLastInstalment, accountMovesOutOfNPAOnlyOnArrearsCompletion, canDefineInstallmentAmount, installmentAmountInMultiplesOf, allowAttributeOverrides, allowPartialPeriodInterestCalcualtion Additional Mandatory Fields for Cash(2) based accounting: fundSourceAccountId, loanPortfolioAccountId, interestOnLoanAccountId, incomeFromFeeAccountId, incomeFromPenaltyAccountId, writeOffAccountId, transfersInSuspenseAccountId, overpaymentLiabilityAccountId Additional Mandatory Fields for periodic (3) and upfront (4)accrual accounting: fundSourceAccountId, loanPortfolioAccountId, interestOnLoanAccountId, incomeFromFeeAccountId, incomeFromPenaltyAccountId, writeOffAccountId, receivableInterestAccountId, receivableFeeAccountId, receivablePenaltyAccountId, transfersInSuspenseAccountId, overpaymentLiabilityAccountId Additional Mandatory Fields if interest recalculation is enabled(true): interestRecalculationCompoundingMethod, rescheduleStrategyMethod, recalculationRestFrequencyType Additional Optional Fields if interest recalculation is enabled(true): isArrearsBasedOnOriginalSchedule, preClosureInterestCalculationStrategy Additional Optional Fields if interest recalculation is enabled(true) and recalculationRestFrequencyType is not same as repayment period: recalculationRestFrequencyInterval, recalculationRestFrequencyDate Additional Optional Fields if interest recalculation is enabled(true) and interestRecalculationCompoundingMethod is enabled: recalculationCompoundingFrequencyType Additional Optional Fields if interest recalculation is enabled(true) and interestRecalculationCompoundingMethod is enabled and recalculationCompoundingFrequencyType is not same as repayment period: recalculationCompoundingFrequencyInterval, recalculationCompoundingFrequencyDate Additional Mandatory Fields if Hold Guarantee funds is enabled(true): mandatoryGuarantee Additional Optional Fields if Hold Guarantee funds is enabled(true): minimumGuaranteeFromOwnFunds,minimumGuaranteeFromGuarantor
* @summary Create a Loan Product
* @param {PostLoanProductsRequest} postLoanProductsRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof LoanProductsApi
*/
createLoanProduct(postLoanProductsRequest: PostLoanProductsRequest, options?: any): Promise<import("axios").AxiosResponse<PostLoanProductsResponse>>;
/**
* Lists Loan Products Example Requests: loanproducts loanproducts?fields=name,description,interestRateFrequencyType,amortizationType
* @summary List Loan Products
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof LoanProductsApi
*/
retrieveAllLoanProducts(options?: any): Promise<import("axios").AxiosResponse<GetLoanProductsResponse[]>>;
/**
* Retrieves a Loan Product Example Requests: loanproducts/1 loanproducts/1?template=true loanproducts/1?fields=name,description,numberOfRepayments
* @summary Retrieve a Loan Product
* @param {number} productId productId
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof LoanProductsApi
*/
retrieveLoanProductDetails(productId: number, options?: any): Promise<import("axios").AxiosResponse<GetLoanProductsProductIdResponse>>;
/**
* 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 Request: loanproducts/template
* @summary Retrieve Loan Product Details Template
* @param {boolean} [isProductMixTemplate] isProductMixTemplate
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof LoanProductsApi
*/
retrieveTemplate10(isProductMixTemplate?: boolean, options?: any): Promise<import("axios").AxiosResponse<GetLoanProductsTemplateResponse>>;
/**
* Updates a Loan Product
* @summary Update a Loan Product
* @param {number} productId productId
* @param {PutLoanProductsProductIdRequest} putLoanProductsProductIdRequest
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof LoanProductsApi
*/
updateLoanProduct(productId: number, putLoanProductsProductIdRequest: PutLoanProductsProductIdRequest, options?: any): Promise<import("axios").AxiosResponse<PutLoanProductsProductIdResponse>>;
}