Passo 1 - Solicitando uma autorização com 3DS 2.0

Endpoint

Método: POST
Endpoint: /api/v2/sellers/{sellerId}/orders/credit-card/three-d-secure/authorize


Descrição

Este endpoint permite autorizar transações com cartão de crédito utilizando o protocolo 3DS 2.0, garantindo maior segurança durante o processo de pagamento.


Path Parameters

ParâmetroDescriçãoTipoObrigatório
sellerIdIdentificador único do vendedor. Representa o vendedor que está criando a transação.stringSim

Request Body

{
   "mode":"DEBIT",
   "notificationUrl":"http://google.com",
   "installments":3,
   "orderReference":"ORDER_001",
   "value":1035, 
   "customer":{
      "birthdate":"1992-02-29",
      "document":"86548443292",
      "name":"John Snow"
   },
  "card":{
      "cvv":"123",
      "holder":{
         "document":"86548443292",
         "name":"John Snow"
      },
      "expiration":{
         "month":"01",
         "year":"2028"
      },
      "brand":"VISA",
      "cardNumber":"4918019199883839"
   },
   "threeDSecure":{
      "ipAddress":"10.0.0.1",
      "onFailure":"CONTINUE",
      "successUrl":"https://meusite.com",
      "userAgent":"Mozilla",
      "device":{
         "screenWidth":500,
         "javaEnabled":true,
         "deviceFingerprint":"",
         "screenHeight":500,
         "timeZoneOffset":3,
         "deviceType3ds":"BROWSER",
         "javascriptEnabled":true,
         "language":"BR",
         "colorDepth":1
      },
      "embedded":true,
      "failureUrl":"https://meusite.com",
      "billing":{
         "address":{
            "zipCode":"88137084",
            "lineTwo":"Sala 101",
            "streetNumber":"38",
            "city":"Palhoça",
            "street":"Rua Jair Hamms",
            "neighborhood":"Pedra Branca",
            "state":"SC"
         },
         "phone":{
            "country":"BRAZIL",
            "number":"988957195",
            "areaCode":"11"
         },
         "email":"[email protected]"
      }
   }
}

Cartões para teste

Utilize os cartões abaixo para simular cenários de testes.

CartãoCenárioModalidade
4918019199883839Transação com desafio (Challenge).DEBIT
4918019160034602Transação sem desafio (Frictionless).DEBIT

⚠️

Atenção

No ambiente de Sandbox (homologação) utilize somente a o valor DEBITno atributo mode.


Campos do JSON - Transações 3DS 2.0


CampoDescriçãoTipoObrigatórioExemplo
customerDados do cliente.objectSim
customer.nameNome do cliente.stringSim"Tony Stark"
customer.documentCPF/CNPJ do cliente.stringSim"51190844001"
customer.birthdateData de nascimento do cliente no formato YYYY-MM-DD.dateNão"2000-01-01"
customer.phoneTelefone do cliente.objectNão
customer.phone.countryCodeCódigo do país.integerSim55
customer.phone.areaCodeCódigo de área do telefone.integerSim11
customer.phone.numberNúmero de telefone.integerSim999991234
customer.emailEmail do cliente.stringNão"[email protected]"
customer.addressEndereço do cliente.objectNão
customer.address.streetLogradouro do endereço.stringSim"Rua Jair Hamms"
customer.address.streetNumberNúmero do endereço.stringSim"38"
customer.address.lineTwoComplemento do endereço.stringNão"Sala 101"
customer.address.neighborhoodBairro do endereço.stringSim"Pedra Branca"
customer.address.cityCidade do endereço.stringSim"Palhoça"
customer.address.stateEstado do endereço (formato ISO 3166-2).stringSim"SC"
customer.address.zipCodeCódigo postal (CEP).stringSim"88137084"
cardDados do cartão de crédito.objectSim
card.cardNumberNúmero do cartão de crédito.stringSim"5448280000000007"
card.cvvCódigo de segurança do cartão.stringNão"123"
card.holderDados do titular do cartão.objectSim
card.holder.nameNome do titular do cartão.stringSim"Tony Stark"
card.holder.documentCPF/CNPJ do titular do cartão.stringNão"51190844001"
card.expirationValidade do cartão.objectSim
card.expiration.monthMês de validade do cartão no formato MM.integerSim1
card.expiration.yearAno de validade do cartão no formato YYYY.integerSim2035
valueValor da cobrança em centavos.integerSim1000
installmentsNúmero de parcelas.integerSim1
orderReferenceReferência externa única para o pedido.stringNão"Order-123456A"
notificationUrlURL que receberá notificações do pedido.stringSim"https://meusite.com.br"
threeDSecureDados relacionados ao protocolo 3DS Secure.objectSim
threeDSecure.deviceInformações do dispositivo do cliente.objectSim
threeDSecure.device.colorDepthProfundidade de cor da tela do dispositivo.integerSim1
threeDSecure.device.deviceType3dsTipo de dispositivo para autenticação 3DS.stringSim"BROWSER"
threeDSecure.device.javaEnabledSe o navegador do cliente suporta Java.booleanSimtrue
threeDSecure.device.javascriptEnabledSe o navegador do cliente suporta JavaScript.booleanSimtrue
threeDSecure.device.languageIdioma do navegador do cliente.stringSim"BR"
threeDSecure.device.screenHeightAltura da tela do dispositivo.integerSim500
threeDSecure.device.screenWidthLargura da tela do dispositivo.integerSim500
threeDSecure.device.timeZoneOffsetDiferença de horas em relação ao UTC.integerSim3
threeDSecure.ipAddressEndereço IPv4 do cliente.stringSim"10.0.0.1"
threeDSecure.onFailureO que fazer em caso de falha no protocolo 3DS.stringSim"CONTINUE"
threeDSecure.billingInformações de cobrança relacionadas ao cliente.objectSim
threeDSecure.billing.addressEndereço de cobrança do cliente.objectSim
threeDSecure.billing.phoneTelefone de cobrança do cliente.objectSim
threeDSecure.billing.emailEmail de cobrança do cliente.stringSim"[email protected]"
threeDSecure.successUrlURL de sucesso após autenticação 3DS.stringSim"https://meusite.com"
threeDSecure.failureUrlURL de falha após autenticação 3DS.stringSim"https://meusite.com"
threeDSecure.userAgentAgente ou navegador do cliente.stringSim"Mozilla"
modeModo de transação (DEBIT ou CREDIT).stringSim"DEBIT"

Response


Http Status

Http StatusDescrição
✅ 201O recurso da cobrança foi criado.
❌ 401Não autorizado. Verifique o token da integração.
❌ 400O request enviado está inválido
❌ 422Não foi possível processar a requisição.

Response Header