143 lines
5.6 KiB
Markdown
143 lines
5.6 KiB
Markdown
---
|
|
title: "QR Code Pix Estático: Como Funciona e Responsabilidades do Desenvolvedor"
|
|
description: "Entenda o que é o QR Code Pix estático, como ele é gerado pela API, suas limitações e por que a verificação do pagamento é responsabilidade da sua aplicação — não da QRRapido."
|
|
keywords: "qr code pix, pix estatico, qr code pix api, integração pix qr code, pix sem bacen"
|
|
author: "QRRapido"
|
|
date: 2026-03-08
|
|
lastmod: 2026-03-08
|
|
image: ""
|
|
---
|
|
|
|
# QR Code Pix Estático: Como Funciona e Responsabilidades do Desenvolvedor
|
|
|
|
## O que é um QR Code Pix Estático?
|
|
|
|
O Pix tem dois tipos de QR code: **estático** e **dinâmico**.
|
|
|
|
| | Pix Estático | Pix Dinâmico |
|
|
|---|---|---|
|
|
| Valor | Variável (pagador decide) | Fixo (definido pelo recebedor) |
|
|
| Geração | Qualquer sistema | Intermediário PSP/BACEN |
|
|
| Registro no BACEN | **Não** | Sim |
|
|
| Notificação de pagamento | **Não** | Sim (webhook) |
|
|
| Uso típico | Doações, cobranças simples | E-commerce, cobrança com controle |
|
|
|
|
A API QRRapido gera **exclusivamente QR code Pix estático**. Isso é deliberado e suficiente para a maioria dos casos de uso.
|
|
|
|
---
|
|
|
|
## Como a API Gera o QR Code Pix
|
|
|
|
Ao enviar uma requisição com `type: "pix"`, a API monta uma string no padrão **EMV® QR Code** (padrão internacional adotado pelo Banco Central do Brasil) e gera a imagem:
|
|
|
|
```json
|
|
{
|
|
"type": "pix",
|
|
"content": "contato@suaempresa.com.br"
|
|
}
|
|
```
|
|
|
|
O campo `content` deve conter **apenas a chave Pix** do recebedor. A API cuida de montar o payload EMV corretamente.
|
|
|
|
**Chaves aceitas:**
|
|
- E-mail: `contato@empresa.com.br`
|
|
- CPF/CNPJ: apenas dígitos — `12345678901` ou `12345678000195`
|
|
- Telefone: `+5511999999999`
|
|
- Chave aleatória (EVP): `123e4567-e89b-12d3-a456-426614174000`
|
|
|
|
---
|
|
|
|
## O que a API NÃO faz (e por quê isso importa)
|
|
|
|
> **A QRRapido não tem integração com o Banco Central, com nenhum banco ou PSP (Provedor de Serviço de Pagamento).**
|
|
|
|
Isso significa:
|
|
|
|
1. **A API não sabe se o pagamento foi realizado.** Ela apenas gera a imagem do QR code. O que acontece depois — se o cliente escaneou, se o Pix foi enviado, se caiu na conta certa — está fora do escopo da API.
|
|
|
|
2. **Não há webhook de confirmação de pagamento.** A API não envia notificações quando um Pix é recebido.
|
|
|
|
3. **O QR code não expira automaticamente.** Um QR code Pix estático é válido indefinidamente (ou até a chave Pix ser removida pelo recebedor no banco).
|
|
|
|
4. **Não há rastreabilidade de transação.** Duas requisições com a mesma chave geram o mesmo QR code (com cache). Não é possível associar um escaneamento a uma transação específica via API.
|
|
|
|
---
|
|
|
|
## Responsabilidade da Sua Aplicação
|
|
|
|
Se você usa a API para gerar QR codes Pix em um fluxo de pagamento, **é responsabilidade da sua aplicação verificar o recebimento**. As formas corretas de fazer isso são:
|
|
|
|
### Opção 1 — API Pix do Banco do Recebedor
|
|
Conecte-se diretamente à API Pix do banco onde está registrada a chave. A maioria dos bancos oferece:
|
|
- Consulta de cobranças recebidas
|
|
- Webhook de notificação em tempo real (quando o banco suporta)
|
|
|
|
### Opção 2 — PSP / Gateway de Pagamento
|
|
Use um intermediário como Mercado Pago, PagSeguro, Efí Bank, Asaas, etc. Eles oferecem Pix dinâmico com controle completo: valor fixo, expiração, webhooks e identificação única por cobrança.
|
|
|
|
### Opção 3 — Conferência Manual
|
|
Para volumes baixos ou contextos informais (doações, vendas presenciais), o responsável pelo recebimento verifica o extrato bancário manualmente.
|
|
|
|
---
|
|
|
|
## Fluxo Recomendado (com confirmação)
|
|
|
|
```
|
|
Sua App API QRRapido Banco do Recebedor
|
|
| | |
|
|
|-- POST /generate (pix) -->| |
|
|
|<-- qrCodeBase64 ----------| |
|
|
| | |
|
|
|-- Exibe QR para cliente | |
|
|
| | |
|
|
|-- Consulta pagamento ------------------------------>|
|
|
|<-- Status recebido ou não --------------------------|
|
|
| | |
|
|
|-- Libera produto/serviço | |
|
|
```
|
|
|
|
---
|
|
|
|
## Exemplo de Requisição Completa
|
|
|
|
```bash
|
|
curl -X POST https://qrrapido.site/api/v1/QRManager/generate \
|
|
-H "X-API-Key: sua_chave_aqui" \
|
|
-H "Content-Type: application/json" \
|
|
-d '{
|
|
"content": "contato@suaempresa.com.br",
|
|
"type": "pix",
|
|
"size": 400,
|
|
"outputFormat": "webp"
|
|
}'
|
|
```
|
|
|
|
---
|
|
|
|
## Casos de Uso Adequados para Pix Estático via API
|
|
|
|
- QR code de doação em site institucional
|
|
- Cardápio digital com chave para pagamento presencial
|
|
- Geração de QR em lote para materiais impressos (flyers, cartões)
|
|
- Aplicativos onde o vendedor e comprador interagem pessoalmente e o vendedor confirma o recebimento no app do banco
|
|
|
|
## Casos de Uso que Requerem Pix Dinâmico (não atendidos por esta API)
|
|
|
|
- E-commerce com confirmação automática do pedido
|
|
- Cobrança com valor fixo e expiração
|
|
- Emissão de nota fiscal vinculada ao pagamento
|
|
- Conciliação financeira automatizada
|
|
|
|
---
|
|
|
|
## Resumo
|
|
|
|
| O que a API faz | O que a API NÃO faz |
|
|
|---|---|
|
|
| Gera a imagem do QR code Pix | Verifica se o pagamento foi feito |
|
|
| Formata o payload EMV corretamente | Envia webhook de confirmação |
|
|
| Entrega PNG, WebP ou SVG | Se comunica com o BACEN ou bancos |
|
|
| Funciona com qualquer chave Pix válida | Garante que a chave pertence a quem diz pertencer |
|
|
|
|
A geração correta do QR code é responsabilidade da API. A **confirmação do pagamento é responsabilidade da sua aplicação**.
|