U bent hier:
InsPolicyBillingService:generateBillingAccountStatements
Gebruik deze service om afschriften te genereren voor accounts die polissen bevatten met factureringsaccounts die Vervaldatum = vandaag hebben.
Het wordt afgeraden om deze service rechtstreeks aan te roepen. Het is gemaakt om te worden aangeroepen door de geplande taak Factuuraccountafschriften genereren van Vlocity.
Methode: generateBillingAccountStatements
De manier waarop het werkt...
-
De service neemt een lijst van factureringsaccounts op van een geplande taak van Vlocity.
-
Groepeert factureringsaccounts op accounts.
-
Haalt polissen op die zijn gekoppeld aan de Factureringsaccounts.
-
Maakt een verklaring voor elke account:
-
Stelt
RecordType__cin opStatement. -
Stelt
AccountId__cin op de ID van de account. -
Stelt
DueDate__cin op de waarde van hetBillDueDate__cvan de eerste factuuraccount in de groep. -
Stelt
StatementDate__cin op de waarde vanBillDueDate__c. -
Stelt
StatementEndDate__cin op de waarde vanBillDueDate__c. -
Stelt
StatementStartDate__cin op de verste datum terug die is opgegeven door deBillingFrequency__cin de factureringsaccounts. -
Stelt
BalanceDue__cin op de som van deAutomaticPaymentAmounts__cvoor de polissen die zijn gekoppeld aan de factureringsaccounts. -
Stelt
PreviousBalance__cin op de som van de PastDue__c-waarden voor de polissen die zijn gekoppeld aan de factureringsaccounts.
-
-
Haalt voor alle polissen die zijn gekoppeld aan een specifieke verklaring, alle transacties op die zijn gekoppeld aan de opgegeven polissen die een
TransactionDate__chebben binnen de begin- en einddatum van de verklaringsperiode.Als de transactie geen waarde voor de
StatementId__cheeft, stelt u deStatementId__cin op de ID van de opgegeven verklaring. -
Voor elke factuuraccount:
-
Stelt
AutomaticPaymentAmount__cin op de som van deNextPaymentAmountDue__cvoor de polissen die zijn gekoppeld aan de factureringsaccount. -
Stelt de nieuwe
BillDueDate__cin op basis van de huidigeBillDueDate__cenBillingFrequency__c.
-
-
Voor elke polis die is gekoppeld aan een specifieke factuuraccount:
-
Stelt de
AutomaticPaymentAmountDue__cin op deNextPaymentAmountDue__c. -
Stelt
BillDueDate__cin op de bijgewerkteBillDueDate__cvan de factuuraccount.
-
StatementStartDate__c berekenen
Een account kan meerdere polissen hebben met directe facturering. Elke polis kan een andere factureringsfrequentie hebben (jaarlijks, per kwartaal, maandelijks of halfmaandelijks). StatementStartDate__c wordt bepaald aan de hand van de vervaldatum en factureringsfrequentie van de polis om de begindatum van elke polis te berekenen. Vervolgens wordt de begindatum gekozen die het verst terug in de tijd ligt.
Bijvoorbeeld als een account twee polissen heeft, beide met een vervaldatum van de factuur '2018-03-31'. Polis 1 heeft een factureringsfrequentie van 'Maandelijks' en Polis 2 heeft een factureringsfrequentie van 'Kwartaal'. Bij gebruik van de vervaldatum en factureringsfrequentie van de factuur is de begindatum van Polis 1 '2018-02-28' en de begindatum van Polis 2 '2018-01-01'. Aangezien de begindatum van Beleid 2 verder terug in de tijd ligt, wordt StatementStartDate__c ingesteld op '2018-01-01'.
De nieuwe BillDueDate__c berekenen
Een nieuwe BillDueDate__c wordt berekend op basis van de huidige BillDueDate__c en BillingFrequency__c. Dit zijn de factureringsfrequenties en berekeningen voor de nieuwe BillDueDate__c:
-
Jaarlijks
Huidige
BillDueDate__cplus 1 jaar -
Driemaandelijks
BillDueDate__ckan slechts 1 van 4 datums zijn: 31 maart, 30 juni, 30 september of 31 december. StelBillDueDate__cin op de volgende datum in de reeks. Als deze momenteel bijvoorbeeld is ingesteld op 31 maart, stelt u deze in op 30 juni. -
Maandelijks
Huidige
BillDueDate__cplus 1 maand -
Halfmaandelijks
-
Als de huidige
BillDueDate__chet einde van de maand is, stelt u deze in op het midden van de volgende maand (14e als februari, 15e als een andere maand) -
Als de huidige
BillDueDate__chet midden van de maand is, stelt u deze in op het einde van de maand
-
Invoer-JSON
Deze service verwacht een invoer-JSON die wordt gegenereerd door een geplande taak van Vlocity. Deze geplande taak bevat de volgende sleutel en hun waarden:
-
records: Een lijst van factuuraccounts die zijn geselecteerd door de geplande taak
{
"records": [{
"Id": "a3h5A000000Xz7l",
"AccountId": "0015A000025MuenQAC",
"BillDueDate__c": "2018-03-31",
"BillingFrequency__c": "Monthly"
},
{
"Id": "a3h5A000000Xz7m",
"AccountId": "0015A000025MuenQAC"
"BillDueDate__c": "2018-03-31",
"BillingFrequency__c": "Quarterly"
}
]
}