Pular para o conteúdo principal
POST
https://api.owem.com.br
/
v4
/
i
/
pix
/
in
/
dynamic-qrcode
Gerar QRCode Dinâmico
curl --request POST \
  --url https://api.owem.com.br/v4/i/pix/in/dynamic-qrcode \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "accountId": "<string>",
  "userId": "<string>",
  "amount": 123,
  "description": "<string>",
  "expirationSeconds": 123,
  "payerName": "<string>",
  "payerCpfCnpj": "<string>",
  "externalId": "<string>",
  "metadata": {},
  "sameDocument": "<string>"
}
'
{
  "requestId": "a9d2f14e-31bc-4d52-9b98-04d92f19fa64",
  "success": true,
  "size": 1,
  "data": {
    "txId": "7c4f3a2d8e1248a6b9c71f45e2",
    "dueDate": "2025-12-25T18:35:22.317Z",
    "emv": "00020101021226840014br.gov.bcb.pix2562qrcode.owem.com.br/pix/32fe91a1-4e62-4d8a-9f1e-5c9d2f61a77b5204000053039865802BR5908JOAOSILVA6008SAOPAULO62070503***63041A2B"
  }
}

Finalidade

Cria uma cobrança PIX IN com payload EMV (copia-e-cola) e retorna o txId. O txId é o identificador único da cobrança e corresponde ao entryId no Ledger.

Autenticação

Authorization
string
obrigatório
Basic Auth obrigatório no formato: Basic {Base64(API_KEY:API_SECRET)}

Request Body

accountId
string
obrigatório
Conta emissora da cobrança (12 dígitos)
userId
string
obsoleto
Deprecado. Será removido em versões futuras. O usuário é identificado automaticamente pela API Key.
amount
number
obrigatório
Valor em BRL (> 0, duas casas decimais)
description
string
Descrição livre da cobrança
expirationSeconds
number
padrão:"86400"
Expiração em segundos. Padrão: 86400 (24 horas)
payerName
string
obsoleto
Deprecado. Nome do pagador. Será removido em versões futuras.
payerCpfCnpj
string
obsoleto
Deprecado. CPF/CNPJ do pagador. Será removido em versões futuras.
externalId
string
Identificador externo do seu sistema para correlacionar com a transação
metadata
object
Objeto com dados personalizados que serão retornados na resposta e webhook
sameDocument
string
CPF/CNPJ para restrição de pagamento por titularidade. Quando informado, apenas pagadores cujo documento (CPF/CNPJ) seja igual ao valor enviado poderão pagar este QR Code. Pagamentos de contas com documento diferente serão rejeitados.

Resposta

requestId
string
UUID para rastreio
success
boolean
Status da operação
size
number
Quantidade de itens retornados
data
object
{
  "requestId": "a9d2f14e-31bc-4d52-9b98-04d92f19fa64",
  "success": true,
  "size": 1,
  "data": {
    "txId": "7c4f3a2d8e1248a6b9c71f45e2",
    "dueDate": "2025-12-25T18:35:22.317Z",
    "emv": "00020101021226840014br.gov.bcb.pix2562qrcode.owem.com.br/pix/32fe91a1-4e62-4d8a-9f1e-5c9d2f61a77b5204000053039865802BR5908JOAOSILVA6008SAOPAULO62070503***63041A2B"
  }
}

Códigos de Status

HTTPDescrição
200Cobrança criada
400Parâmetro inválido (amount, etc.)
401Credenciais inválidas
403IP não allowlisted
404accountId ou userId não encontrado
409Conflito de idempotência
429Rate limit excedido
500Erro interno

Exemplos de Request

{
  "accountId": "123456789012",
  "amount": 197.99,
  "description": "Pedido #12345",
  "expirationSeconds": 86400,
  "externalId": "ext_12345",
  "sameDocument": "41067278893"
  "metadata": {
    "orderId": "12345"
  }
}
Confirmar pagamento: Use GET /v4/i/ledger/entry-id/:txId onde txId = entryId.
O txId retornado é o identificador para consultas no Ledger via entry-id.