Autorização com Autenticação (API 3.0)

Após autenticação ser concluída, submete-se ao processo de autorização, enviando os dados de autenticação no modelo de "autenticação externa" (nó ExternalAuthentication ). Este procedimento é válido também para estabelecimentos que realizaram a autenticação fora da Cielo (MPI Externo).

Veja exemplo abaixo, descrito o envio dos dados de autenticação da requisição de autorização da API Cielo 3.0:

Request

{  
   "MerchantOrderId":"2017051002",
   "Customer":
   {  
     (...)
   },
   "Payment":
   {  
     (...)
     "Authenticate":true,
     "ReturnUrl":"http://www.loja.com.br",
     "CreditCard":{  
         "CardNumber":"4000000000001000",
         "Holder":"Nome do Portador",
         "ExpirationDate":"12/2021",
         "SecurityCode":"123",
         "Brand":"Visa",
         "SaveCard":"false"
     },
     "ExternalAuthentication":{
       "Cavv":"AAABB2gHA1B5EFNjWQcDAAAAAAB=",
       "Xid":"Uk5ZanBHcWw2RjRCbEN5dGtiMTB=",
       "Eci":"5",
       "Version":"2",
       "ReferenceID":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6"
     }
   }
}
curl
--request POST "https://apisandbox.cieloecommerce.cielo.com.br/1/sales"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
--header "MerchantKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
--data-binary
--verbose
{  
   "MerchantOrderId":"2017051002",
   "Customer":
   {  
     (...)
   },
   "Payment":
   {  
     (...)
     "Authenticate":true,
     "ReturnUrl":"http://www.loja.com.br",
     "CreditCard":{  
         "CardNumber":"4000000000001000",
         "Holder":"Nome do Portador",
         "ExpirationDate":"12/2021",
         "SecurityCode":"123",
         "Brand":"Visa",
         "SaveCard":"false"
     },
     "ExternalAuthentication":{
       "Cavv":"AAABB2gHA1B5EFNjWQcDAAAAAAB=",
       "Xid":"Uk5ZanBHcWw2RjRCbEN5dGtiMTB=",
       "Eci":"5",
       "Version":"2",
       "ReferenceId":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6"
     }
   }
}
Campo Descrição Tipo/Tamanho Obrigatório
Payment.Authenticate Booleano que define se o comprador será direcionado ao Banco emissor para autenticação do cartão - Sim, para que a autenticação seja realizada é obrigatório enviar como true
Payment.ExternalAuthentication.Cavv Assinatura que é retornada nos cenários de sucesso na autenticação Texto Sim, quando a autenticação foi um sucesso
Payment.ExternalAuthentication.Xid XID retornado no processo de autenticação Texto Sim, quando a versão do 3DS for "1"
Payment.ExternalAuthentication.Eci E-Commerce Indicator retornado no processo de autenticação Numérico [1 posição] Sim
Payment.ExternalAuthentication.Version Versão do 3DS utilizado no processo de autenticação Alfanumérico [1 posição] Sim, quando a versão do 3DS for "2"
Payment.ExternalAuthentication.ReferenceId RequestID retornado no processo de autenticação GUID [36 posições] Sim, quando a versão do 3DS for "2"

Response

Veja mais: https://developercielo.github.io/manual/cielo-ecommerce#resposta

Autorização para transações Data Only (API 3.0)

Após ter sido realizada a etapa de autenticação no modelo data only (enviando o campo bpmpi_auth_notifyonly como true) submete-se ao processo de autorização, enviando os dados de autenticação no modelo de "autenticação externa" (nó ExternalAuthentication ).

Veja exemplo abaixo, descrito o envio dos dados de autenticação da requisição de autorização da API Cielo 3.0:

Request

{  
   "MerchantOrderId":"2017051002",
   "Customer":
   {  
     (...)
   },
   "Payment":
   {  
     (...)
     "Authenticate":false,
     "ReturnUrl":"http://www.loja.com.br",
     "CreditCard":{  
         "CardNumber":"4000000000001000",
         "Holder":"Nome do Portador",
         "ExpirationDate":"12/2021",
         "SecurityCode":"123",
         "Brand":"Visa",
         "SaveCard":"false"
     },
     "ExternalAuthentication":{
       "Eci":"4",
       "ReferenceID":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6",
       "dataonly":true
     }
   }
}
curl
--request POST "https://apisandbox.cieloecommerce.cielo.com.br/1/sales"
--header "Content-Type: application/json"
--header "MerchantId: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
--header "MerchantKey: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
--data-binary
--verbose
{  
   "MerchantOrderId":"2017051002",
   "Customer":
   {  
     (...)
   },
   "Payment":
   {  
     (...)
     "Authenticate":false,
     "ReturnUrl":"http://www.loja.com.br",
     "CreditCard":{  
         "CardNumber":"4000000000001000",
         "Holder":"Nome do Portador",
         "ExpirationDate":"12/2021",
         "SecurityCode":"123",
         "Brand":"Visa",
         "SaveCard":"false"
     },
     "ExternalAuthentication":{
       "Eci":"4",
       "ReferenceID":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6",
       "dataonly":true
     }
   }
}
Campo Descrição Tipo/Tamanho Obrigatório
Payment.Authenticate Booleano que define se o comprador será direcionado ao Banco emissor para autenticação do cartão - Sim, no caso de transação Data Only é obrigatório enviar como false
Payment.ExternalAuthentication.Eci E-Commerce Indicator retornado no processo de autenticação Numérico [1 posição] Sim
Payment.ExternalAuthentication.ReferenceId RequestID retornado no processo de autenticação GUID [36 posições] Sim
Payment.ExternalAuthentication.DataOnly Booleano que define se é uma transação Data Only - Sim, no caso de transação Data Only é obrigatório enviar como true

Response

Veja mais: https://developercielo.github.io/manual/cielo-ecommerce#resposta

Autorização com Autenticação (Webservice 1.5)

Veja exemplo abaixo, descrito o envio dos dados de autenticação da requisição de autorização da API Cielo 1.5.

Request

<?xml version="1.0" encoding="UTF-8"?>
<requisicao-transacao xmlns="http://ecommerce.cbmp.com.br" id="1" versao="1.2.1">
   <dados-ec>
   (...)   
   </dados-ec>
   <dados-portador>
   (...)
   </dados-portador>
   <dados-pedido>
   (...)
   </dados-pedido>
   <forma-pagamento>
   (...)
   </forma-pagamento>
   <autorizar>3</autorizar>
   <capturar>true</capturar>
   <gerar-token>false</gerar-token>
   <dados-autenticacao-mpi-externa>
      <cavv>A901234A5678A0123A567A90120=</cavv>
      <xid>A90123A45678A0123A567A90123</xid>
      <eci>3</eci>
      <versao>1</versao>
      <dstid>3</dstid>
   </dados-autenticacao-mpi-externa>
</requisicao-transacao>
Campo Descrição Tipo/Tamanho Obrigatório
cavv Assinatura que é retornada nos cenários de sucesso na autenticação Texto Sim, quando a autenticação foi um sucesso
xid XID retornado no processo de autenticação Texto Sim, quando a versão do 3DS for "1"
eci E-Commerce Indicator retornado no processo de autenticação Numérico [1 posição] Sim
versao Versão do 3DS utilizado no processo de autenticação Alfanumérico [1 posição] Sim, quando a versão do 3DS for "2"
dstid RequestID retornado no processo de autenticação GUID [36 posições] Sim, quando a versão do 3DS for "2"

Response

Veja mais: https://developercielo.github.io/manual/webservice-1-5#tipos-de-retorno