Contraste Pay

La solution de paiement mobile pour votre entreprise

Intégrez Wave et Orange Money directement dans votre infrastructure. 100 % auto-hébergé, vos données restent chez vous.

Compatible avec Wave Sénégal Orange Money Sénégal
$ docker run -d \
  -p 80:3001 \
  --restart unless-stopped \
  --env-file contraste-pay.env \
  contrastesn/contraste-pay:latest

Pulling from contrastesn/contraste-pay
✓ Status: Downloaded newer image
✓ PostgreSQL initialisé
✓ Migrations appliquées
✓ API démarrée sur le port 3000
✓ Frontend prêt sur le port 3001
API en ligne
Base de données
Redis

Tout ce dont vous avez besoin

Une plateforme complète, livrée en une seule image Docker prête à l'emploi.

🌊

Wave Sénégal

Intégration native de l'API Wave. Encaissements, remboursements et suivi des transactions en temps réel.

🟠

Orange Money

Paiement Orange Money intégré. Touchez des millions d'utilisateurs au Sénégal et en Afrique de l'Ouest.

API REST complète

Connectez n'importe quelle application à votre passerelle de paiement via une API documentée et sécurisée.

🔒

100 % Auto-hébergé

Vos données et transactions restent sur votre serveur. Aucune dépendance à un service tiers.

🗄️

Données persistantes

PostgreSQL et Redis inclus dans le conteneur. Vos données sont préservées à chaque mise à jour.

🚀

Mises à jour simples

Une seule commande pour mettre à jour vers la dernière version. Migrations automatiques, zéro interruption.

De nouvelles intégrations arrivent

Contraste Pay s'étend continuellement pour couvrir l'ensemble de l'écosystème de paiement en Afrique de l'Ouest.

PRIORITÉ HAUTE
🏦

API PI-SPI — BCEAO

Intégration de l'API Business de la Banque Centrale des États de l'Afrique de l'Ouest. Paiements interbancaires, virements et services financiers réglementés à l'échelle de l'UEMOA.

EN COURS
🔗

Agrégateurs de paiement

Connexion aux principaux agrégateurs locaux pour une couverture maximale.

PayDunya Intech PayTech + d'autres

Installation complète

Suivez ces étapes dans l'ordre. Prérequis : avoir Docker installé sur votre serveur.

1

Créer le fichier de configuration

Copiez ce contenu dans un fichier nommé contraste-pay.env sur votre serveur et remplissez les valeurs marquées.

# --- Base de données -------------------------------------------------
DB_USER=postgres
DB_PASSWORD=CHANGER_CE_MOT_DE_PASSE
DB_NAME=contraste_pay

# --- Sécurité — générer avec : openssl rand -hex 64 ------------------
JWT_SECRET=CHANGER_CETTE_CLE_SECRETE
TOKEN_EXPIRE_TIME=7d
# --- générer avec : openssl rand -hex 32
FIELD_ENCRYPTION_KEY=CHANGER_CETTE_CLE_CHIFFREMENT

# --- API (ne pas modifier) -------------------------------------------
API_PORT=3000
API_PREFIX=/api
NODE_ENV=production

# --- Email SMTP ------------------------------------------------------
SMTP_HOST=smtp.example.com
SMTP_PORT=587
SMTP_USER=votre@email.com
SMTP_PASS=VOTRE_MOT_DE_PASSE_SMTP
EMAIL_FROM=noreply@votre-domaine.com
💡 Les valeurs en rouge sont obligatoires à modifier. Les autres peuvent rester telles quelles.
2

Générer les clés secrètes

Exécutez ces commandes sur votre serveur pour générer des clés sécurisées, puis copiez les valeurs dans votre contraste-pay.env.

# Générer JWT_SECRET
openssl rand -hex 64

# Générer FIELD_ENCRYPTION_KEY
openssl rand -hex 32
3

Lancer le conteneur

Une seule commande suffit. L'application démarre, les migrations s'appliquent et le seed s'exécute automatiquement.

docker run -d \
  -p 80:3001 \
  --restart unless-stopped \
  --name contraste-pay \
  --env-file contraste-pay.env \
  -v contraste-pay-db:/var/lib/postgresql/data \
  -v contraste-pay-redis:/var/lib/redis \
  contrastesn/contraste-pay:latest

Mise à jour vers une nouvelle version

Vos données sont préservées. Les nouvelles migrations s'appliquent automatiquement au redémarrage.

# Arrêter le conteneur (les volumes sont conservés)
docker stop contraste-pay && docker rm contraste-pay

# Relancer avec la nouvelle image
docker run -d \
  -p 80:3001 \
  --restart unless-stopped \
  --name contraste-pay \
  --env-file contraste-pay.env \
  -v contraste-pay-db:/var/lib/postgresql/data \
  -v contraste-pay-redis:/var/lib/redis \
  contrastesn/contraste-pay:latest

Gestion du conteneur

# Arrêter (données conservées)
docker stop contraste-pay

# Redémarrer
docker start contraste-pay

# Voir les logs en direct
docker logs -f contraste-pay

# État des processus internes
docker exec contraste-pay supervisorctl status

# Accès base de données
docker exec -it contraste-pay su-exec postgres psql -U postgres -d contraste_pay

Parlons de votre projet

Vous avez une question ou souhaitez déployer Contraste Pay ? Contactez-nous directement.

Nos coordonnées

✉️
📍

Localisation

Dakar, Sénégal

Prêt à démarrer ?

Obtenez votre fichier de configuration et déployez Contraste Pay sur votre serveur aujourd'hui.