---
title: "Criar um QR Code dinâmico"
method: POST
path: "/brcode/dynamic"
---

# Criar um QR Code dinâmico

`POST /brcode/dynamic`

Essa API possibilita que seja criado um QR Code para cobranças dinâmicas imediatas e com valores pré-definidos.
Com este endpoint, em uma chamada é realizado, automaticamente, o fluxo completo para criação de um QR Code:
1. endereçamento do QR Code (location);
2. criação da cobrança vinculada àquele QR Code (COB).

## Request body

- object
  - `clientRequestId` string — Identificador único da transação fornecida pelo cliente. Este valor não pode ser repetido
  - `key` string, required — Chave Pix do recebedor
  - `amount` string — Valor original desta cobrança.
  - `merchant` object, required
    - `postalCode` string, required — CEP do endereço que reside o gerador do BRCode Location.
    - `city` string, required — Cidade que resite o gerador do BRCode Location.
    - `merchantCategoryCode` string, required — MCC ou Merchant Category Code. Categorizar o tipo de serviço prestado pelo estabelecimento.
    - `name` string, required — Nome comercial do gerador do BRCode Location.
  - `payerName` string — Nome do pagador. Se o campo payerName está preenchido, então deve existir ou um payerCPF ou um payerCNPJ preenchido.
  - `payerCPF` string — CPF do pagador (apenas números). Não é permitido que o campo payerCPF e campo payerCNPJ estejam preenchidos ao mesmo tempo. Este campo é utilizado apenas para quando é pessoa física, caso seja pessoa jurídica deve-se utilizar o campo payerCNPJ
  - `payerCNPJ` string — CNPJ do pagador (apenas números). Não é permitido que o campo payerCPF e campo payerCNPJ estejam preenchidos ao mesmo tempo. Este campo é utilizado apenas para quando é pessoa jurídica, caso seja pessoa física deve-se utilizar o campo payerCPF
  - `payerQuestion` string — Uma questão a ser mostrada ao pagador no momento do pagamento.
  - `additionalInformation` unknown[] — Informações adicionais.
    - unknown
  - `expiration` integer — Tempo para expiração do QR Code, em segundos. Caso não informado, será preenchido com o valor default (86400 segundos = 24 horas)

## Response `200`

200

- object
  - `version` string
  - `status` integer
  - `body` object
    - `clientRequestId` string
    - `pactualId` string
    - `transactionId` string
    - `createTimestamp` string
    - `lastUpdateTimestamp` string
    - `entity` string
    - `status` string
    - `tags` unknown
    - `transactionIdentification` string
    - `body` object
      - `key` string
      - `revision` string
      - `location` string
      - `amount` object
        - `original` number
      - `calendar` object
        - `expiration` integer
        - `dueDate` string
      - `debtor` object
        - `cpf` string
        - `cnpj` unknown
        - `name` string
      - `additionalInformation` object[]
      - `dynamicBRCodeData` object
        - `pointOfInitiationMethod` string
        - `merchantAccountInformation` object
          - `url` string
        - `payloadFormatIndicator` string
        - `merchantCategoryCode` integer
        - `transactionCurrency` integer
        - `countryCode` string
        - `merchantName` string
        - `merchantCity` string
        - `transactionIdentification` string
        - `transactionAmount` string
        - `emvqrcps` string

## Other responses

- `400` — 400
- `401` — 401
- `500` — 500

---

[API](https://skmtc.net/celcoin/apis/api-para-transa-es.md) · [All operations](https://skmtc.net/celcoin/apis/api-para-transa-es/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/celcoin/api-para-transa-es/versions/85dd6188a37b/schema)
