Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developers.ligdicash.com/llms.txt

Use this file to discover all available pages before exploring further.

On an inbound payment, LigdiCash sends two POST requests to your callback_url — one in application/json, one in application/x-www-form-urlencoded. Both contain the same data. This page details the JSON structure.

Full example

{
  "date": "2026-05-09 07:20:23+00",
  "wiki": "https://client.ligdicash.com/wiki/confirmInvoice",
  "token": "",
  "amount": 4200,
  "status": "completed",
  "montant": 4200,
  "customer": "22676275726",
  "oreference": "",
  "request_id": "P2777636082026",
  "custom_data": [
    {
      "keyof_customdata": "transaction_id",
      "valueof_customdata": "ART5A7044E5",
      "datecreation_customdata": "2026-05-09 07:20:23.362788"
    },
    {
      "keyof_customdata": "hash",
      "valueof_customdata": "f918c54d54cdc334ade09f8c228a224b1d3df646250c84dcdd99af528ddcd450",
      "datecreation_customdata": "2026-05-09 07:20:23.362788"
    },
    {
      "keyof_customdata": "logfile",
      "valueof_customdata": "2026050907202369fee03756652",
      "datecreation_customdata": "2026-05-09 07:20:23.362788"
    }
  ],
  "description": "",
  "external_id": "ART5A7044E5",
  "operator_id": "11",
  "operator_name": "ORANGE BURKINA",
  "response_code": "00",
  "response_text": "",
  "customer_details": {
    "email": "firstname.lastname@example.com",
    "phone": "22676275726",
    "details": "",
    "lastname": "LASTNAME",
    "firstname": "Firstname"
  }
}

Main fields

date
string
Event timestamp in the format YYYY-MM-DD HH:MM:SS+TZ.
response_code
string
Result code. "00" = success. Any other value indicates an error — consult wiki for details.
status
string
Transaction status: "completed", "pending", or "notcompleted". Base your business logic on this field.
amount
integer
Transaction amount in XOF.
montant
integer
Same as amount. Both fields coexist in all LigdiCash responses.
customer
string
Payer’s phone number, with country code, no + or spaces.
request_id
string
Unique request identifier generated by LigdiCash. Use it for deduplication when custom_data is empty or unavailable.
external_id
string
Concatenation of the values of all custom_data fields whose key contains "id". Can be reliable if you only have one field with "id" in the name — but parse custom_data directly for a guaranteed result.
token
string
Always empty (""). This field cannot be used for verification — use the token stored at transaction creation.
operator_id
string
Identifier of the operator that processed the payment (e.g. "11" for Orange Burkina).
operator_name
string
Operator name (e.g. "ORANGE BURKINA").
description
string
Transaction description. Can be empty.
oreference
string
Operator reference. Can be empty.
response_text
string
Textual label of the result. Can be empty.
wiki
string
URL to the documentation of error codes for this endpoint. Consult when response_code !== "00".

The custom_data array

custom_data
array
Array of custom data associated with the transaction. Contains your merchant fields plus the fields automatically added by LigdiCash.
LigdiCash systematically adds two entries to your custom_data:
keyof_customdataOriginDescription
hashLigdiCashTransaction hash generated by LigdiCash
logfileLigdiCashInternal LigdiCash log reference
Always filter on keyof_customdata to extract your own fields. See Parse custom_data.

Customer information

customer_details
object
Payer information when available.