Flutterwave API
Flutterwave API
Pan-African payment gateway supporting 30+ currencies and multiple payment methods.
Quick Facts
| Field | Value |
|---|---|
| Provider | Flutterwave |
| Category | Payment APIs |
| Website | https://flutterwave.com |
| Authentication | Bearer Token |
| Pricing Model | transaction-fee |
| Free Tier | No, pay per transaction |
| Rate Limit | 100 req/min (varies by plan) |
Overview
Flutterwave API is a payment apis provided by Flutterwave. Pan-African payment gateway supporting 30+ currencies and multiple payment methods. This API is designed to help developers integrate payments capabilities into their applications with minimal setup and maximum reliability.
The API supports Bearer Token authentication, ensuring secure access to all endpoints. With a transaction-fee pricing model, Flutterwave offers flexible options for projects of any size, from prototypes to enterprise deployments.
Flutterwave maintains comprehensive documentation, SDKs for popular programming languages, and active community support. The API is built on REST principles, returning JSON responses with standard HTTP status codes, making it straightforward to integrate into existing workflows.
Authentication
This API uses Bearer Token authentication. Send your API key as a Bearer token in the Authorization header of each request. The format is: Authorization: Bearer YOUR_API_KEY.
Always store your credentials securely using environment variables or a secrets manager. Never commit API keys to version control or expose them in client-side code.
Code Samples
Python
import requests
import os
API_KEY = os.environ.get("API_KEY", "YOUR_API_KEY")
BASE_URL = "https://api.flutterwave.com"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
response = requests.get(f"{BASE_URL}/v1/resources", headers=headers)
print(response.status_code)
print(response.json())
JavaScript
const API_KEY = process.env.API_KEY || 'YOUR_API_KEY';
const BASE_URL = 'https://api.flutterwave.com';
const response = await fetch(`${BASE_URL}/v1/resources`, {
headers: {
'Authorization': `Bearer ${API_KEY}`,
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data);
cURL
curl -H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
https://api.flutterwave.com/v1/resources
Go
package main
import (
"net/http"
"fmt"
"io"
"os"
)
func main() {
apiKey := os.Getenv("API_KEY")
if apiKey == "" {
apiKey = "YOUR_API_KEY"
}
req, _ := http.NewRequest("GET", "https://api.flutterwave.com/v1/resources", nil)
req.Header.Set("Authorization", "Bearer " + apiKey)
req.Header.Set("Content-Type", "application/json")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}
Pricing
The pricing model is transaction-fee. You pay a percentage and/or fixed fee per transaction. No monthly minimums. Visit the provider’s pricing page at https://flutterwave.com for current rates and detailed pricing information.
Use Cases
- Integration: Connect Flutterwave services to your application for seamless payments functionality.
- Automation: Automate payments workflows and reduce manual operations.
- Scaling: Handle growing payments demands with Flutterwave’s robust infrastructure.