Criação do Pagamento com 3DS
Criar a Order (Checkout) -
Objetivo:
Criar uma cobrança utilizando o 3DS2.
Obs: O que muda para o contrato atual é o envio do novo objeto chamado threeDSecure
Obs: O seller precisa estar com o merchant habilitado para 3DS.
Obs: É importante estar ciente que caso haja necessidade de desafio na transação, ou seja, caso ela retorne pendente, será necessário criar um fluxo assíncrono no checkout.
Ex:
1 - Enviou transação
2 - Retornou pendente
3 - Faz o desafio
4 - Caso desafio seja sucesso, precisa criar um pool de consultar na API de consulta de cobrança, para saber se foi pago. No geral a resposta será rápida após o desafio.
Sugestão: Criar um loading no checkout até a transação retornar PAID.(Considerando os timeouts)
REQUEST
curl --location '<https://sandbox-api.barte.com/v2/orders>' \\
--header 'X-Token-Api: fb67fa58-69dc-4f47-8f49-5444b0c33e0a' \\
--header 'x-idempotency-key: 6b90cf97-a426-49f3-b063-7e55a24afa3e' \\
--header 'Content-Type: application/json' \\
--data-raw '{
"startDate": "2025-04-16",
"value": 130,
"installments": 3,
"urlCallBack": "<https://brave-advertisement-84.webhook.cool>",
"title": "Titulo - Lili oPihAk",
"description": "Robson - Lili xn6avt",
"payment": {
"method": "CREDIT_CARD_EARLY_SELLER",
"card": {
"cardToken": "efde9a25-76f9-4d0a-bfbc-1abbdbd8bc07",
"cvv": "950"
},
"fraudData": {
"internationalDocument": {
"documentNumber": "04909778128",
"documentType": "cpf",
"documentNation": "BR"
},
"name": "Lili - OgCCRq",
"email": "strigus@mock.com",
"phone": "5511999994444",
"billingAddress": {
"country": "BR",
"state": "MG",
"city": "Uberlandia",
"district": "Patrimonio",
"street": "Rua de test",
"zipCode": "38411999",
"number": "S/N",
"complement": "apart 999"
}
}
},
"threeDSecure": {
"dataOnly": false,
"requiresLiabilityShift": false,
"setupId": "e453da0b-b6a1-4c9a-8820-f2da23b3ffb7",
"redirectURL": "<http://localhost:3000/checkout.html>",
"requestorURL": "<http://localhost:3000>",
"browser": {
"ip": "127.0.0.1",
"userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36",
"acceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"language": "pt-BR",
"colorDepth": 24,
"screenHeight": 1080,
"screenWidth": 1920,
"timeZoneOffset": "-180",
"javaEnabled": false,
"javaScriptEnabled": true
},
"billingAddress": {
"city": "Uberlandia",
"country": "BR",
"streetNumber": "0",
"zipCode": "38411999",
"state": "MG",
"street": "Rua de test"
},
"shippingAddress": {
"city": "Uberlandia",
"country": "BR",
"streetNumber": "0",
"zipCode": "38411999",
"state": "MG",
"street": "Rua de test"
},
"cardHolder": {
"email": "teste@teste.com",
"mobilePhone": "24999329393"
}
},
"uuidBuyer": "71d12215-267a-4620-9b17-0715c84d23bd"
}'
RESPONSE
{
"uuid": "4668ab70-39c3-4ab3-8770-995f6333e200",
"status": "SENT",
"title": "Titulo - Lili oPihAk",
"description": "Robson - Lili xn6avt",
"value": 130,
"installments": 3,
"startDate": "2025-04-16",
"payment": "CREDIT_CARD_EARLY_SELLER",
"customer": {
"document": "89259815053",
"type": "CPF",
"documentCountry": "BR",
"name": "Antonio ",
"email": "comprador@email.com",
"phone": "11948256898",
"alternativeEmail": "compradoralt@email.com",
"integrationCustomerId": "91e89dc6-5226-47f3-a8b8-f8a2009c669e"
},
"idempotencyKey": "5e643a79-3b3f-4db9-95a3-a998caf914ff",
"subSellerPaymentResponse": [
{
"subSellerPaymentResponse": [],
"amountForSubSellers": 0
}
],
"charges": [
{
"uuid": "27dccdbb-73a9-4799-93c9-e30e2c71cc75",
"title": "Titulo - Lili oPihAk",
"expirationDate": "2025-04-16",
"value": 130.00,
"paymentMethod": "CREDIT_CARD_EARLY_SELLER",
"status": "SCHEDULED",
"customer": {
"document": "89259815053",
"type": "CPF",
"name": "Antonio ",
"email": "comprador@email.com",
"phone": "11948256898",
"alternativeEmail": "compradoralt@email.com"
}
}
],
"threeDSResponse": {
"dataOnly": false,
"requiresLiabilityShift": false,
"redirectURL": "<http://localhost:3000/checkout.html>",
"browser": {
"ip": "127.0.0.1",
"userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36",
"acceptHeader": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
"language": "pt-BR",
"screenHeight": 1080,
"screenWidth": 1920,
"javaEnabled": false,
"javaScriptEnabled": true
},
"auth": {
"action": "REDIRECT",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI3YTk0ZjZmYy0wMTgwLTRiZTQtOTgzOS1kZTgyNjNmNGQxMWQiLCJpYXQiOjE3NDQ4MTQyMzYsImlzcyI6IjVkZDgzYmYwMGU0MjNkMTQ5OGRjYmFjYSIsImV4cCI6MTc0NDgxNzgzNiwiT3JnVW5pdElkIjoiNjU0NDUzNzkzZDJmNTM1NWE3YjljN2IxIiwiUGF5bG9hZCI6eyJBQ1NVcmwiOiJodHRwczovLzFtZXJjaGFudGFjc3N0YWcuY2FyZGluYWxjb21tZXJjZS5jb20vTWVyY2hhbnRBQ1NXZWIvY3JlcS5qc3AiLCJQYXlsb2FkIjoiZXlKdFpYTnpZV2RsVkhsd1pTSTZJa05TWlhFaUxDSnRaWE56WVdkbFZtVnljMmx2YmlJNklqSXVNaTR3SWl3aWRHaHlaV1ZFVTFObGNuWmxjbFJ5WVc1elNVUWlPaUkxTXpZNU16STFaUzFtT1dFMkxUUTRORGd0T1dObVl5MWtNMlk0WW1JNU56RTNPVGdpTENKaFkzTlVjbUZ1YzBsRUlqb2lOVEpqWmpWbE5ESXRZemcxTVMwME5EYzBMVGc0TmpFdFpEUTRNVFprTWpCa00yWXdJaXdpWTJoaGJHeGxibWRsVjJsdVpHOTNVMmw2WlNJNklqQXlJbjAiLCJUcmFuc2FjdGlvbklkIjoiMWJQeHozWmRLeDJrRVR5ZFIzNDEifSwiT2JqZWN0aWZ5UGF5bG9hZCI6dHJ1ZSwiUmV0dXJuVXJsIjoiaHR0cHM6Ly9hcGkubWFsZ2EuaW8vdjEvY2hhcmdlcy85NjYzNzFhYS00NDQwLTQxNmMtOWEwYS02N2Q0YWEzYzA3NTQvM2RzLWF1dGhvcml6YXRpb24_aGFzaD1vamR5NkRyNll3UzlZM3h4TU9aMmQyY2s2STdOTzMyS1pnM2FOXzRudVdNJmNsaWVudElkPTJhMDY4ZGE1LWUzM2UtNDI1Ni1iYjlkLTI3YjEzNjQ4MzhkOSJ9.L-Ok8s80UWwt0kLWGaMwPOsSBPFQQNkPZsXVKwzO0ks",
"stepUrl": "<https://centinelapistag.cardinalcommerce.com/V2/Cruise/StepUp>"
},
"challenged": true,
"authenticated": false,
"offeredType": "Challenge",
"liabilityShift": false
}
}
⚠️ Campos importantes:
auth.dataOnly
auth.requiresLiabilityShift
authentication3DS.liabilityShift
authentication3DS.auth.stepUrl
eauthentication3DS.auth.token
(para Step Up Challenge)
Atualizado
Isto foi útil?