위치:
InsPolicyBillingService:generateBillingAccountStatements
이 서비스를 사용하여 기한이 오늘인 청구 계정이 있는 증권을 포함하는 계정에 대한 내역서를 생성합니다.
이 서비스를 직접 호출하지 않는 것이 좋습니다. 청구서 내역서 생성 Vlocity 예약 작업에 의해 호출되도록 생성되었습니다.
방법: generateBillingAccountStatements
작동 방법
-
서비스는 Vlocity Scheduled 작업의 청구 계정 목록을 가져옵니다.
-
계정별로 청구 계정을 그룹화합니다.
-
청구 계정과 연결된 정책을 검색합니다.
-
각 계정에 대한 문을 만듭니다.
-
RecordType__c을Statement로 설정합니다. -
계정의 ID에 대한
AccountId__c를 설정합니다. -
그룹의 첫 번째 청구 계정의
BillDueDate__c값에 대한DueDate__c을 설정합니다. -
StatementDate__c을BillDueDate__c값으로 설정합니다. -
StatementEndDate__c을BillDueDate__c값으로 설정합니다. -
청구 계정의
BillingFrequency__c값에 지정된 가장 먼 날짜로StatementStartDate__c를 설정합니다. -
청구 계정과 연결된 증권의
AutomaticPaymentAmounts__c값 합계에 대한BalanceDue__c을 설정합니다. -
청구 계정과 연결된 증권의 PastDue__c 값 합계에 대한
PreviousBalance__c를 설정합니다.
-
-
특정 내역서와 연결된 모든 정책의 경우 내역서 기간 시작 및 종료 일자 내에
TransactionDate__c가 있는 지정된 정책과 연결된 모든 트랜잭션을 검색합니다.거래에
StatementId__c에 대한 값이 없는 경우StatementId__c를 지정된 내역서의 ID로 설정합니다. -
각 청구 계정:
-
청구 계정과 연결된 증권의
NextPaymentAmountDue__c값 합계에 대한AutomaticPaymentAmount__c을 설정합니다. -
현재
BillDueDate__c및BillingFrequency__c를 기반으로 새BillDueDate__c를 설정합니다.
-
-
특정 청구 계정과 연결된 각 정책의 경우:
-
AutomaticPaymentAmountDue__c을NextPaymentAmountDue__c로 설정합니다. -
청구 계정의 업데이트된
BillDueDate__c에 대한BillDueDate__c을 설정합니다.
-
StatementStartDate__c 계산
계정에 직접 청구하는 증권이 여러 개 있을 수 있습니다. 각 증권은 다른 청구 빈도를 가질 수 있습니다(연간, 분기별, 월별 또는 반달). StatementStartDate__c는 증권의 청구 기한 및 청구 빈도를 사용하여 각 증권의 시작 날짜를 계산합니다. 그런 다음, 가장 이전의 시작 날짜를 선택합니다.
예를 들어 계정에 청구 기한이 '2018-03-31'인 두 가지 증권이 있는 경우 정책 1의 청구 주기는 '매월'이며, 정책 2의 청구 주기는 '분기별'입니다. 청구 기한 및 청구 주기를 사용하면 증권 1의 시작 일자가 '2018-02-28'이고, 증권 2의 시작 일자가 '2018-01-01'입니다. 정책 2의 시작 일자가 시간 경과에 이르기 때문에 StatementStartDate__c는 '2018-01-01'로 설정됩니다.
새 BillDueDate__c 계산
새 BillDueDate__c는 현재 BillDueDate__c 및 BillingFrequency__c를 기반으로 계산됩니다. 다음은 새 BillDueDate__c의 청구 주기 및 계산입니다.
-
매년
현재
BillDueDate__c+ 1년 -
분기별
BillDueDate__c는 4개의 날짜 중 1개일 수 있습니다. 3월 31일, 6월 30일, 9월 30일 또는 12월 31일 순서에서 다음 날짜로BillDueDate__c를 설정합니다. 예를 들어 현재 3월 31일로 설정되어 있는 경우 6월 30일로 설정합니다. -
매월
현재
BillDueDate__c+ 1개월 -
반달
-
현재
BillDueDate__c가 달의 끝인 경우 다음 달의 중간(2월의 경우 14일, 다른 달의 경우 15일)로 설정합니다. -
현재
BillDueDate__c가 월 중순인 경우 월말로 설정합니다.
-
입력 JSON
이 서비스는 Vlocity Scheduled 작업에서 생성된 입력 JSON을 예상합니다. 이 예약된 작업에는 다음 키와 해당 값이 포함됩니다.
-
records: 예약된 작업에서 선택한 청구 계정 목록
{
"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"
}
]
}