Template de Webhooks

O produto cel_card faz o gerenciamento das seguintes entidades e webhooks:

EntidadeMensagem
account-createdCadastro da Conta para emissão de cartões
card-createdCartão emitido para uma conta
network-authorizationStatus de uma autorização de transação.
card-in-transitStatus do rastreio de um cartão físico.

Templates

Quando as informações de um cliente são inseridas no nosso ambiente no processo de onboarding, realizamos todos os processos internos para a emissão de cartões.

Quando uma conta é criada com sucesso disparamos o seguinte webhook na entidade account-created:

{
    	"accountId":78, 
    	"baasAccountId":"300001223332",
      "programId":16,
    	"accountType":"PHYSICAL",
    	"currencyCode":"986",
      "accountStatusId":9,
      "createdAt":"2024-08-07 00:00:00"
}

Significado dos objetos enviados no webhook

ObjetoTipoSignificado do Objeto
accountIdintId único gerado para a conta
baasAccountIdstringNúmero da conta no Baas
programIdintId do programa utilizado para criação desta conta
accountTypestring(10)Tipo da conta: PHYSICAL ou VIRTUAL. Por padrão toda as contas são criadas como PHYSICAL.
currencyCodestring(3)Indica qual moeda vai ser utilizada para transações nesta conta
accountStatusIdintindica em que status a conta se encontra
createdAtdatetimeData e hora da criação da conta

Quando um cartão é emitido corretamente disparamos o seguinte webhook na entidade card-created:

{
    	"clientRequestId":20,
    	"clientDocument":"33999999999",
    	"cardId":65,
			"cardHash":"CdOhJpw0OFWEpgj1+IZ5FkPCAnvKlPu9nIKmuaJ1ug8bkjb1cAD0s9xe7Ib1w/wgB9cE5ygmOzmiFWEgja47lw==",
    	"operationType":"issue_card"
}

Significado dos objetos enviados no webhook

ObjetoTipoSignificado do Objeto
clientDocumentstringDocumento do cliente (CPF ou CNPJ)
cardIdintId gerado automaticamente para identificação do cartão
cardHashstring (100)Hash de criptografia do cartão
operationTypestring (20)issue_card indica emissão do cartão, reissue_card indica que é a remissão do cartão

Quando uma autorização for solicitada ao cartão, disparamos o seguinte webhook:

Exemplo de autorização de transação aprovada.

{
  "accountId": 51,
  "cardId": 224,
  "authorizationCode": "ZYD001",
  "amount": "0",
  "currencyCode": "900",
  "merchantCity": "SAO PAULO",
  "cardNotPresent": false,
  "type": "PURCHASE",
  "status": "APPROVED",
  "internationalAuthorization": false,
  "dateTimeAuthorization": "2024-10-16T15:28:17",
  "entity": "network-authorization",
  "webhookId": "ab0cae4df54d04b7b8b66ecaa1943477d"
}

Exemplo de autorização de transação negada.

{
  "accountId": 51,
  "cardId": 224,
  "authorizationCode": "ZYD001",
  "amount": "0",
  "currencyCode": "900",
  "merchantCity": "SAO PAULO",
  "cardNotPresent": false,
  "type": "CANCELLATION",
  "status": "APPROVED",
  "internationalAuthorization": false,
  "dateTimeAuthorization": "2024-10-16T15:28:17",
  "entity": "network-authorization",
  "webhookId": "7a0fb46754a348548a614a41fe6889a8"
}

Significado dos objetos enviados no webhook

ObjetoTipoSignificado do Objeto
account_idintIndica o id da conta que houve a autorização.
card_idintindica o id cartão que houve a autorização.
authorizationCodestringCódigo identificador da autorização.
amountintValor total da autorização.
currencyCodestring(3)Moeda na qual a autorização foi realizada.
merchantCitystringCidade em que a autorização foi realizada. - Informação controlada pela bandeira, não sendo obrigatório o envio na autorização.
cardNotPresentbooleanIndica que se a transação foi realizada através do preenchimento dos dados do cartão.
typestringTipo da transação (exemplo: PURCHASE, CANCELLATION, INSTALLMENT WITHOUT INTEREST)
statusstringIndica se a autorização foi aprovada ou negada.
internationalAuthorizationbooleanIndica se é autorização de transação internacional.
dateTimeAuthorizationdatetimeData e hora da solicitação da autorização.
entitystringEntidade do webhook.
webhookIdstringCódigo identificador do webhook enviado.