Lipisha REST APIs


Reverse Transaction


API Description

This API call reverses one or more transactions and refunds the payments back to the customers. The API call requires that there is enough balance in the account to meet the amount to be reversed.

API Endpoint

The API service endpoint for making the Reverse Transaction API call is:

http://developer.lipisha.com/index.php/v2/api/reverse_transaction

API Request

The API request is made via HTTP POST and must be url encoded. Some of the parameters are required while others are optional. The parameters are:

Parameter Description Example
api_key Unique string specifying merchant's Lipisha API key.

This should match the api key that you have generated for your Lipisha account
3aa67677e8bf1d4c8fe886a38c03a860
api_signature Unique string specifying merchant's Lipisha API signature.

This should match the api signature that you have generated for your Lipisha account
SYetmwsNnb5bwaZRyeQ..........KhZNNkCoEx+5x=
api_version String specifying the version of the API in use 1.3.0
api_type String specifying the type of handshake or IPN call Callback
transaction List of one or more comma-separated strings specifying the unique codes that identify transactions. E.g the M-Pesa confirmation code received after carrying out an M-Pesa payment NMQR38SJDI, DS54EX316

API Response

The API reponse will be returned as JSON. Each response will contain a status and content section. The parameters are:

Parameter Description Example
Status
status String specifying whether API Call executed successfully or failed SUCCESS
status_code Integers specifying status code of the API Call result 0000
status_description String containing description of the status Transactions found
Content
Array Of Transactions
transaction Unique code that identify transaction. E.g the M-Pesa confirmation code received after carrying out an M-Pesa payment NMQR38SJDI
transaction_type String specifying type of transaction.
Possible transaction types include:
  • Payment
Payment
transaction_method String specifying the method used to carry out the transaction.
Possible transaction methods include:
  • Paybill (M-Pesa)
  • Paybill (Airtel Money)
  • Paybill (Orange Money)
  • Paybill (yuCash)
Paybill (M-Pesa)
transaction_date String specifying date and time when transaction was carried out.
In the format: YYYY-MM-DD HH:mm:ss
2013-07-18 12:23:57
transaction_account_name String specifying the name of the transaction account in which the transaction was carried out. Test Account
transaction_account_number Integers specifying number of the transaction account in which the transaction were carried out. 00155
transaction_reference String specifying the reference the customer used when entering transactions. E.g. invoice number or receipt number LS0009
transaction_amount Number specifying the value of the transactions. Note that withdrawals and other charges e.g. fees are indicated as a negative amount 350.0000
transaction_status Strings specifying the status of a transaction.
Possible transaction status include:
  • Reversed
Completed
transaction_name String specifying name of the person or entity that made a transaction. JOHN JANE DOE
transaction_mobile_number Integers specifying mobile number of the person or entity that made a transaction. 254722002222
transaction_email String specifying email address of the person or entity that made a transaction. test@test.com

JSON Reponse
{
    "status": {
        "status_code": 0,
        "status_description": "Transaction Reversed",
        "status": "SUCCESS"
    },
    "content": [
	{
	    "transaction": "NMQR38SJDI",
            "transaction_type": "Payment",
            "transaction_method": "Paybill (M-Pesa)",
            "transaction_date": "2013-07-18 12:23:57",
            "transaction_account_name": "Test Account",
            "transaction_account_number": "00155",
            "transaction_reference": "LS0009",
            "transaction_amount": "350.0000",
            "transaction_status": "Reversed",
            "transaction_name": "JOHN JANE DOE",
            "transaction_mobile_number": "254722002222",
            "transaction_email": ""
    	},
	{
            "transaction": "DS54EX316",
            "transaction_type": "Fees",
            "transaction_method": "Paybill (M-Pesa)",
            "transaction_date": "2013-07-18 15:13:21",
            "transaction_account_name": "Test Account",
            "transaction_account_number": "00155",
            "transaction_reference": "LS0009",
            "transaction_amount": "1.5000",
            "transaction_status": "Reversed",
            "transaction_name": "JOHN JANE DOE",
            "transaction_mobile_number": "254722002222",
            "transaction_email": ""
    	}
    ]
}

Fork me on GitHub