Automatic Allocation
Bellow are the journeys, entities, libraries and endpoints related to the incoming payments Automatic Allocation functionality. For incoming Payments Deallocation scroll down or click the link.
-
Entity FTOS_PYMT_Payment with all attributes.
-
Entity FTOS_PYMT_PaymentScheduleItemXPayment with all attributes.
Payment Allocation
From the FTOS_PYMT_PaymentAllocation server side library, the following functions are used for automatic payment allocation:
This function gets the details of the payment to be allocated.
Input parameters: paymentId - The Id of the payment.
Output parameters: payment[0] - Query result containing details of the requested payment .
This function gets the reference values to be applied.
Input parameters:
-
payment- The selected payment. -
processor- The selected processor.
Output parameters: result - Variable containing all references to be applied.
This function gets the invoices that match the specified conditions, passed in the input parameters.
Input parameters:
-
type- The type of payment. -
whereValuesObj- An object with the values of the payment. -
referenceCurrencyId- The Id for the payment currency, extracted from the invoice reference.
Output parameters: result - Query result containing the invoices matching the conditions.
This function gets a list of policies grouped by policy number.
Input parameters: policyNo - The policy number.
Output parameters: result - Query result containing the specified policies.
This function verifies whether the status of a policy is contained into the input parameter policyStatusCheck values.
Input parameters:
-
policy- The selected policy. -
policyStatusCheck- The status of the selected policy.
Output parameters: true/ false .
This function gets the list of all unpaid installments for the specified policy.
Input parameters: policyId - The Id of the policy.
Output parameters: result - Query result containing the unpaid installments for the policy.
This function verifies whether the policy is eligible for automatic allocation.
Input parameters:
-
policyNo- The policy number. -
processor- The selected processor.
Output parameters: true/ false.
This function finds the invoices that comply with the references contained in the processor input parameter.
Input parameters:
-
payment- The selected payment. -
processor- The selected processor.
Output parameters: statementsList - Query result containing a list of invoices.
This function gets details about the requested invoice.
Input parameters: statementId - The Id of the invoice.
Output parameters: statementList[0] - Query result.
This function verifies whether the installment unpaid amount is greater than 0.
Input parameters: statementDetailId - The Id of the invoice detail (only the amount of the payment).
Output parameters: statementDetailList - Query result.
This function gets the invoice details about unpaid installments.
Input parameters:
-
statementId- The Id of the invoice. -
exceptStatementDetailId- The Id of the invoice detail for an unpaid installment.
Output parameters: statementDetailList - The result of the query.
This function gets the list of installments.
Input parameters: statementId - The Id of the invoice.
Output parameters: statementDetailList - The result of the query.
This function gets the type of the default exchange rate.
Input parameters: N/A.
Output parameters: defaultExchangeRateType - The result of the query.
This function gets the Id for the exchange rate.
Input parameters:
-
exchangeType- The exchange type for the payment. -
fromCurrency- -
toCurrency- -
exchangeDate- The exchange date for the payment.
Output parameters: result - The result of the query.
This function carries out the following actions:
-
Generates a
statementPayment- that is a merger between the invoice and the payment made for that invoice. ThestatementPaymentparameter contains thestatementPaymentDetailand thestatementPaymentXPaymentvalues. -
Updates the payment and the invoice amounts.
-
Inserts the allocation on the specified installment.
-
Updates the remaining amounts, if the case.
-
Inserts statement details for the specified statement (invoice).
Input parameters:
-
payment- A payment. -
statement- An invoice. -
amount- The amount of the payment. -
alocatedAmount- The allocated amount. -
exchangeRateId- The Id of the exchange rate. -
statementDetailId- The Id of the invoice detail.
Output parameters: statementPaymentId - The Id of the statementPayment (invoice & payment merger).
This function gets the installment details for the specified installment.
Input parameters: installmentId - The Id of the installment.
Output parameters: fetchInstallmentItemList - Query result.
This function inserts a record into the FTOS_PYMT_PaymentScheduleItemXPayment entity with the status Generated for the references specified in the input parameter.
Input parameters: param
Output parameters: N/A.
This function inserts the invoice details and the FTOS_PYMT_StatementPaymentDetailXPayment record, according to the allocated amount and the installment unpaid amount.
Input parameters:
-
statementDetailList- The list containing the statement details. -
amount- The amount of the payment. -
statementPaymentId- The Id of the statementPayment (invoice & payment merger). -
payment- The selected payment.
Output parameters: N/A.
This function changes the status for the specified statementPayment (invoice & payment merger).
Input parameters:
-
statementPaymentId- The Id of the statementPayment (invoice & payment merger). -
newStatus- The new business status of the installment.
Output parameters: N/A.
This function gets the data about the specified installment.
Input parameters: installmentId - The Id of the installment.
Output parameters: fetchResult[0] / null - The result of the query.
This function gets the code of the specified currency.
Input parameters: currencyId - The Id of the currency.
Output parameters: fetchResult[0].code / null - The result of the query.
This function gets the specified tolerance value.
Input parameters:
-
processor- The selected processor. -
currencyId- The Id of the currency.
Output parameters: result - Tolerance value for the requested currency.
This function gets the type of calculation for the exchange rate.
Input parameters: processor - The selected processor.
Output parameters: exchangeCalculationType - The result of the query.
This function inserts the payment record containing the write-off value.
Input parameters:
-
writeOffAmount- The write-off amount. -
statement- The selected invoice. -
exchangeRateId- The Id of the exchange rate for the selected currency.
Output parameters: paymentId - The Id of the payment.
This function verifies if the invoice is eligible for automatic allocation.
Input parameters: statementId - The Id of the invoice.
Output parameters: true/ false.
This function verifies all the conditions and calls the insertAllocation function.
Input parameters: paymentId - The Id of the payment.
Output parameters: N/A.
Payment Deallocation
Serve side functions used for automatic payment deallocation:
This function deallocates the allocated amount from the invoice and returns it to the payment.
Input parameters:
-
statementId- The Id of the invoice. -
paymentId- The Id of the payment.
Output parameters: N/A.
This function updates the installment paid amount to 0.
Input parameters:
-
installmentId- The Id of the installment. -
statementId- The Id of the invoice. -
paymentId- The Id of the payment.
Output parameters: N/A.
This function gets the exchange rate value for the specified payment.
Input parameters: exchangeRateId - The Id of the exchange rate for the selected currency.
Output parameters: fetchResult[0].a_exchangeRate - The result of the query.
This function gets details about the specified payment.
Input parameters:
-
statementId- The Id of the invoice. -
paymentId- The Id of the payment.
Output parameters: fetchResult - The query result containing details about the requested payment.
This function gets details about the specified write-off payment.
Input parameters:
-
statementId- The Id of the invoice. -
statementNo- The invoice number.
Output parameters: fetchResult - The query result containing details about the requested write-off payment.
This function deletes the afferent installment item allocation record from the FTOS_PYMT_PaymentScheduleItemXPayment entity.
Input parameters: allocationId - The Id of the allocation record.
Output parameters: N/A.
Input parameters:
-
statementId- The Id of the invoice. -
paymentId- The Id of the payment. -
tip-
Output parameters: N/A.
This function
Input parameters:
-
statementId- The Id of the invoice. -
paymentId- The Id of the payment. -
tip
Output parameters: N/A.
This function updates the invoice detail - the line containing the amount of the payment.
Input parameters:
-
statementDetailId- The Id of the invoice detail. -
updateObj- An object containing the details for the update.
Output parameters: N/A.
This function updates invoice to initial values.
Input parameters:
-
statementId- The Id of the invoice. -
amountDeallocateFromStatement- The amount to be deallocated from the invoice.
Output parameters: N/A.
This function updates payment to initial values.
Input parameters:
paymentId - The Id of the payment.
newRemainingPaymentAmount - The remaining amount of the payment.
newAllocatedAmount - The new allocated amount.
Output parameters: N/A.
This function gets a list with invoice details - that is payment amounts.
Input parameters: statementId - The Id of the invoice.
Output parameters: statementDetailList - The result of the query.
This function gets a list with all the payments (from invoice details) to be compared with the data from the payment list.
Input parameters:
statementId - The Id of the statement.
paymentId - The Id of the payment.
Output parameters: statementDetailList - The result of the query.