Fluveo is a payments processor. Its /v1 REST API has PaymentIntents, Charges, Refunds, Disputes, Payouts and Events, with clear states, errors and events. You call it over plain HTTP with your own Fluveo keys. Every store uses the same API: card, Pix and Boleto are payment methods of the same call.
Start from what you want to do#
Your first request#
Every request goes to https://api.fluveo.com/v1 with your secret key as a Bearer token. This one reads your balance and changes nothing.
curl https://api.fluveo.com/v1/balance \
-H "Authorization: Bearer sk_test_..."const response = await fetch("https://api.fluveo.com/v1/balance", {
headers: { Authorization: "Bearer sk_test_..." },
});
console.log(await response.json());import requests
response = requests.get(
"https://api.fluveo.com/v1/balance",
headers={"Authorization": "Bearer sk_test_..."},
)
print(response.json())<?php
$ch = curl_init("https://api.fluveo.com/v1/balance");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer sk_test_..."],
]);
echo curl_exec($ch);Replace sk_test_... with a test secret key from the Fluveo Dashboard. Pick your language once: every example on every page follows it.
Where your money is#
Fluveo processes your payments and keeps your balance. GET /v1/balance tells you what you hold, and a payout takes it out to your bank. Every call goes to Fluveo and nowhere else. See Balance and payouts.
Rules for every integration#
- Call the API over plain HTTP: curl,
fetch,requestsor your language's HTTP client. Install no server SDK. - Build and test only with
sk_test_keys. - Send an
Idempotency-Keyheader on every POST, and reuse it when you retry that same request. - Never send a header that acts for another account: each merchant uses its own keys.
- Verify every webhook with its
Fluveo-Signatureheader before you act on it.