Menu
Documentation
Documentation /JWT assinado (RS256)
API reference Producao Sandbox mTLS + JWT

JWT assinado (RS256)

Primeira etapa obrigatoria para consumir a API em producao e sandbox

Mesmo contrato

Sandbox e producao seguem a mesma referencia funcional para integracao.

Credencial separada

Cada ambiente exige token e certificado emitidos especificamente para ele.

Leitura operacional

Consulte autenticacao, seguranca e fluxos de accounts sem trocar de referencia.

JWT assinado (RS256)

Toda chamada protegida da API deve enviar um token no header Authorization: Bearer <token>.

Resumo do fluxo

  1. Carregar a chave privada.
  2. Montar o payload com as claims obrigatorias.
  3. Assinar com algoritmo RS256.
  4. Enviar o token nas requisicoes.

Exemplo oficial (baseado em auth/gerarjwt.js)

const jwt = require('jsonwebtoken')
const fs = require('fs')

const privateKey = fs.readFileSync('../certs/1.key', 'utf8')

const payload = {
  'pixland:username': '3d915663-83f3-48d0-ba9d-ac3b933fb60b',
  sub: '3d915663-83f3-48d0-ba9d-ac3b933fb60b',
  aud: 'https://auth.pixland.com.br/auth/connect',
  environment: 'PRODUCTION',
  scope: ['pix:dict', 'pix:send'],
  iat: Math.floor(Date.now() / 1000),
  exp: Math.floor(Date.now() / 1000) + (60 * 60 * 72),
}

const token = jwt.sign(payload, privateKey, { algorithm: 'RS256' })
console.log(token)

Claims importantes

  • pixland:username: identificador da identidade de integracao.
  • sub: sujeito do token (normalmente o mesmo id).
  • aud: audiencia esperada pelo servico de autenticacao.
  • environment: ambiente esperado pela integracao (PRODUCTION ou SANDBOX).
  • scope: permissoes concedidas para a sessao.
  • iat: momento de emissao.
  • exp: expiracao do token.

Regra por ambiente

  • Em producao, use token e certificado PRODUCTION.
  • Em sandbox, use token e certificado SANDBOX.
  • Nao reutilize certificado sandbox em producao.
  • Nao reutilize certificado de producao em sandbox.
  • O certificado precisa pertencer ao mesmo usuario e a mesma fintech representados no token.

Header HTTP

Authorization: Bearer <JWT_ASSINADO_RS256>

Boas praticas

  • Nunca expor a chave privada no frontend.
  • Assinar somente em backend/ambiente seguro.
  • Usar expiracao curta em operacoes criticas.
  • Rotacionar chaves periodicamente.