1. Transações
Bestfy API
  • Sobre a Bestfy
    • Comece aqui
  • Webhooks
    • O que é um Webhook?
  • Tokenização
    • O que é Tokenização?
    • Criar token de cartão
      POST
  • Status de transação
    • Status de Pagamento na Bestfy
  • Transações
    • Anotações
      • Criar anotações
      • Listar anotações
      • Buscar anotação
      • Editar anotação
      • Remover anotação
    • Criar transações
      POST
    • Estornar transação
      POST
    • Buscar transação
      GET
    • Listar transações
      GET
    • Atualizar status de rastreio
      PATCH
    • Obter Token 3DS
      GET
    • Obter configurações do 3DS
      GET
  • Links de pagamento
    • Listar links de pagamento
      GET
    • Criar link de pagamento
      POST
    • Buscar link de pagamento
      GET
    • Atualizar link de pagamento
      PUT
    • Ativar ou desativar link de pagamento
      PATCH
    • Excluir link de pagamento
      DELETE
  • Saldo
    • Buscar saldo
      GET
  • API Key
    • Validar API Key
      GET
  1. Transações

Obter configurações do 3DS

GET
https://api.bestfy.io/payment/three-ds-configuration
Use este endpoint para decidir, antes de cobrar, se o checkout precisa rodar a autenticação 3DS no navegador do comprador. A resposta traz a política que o POST /payment aplica à sua empresa: se o 3DS está ligado, o valor mínimo a partir do qual ele é exigido e qual SDK carregar.
A autenticação é feita pelo mesmo header x-api-key usado em POST /payment.

Quando chamar#

A resposta só muda quando a Bestfy altera a política de risco da sua empresa. Chame uma vez ao carregar o checkout e reaproveite o resultado em todas as tentativas de pagamento daquela sessão.
Diferente do GET /payment/tds-token, este endpoint não gera token no autenticador. Pode ser chamado mesmo quando o 3DS está desligado.

Resposta#

{
  "threeDsEnabled": true,
  "threeDsMinAmountInCents": 5000,
  "threeDsProvider": "STONE"
}
CampoTipoDescrição
threeDsEnabledbooleantrue quando o pagamento com cartão da sua empresa exige 3DS.
threeDsMinAmountInCentsnumber | nullValor mínimo, em centavos, a partir do qual o 3DS é eabled: true` significa que o 3DS é exigido em qualquer valor.
threeDsProvider"STONE" | "BRASPAG" | nullSDK que deve ser carregado no navegador.
Com o 3DS desligado, a resposta é sempre:
{
  "threeDsEnabled": false,
  "threeDsMinAmountInCents": null,
  "threeDsProvider": null
}

Como decidir se roda o 3DS#

Rode a autenticação quando:
threeDsEnabled && (threeDsMinAmountInCents === null || valorTotal >= threeDsMinAmountInCents)
valorTotal é o total cobrado no POST /payment, em centavos.
Quando a regra for verdadeira:
1.
Gere o token em GET /payment/tds-token.
2.
Rode o SDK do provedor indicado em threeDsProvider.
3.
Envie o resultado em creditCard.threeDsAuthentication no POST /payment.
Se o pagamento exigir 3DS e chegar sem a autenticação, o POST /payment responde 400 com COMPANY_E028.
O pagamento com creditCardToken (cartão já salvo) nunca exige 3DS.

Erros comuns#

CódigoMotivo
401API key ausente ou inválida
403API key revogada
404COMPANY_E002: a empresa da API key não existe mais

Request

Header Params

Responses

🟢200Política de 3DS da empresa
application/json
Bodyapplication/json

🟠404Empresa não encontrada
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api.bestfy.io/payment/three-ds-configuration' \
--header 'User-Agent: <nome-do-projeto>' \
--header 'x-api-key: <api-key>' \
--header 'x-end-user-ip: <ip-do-usuário>' \
--header 'Content-Type: application/json'
Response Response Example
200 - 3DS habilitado
{
    "threeDsEnabled": true,
    "threeDsMinAmountInCents": 5000,
    "threeDsProvider": "STONE"
}
Modified at 2026-10-08 17:50:23
Previous
Obter Token 3DS
Next
Listar links de pagamento
Built with