POST/api/v2/pix/pagamentos/qrcode

Por QR Code

Decodifica BR Code (estático tipo: 2, dinâmico 3, composto/Pix Automático 8). Retorna INICIADO com endToEndId. Scope: pix.write.

Parâmetros

AcceptObrigatório
header

Tipo de conteúdo aceito na resposta

Tipo:string
Content-TypeObrigatório
header

Tipo de conteúdo da requisição

Tipo:string

Autenticação e scopes

Requer Bearer token com scope pix.write.

Headers

HeaderObrigatórioDescrição
AuthorizationSimBearer {{access_token}}
AcceptSimapplication/json
Content-TypeSimapplication/json

Body

CampoObrigatórioTipoDescrição
qrcodeSimStringPayload EMV (copia e cola).
municipioSim*StringMunicípio do pagador (decodificação JDPI).
txidNãoStringFallback se o QR não trouxer conciliação.
codMunIbgeNãoStringIBGE — QR composto (Pix Automático).
data_agendadaNãoStringISO 8601.
valorMaximoNãoNumberTeto do pagador em QR composto.

Retorno 200 — por tipo de QR

Tipotipovalorrec_status
Estático2Fixo ou 0null
Dinâmico3Do QR (original/final)null
Composto (Pix Automático)8Cobrança imediataex.: "CRIADA"

Sempre: endToEndId, status: "0", tipo_transacao: -1, recebedor / pagador.

Códigos de resposta

CódigoSignificadoDescrição
200OKPagamento iniciado.
201CreatedPagamento iniciado.
400Bad RequestPayload inválido.
401UnauthorizedToken inválido ou expirado.
403ForbiddenScope ou regra de conta.
422Unprocessable EntityValidação / decode rejeitado.
500Internal Server ErrorErro interno do servidor.

Notas

curl --location 'https://api-h.nuvende.com.br/api/v2/pix/pagamentos/qrcode' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{access_token}}' \
--header 'Content-Type: application/json' \
--data '{
  "qrcode": "{{pix_copia_e_cola}}",
  "municipio": "São Paulo"
}'
{
  "id": "c4f1a2b3-8d9e-4f10-a1b2-c3d4e5f67890",
  "endToEndId": "E382973742026070812600ABC1234567890",
  "chave": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "valor": 49.9,
  "txid": "7978c0c97ea847e78e8849634473c1f1",
  "status": "0",
  "tipo": 3,
  "id_req": null,
  "tipo_transacao": -1,
  "rec_status": null
}
const axios = require("axios");

axios
  .post(
    "https://api-h.nuvende.com.br/api/v2/pix/pagamentos/qrcode",
    { qrcode: "{{pix_copia_e_cola}}", municipio: "São Paulo" },
    {
      headers: {
        Accept: "application/json",
        Authorization: "Bearer {{access_token}}",
        "Content-Type": "application/json",
      },
    }
  )
  .then((response) => console.log(JSON.stringify(response.data)))
  .catch((error) => console.log(error.response?.data || error.message));
import requests

url = "https://api-h.nuvende.com.br/api/v2/pix/pagamentos/qrcode"
headers = {
    "Accept": "application/json",
    "Authorization": "Bearer {{access_token}}",
    "Content-Type": "application/json",
}
payload = {"qrcode": "{{pix_copia_e_cola}}"}
response = requests.post(url, headers=headers, json=payload)
print(response.text)
<?php
$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL => 'https://api-h.nuvende.com.br/api/v2/pix/pagamentos/qrcode',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POST => true,
  CURLOPT_HTTPHEADER => [
    'Accept: application/json',
    'Authorization: Bearer {{access_token}}',
    'Content-Type: application/json',
  ],
  CURLOPT_POSTFIELDS => json_encode([
    'qrcode' => '{{pix_copia_e_cola}}',
  ]),
]);
$response = curl_exec($curl);
curl_close($curl);
echo $response;