Produto BaaS (titular). Requer Bearer JWT do login da conta e assinatura HMAC obrigatória. Scope: baas.pix-payments.write. Guia: documentação técnica.
stringAssinatura HMAC-SHA256 da requisição (hex).
stringTimestamp Unix (segundos, UTC) usado na assinatura.
stringNonce único por requisição (anti-replay).
stringRequer Bearer token do login da conta e assinatura HMAC obrigatórios.
Scope: baas.pix-payments.write.
| Header | Obrigatório | Descrição |
|---|---|---|
Authorization | Sim | Bearer {{access_token}} |
Accept | Sim | application/json |
X-Signature | Sim | Assinatura HMAC |
X-Timestamp | Sim | Timestamp da assinatura |
X-Nonce | Sim | Nonce único por requisição |
| Campo | Obrigatório HTTP | Descrição |
|---|---|---|
payload | Sim | String EMV do QR Code (copia e cola) |
idempotency_key | Sim | UUID v4, máx. 36 caracteres |
value | Não (fluxo: sim) | Centavos. Obrigatório no fluxo completo; essencial em QR estático sem valor |
valorMaximo | Condicional | Teto em reais quando o QR permite alterar valor |
appointment_date | Condicional | Y-m-d, após hoje, se agendar |
description | Não | Máx. 60 caracteres |
Não envie codMunIbge: o backend deriva de customer/company.
| Código | Corpo | Causa |
|---|---|---|
422 | payload[] + message | Campo ausente ou QR para própria conta |
400 | Insufficient balance. | Saldo insuficiente |
400 | invalid_user | Conta em análise |
4xx | message / errors | Falha no decode do QR |
curl --request POST \
--url 'https://api-h.nuvende.com.br/api/v2/baas/pix/payments/payload' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{access_token}}' \
--header 'X-Timestamp: {{timestamp}}' \
--header 'X-Nonce: {{nonce}}' \
--header 'X-Signature: {{signature}}' \
--data '{
"payload": "00020126580014BR.GOV.BCB.PIX0136exemplo-payload-ficticio5204000053039865802BR5925Joao Recebedor Exemplo6009SAO PAULO62070503***6304ABCD",
"idempotency_key": "550e8400-e29b-41d4-a716-446655440001",
"value": 10050,
"valorMaximo": 150.0,
"description": "Pagamento QR"
}'
const axios = require("axios");
const data = {
payload:
"00020126580014BR.GOV.BCB.PIX0136exemplo-payload-ficticio5204000053039865802BR5925Joao Recebedor Exemplo6009SAO PAULO62070503***6304ABCD",
idempotency_key: "550e8400-e29b-41d4-a716-446655440001",
value: 10050,
valorMaximo: 150.0,
description: "Pagamento QR",
};
axios({
method: "post",
url: "https://api-h.nuvende.com.br/api/v2/baas/pix/payments/payload",
headers: {
"Content-Type": "application/json",
Accept: "application/json",
Authorization: "Bearer {{access_token}}",
"X-Timestamp": "{{timestamp}}",
"X-Nonce": "{{nonce}}",
"X-Signature": "{{signature}}",
},
data,
})
.then((response) => console.log(JSON.stringify(response.data)))
.catch((error) => console.log(error.response?.data || error.message));
import json
import requests
url = "https://api-h.nuvende.com.br/api/v2/baas/pix/payments/payload"
payload = {
"payload": "00020126580014BR.GOV.BCB.PIX0136exemplo-payload-ficticio5204000053039865802BR5925Joao Recebedor Exemplo6009SAO PAULO62070503***6304ABCD",
"idempotency_key": "550e8400-e29b-41d4-a716-446655440001",
"value": 10050,
"valorMaximo": 150.0,
"description": "Pagamento QR",
}
headers = {
"Content-Type": "application/json",
"Accept": "application/json",
"Authorization": "Bearer {{access_token}}",
"X-Timestamp": "{{timestamp}}",
"X-Nonce": "{{nonce}}",
"X-Signature": "{{signature}}",
}
response = requests.post(url, headers=headers, data=json.dumps(payload))
print(response.text)
<?php
$curl = curl_init();
$opts = [
CURLOPT_URL => 'https://api-h.nuvende.com.br/api/v2/baas/pix/payments/payload',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => '{
"payload": "00020126580014BR.GOV.BCB.PIX0136exemplo-payload-ficticio5204000053039865802BR5925Joao Recebedor Exemplo6009SAO PAULO62070503***6304ABCD",
"idempotency_key": "550e8400-e29b-41d4-a716-446655440001",
"value": 10050,
"valorMaximo": 150.0,
"description": "Pagamento QR"
}',
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'Accept: application/json',
'Authorization: Bearer {{access_token}}',
'X-Timestamp: {{timestamp}}',
'X-Nonce: {{nonce}}',
'X-Signature: {{signature}}',
],
];
curl_setopt_array($curl, $opts);
$response = curl_exec($curl);
curl_close($curl);
echo $response;
{
"id": 1268,
"receiver_account_id": 84,
"payer_account_id": 33,
"movement_date": "15/07/2026 14:30:00",
"value": "100.50",
"type": 23,
"status": 1,
"status_details": "CONFIRMADO",
"transaction_type": "pix",
"end_to_end_id": "E3829737420260715173040123456789",
"qr_code_payload": "00020126580014BR.GOV.BCB.PIX0136exemplo-payload-ficticio5204000053039865802BR5925Joao Recebedor Exemplo6009SAO PAULO62070503***6304ABCD",
"end_to_end_devolution_id": null,
"internal_id_request": "550e8400-e29b-41d4-a716-446655440001",
"jd_id": "JDPI-20260715143000-001",
"description": "Pagamento QR",
"payment_description": "Pagamento QR",
"receiver_account": {
"id": 84,
"name": "Joao Recebedor Exemplo",
"document": "52998224725",
"bank": {
"id": 1,
"name": "Instituicao Exemplo",
"compe_code": "260",
"ispb_code": "38297374"
},
"key": "[email protected]",
"key_type": 2,
"agency": "0001",
"account": "00001252",
"type": 0,
"is_local": false
},
"payer_account": {
"id": 33,
"name": "Maria Pagadora Exemplo",
"document": "11144477735",
"bank": {
"id": 1,
"name": "Instituicao Exemplo",
"compe_code": "260",
"ispb_code": "38297374"
},
"agency": "0001",
"account": "00000337",
"type": 0,
"is_local": true
},
"is_favorite": false,
"is_local": true,
"is_receiver": false,
"appointment_date": null,
"error_description": null,
"created_at": "2026-07-15 14:30:00",
"rec_status": null
}
curl --request POST \
--url 'https://api-h.nuvende.com.br/api/v2/baas/pix/payments/payload' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer {{access_token}}' \
--header 'X-Timestamp: {{timestamp}}' \
--header 'X-Nonce: {{nonce}}' \
--header 'X-Signature: {{signature}}' \
--data '{"payload":"00020126580014BR.GOV.BCB.PIX0136exemplo-payload-ficticio","idempotency_key":"550e8400-e29b-41d4-a716-446655440002","valorMaximo":152.50,"description":"Pagamento via QR Code exemplo"}'
{
"payload": [
"The payload field is required."
],
"message": "You cannot transfer to your own account."
}
{
"message": "Insufficient balance."
}