Documentation J+SERVICES Guides Référence API

Note app mobile et PWA : le pays de la boutique

Date : 2026-10-10 · Destinataires : dev app mobile, dev PWA · API : https://live.jmoai.net


1. Pourquoi

Le backend choisit maintenant le moyen d’encaissement selon le pays de la boutique :

Pays de la boutique Encaissement J+SERVICES
Bénin (BJ) FedaPay, avec FeexPay en secours si FedaPay est en panne
Côte d’Ivoire (CI), Sénégal (SN), Burkina Faso (BF), Togo (TG), Congo (CG) FeexPay

Le pays sert aussi à afficher à l’acheteur les bons opérateurs (MTN, Moov, Orange, Wave…) et le bon indicatif téléphonique. L’acheteur ne choisit pas son pays : c’est celui de la boutique.

Si le pays manque, le backend suppose le Bénin. Un vendeur ivoirien verrait alors des opérateurs béninois, et ses ventes échoueraient.

2. Ce que l’app doit faire

2.1 Choix du pays dans la configuration de la boutique

Code Pays Indicatif
BJ Bénin +229
CI Côte d’Ivoire +225
SN Sénégal +221
BF Burkina Faso +226
TG Togo +228
CG Congo +242

2.2 Enregistrer le pays

Le pays est rangé dans payment.country de la configuration du portail :

GET  /api/v1/clients/portal-editor/config      (Authorization: Bearer <jeton client>)
PUT  /api/v1/clients/portal-editor/config      (Authorization: Bearer <jeton client>)

⚠️ Le PUT remplace la configuration entière.

Le backend accepte un code de 2 lettres. Il le met en majuscules et ignore toute autre valeur.

Exemple de corps : l’objet complet reçu du GET, avec seulement ce champ modifié :

{ "...": "…reste de la configuration inchangé…", "payment": { "...": "…", "country": "CI" } }

2.3 Ajouter le pays dans les liens de paiement

Tous les liens de vente générés par l’app portent le paramètre country :

https://live.jmoai.net/api/v1/store/buy-ticketmomo?nasid=<NAS>&amount=<prix>&currency=cfa&profile_name=<forfait>&country=CI

3. Ce que voit l’acheteur

La page de paiement J+SERVICES affiche le logo TiketMOMO, le nom du WiFi et l’adresse DNS de la boutique, puis les opérateurs du pays de la boutique, avec l’indicatif prérempli. Exemples d’opérateurs :

Pays Opérateurs
BJ MTN, Moov, Celtiis
CI MTN, Moov, Orange, Wave
SN Orange, Free, Wave
BF Orange, Moov, Wave
TG Togocom, Moov
CG MTN

Les pays hors Bénin s’ouvrent progressivement côté backend. Une boutique d’un pays pas encore ouvert voit « Paiement indisponible pour ce pays » : l’app n’a rien à gérer de plus.

4. Recette

  1. Créer une boutique et choisir CI → un GET de la configuration renvoie payment.country: "CI".
  2. Un lien généré contient &country=CI.
  3. Le PUT ne remet pas à zéro les autres réglages : vérifier les couleurs et les forfaits après enregistrement.
  4. Une boutique existante sans pays affiche le bandeau de confirmation.

Questions et écarts : les remonter avec l’heure, la route appelée et le corps de la réponse.