1# Cobrança Pix com QR Code e copia e cola
2curl -X POST 'https://api.velfy.com/api/v1/transactions' \
3 -u "sk_xxx:pk_xxx" \
4 -H 'Content-Type: application/json' \
5 -d '{
6 "paymentMethod": "pix",
7 "amount": 14990,
8 "externalRef": "pedido-8123",
9 "postbackUrl": "https://sualoja.com/velfy",
10 "pix": { "expiresInDays": 2 },
11 "customer": {
12 "name": "João da Silva",
13 "email": "joao@example.com",
14 "document": { "type": "cpf", "number": "12345678900" }
15 }
16 }'
17
18# → data.pix.qrcode e data.secureUrl na resposta
1# Boleto registrado, vencimento em 3 dias
2curl -X POST 'https://api.velfy.com/api/v1/transactions' \
3 -u "sk_xxx:pk_xxx" \
4 -H 'Content-Type: application/json' \
5 -d '{
6 "paymentMethod": "boleto",
7 "amount": 32000,
8 "externalRef": "pedido-8124",
9 "boleto": { "expiresInDays": 3 },
10 "customer": {
11 "name": "Maria Souza",
12 "email": "maria@example.com",
13 "document": { "type": "cpf", "number": "98765432100" }
14 }
15 }'
16
17# → boleto.url (PDF), barcode e digitableLine
1// 1. o navegador tokeniza o cartão com a public key
2const hash = await tokenizeCard(publicKey, dadosDoCartao);
3
4// 2. o seu backend cria a cobrança com o token
5const res = await fetch(url, {
6 method: "POST",
7 headers: { Authorization: `Basic ${creds}` },
8 body: JSON.stringify({
9 paymentMethod: "credit_card",
10 amount: 49900,
11 installments: "3",
12 ip: req.ip,
13 card: { hash }
14 })
15}); // → status: "paid" ou "refused"