intermediate
credenciais
cover-genius
slice

Configuracao de Credenciais da Seguradora

Como provisionar, armazenar e rotacionar credenciais de API da Cover Genius e Slice em ambientes Vercel.

Levy Fleets TeamMay 18, 20266 min read

Configuracao de Credenciais da Seguradora

O Levy Cover le credenciais da seguradora em tempo de execucao a partir de variaveis de ambiente. Esta pagina descreve as credenciais que cada seguradora espera, onde defini-las, como rotaciona-las e como verificar se estao corretamente conectadas.

Credenciais de producao sao dinheiro real

As credenciais de producao da Cover Genius vinculam apolices reais e acionam cobrancas reais de premio em cartoes de ciclistas. Sempre faca UAT sandbox primeiro, e nunca cole chaves de producao em ambientes de preview.

Cover Genius (primaria)

Duas variaveis, ambas obrigatorias:

COVER_GENIUS_API_KEY=<do portal Cover Genius>
COVER_GENIUS_PARTNER_ID=<do portal Cover Genius>
  • COVER_GENIUS_API_KEY autentica cada chamada de API. Estilo Bearer.
  • COVER_GENIUS_PARTNER_ID identifica a Levy Fleets para a Cover Genius e e usado para rotear cotacoes para o contrato de distribuidor correto.

Ambos os valores vem do portal de parceiros da Cover Genius. Sandbox e producao tem chaves separadas; nunca compartilhe chaves entre ambientes.

Se qualquer variavel estiver faltando, CoverGeniusClient lanca CarrierNotConfiguredError. Em dev e test, o registro recorre a seguradora mock. Em producao, cotacoes retornam available: false e o cartao opt-in fica oculto.

Slice (fallback Fase 2)

Slice e entregue na Fase 2 como uma seguradora de fallback para jurisdicoes que a Cover Genius nao pode cobrir. Quando ativado, defina:

SLICE_API_KEY=<do portal de parceiros Slice>
SLICE_PARTNER_ID=<do portal de parceiros Slice>

O formato das variaveis corresponde a Cover Genius. A matriz de jurisdicao roteia a seguradora correta por regiao (veja Matriz de Jurisdicao).

Seguradora mock (desenvolvimento e testes)

A seguradora mock nao requer credenciais. E selecionada automaticamente quando NODE_ENV !== 'production' e as credenciais reais da seguradora estao ausentes. Gera IDs de apolice e IDs de sinistro sinteticos para que o caminho de codigo completo possa ser exercido sem atingir uma seguradora real.

Testes podem fixar o registro no cliente mock usando setCarrierRegistryForTests, que esta documentado nos helpers de teste em src/lib/insurance/__tests__/.

Escopo de ambiente Vercel

Defina credenciais em Configuracoes do Projeto Vercel > Variaveis de Ambiente:

AmbienteValor Cover GeniusUsado por
ProducaoChave de API e ID de parceiro de producaofleets.levyelectric.com
PreviewChave de API e ID de parceiro sandboxPreviews de PR, staging
DesenvolvimentoDeixe nao definido; seguradora mock e usadanext dev local

Um redeploy e necessario na primeira vez que voce define as variaveis. Depois disso, rotacionar valores entra em vigor na proxima invocacao (Vercel le vars de ambiente por requisicao).

Segredo de webhook

O segredo de assinatura de webhook da Cover Genius e uma variavel separada:

COVER_GENIUS_WEBHOOK_SECRET=<do portal Cover Genius>

O roteador de webhook usa isso para verificar a assinatura HMAC em cada evento de entrada. Se o segredo estiver faltando, a verificacao de assinatura falha, e eventos caem em insurance_webhook_log com signature_verified = false. Defina isso por ambiente junto com a chave de API.

Rotacao

A Cover Genius suporta rotacao de chave atraves do portal de parceiros. O procedimento de rotacao:

  1. Gere uma nova chave no portal Cover Genius.
  2. Defina o novo valor no Vercel para o ambiente apropriado.
  3. Acione um redeploy (ou espere pelo proximo deploy - as mudancas entram em vigor no proximo cold start).
  4. Confirme que uma nova cotacao e bem-sucedida.
  5. Revogue a chave antiga no portal Cover Genius.

Nao revogue a chave antiga antes que a nova chave seja verificada. A Cover Genius nao pre-prepara credenciais futuras; a unica ordem segura e definir-novo -> verificar -> revogar-antigo.

Verificacao

Apos definir credenciais, verifique a conexao:

  1. De uma sessao autenticada no dashboard, acesse /api/admin/insurance/carriers. Deve listar cover_genius com configured: true.
  2. Acione um desbloqueio sandbox e inspecione a resposta de /api/mobile/insurance/cover/quote. Uma seguradora corretamente configurada retorna pelo menos um nivel com um premio diferente de zero.
  3. Inspecione logs do Vercel para CarrierNotConfiguredError. Qualquer ocorrencia indica um ambiente mal configurado.

O que nunca vai em variaveis de ambiente

  • Percentuais de comissao por subconta. Estes vivem em insurance_offerings e sao editaveis pelo operador.
  • Precos de nivel. Os precos sao determinados pela seguradora e retornados pelo endpoint de cotacao por viagem.
  • PII do ciclista. PII e compartilhada com a seguradora por vinculacao via API, nao armazenada em env.

Os ajustes globais de comissao INSURANCE_LEVY_GROSS_PCT (padrao 25) e INSURANCE_OPERATOR_SHARE_PCT (padrao 50) sao variaveis de ambiente, mas sao valores de politica de comissao, nao segredos - regras de rotacao nao se aplicam.

Em seguida

Uma vez que as credenciais estejam no lugar, veja Ativando Cover Genius para o passo a passo completo de ativacao.


Precisa de ajuda?

Duvidas sobre credenciais da seguradora, contate support@levyelectric.com.