Fleet Billing & Reporting
Spending Limits
Fleet groups have two spending limits:
| Limit | Scope | What Happens When Reached |
|---|---|---|
| Monthly limit | Per calendar month, per group | New bookings rejected with 400 |
| Per-session limit | Per individual booking | Booking rejected if estimated price exceeds limit |
Check spending against the client_price field in booking responses. Aggregate by fleet_group_id in your system.
Tracking Usage
Per-booking costs
Every booking response includes client_price and client_price_currency:
{
"id": "booking-uuid",
"status": "COMPLETED",
"client_price": 18.75,
"client_price_currency": "EUR"
}
List all bookings for reporting
curl -s "https://api.petitmonde.energy/api/v1/client/bookings?\
from_date=2026-02-01T00:00:00Z&to_date=2026-02-28T23:59:59Z&limit=100" \
-H "X-API-Key: YOUR_API_KEY" | jq '.bookings[] | {id, external_id, status, client_price}'
Use the external_id field to correlate bookings with your internal fleet group and driver IDs.
Billing Periods
Fleet billing is typically monthly. At the end of each period:
- List all
COMPLETEDbookings for the period - Group by fleet group (using your
external_idconvention) - Sum
client_pricevalues per group - Generate your B2B invoice
CSV Export
The EV Suite dashboard provides CSV export for fleet billing. Use the fleet management API's GET /reports/export endpoint for programmatic access:
curl -s "https://api.petitmonde.energy/api/v1/fleet/reports/export?\
period_start=2026-02-01&period_end=2026-02-28" \
-H "X-API-Key: YOUR_API_KEY" \
-o fleet-report-february.csv
Best Practices
- Use consistent
external_idformatting:{group_id}-{driver_id}-{date}for easy correlation - Monitor spending limits proactively — alert when groups approach 80% of their monthly limit
- Close billing periods promptly to lock in final costs
- Archive completed billing periods for audit trails