Vue d’ensemble
Avant de pouvoir découvrir quoi que ce soit, deux choses doivent être correctes : le facturier doit être disponible, et l’identifiant de compte doit être celui que ce facturier comprend. Cette étape couvre les deux, ainsi que la différence entre les deux erreurs que vous verrez lorsque le second est erroné.Tout sur cette page utilise
https://billapi.oneclickdz.com et l’en-tête X-Access-Token. Si vous n’avez pas confirmé à quel environnement appartient votre clé, commencez par Valider la clé API.Vérifier la disponibilité
GET /v3/partners renvoie une entrée par facturier, chacune avec un unique champ status.
UNAVAILABLE répond 503 PARTNER_UNAVAILABLE à la découverte comme au paiement. SEAAL et AADL sont actuellement UNAVAILABLE en sandbox comme en production — c’est le réglage actuel de l’opérateur, pas une limitation permanente, alors gardez-les dans votre code et laissez la carte décider de ce qu’il faut afficher.
L’identifiant de chaque facturier
Envoyez exactement un identifiant, et envoyez le champ qui correspond au facturier que vous interrogez. L’API renvoie ce même champ dansaccount sur chaque transaction pour ce facturier.
Envoyez
Algérie Télécom avec ses accents. La valeur est comparée caractère par caractère, et c’est aussi la clé que vous relisez dans la carte des partenaires.Numéros de téléphone fixe
phoneNumber est un fixe algérien, pas un numéro mobile.
Valide :
"023456789"— zéro de tête, puis un chiffre compris entre 2 et 4"+213023456789"n’est pas valide ; utilisez"+21323456789"ou la forme locale"023456789"
"0778037340"— un numéro mobile, pas un fixe"23456789"— zéro de tête manquant"023 45 67 89"— contient des espaces23456789— un nombre au lieu d’une chaîne
Les formes d’identifiant plus riches
Deux facturiers acceptent un objet plus complet lorsqu’un seul numéro ne suffit pas à identifier une facture précise. Chaque champ à l’intérieur de ces objets est obligatoire.SONELGAZ — forme facture
SONELGAZ — forme facture
invoice_number jusqu’à 20 caractères, amount_without_stamp jusqu’à 20, ebb_key jusqu’à 30.ADE — forme facture
ADE — forme facture
sub_id exactement 12 caractères, period au format MM/YYYY, amount jusqu’à 20 caractères, pay_key exactement 7 caractères.ADE et SEAAL — clé de 25 caractères
ADE et SEAAL — clé de 25 caractères
electronic_payment_key est accepté comme alternative à reference, et doit faire exactement 25 caractères.Exactement un identifiant
L’objetaccount doit porter un seul identifiant, pas plus. Les champs se regroupent en quatre emplacements :
Exactement un emplacement doit être rempli. Zéro ou deux est rejeté avant que quoi que ce soit d’autre ne se produise.
ERR_VALIDATION ou INVALID_ACCOUNT ?
Les deux sont des 400, et ils signifient des choses très différentes.
Mettre la carte des partenaires en cache
La disponibilité change rarement, alors rafraîchissez-la sur un minuteur plutôt qu’avant chaque découverte — et continuez à servir la dernière copie valide si un rafraîchissement échoue. Une liste de facturiers vide est pire pour vos clients qu’une liste légèrement périmée.Le cache ne dispense pas de gérer
503 PARTNER_UNAVAILABLE à la découverte. Un facturier peut tomber en panne entre votre dernier rafraîchissement et le moment où le client appuie sur le bouton.Bonnes pratiques
Validez avant d'envoyer
Vérifiez la règle d’emplacement et le format du fixe côté client. Cela économise un aller-retour et donne un meilleur message d’erreur.
Mettez la carte en cache pour des minutes, pas des heures
Cinq minutes suffisent largement. Rafraîchissez en arrière-plan, jamais sur le chemin critique du client.
Gardez les facturiers indisponibles dans votre code
SEAAL et AADL reviendront. Pilotez l’interface depuis la carte, pas depuis une liste codée en dur.Séparez les deux 400
INVALID_ACCOUNT est un message pour votre client. ERR_VALIDATION est un message pour vos logs.Étape suivante
Étape 2 : Découverte des factures
Envoyez une découverte, interrogez-la jusqu’à
READY, et lisez ce qui est payablePages liées
Lister les partenaires
La référence de l’endpoint
Découvrir les factures
Où l’objet account est envoyé
Vue d'ensemble du Paiement de Factures
La carte en cinq étapes
Tests en sandbox
Les identifiants qui produisent un résultat choisi

