Developer Hub • REST API v1.2

A infraestrutura financeira projetada para quem vive de código.

APIs RESTful de baixa latência (< 140ms), chaves isoladas (Sandbox e Produção), idempotência garantida e webhooks criptografados com HMAC SHA-256.

[ ONBOARDING TÉCNICO ]

Integração em 3 Passos Simples

Do primeiro cURL ao processamento em produção em menos de 5 minutos.

01
Autenticação Bearer
02
Primeira Cobrança
03
Webhook HMAC
PASSO 01
BEARER AUTH

Autenticação Bearer

Gere sua chave secreta vk_test_* no Dashboard. Utilize no cabeçalho Authorization: Bearer em todas as chamadas HTTPS.

CABEÇALHO HTTP HTTPS/2
Authorization: Bearer vk_test_9f82a...
PASSO 02
REST ENDPOINT

Crie a Primeira Cobrança

Envie um payload JSON com o método PIX ou CREDIT_CARD e regras de split nativas para o endpoint /api/v1/charges.

DISPARO TRANSAÇÃO 201 Created
POST /api/v1/charges (Pix & Split)
PASSO 03
WEBHOOK CRIPTO

Receba o Webhook HMAC

Cadastre sua URL de listener. Quando o Banco Central liquida o Pix, seu sistema recebe um evento com assinatura criptográfica SHA-256 no header.

ASSINATURA CRIPTOGRÁFICA Verified
event: charge.paid • X-Signature-256
[ SEGURANÇA DE ACESSO ]

Autenticação via Bearer Token

A API Dotfy utiliza chaves de API secretas para autenticar todas as requisições. As chaves são prefixadas com vk_test_ para o ambiente de testes (Sandbox) e vk_live_ para produção real.

Authorization: Bearer vk_live_77a98b0f2c4e1...
POST /api/v1/charges

Cria uma cobrança imediata via Pix Dinâmico ou Cartão de Crédito tokenizado, com suporte nativo a split atômico e subcontas white-label.

Parâmetros do Body (JSON)
Campo Tipo Presença Descrição
amount integer obrigatório Valor da cobrança em centavos (ex: 29700 para R$ 297,00).
paymentMethod string obrigatório Método transacional: PIX ou CREDIT_CARD.
correlationID string obrigatório ID do seu pedido interno para reconciliação automática.
split array<object> opcional Lista de recebedores com recipientId e percentage.
EXEMPLO DE REQUISIÇÃO
{
  "amount": 29700,
  "paymentMethod": "PIX",
  "correlationID": "pedido_88921",
  "customer": {
    "name": "Guilherme Siqueira",
    "email": "guilherme@empresa.com",
    "taxId": "23456789012"
  },
  "split": [
    { "recipientId": "rec_master_88", "percentage": 70 },
    { "recipientId": "rec_coprod_12", "percentage": 30 }
  ]
}
[ SANDBOX INTERATIVO ]

Playground de Teste em Tempo Real

curl -X POST "https://api.dotfy.com.br/api/v1/charges"   -H "Authorization: Bearer vk_test_sandbox_9921"   -H "Content-Type: application/json"   -d '{
    "amount": 29700,
    "paymentMethod": "PIX",
    "correlationID": "pedido_88921"
  }'
[ SEGURANÇA CRIPTOGRÁFICA ]

Assinatura de Webhooks via HMAC SHA-256

Para prevenir ataques de spoofing ou replay, todas as notificações de webhook contêm o cabeçalho X-Dotfy-Signature contendo o hash HMAC-SHA256 do corpo bruto assinado com seu segredo de webhook.

const crypto = require('crypto'); function verifyWebhook(rawBody, signatureHeader, secret) { const hmac = crypto.createHmac('sha256', secret); const digest = hmac.update(rawBody).digest('hex'); return crypto.timingSafeEqual(Buffer.from(digest), Buffer.from(signatureHeader)); }