sk_...), Pix-out não exige PIN. Valores em centavos.
1. Consultar destino
name e taxNumber antes de debitar.
2. Enviar Pix por chave
id da resposta. Status evolui até completed.
3. Copia-e-cola (hash)
amount.
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Consultar chave, enviar Pix-out e obter comprovante
sk_...), Pix-out não exige PIN. Valores em centavos.
curl -X POST https://api.upag.io/v1/transfers/lookup \
-H "Authorization: Bearer sk_test_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"type": "key",
"value": "55ce1aae-0d2b-4d76-bc77-294d6407349e"
}'
name e taxNumber antes de debitar.
curl -X POST https://api.upag.io/v1/transfers \
-H "Authorization: Bearer sk_test_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"type": "key",
"pixKey": "55ce1aae-0d2b-4d76-bc77-294d6407349e",
"pixKeyType": "random",
"amount": 100,
"description": "Pagamento fornecedor"
}'
id da resposta. Status evolui até completed.
curl -X POST https://api.upag.io/v1/transfers/lookup \
-H "Authorization: Bearer sk_test_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"type": "hash",
"value": "00020126580014br.gov.bcb.pix..."
}'
curl -X POST https://api.upag.io/v1/transfers \
-H "Authorization: Bearer sk_test_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"type": "hash",
"hash": "00020126580014br.gov.bcb.pix..."
}'
amount.
curl "https://api.upag.io/v1/transfers/770e8400-e29b-41d4-a716-446655440000/receipt?format=image" \
-H "Authorization: Bearer sk_test_your_api_key"
curl -X POST https://api.upag.io/v1/webhooks \
-H "Authorization: Bearer sk_test_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/webhooks/core",
"events": ["transfer.completed", "transfer.failed"]
}'
app.post('/webhooks/core', express.json(), (req, res) => {
const { event, data } = req.body;
if (event === 'transfer.completed') {
console.log('Pix enviado:', data.id, data.amount);
}
res.sendStatus(200);
});