Emissão de segunda via

stable pré pós

Este endpoint permite que o parceiro Bankly ofereça a seus clientes a possibilidade de emitir uma segunda via do cartão físico ou virtual, caso seja atrelado a um físico, com as mesmas características da primeira via.

🚧

Importante

A primeira via do cartão físico será cancelada automaticamente após a emissão da segunda via.

Requisição (Request)

Requisição HTTP

POST https://api-mtls.sandbox.bankly.com.br/cards/{proxy}/duplicate
--request POST \ 
--url 'https://api-mtls.sandbox.bankly.com.br/cards/{proxy}/duplicate' \ 
--header 'Authorization: Bearer {{Token}}' \ 
--header 'accept: application/json' \ 
--header 'api-version: 1.0' \ 
--header 'content-type: application/json' 
--data '{
      "status": "CardWasStolen",  
      "documentNumber": "47742663023",  
      "password": "1234",  
      "resetPassword": true,
      "description": "Lorem ipsum",     
      "address": {  
            "zipCode": "68060100",  
            "address": "Rua 6 de Março",  
            "number": "2500",  
            "neighborhood": "Alter do Chão",  
            "complement": "",  
            "city": "Santarém",  
            "state": "PA",  
            "country": "BR"  
      },
      "metadata":{
            "updatedAt": "2022-12-30T01:11:07.4019873Z",
            "versao": "1.0"
      }
}'

Autorização

Para garantir a segurança nas requisições, todos os endpoints do Bankly utilizam scopes como parte do seu fluxo de autorização.

Esta requisição requer o scope descrito a seguir:

ScopeDescrição
card.createConcede acesso para emitir um novo cartão.

Cabeçalhos (Headers)

NomeDescrição
api-versionObrigatório. Versão da API. Atualmente estamos na versão 1.0.
AuthorizationObrigatório. Token de autorização do tipo Bearer.

Parâmetros da rota (Path)

No path desta requisição, envie os seguintes campos:

NomeTipoDescrição
proxypathObrigatório. Código identificador do cartão.

Corpo da requisição (Body)

No body, envie os seguintes campos em formato JSON:

NomeTipoDescriçãoEspecificação
statusstringObrigatório. Motivo da solicitação de segunda via.
documentNumberstringObrigatório. Número de documento de CPF ou CNPJ.Informe somente os números.
passwordstringObrigatório. Senha do cartão atual (primeira via) para realizar transações. Importante: este campo pode ser opcional caso o parâmetro que remove essa obrigatoriedade esteja habilitado no programa.Preencha com apenas 4 dígitos, como por exemplo: “4853”.
resetPasswordbooleanIndica se o sistema deve gerar uma nova senha aleatória para o cartão durante a solicitação de segunda via (true) ou se deve manter a senha atual (false). Importante: caso este campo não seja preenchido, será adotado o valor padrão false.
descriptionstringObrigatório. Detalhes do cancelamento com qualquer informação considerada como relevante.
metadataobjectObjeto que deverá conter informações adicionais pertinentes ao contexto, representadas por meio de pares de chave e valor.

📘

Nota

Para que o parceiro possa utilizar o campo resetPassword, é necessário que seja feita uma avaliação pelo time de segurança do Bankly e que o usuário tenha acesso à senha, seja pelo kit enviado, seja pelo endpoint de consulta de senhas.

Caso o cliente não possua um endereço cadastrado, preencha:

NomeTipoDescrição
addressobjectObjeto que deverá conter informações sobre o endereço do titular do cartão onde deve ser realizada a entrega.
address.zipCodestringObrigatório. Código postal do endereço.
address.addressstringObrigatório. Logradouro (nome da rua, avenida etc.).
address.numberstringObrigatório. Número do imóvel.
address.neighborhoodstringObrigatório. Nome do bairro.
address.complementstringComplemento do endereço.
address.citystringObrigatório. Nome da cidade.
address.statestringObrigatório. Nome do estado.
address.countrystringObrigatório. Nome do país.

Entretanto, caso o cliente já possua um endereço cadastrado, o preenchimento do campo address é opcional.

❗️

Atenção

Para evitar problemas na entrega devido à desatualização do endereço cadastrado, recomendamos que o campo address seja preenchido mesmo que o cliente já tenha informado um endereço previamente.

{
      "status": "CardWasStolen",  
      "documentNumber": "47742663023",  
      "password": "1234",  
      "resetPassword": true,
      "description": "Lorem ipsum",     
      "address": {  
            "zipCode": "68060100",  
            "address": "Rua 6 de Março",  
            "number": "2500",  
            "neighborhood": "Alter do Chão",  
            "complement": "",  
            "city": "Santarém",  
            "state": "PA",  
            "country": "BR"  
      },
      "metadata":{
            "updatedAt": "2022-12-30T01:11:07.4019873Z",
            "versao": "1.0"
      }
}

Motivos de solicitação de segunda via do cartão

Após realizar a requisição, o status do cartão antigo será atualizado de acordo com o motivo informado no campo status descrito acima. Os valores correspondentes podem ser visualizados na tabela abaixo:

MotivoDescriçãoStatus que o cartão antigo passará a ter
"LostMyCard"Perda de cartão.LostOrTheftCanceled
"CardWasStolen"Cartão roubado.LostOrTheftCanceled
"CardWasDamaged"Cartão danificado.LostOrTheftCanceled
"CardNotDelivered"Cartão não entregue.StrayedCanceled
"UnrecognizedOnlinePurchase"Cartão não solicitado.UnrecognizedOnlinePurchase

Resposta (Response)

Os status code 202 indica que a solicitação foi aceita e o cartão está sendo criado.

Sendo bem-sucedido, o retorno irá trazer os seguintes campos em formato JSON:

NomeTipoDescrição
proxystringCódigo identificador do cartão.
activateCodestringCódigo atrelado ao cartão no momento de sua emissão.
{ 
  "proxy": "2370021007715002820", 
  "activateCode": "A0DDDC0951D1" 
} 

👍

Dica

Para simular uma requisição nesse endpoint, acesse o API Reference.

Erros

Este endpoint pode retornar alguns erros específicos, conforme a tabela a seguir:

Status CodeCódigoMensagemDescrição
400110Program does not have the informed payment dayO dia de pagamento informado é diferente dos possíveis dias de pagamento cadastrados no programa.
400WRONG_PASSWORD_ATTEMPT_LOCKEDWrong Password Attempt LockedTentativa de senha errada bloqueada.
400DUPLICATE_CARD_AWAIT_BUILDINGDuplicate Card Await BuildingA segunda via do cartão está em construção.
400GET_BANKLYTOKEN_ERRORError while getting Bankly's tokenErro ao obter o token do Bankly.
401No authorization to make the requestSem autorização para realizar a solicitação.
406008Card does not belong to this customer!O cartão informado não pertence a este documento.
406011Invalid password!Senha inválida.
406013Delivery address must be informed when requesting the physical cardO cartão físico necessita de um endereço para entrega.
406101Program disable!O programa informado na criação do cartão está desabilitado.
406102Program undefined!O programa não existe para esta companyKey .
406202Account does not belong to the customer!O número de documento (documentNumber) informado na requisição está incorreto.
406203The account is inactive!Conta inativa.
406DUPLICATE_CARD_NAMECard already exists for the given nameJá existe um cartão com o mesmo nome cadastrado. Não é possível ter dois cartões físicos ativos com o mesmo nome para o mesmo CPF.
409012It is not possible to create new cards as it has reached the limit configured for this programO limite configurável no programa para emissões de cartões por documento foi atingido.
409ANALYSIS_CREDIT_NOTFOUNDCredit analysis not found for document and program informedAnálise de crédito não encontrada para o documento e o programa informado.
409024No duplicate for canceled cardNão é possível gerar uma segunda via de um cartão cancelado.
409025No duplicate for card under constructionNão é possível gerar uma segunda via de um cartão em construção.
503302Client is unavailableO cliente não está disponível.

Recordamos que esta API também poderá retornar erros comuns entre todos os endpoints. Portanto, recomendamos a consulta da documentação de erros, onde é possível encontrar as mensagens comuns em inglês que acompanham os erros 400 (se houver).

Eventos

Caso o parceiro deseje receber mensagens referentes aos eventos relacionados a esse endpoint, é preciso configurar o webhook. Os eventos são:

Nome do eventoDescrição
CARD_WAS_ISSUEDO cartão foi emitido.

Copyright © 2021 Acesso Soluções de Pagamento S.A - Todos os direitos reservados