Você está aqui:
InsurancePolicyTransactionService:reverseTransaction
Use esse serviço para reverter uma transação de apólice de seguro.
Esse serviço cria uma transação Reversal para uma transação de apólice de seguro. Também recria a política com base em um instantâneo da política do momento em que a transação original foi criada.
Classe: InsurancePolicyTransactionService
Método: reverseTransaction
Como funciona
Para reverter uma transação de apólice de seguro, este serviço:
-
Verifica se o
Idde entrada fornecido é uma instância do objetoInsurancePolicyTransaction. -
Recupera o registro de
InsurancePolicyTransactione valida se a transação a ser revertida é:-
A transação mais recente da apólice.
-
Vinculado a uma política ativa (não revertida).
-
Vinculado à versão mais recente da política ativa.
-
Vinculado a um instantâneo de política.
Os registros vinculados a um instantâneo de política têm um anexo chamado
<policyId>_PolicySnapshot. Os instantâneos de política são habilitados para serviços que criam transações, especificamente InsPolicyService:createUpdatePolicy, InsPolicyService:createPolicyVersion, InsPolicyService:cancelPolicy e InsPolicyService:createTransaction. -
Não é uma transação Reversal.
-
-
Cria um registro de transação Reversal com:
-
Valores negativos da transação original.
-
Valores transactionDate e postDate com base nas opções especificadas.
-
Tipo de transação e nome definidos como Reversal.
-
parentTransactionId igual ao ID da transação que está sendo revertida.
-
policyVersionId igual ao ID da política do instantâneo.
-
-
Define o status da política atual e da política de instantâneo como Revertida.
-
Recria a política com base no instantâneo. O serviço:
-
Remove IDs existentes para que novos registros sejam criados ao salvar.
-
Recria agendas de pagamento e receita por meio de exclusão e inserção, preservando a pesquisa original para as transações.
-
-
Solicita que a
InsuranceCommissionDataService.reverseCommissionscrie e salve uma comissão de reversão para a comissão relacionada à transação original.
Contribuições
Entrada |
Descrição |
|---|---|
|
O ID do |
Opções remotas
Todas as opções remotas são opcionais.
Opção remota |
Descrição |
|---|---|
|
Valor atribuído à data da transação da transação de reversão |
|
Data de envio da transação de reversão (padrão: |
|
Pacote do OmniStudio Data Mapper para recuperar os registros de |
|
Classe para recuperar registros de |
|
Pacote do Data Mapper para criar e atualizar registros de |
|
Classe para criar e atualizar registros de |
|
Pacote do Data Mapper para criar e atualizar registros de |
|
Classe para criar e atualizar registros de |
Saída
Saída |
Descrição |
|---|---|
|
ID do registro da transação de reversão. Esse valor corresponde ao |
|
ID do registro da comissão de reversão |
|
Valor da comissão revertida |
JSON de entrada
Veja como formatar o JSON de entrada.
{
"Id": <transaction id>
}Veja como formatar opções.
{
"effectiveDate": <Date>,
"postDate" : <Date>,
"getCustomClassname" : <String>,
"postPolicyCustomClassName" : <String>,
"postTxnCustomClassName" : <String>
}Aqui está um exemplo de entrada.
{
"Id": "0k9R000000003KjIAI"
}Aqui está um exemplo de opções de entrada.
{
"effectiveDate": "4/1/2021",
"postDate" : "4/5/2021",
"getCustomClassname" : "GetPolicyTransactionReversalFields",
"postPolicyCustomClassName" : "PostInsurancePolicy",
"postTxnCustomClassName" : "PostInsurancePolicyTransaction"
}JSON de saída
Este é o formato do JSON de saída.
{
"transactionIdForReversal": <transaction id>,
"reversalCommissionId": <commission id>,
"reversedCommissionAmount": <Decimal>
}Aqui está um exemplo da saída.
{
"transactionIdForReversal": "0k9R000000003KjIAI",
"reversalCommissionId": "0k9R000000003KjIAI",
"reversedCommissionAmount": 123.00
}
