LogoLuckyFastPay Docs

Command Palette

Search for a command to run...

Transaction REST API

L’API Transaction REST permet d’initier des transactions de paiement via les services intégrés (Orange Money (Centrafrique)). L’opérateur est déterminé automatiquement en fonction du numéro du client.

format

En-têtes

Méthode POST
Url de base https://api.luckyfastpay.pro
Chemin /{code-url}/rest
Encodage application/json

En-têtes requis

  • Content-Type: application/json
  • X-Secret: sk_live_xxx
  • X-Callback-MediaType: application/json (optionnel)

À propos de X-Callback-MediaType

Spécifie le format du callback envoyé par LuckyFastPay à la fin de la transaction.

  • `application/json` (par défaut)
  • `application/xml` (optionnel)
  • `text/xml` (optionnel)
Cet en-tête s’applique uniquement aux transactions de type `PAYMENT`.

Paramètres

NomEmplacementTypeObligatoireDescription
code-urlpathstringOuiCode URL marchand
X-SecretheaderstringOuiVotre clé secrète
X-Callback-MediaTypeheaderstringNonFormat de données de l'objet callback

Corps de la requête (JSON)

NomTypeObligatoireDescription
agentstringNonIdentifiant de l'agent
amountnumberOuiMontant de la transaction (>150 XAF)
productstringNonNom du produit
referencestringOuiRéférence unique (max 15 caractères).
servicestringNonService de transaction. Pour cette API, utilisez RESTFUL.
callback_url_codestringNonCode de l’URL de callback (requis pour PAYMENT).
customer_account_numberstringNonNuméro du client (20 caractères max)
operation_account_codestringOuiCode du compte d'opération
transaction_typestringOuiType de transaction, par exemple PAYMENT ou GIVE_CHANGE.
owner_chargestringOuiEntité supportant les frais LuckyFastPay : MERCHANT (défaut) ou CUSTOMER
operator_owner_chargestringNonEntité supportant les frais opérateur
free_infostringNonInformation libre
operator_codestringOuiCode opérateur du numéro client à débiter.

Exemples

Exemple de requête (PAYMENT)

Langage
curl --location 'https://api.luckyfastpay.pro/XXXXXXXXXX/rest' \
--header 'X-Secret: sk_live_xxx' \
--header 'X-Callback-MediaType: application/json' \
--header 'Content-Type: application/json' \
--data {
  "agent": "AGENT-1",
  "amount": 600,
  "reference": "5632907",
  "service": "RESTFUL",
  "callback_url_code": "HPPPY",
  "customer_account_number": "074140864",
  "operation_account_code": "ACC_6756EE73253F6",
  "transaction_type": "PAYMENT",
  "owner_charge": "MERCHANT",
  "operator_owner_charge": "MERCHANT",
  "operator_code": "ORANGE_MONEY"
}

Exemple de réponse (PENDING)

{
  "status" "PENDING",
  "status_code" "200",
  "operator_code" "ORANGE_MONEY",
  "transaction_id" "PAY240420250001",
  "reference" "5632907",
  "operation_account_code" "ACC_6756EE73253F6",
  "message" "Votre demande de paiement 5632907 a été initiée avec succès et est en cours de traitement."
}

Exemple de réponse (FAILED)

{
  "status" "FAILED",
  "status_code" "400",
  "operator_code" "ORANGE_MONEY",
  "transaction_id" "PAY240420250001",
  "reference" "5632907",
  "operation_account_code" "ACC_6756EE73253F6",
  "message" "Votre demande de paiement 5632907 a échoué."
}

À propos du callback

Une fois la transaction finalisée (SUCCESS ou FAILED), LuckyFastPay envoie une notification (callback) à l’URL configurée.

Exemple de callback

{
  "transaction_id" "PAY240420250001",
  "reference" "REF123456",
  "status" "SUCCESS",
  "amount" 200,
  "customer_account_number" "066820866",
  "fees" 5,
  "total_amount" 205,
  "owner_charge" "CUSTOMER",
  "free_info" "Paiement de test",
  "transaction_type" "PAYMENT",
  "status_code" "200",
  "operator_code" "ORANGE_MONEY",
  "operation_account_code" "ACC_6756EE73253F6",
  "terminal_id" "12345",
  "terminal_label" "Terminal principal",
  "operator_owner_charge" "MERCHANT",
  "operator_fees" 3,
  "amount_debited" 205,
  "amount_credited" 200
}

Pourquoi répondre au callback ?

La réponse au callback permet à LuckyFastPay de :

  • S’assurer que vous avez bien reçu la notification
  • Considérer la livraison du callback comme réussie

Réponse attendue (accusé de réception)

Lors de la réception d'un callback, pour confirmer que vous l'avez bien reçu, vous devez répondre avec `response_code` and `transaction_id`. Cette réponse au callback est obligatoire en environnement de test afin de valider les tests effectués.

{
  "response_code" 200,
  "transaction_id" "PAY240420250001"
}

Exemple de réponse GIVE_CHANGE

{
  "status" "SUCCESS",
  "status_code" "200",
  "operator_code" "ORANGE_MONEY",
  "transaction_id" "GCH171124000173",
  "reference" "REF181127519",
  "operation_account_code" "ACC_672CD66E148BD",
  "message" "Votre transaction REF181127519 a été effectué avec succès"
}