Documentation Technique NICE PAY

Bienvenue dans la documentation complète des API et services NICE PAY. Cette documentation vous guidera à travers l'intégration de nos différents services de paiement dans vos applications.

Note importante : Toutes nos API utilisent l'authentification par token. Assurez-vous de sécuriser vos clés d'API.

Points d'Accès

# URL de Production
https://api.nicepaygroup.com/v1

# URL de Test (Sandbox)
https://sandbox.nicepaygroup.com/v1

Services Disponibles

Transfert d'Argent

Transferts nationaux et internationaux vers plusieurs pays d'Afrique de l'Ouest via différents opérateurs.

Voir la documentation →

Dépôt sur Compte

Rechargez votre compte NICE PAY via plusieurs canaux : Mobile Money, cartes bancaires, crypto-monnaies.

Voir la documentation →

Liens de Paiement

Créez et partagez des liens de paiement pour recevoir des paiements de vos clients.

Voir la documentation →

API Bitcoin

Intégrez des fonctionnalités Bitcoin dans vos applications avec notre API sécurisée.

Voir la documentation →

Transfert d'Argent

Notre service de transfert d'argent permet d'envoyer des fonds vers plusieurs pays d'Afrique de l'Ouest via différents opérateurs de Mobile Money.

Pays et Opérateurs Supportés

Pays Opérateurs
International CARTE BANCAIRE
Sénégal Orange Money, Free Money, Expresso, Wave, Wizall
Côte d'Ivoire Orange Money, MTN, Moov, Wave
Bénin Moov, MTN
Burkina Faso Orange Money, Moov
Togo T-money, Moov Togo
Mali Orange Money, Moov

API de Transfert

POST /api/transfer

Endpoint pour initier un transfert d'argent.

Paramètres de Requête

{
  "recipient_name": "Koffi A.",
  "recipient_phone": "2250700000000",
  "country": "Côte d'Ivoire",
  "operator": "Orange Money",
  "amount": 10000,
  "currency": "XOF",
  "description": "Transfert familial"
}

Réponse

{
  "success": true,
  "transaction_id": "TRX202310150001",
  "status": "pending",
  "message": "Transfert initié avec succès"
}

Dépôt sur Compte NICE PAY

Rechargez votre compte NICE PAY via plusieurs canaux de paiement disponibles dans les pays supportés.

Méthodes de Dépôt

Mobile Money

Dépôt via Orange Money, MTN Mobile Money, Moov Money, etc.

Cartes Bancaires

Visa, Mastercard et autres cartes internationales.

Crypto-monnaies

Bitcoin et autres crypto-monnaies principales.

Virements Bancaires

Virements directs depuis votre compte bancaire.

API de Dépôt

POST /api/deposit

Endpoint pour initier un dépôt sur un compte NICE PAY.

Paramètres de Requête

{
  "account_id": "ACC123456",
  "amount": 50000,
  "currency": "XOF",
  "method": "orange_money",
  "phone": "2250700000000"
}

Liens de Paiement

Créez et partagez des liens de paiement personnalisés pour recevoir des paiements de vos clients. Ces liens peuvent être intégrés dans vos sites web, emails, ou messages.

Création d'un Lien de Paiement

POST /api/payment-links

Endpoint pour créer un nouveau lien de paiement.

Paramètres de Requête

{
  "product_name": "Produit ABC",
  "description": "Description du produit",
  "amount": 25000,
  "currency": "XOF",
  "fee_option": "buyer_pays",
  "redirect_url": "https://votresite.com/merci",
  "custom_data": {
    "order_id": "ORD12345",
    "customer_email": "client@example.com"
  }
}

Réponse

{
  "success": true,
  "payment_link": "https://nicepaygroup.com/pay?id=UNIQUE123",
  "unique_id": "UNIQUE123",
  "expires_at": "2023-12-31T23:59:59Z"
}

Intégration du Lien de Paiement

Une fois le lien de paiement créé, vous pouvez l'intégrer de plusieurs manières :

  • Lien direct dans un email ou message
  • Bouton de paiement sur votre site web
  • QR Code pour paiement mobile
  • Intégration dans une application mobile

Exemple d'intégration HTML

<a href="https://nicepaygroup.com/pay?id=UNIQUE123" 
   class="payment-button">
   Payer 25,000 FCFA
</a>

<!-- Ou avec un bouton stylisé -->
<button onclick="window.location.href='https://nicepaygroup.com/pay?id=UNIQUE123'" 
        class="bg-yellow-500 text-black px-6 py-3 rounded-lg font-bold">
   Payer maintenant
</button>

API Bitcoin

Notre API Bitcoin vous permet d'intégrer des fonctionnalités de paiement en Bitcoin dans vos applications. Convertissez facilement entre Bitcoin et monnaies locales.

Fonctionnalités

  • Conversion Bitcoin ↔ XOF en temps réel
  • Génération d'adresses de réception Bitcoin
  • Suivi des transactions Bitcoin
  • Paiements en Bitcoin sécurisés
  • Retraits en monnaie locale

Endpoints Principaux

GET /api/bitcoin/rate

Obtenir le taux de change Bitcoin/XOF actuel.

Réponse

{
  "btc_to_xof": 24500000,
  "xof_to_btc": 0.0000000408,
  "timestamp": "2023-10-15T10:30:00Z"
}
POST /api/bitcoin/create-address

Créer une nouvelle adresse Bitcoin pour recevoir des paiements.

Paramètres de Requête

{
  "user_id": "USER123",
  "callback_url": "https://yourapp.com/webhook/bitcoin"
}

Réponse

{
  "address": "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
  "user_id": "USER123"
}
POST /api/bitcoin/withdraw

Convertir et retirer des Bitcoin en monnaie locale.

Paramètres de Requête

{
  "user_id": "USER123",
  "amount_btc": 0.01,
  "destination": "orange_money",
  "phone": "2250700000000"
}

Intégration Machankura

Intégrez la solution Machankura, un portefeuille Bitcoin accessible via USSD, WhatsApp, Web et App, avec les APIs de NicePay pour permettre la conversion instantanée de Bitcoin en monnaie locale (XOF) et vice versa.

Présentation du Projet

L'objectif de cette intégration est d'interfacer Machankura avec NicePay pour permettre :

  • La conversion instantanée de Bitcoin en monnaie locale (XOF)
  • Le transfert des fonds vers des comptes Mobile Money, Wave ou bancaires
  • La réception de Bitcoin à partir de XOF via une passerelle de paiement

Flux d'Intégration

Flux BTC → XOF (Cash-out)

  1. L'utilisateur initie un transfert BTC sur Machankura
  2. L'API Machankura interagit avec NicePay :
    • Conversion BTC → XOF
    • Initiation du paiement vers le destinataire Mobile Money
  3. L'utilisateur reçoit une confirmation par SMS ou USSD

Flux XOF → BTC (Cash-in)

  1. L'utilisateur choisit un montant en XOF à convertir
  2. NicePay génère une facture Mobile Money
  3. Une fois payée, le montant est converti et crédité en BTC sur Machankura

Conditions & Tarification

  • Frais d'activation API : 450 $ (paiement unique)
  • Commission par transaction : 3%
  • Support technique : inclus (7j/7 via ticket ou WhatsApp)

Sécurité & Conformité

  • Authentification sécurisée OAuth 2.0
  • Journalisation des appels API
  • Sécurité renforcée via rate-limiting
  • Conformité KYC/AML possible via partenaires

Sandbox & Accès Développeur

  • Environnement de test disponible
  • Accès via Token développeur dédié
  • Documentation API complète fournie sur demande

Achat d'Unités Téléphoniques (Airtime)

NicePay met à disposition une API d'achat d'Airtime qui permet aux utilisateurs d'acheter des unités téléphoniques directement depuis leur portefeuille Machankura, pour eux-mêmes ou pour un tiers.

Fonctionnement du Flux

  1. L'utilisateur sélectionne un montant (ex : 1 000 F CFA) et l'opérateur (Orange, MTN, Moov, etc.)
  2. L'API NicePay est appelée via Machankura :
    • Débit du portefeuille BTC (conversion en XOF)
    • Déclenchement de l'achat d'Airtime via l'API NicePay
  3. Confirmation immédiate via USSD/WhatsApp
  4. L'utilisateur reçoit un SMS de recharge (provenant de l'opérateur mobile)

Spécifications Techniques

POST /api/v1/airtime

Paramètres de Requête

{
  "phone_number": "2250700000000",
  "amount": 1000,
  "operator": "ORANGE"
}

Réponse

{
  "success": true,
  "transaction_id": "ATX202310150001",
  "status": "completed",
  "message": "Recharge effectuée avec succès"
}

Couverture Disponible

  • Pays : Côte d'Ivoire (autres pays sur demande)
  • Opérateurs : Orange CI, MTN CI, Moov CI
  • Montants autorisés : 100 F à 50 000 F

Délais & Disponibilité

  • Traitement instantané (<10s)
  • Disponibilité 24h/24 – 7j/7

Virements Bancaires

NicePay propose une API bancaire robuste permettant à Machankura d'offrir des virements vers et depuis des comptes bancaires.

Virement Machankura → Compte Bancaire (Cash-Out)

Description

Permet à l'utilisateur d'envoyer des fonds de son portefeuille Machankura vers un compte bancaire local (XOF).

Flux Technique

  1. L'utilisateur saisit le montant, le nom de la banque, le numéro de compte.
  2. Conversion automatique BTC → XOF
  3. Appel API NicePay pour exécution du virement
  4. Confirmation transactionnelle en temps réel

Spécifications API

POST /api/v1/bank_transfer

Paramètres de Requête

{
  "account_number": "002589****",
  "bank_code": "CICI",
  "amount": 10000,
  "currency": "XOF"
}

Virement Compte Bancaire → Machankura (Cash-In)

Description

Permet à un utilisateur d'alimenter son portefeuille Machankura à partir de son compte bancaire.

Flux Technique

  1. L'utilisateur initie un virement via son interface bancaire vers un compte virtuel NicePay
  2. Dès réception des fonds, le système crédite le wallet Machankura en XOF (ou BTC après conversion)
  3. Notification temps réel via webhook

Spécifications API (Callback)

{
  "reference": "REF202510XX",
  "amount": 15000,
  "account_id": "WALLET_123456",
  "currency": "XOF",
  "status": "SUCCESS"
}

Couverture Actuelle

  • Pays : Côte d'Ivoire
  • Banques supportées : BNI, SGBCI, NSIA, Ecobank, UBA, etc.
  • Monnaie : XOF uniquement

Délai d'exécution

  • Instantané à H+1 selon la banque
  • Confirmation automatique par l'API NicePay

Sécurité

  • Authentification API par Token Bearer
  • Webhooks signés
  • Surveillance anti-fraude

Documentation API Complète

Cette section présente la documentation détaillée de toutes nos API avec des exemples d'utilisation dans différents langages de programmation.

Authentification

Toutes les requêtes API doivent inclure un token d'authentification dans l'en-tête HTTP.

Authorization: Bearer YOUR_API_TOKEN

Exemples d'Intégration


Warning: file_get_contents(): php_network_getaddresses: getaddrinfo for api.nicepaygroup.com failed: Name or service not known in /htdocs/Documentation.php on line 827

Warning: file_get_contents(https://api.nicepaygroup.com/v1/api/payment-links): Failed to open stream: php_network_getaddresses: getaddrinfo for api.nicepaygroup.com failed: Name or service not known in /htdocs/Documentation.php on line 827

Warning: Trying to access array offset on null in /htdocs/Documentation.php on line 830

Warning: Trying to access array offset on null in /htdocs/Documentation.php on line 833
Erreur :
// Exemple d'intégration JavaScript pour créer un lien de paiement
const apiUrl = 'https://api.nicepaygroup.com/v1/api/payment-links';
const apiToken = 'YOUR_API_TOKEN';

const data = {
    product_name: 'Produit ABC',
    description: 'Description du produit',
    amount: 25000,
    currency: 'XOF',
    fee_option: 'buyer_pays',
    redirect_url: 'https://votresite.com/merci'
};

fetch(apiUrl, {
    method: 'POST',
    headers: {
        'Authorization': `Bearer ${apiToken}`,
        'Content-Type': 'application/json'
    },
    body: JSON.stringify(data)
})
.then(response => response.json())
.then(result => {
    if (result.success) {
        console.log('Lien de paiement :', result.payment_link);
    } else {
        console.error('Erreur :', result.message);
    }
})
.catch(error => {
    console.error('Erreur réseau :', error);
});
# Exemple d'intégration Python pour créer un lien de paiement
import requests
import json

api_url = 'https://api.nicepaygroup.com/v1/api/payment-links'
api_token = 'YOUR_API_TOKEN'

data = {
    'product_name': 'Produit ABC',
    'description': 'Description du produit',
    'amount': 25000,
    'currency': 'XOF',
    'fee_option': 'buyer_pays',
    'redirect_url': 'https://votresite.com/merci'
}

headers = {
    'Authorization': f'Bearer {api_token}',
    'Content-Type': 'application/json'
}

response = requests.post(api_url, headers=headers, data=json.dumps(data))
result = response.json()

if result.get('success'):
    print(f"Lien de paiement : {result['payment_link']}")
else:
    print(f"Erreur : {result.get('message', 'Erreur inconnue')}")
# Exemple d'intégration cURL pour créer un lien de paiement
curl -X POST \
  https://api.nicepaygroup.com/v1/api/payment-links \
  -H 'Authorization: Bearer YOUR_API_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "product_name": "Produit ABC",
    "description": "Description du produit",
    "amount": 25000,
    "currency": "XOF",
    "fee_option": "buyer_pays",
    "redirect_url": "https://votresite.com/merci"
  }'

Guide d'Intégration

Ce guide vous aidera à intégrer rapidement les API NICE PAY dans votre application.

Étapes d'Intégration

  1. Créez un compte développeur sur notre plateforme
  2. Générez vos clés API depuis votre tableau de bord
  3. Testez vos intégrations avec l'environnement sandbox
  4. Implémentez les webhooks pour recevoir les notifications
  5. Passez en production après validation

Gestion des Erreurs

Toutes les API retournent des codes HTTP standard et des messages d'erreur détaillés.

Code HTTP Signification
200 Succès
400 Requête invalide
401 Non autorisé
403 Accès refusé
404 Ressource non trouvée
500 Erreur serveur

Webhooks

Configurez des webhooks pour recevoir des notifications en temps réel sur le statut de vos transactions.

{
  "event": "payment.completed",
  "data": {
    "transaction_id": "TRX202310150001",
    "amount": 25000,
    "currency": "XOF",
    "status": "completed",
    "timestamp": "2023-10-15T10:30:00Z"
  }
}

Support Technique

Notre équipe de support est disponible pour vous aider dans l'intégration de nos API.

Contact

  • dev-support@nicepaygroup.com
  • +225 07 57 36 53 85
  • Lun-Ven: 8h-18h
    Sam: 9h-13h