L'intégration de FedaPay dans votre application ou votre site web ne nécessitant que trois étapes, peut commencer dès que vous créez un compte FedaPay :

  1. Obtenez vos clés API afin que FedaPay puisse authentifier vos requêtes API
  2. Installez une librairie API afin que votre intégration puisse interagir avec FedaPay
  3. Faites un test de requêtes API pour vous assurer que tout est en place et fonctionne bien


Etape 1: Obtenir vos clés API

FedaPay authentifie vos requêtes à l'aide des clés API de votre compte. Si vous n'incluez pas votre clé lorsque vous effectuez une requête ou si vous utilisez une clé incorrecte ou obsolète, FedaPay renvoie une erreur.

Chaque compte est fourni avec deux paires de clés: une pour les tests et une pour les transactions en live. Toutes les requêtes via l'API existent en mode test ou en mode live, et les objets (clients, transactions) dans un mode ne peuvent pas être manipulés par des objets dans l'autre.

Vos clés API sont disponibles au niveau du tableau de bord de votre compte(lien). Nous incluons des clés API générées aléatoirement dans nos exemples de code. Remplacez-les par les vôtres.

Etape 2: Installer une librairie API

Nous fournissons des librairies pour différents langages de programmation et plates-formes mobiles.

La librairie PHP peut être installé via Composer

composer require fedapay/fedapay-php

Installer via npm

npm install fedapay
Consultez la documentation de l’API ou la source PHP sur GitHub.

Etape 3: Faire un test de requêtes API

Pour vérifier que votre intégration fonctionne correctement, effectuez un test de requêtes via l'API à l'aide de votre clé secrète de test pour créer une transaction.

curl -X POST \
  https://sandbox.fedapay.com/v1/transactions \
  -H 'Authorization: Bearer VOTRE_CLE_API' \
  -H 'Content-Type: application/json' \
  -d '{
        "description" : "Transaction for john.doe@example.com",
        "amount" : 2000,
        "currency" : {"iso" : "XOF"},
        "callback_url" : "https://maplateforme.com/callback",
        "customer" : {
            "firstname" : "John",
            "lastname" : "Doe",
            "email" : "john.doe@example.com",
            "phone_number" : {
                "number" : "+22997808080",
                "country" : "bj"
            }
          }
      }'
/* Remplacez VOTRE_CLE_API par votre véritable clé API */
  \FedaPay\FedaPay::setApiKey("VOTRE_CLE_API");

  /* Précisez si vous souhaitez exécuter votre requête en mode test ou live */
  \FedaPay\FedaPay::setEnvironment('sandbox'); //ou setEnvironment('live');

  /* Créer la transaction */
  \FedaPay\Transaction::create(array(
    "description" => "Transaction for john.doe@example.com",
    "amount" => 2000,
    "currency" => ["iso" => "XOF"],
    "callback_url" => "https://maplateforme.com/callback",
    "customer" => [
        "firstname" => "John",
        "lastname" => "Doe",
        "email" => "john.doe@example.com",
        "phone_number" => [
            "number" => "+22997808080",
            "country" => "bj"
        ]
    ]
  ));
const { FedaPay, Transaction } = require('fedapay')

  /* Remplacez VOTRE_CLE_API par votre véritable clé API */
  FedaPay.setApiKey("VOTRE_CLE_API");

  /* Précisez si vous souhaitez exécuter votre requête en mode test ou live */
  FedaPay.setEnvironment('sandbox'); //ou setEnvironment('live');

  /* Créer la transaction */
  const transaction = await Transaction.create({
    description: 'Description',
    amount: 2000,
    callback_url: 'https://maplateforme.com/callback',
    currency: {
        iso: 'XOF'
    },
    customer: {
        firstname: 'John',
        lastname: 'Doe',
        email: 'john.doe@example.com',
        phone_number: {
            number: '97808080',
            country: 'BJ'
        }
    }
  });
FedaPay retourne un objet transaction en réponse à votre requête.
{
  "v1/transaction": {
    "klass": "v1/transaction",
    "id": 7450,
    "transaction_key": null,
    "reference": "1530805389377",
    "amount": 2000,
    "description": "Transaction for john.doe@example.com",
    "callback_url": "https://feda-store.com/checkout",
    "status": "pending",
    "customer_id": 105,
    "currency_id": 1,
    "mode": null,
    "metadata": {},
    "created_at": "2018-07-05T15:43:09.377Z",
    "updated_at": "2018-07-05T15:43:09.377Z",
    "approved_at": null,
    "canceled_at": null,
    "declined_at": null,
    "refunded_at": null,
    "transferred_at": null
  }
}

Une fois qe vous avez réussi votre requête via l'API, vous êtes prêt à intégrer FedaPay.