Autorização para transações Data Only

ℹ️

Confira os exemplos completos de requisição e resposta para cada meio de pagamento:

Após a conclusão da autenticação do portador do cartão no modelo Data Only (com o campo bpmpi_auth_notifyonly como "true"), a loja deve submeter a transação ao processo de autorização, enviando os dados de autenticação no modelo de "autenticação externa" (nó ExternalAuthentication), tanto para 3DS Server interno quanto para 3DS Server externo.

ℹ️

Para as bandeiras Visa e Mastercard, é obrigatório usar a versão 2.2 do protocolo 3DS para autenticação DataOnly.

Veja a seguir um exemplo de requisição de autorização à API E-commerce Cielo.

Requisição Data Only


EnvironmentMétodoEndpoint
Sandboxhttps://apisandbox.cieloecommerce.cielo.com.br/1/sales
Productionhttps://api.cieloecommerce.cielo.com.br/1/sales
{
   "MerchantOrderId":"2017051002",
   "Customer":
   {
     (...)
   },
   "Payment":
   {
     (...)
     "Authenticate":false,
     "CreditCard":{
         "CardNumber":"4000000000001000",
         "Holder":"Nome do Portador",
         "ExpirationDate":"12/2030",
         "SecurityCode":"123",
         "Brand":"Mastercard",
         "SaveCard":"false"
     },
     "ExternalAuthentication":{
       "Eci":"4",
       "ReferenceID":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6",
       "Xid":"Uk5ZanBHcWw2RjRCbEN5dGtiMTB=",
       "Version":"2.2.0",
       "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/2030",
         "SecurityCode":"123",
         "Brand":"Mastercard",
         "SaveCard":"false"
     },
     "ExternalAuthentication":{
       "Eci":"4",
       "ReferenceID":"a24a5d87-b1a1-4aef-a37b-2f30b91274e6",
       "Xid":"Uk5ZanBHcWw2RjRCbEN5dGtiMTB=",
       "Version":"2.2.0",
       "dataonly":true
     }
   }
}

A resposta irá seguir o padrão de uma resposta de transação de crédito ou débito. Confira os detalhes na Referência da API.


CampoDescriçãoTipoTamanhoObrigatório
Payment.AuthenticateDefine se o comprador será direcionado ao emissor para autenticação do cartão.booleano ("true" / "false")-Sim. No caso de transação Data Only, é obrigatório enviar como "false".
Payment.ExternalAuthentication.EciE-Commerce Indicator retornado no processo de autenticação.número1 posiçãoSim.
Payment.ExternalAuthentication.ReferenceIdRequestID retornado no processo de autenticação.
- O ReferenceIdnão é retornado em todas as autenticações.

- O envio é recomendado caso o ReferenceId tenha sido retornado no script.
GUID36 posiçõesNão
Payment.ExternalAuthentication.DataOnlyDefine se é uma transação Data Only.booleano ("true" / "false")-Sim. No caso de transação Data Only, é obrigatório enviar como "true".
Payment.ExternalAuthentication.CavvAssinatura retornada nos cenários de sucesso na autenticação.texto-⚠️Este campo é obrigatório para transações que foram autenticadas pelo emissor ou pela bandeira e nas solicitações de autorizações com Data Only.
Payment.ExternalAuthentication.VersionVersão do 3DS aplicado no processo de autenticação.
Valores possíveis:

- Visa e Mastercard: "2.2.0"
- Elo e Amex: "2.1.0"
texto5Campo obrigatório para transações com autenticação 3DS.