Un apporteur d'affaires apporte et gère un portefeuille d'entreprises clientes sur Instafuel. Vous construisez votre propre interface ; Instafuel fournit l'API et exécute les mouvements d'argent.
Cette page décrit le modèle. Les autres guides en détaillent les mécanismes.
Le portefeuille
Votre portefeuille, c'est l'ensemble des entreprises rattachées à votre compte. Trois propriétés à retenir :
Exclusif. Une entreprise appartient à un seul apporteur à un instant donné. Il n'y a pas de portefeuille partagé.
Dérivé de la clé. Vos appels sont automatiquement restreints à votre portefeuille. Aucun paramètre ne permet d'en sortir — voir Périmètre.
Non modifiable par vous. Vous ajoutez une entreprise en l'onboardant. Vous ne pouvez ni en détacher une, ni en récupérer une qui appartient à un autre apporteur : ce sont des opérations Instafuel.
Ce que vous pouvez faire
Domaine
Capacité
Droit requis
Lecture
portefeuille, wallets et grand livre, transactions, chauffeurs, alertes
COMPANIES_READ … ALERTS_READ
Onboarding
créer une entreprise cliente et son premier compte gestionnaire de flotte
COMPANIES_WRITE, USERS_WRITE
Comptes clients
créer et modifier les comptes gestionnaire de flotte et directeur financier
COMPANIES_WRITE, USERS_WRITE
Financier
demander un crédit de wallet avec preuve — voir Crédit wallet
CREDIT_REQUEST_WRITE
Rapports
déclencher un export et récupérer le fichier produit
REPORTS_READ
Hors de votre portée : les stations, les marketeurs, les paramètres de la plateforme, les débits, les blocages de wallet, et toute donnée d'une entreprise qui n'est pas dans votre portefeuille.
Onboarder une entreprise
Un seul appel fait trois choses : il crée l'entreprise, la rattache à votre portefeuille, et crée son compte gestionnaire de flotte initial — qui reçoit son lien d'activation.
Une entreprise déjà connue — même RCCM ou même email — est refusée plutôt que dupliquée :
{ "error": { "code": "COMPANY_ALREADY_EXISTS", "message": "Une entreprise avec ce RCCM existe déjà", "conflictingField": "rccm" }}
Le rattachement n'est pas négociable depuis le corps
Un identifiant d'apporteur envoyé dans le corps est ignoré. L'entreprise est rattachée au portefeuille de la clé utilisée, toujours.
L'email est obligatoire
Aucun compte web n'est créé avec un mot de passe. Le gestionnaire de flotte reçoit un lien d'activation à usage unique, valable 72 h — d'où le status: "PENDING_ACTIVATION" et l'activationExpiresAt de la réponse. Sans adresse email valide, le compte existe mais ne pourra jamais se connecter.
Vérifiez l'adresse avant l'appel : une faute de frappe se solde par un client bloqué et un compte à recréer.
Lire le portefeuille
Code
GET /v1/papi/companies # entreprises du portefeuilleGET /v1/papi/companies/4832 # détail d'une entrepriseGET /v1/papi/companies/4832/wallet # solde et engagementsGET /v1/papi/companies/4832/wallet/ledger # écritures du walletGET /v1/papi/wallets # soldes de tout le portefeuilleGET /v1/papi/transactions # transactions, toutes entreprises confonduesGET /v1/papi/transactions/{id} # un plein précisGET /v1/papi/drivers # portefeuilles chauffeursGET /v1/papi/alerts # alertes ouvertes de vos clientsGET /v1/papi/reports/portfolio-summary # synthèse chiffrée sur une période
Toutes ces routes sont restreintes à votre portefeuille. Un companyId en paramètre restreint davantage ; hors portefeuille, il renvoie 404 — l'API ne confirme pas l'existence d'une entreprise qui n'est pas la vôtre.
availableFcfa est ce que les chauffeurs de l'entreprise peuvent réellement dépenser : le solde moins les pleins ouverts (heldFcfa). C'est ce chiffre qu'il faut afficher, pas balanceFcfa.
Gérer les comptes de vos clients
Code
GET /v1/papi/companies/4832/usersPOST /v1/papi/companies/4832/usersPUT /v1/papi/companies/4832/users/9114
Deux rôles sont créables : gestionnaire de flotte (FLEET_ADMINISTRATOR) et directeur financier (DAF).
{ "error": { "code": "ROLE_NOT_ALLOWED", "message": "Rôle non autorisé à la création d'un compte client", "allowedRoles": [ "FLEET_ADMINISTRATOR", "DAF" ] }}
Le compte créé appartient à l'entreprise, pas à vous : il n'obtient aucun accès à l'API partenaire. Il reçoit son propre lien d'activation et se connecte au tableau de bord Instafuel.
La séparation des deux rôles est délibérée : le gestionnaire de flotte pilote l'exploitation (véhicules, chauffeurs, documents), le directeur financier pilote l'argent (plafonds, recharges, rapports). Voir Rôles.
Tout autre champ envoyé est ignoré côté serveur. Vous ne pouvez ni déplacer une entreprise vers un autre portefeuille, ni toucher à son wallet, ni la supprimer.
Rapports
Un seul endpoint, synchrone : la synthèse du portefeuille sur une période. Il n'y a pas d'export de fichier sur cette API — un ERP veut des nombres à agréger, pas un classeur à parser.
Sans from ni to, la période couvre les 30 derniers jours. Seules les transactions confirmées sont comptabilisées : un plein ouvert n'entre pas dans amountFcfa, mais pèse dans walletHeldFcfa.
Pour un export de fichier, passez par le portail partenaire : la surface machine ne produit que du JSON.
Ce que vous ne pouvez pas faire
Opération
Pourquoi
Créditer directement un wallet
vous êtes un tiers ; seul Instafuel constate l'encaissement — voir Crédit wallet
Débiter, rembourser, bloquer un wallet
opérations Instafuel
Détacher une entreprise de votre portefeuille
opération Instafuel
Supprimer une entreprise ou un compte client
les données financières sont conservées ; on désactive, on ne supprime pas