Exemplos de código
Exemplos com dados fictícios. Troque API_URL pela URL base do seu ambiente e os valores em maiúsculas pelas suas credenciais. Para testar sem dinheiro real, use uma conta do banco Teste.
1. Obter o token
sh
curl -X POST "$API_URL/access/account/get-token" \
-H "Content-Type: application/json" \
-d '{"email": "erp@exemplo.com", "token": "SEU_ACCOUNT_TOKEN"}'js
const response = await fetch(`${process.env.API_URL}/access/account/get-token`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ email: 'erp@exemplo.com', token: process.env.FASTGIVR_ACCOUNT_TOKEN })
})
const { data } = await response.json()
const token = data.token // vale 10 minutosphp
$ch = curl_init(getenv('API_URL') . '/access/account/get-token');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'email' => 'erp@exemplo.com',
'token' => getenv('FASTGIVR_ACCOUNT_TOKEN'),
]),
]);
$token = json_decode(curl_exec($ch), true)['data']['token']; // vale 10 minutos2. Criar uma cobrança BolePix
O cabeçalho Idempotency-Key evita criar a cobrança duas vezes se a requisição for repetida. Use um valor único por cobrança, como o id do pedido no seu sistema.
sh
curl -X POST "$API_URL/billing/charges" \
-H "Authorization: Bearer $TOKEN" \
-H "account: 1" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: pedido-1042" \
-d '{
"payment_method": "BOLEPIX",
"amount": 150.00,
"due_date": "2026-10-31",
"name": "Ana Exemplo Costa",
"email": "ana.exemplo@exemplo.com",
"document": "12345678909",
"description": "Pedido 1042",
"webhook": "https://seusistema.com.br/fastgivr/webhook"
}'js
const charge = await fetch(`${process.env.API_URL}/billing/charges`, {
method: 'POST',
headers: {
Authorization: `Bearer ${token}`,
account: '1',
'Content-Type': 'application/json',
'Idempotency-Key': 'pedido-1042'
},
body: JSON.stringify({
payment_method: 'BOLEPIX',
amount: 150.0,
due_date: '2026-10-31',
name: 'Ana Exemplo Costa',
email: 'ana.exemplo@exemplo.com',
document: '12345678909',
description: 'Pedido 1042',
webhook: 'https://seusistema.com.br/fastgivr/webhook'
})
}).then((r) => r.json())php
$ch = curl_init(getenv('API_URL') . '/billing/charges');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Authorization: Bearer {$token}",
'account: 1',
'Content-Type: application/json',
'Idempotency-Key: pedido-1042',
],
CURLOPT_POSTFIELDS => json_encode([
'payment_method' => 'BOLEPIX',
'amount' => 150.00,
'due_date' => '2026-10-31',
'name' => 'Ana Exemplo Costa',
'email' => 'ana.exemplo@exemplo.com',
'document' => '12345678909',
'description' => 'Pedido 1042',
'webhook' => 'https://seusistema.com.br/fastgivr/webhook',
]),
]);
$charge = json_decode(curl_exec($ch), true);A resposta traz a cobrança com os dados para pagamento: a A sequência de números do boleto, usada para pagá-lo sem ler o código de barras. do boleto e o código Código em texto que representa uma cobrança Pix. Quem paga cola o código no app do banco em vez de ler o QR Code. do Pix.
3. Consultar o status
sh
curl "$API_URL/billing/charges/102" \
-H "Authorization: Bearer $TOKEN" \
-H "account: 1"js
const { data } = await fetch(`${process.env.API_URL}/billing/charges/102`, {
headers: { Authorization: `Bearer ${token}`, account: '1' }
}).then((r) => r.json())php
$ch = curl_init(getenv('API_URL') . '/billing/charges/102');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer {$token}", 'account: 1'],
]);
$charge = json_decode(curl_exec($ch), true);Prefira receber o aviso de pagamento por webhook a consultar o status repetidamente.