Account & dashboard
Manage your partner business credentials, retrieve your webhook secret, rotate API keys, inspect main wallet balance, and review webhook delivery logs.
These account-management endpoints are authenticated with your Dashboard Login JWT Token (obtained from POST /api/v1/auth/login) using the standard Authorization: Bearer <token> header.
Partner profile & webhook secret
Get partner profile
Returns your partner registration status, representative details, configured webhook URL, and your active webhookSecret:
curl https://api.billpadi.com/api/v1/partner/profile \ -H "Authorization: Bearer <your-login-token>"
{
"success": true,
"message": "Profile retrieved successfully",
"data": {
"id": "665f1c2a9e1b2c0012a4e9f1",
"firstname": "Ada",
"lastname": "Obi",
"email": "ada@merchro.com",
"phone": "+2348012345678",
"partner": {
"companyName": "Merchro Ltd",
"contactPerson": "Ada Obi",
"status": "active",
"webhookUrl": "https://api.yourdomain.com/webhooks/billpadi",
"webhookSecret": "a8f3b4c1d2e9876543210fedcba9876543210fedcba9876543210fedcba98765",
"allowedIps": ["102.89.44.12", "197.210.55.0/24"],
"createdAt": "2026-06-02T11:04:00.000Z"
}
},
"timestamp": "2026-07-10T09:20:03.000Z",
"path": "/api/v1/partner/profile"
}IP whitelist management
Billpadi enforces network-level IP whitelisting for your API keys. When configured, any request sent from an IP address not in your whitelist is immediately rejected with 403 Forbidden.
Update authorized IP addresses
Send an array of exact IPv4/IPv6 addresses or CIDR blocks. Set to [] (empty array) to disable IP restrictions during sandbox testing:
curl -X PUT https://api.billpadi.com/api/v1/partner/ip-whitelist \
-H "Authorization: Bearer <your-login-token>" \
-H "Content-Type: application/json" \
-d '{
"allowedIps": [
"102.89.44.12",
"197.210.55.0/24"
]
}'const res = await fetch("https://api.billpadi.com/api/v1/partner/ip-whitelist", {
method: "PUT",
headers: {
"Authorization": "Bearer ",
"Content-Type": "application/json"
},
body: JSON.stringify({
allowedIps: ["102.89.44.12", "197.210.55.0/24"]
})
});
const data = await res.json(); {
"success": true,
"message": "IP whitelist updated successfully",
"data": {
"allowedIps": [
"102.89.44.12",
"197.210.55.0/24"
],
"count": 2
},
"timestamp": "2026-07-10T09:20:03.000Z",
"path": "/api/v1/partner/ip-whitelist"
}API key management
Generate or rotate API key
Returns a newly generated apiKey and apiSecret pair. Store the secret immediately in your environment secrets manager; it is encrypted at rest and cannot be recovered if lost.
List active API keys
Returns your active key metadata (ID, masked prefix, status, and creation date).
Deactivate an API key
Dashboard, wallet & audit
Get dashboard analytics
Get partner wallet balance
curl https://api.billpadi.com/api/v1/partner/wallet \ -H "Authorization: Bearer <your-login-token>"
{
"success": true,
"message": "Wallet retrieved successfully",
"data": {
"balance": 8450000.50,
"currency": "NGN",
"ledgerBalance": 8450000.50
},
"timestamp": "2026-07-10T09:20:03.000Z",
"path": "/api/v1/partner/wallet"
}Lookup any transaction by reference
Get webhook dispatch audit history