Welcome to our support center

Developers

Live Payment Notification (LPN)

Prerequistes

This section expects prior knowledge and understanding from the sections indicated below. Please note that these areas are essential to obtaining a successful response and notifying your server upon completion.

  • Setting Up A Developer Account


Overview

LPN is used to get secure real-time updates on the status of your transactions. LPN works as a server-to-server push notification by sending a direct HTTP POST request to a URL on your system. You can setup your LPN handler URL HERE

Parameters

LPN will send data to your system as soon as a transaction has been processed by our transactional servers, the following HTTP POST data will be sent to your LPN URL:

  • status - This will always be either "accepted" or "declined".
    Use this field to determine if funds were deducted i.e status == 'accepted'.
  • identifier_id - Your unique Transaction Identifier if you created one for this transaction.
  • transaction_id - A unique identifier for this completed transaction.
    Note: this is a NOT the same as identifier_id above.
  • amount - The transaction dollar amount.
  • name_on_card - The name on card used for this transaction.
  • customer_email - Will be set if the customer supplied an email address on the payment page
  • currency - The currency that the transaction was performed in.
    For a full list of these, please see Available Currencies.
  • td_user_data - The custom user data pased into the original Transaction Identifier API call.
    This field is useful for passing back custom data to your system e.g. a product or order code.
  • token - The token that points to the customers card data on our system.
    This is only returned if the user selects 'Store my details' on the payments page, and 'Tokenization option' is set to yes in the settings section.

SECURITY NOTE:

We recommend that you add some extra security validation to the LPN URL on your system.
There are two easy ways you can make your LPN URL very safe:

1) Verify the transaction by using the Verify Transaction API (this is the preferred method)

2) Use your firewall, web server or server-side script to block ALL outside access to the LPN URL and only allow access from api.cybercompay.com (202.89.40.57)

Responses

The information passed back from the Live Payment Notifier varies a lot and each transaction is different to the next. As an example response to test against can be seen below.

{  
   "status":"accepted",
   "identifier_id":"7975FAA0E527F",
   "transaction_id":"0EDF2397GAE34",
   "amount":"1.99",
   "name_on_card":"Ben Billing Biller",
   "customer_email":"bbb@gmail.com",
   "currency":"NZD",
   "td_user_data":"",
   "token":"98HD3287EG1SE"
}