QrRapido/Content/DevTutoriais/qr-code-pix-estatico.en.md

5.4 KiB

title description keywords author date lastmod image
Static Pix QR Code: How It Works and Developer Responsibilities Understand what a static Pix QR Code is, how it is generated by the API, its limitations, and why payment verification is your application's responsibility — not QRRapido's. pix qr code, static pix, pix qr code api, pix qr code integration, pix without central bank QRRapido 2026-03-08 2026-03-08

Static Pix QR Code: How It Works and Developer Responsibilities

What is a Static Pix QR Code?

Pix has two types of QR codes: static and dynamic.

Static Pix Dynamic Pix
Amount Variable (payer decides) Fixed (set by recipient)
Generation Any system PSP/Central Bank intermediary
Central Bank registration No Yes
Payment notification No Yes (webhook)
Typical use Donations, simple charges E-commerce, tracked billing

The QRRapido API generates exclusively static Pix QR codes. This is deliberate and sufficient for most use cases.


How the API Generates the Pix QR Code

When you send a request with type: "pix", the API assembles a string in the EMV® QR Code standard (the international standard adopted by Brazil's Central Bank) and generates the image:

{
  "type": "pix",
  "content": "contact@yourcompany.com"
}

The content field must contain only the Pix key of the recipient. The API handles assembling the EMV payload correctly.

Accepted keys:

  • Email: contact@company.com
  • CPF/CNPJ: digits only — 12345678901 or 12345678000195
  • Phone: +5511999999999
  • Random key (EVP): 123e4567-e89b-12d3-a456-426614174000

What the API Does NOT Do (and Why This Matters)

QRRapido has no integration with the Central Bank, any bank, or any PSP (Payment Service Provider).

This means:

  1. The API does not know if the payment was made. It only generates the QR code image. What happens after — whether the customer scanned it, whether the Pix was sent, whether it landed in the right account — is outside the scope of the API.

  2. There is no payment confirmation webhook. The API does not send notifications when a Pix is received.

  3. The QR code does not expire automatically. A static Pix QR code is valid indefinitely (or until the Pix key is removed by the recipient at the bank).

  4. There is no transaction traceability. Two requests with the same key generate the same QR code (with cache). It is not possible to associate a scan with a specific transaction via the API.


Your Application's Responsibility

If you use the API to generate Pix QR codes in a payment flow, it is your application's responsibility to verify receipt. The correct ways to do this are:

Option 1 — Recipient's Bank Pix API

Connect directly to the Pix API of the bank where the key is registered. Most banks offer:

  • Query of received charges
  • Real-time notification webhook (when the bank supports it)

Option 2 — PSP / Payment Gateway

Use an intermediary such as Mercado Pago, PagSeguro, Efí Bank, Asaas, etc. They offer dynamic Pix with full control: fixed amount, expiration, webhooks and unique identification per charge.

Option 3 — Manual Verification

For low volumes or informal contexts (donations, in-person sales), the person responsible for receiving verifies the bank statement manually.


Your App                    QRRapido API             Recipient's Bank
    |                           |                        |
    |-- POST /generate (pix) -->|                        |
    |<-- qrCodeBase64 ----------|                        |
    |                           |                        |
    |-- Shows QR to customer    |                        |
    |                           |                        |
    |-- Query payment ---------------------------------->|
    |<-- Received status or not --------------------------|
    |                           |                        |
    |-- Releases product/service|                        |

Complete Request Example

curl -X POST https://qrrapido.site/api/v1/QRManager/generate \
  -H "X-API-Key: your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "contact@yourcompany.com",
    "type": "pix",
    "size": 400,
    "outputFormat": "webp"
  }'

Appropriate Use Cases for Static Pix via API

  • Donation QR code on an institutional website
  • Digital menu with key for in-person payment
  • Batch QR generation for printed materials (flyers, cards)
  • Applications where the seller and buyer interact in person and the seller confirms receipt in the bank app

Use Cases That Require Dynamic Pix (not supported by this API)

  • E-commerce with automatic order confirmation
  • Fixed-amount billing with expiration
  • Invoice issuance linked to payment
  • Automated financial reconciliation

Summary

What the API does What the API does NOT do
Generates the Pix QR code image Verifies if the payment was made
Formats the EMV payload correctly Sends confirmation webhook
Delivers PNG, WebP or SVG Communicates with the Central Bank or banks
Works with any valid Pix key Guarantees the key belongs to who claims it does

Correct QR code generation is the API's responsibility. Payment confirmation is your application's responsibility.