Zpn Guide (Advanced Users Only)

Note: This service is intended for use by experienced programmers. Users without extensive programming skills should refrain from implementing the ZPN without first enlisting the services of an experienced programmer.


Zaxaa Payment Notification or ZPN is a notification system that sends payment details and customer's information to your server. You can use the given information for any post-payment operations, such as:

  • Trigger order fulfillment or enable media downloads when a payment is made or a check clears
  • Database update (e.g. list of customers, accounting records, inventory, etc)
  • Any specialized “action” based on the kind of transaction
  • Integrate Zaxaa with external scripts

When you turn on the ZPN feature, Zaxaa notifies you as soon as a transaction has been made successfully and posts all the payment details to a URL specifies by you (ZPN Listener).

ZPN Listener is the script that you host on your own server that will process and handle the payment notification message sent by Zaxaa. You (or your programmer) can write the script using web programming language(s) or your choice.

Zaxaa can send notifications for these type of transactions:

  • One-time payments
  • Recurring payments and subscriptions
  • Dispute, chargebacks and refunds

Enabling ZPN In Your Zaxaa Account

Let's assume you've already created products and set up the sales funnel in your Zaxaa account, and want to integrate the ZPN with your custom membership script.

Here's how you can enable the ZPN feature:

  • Login to your Zaxaa account, make sure you're in "advanced" view (look for the floating bar on the right). If it says "simple", you need to click on it and switch to "advanced" view.
  • Go to "Products" >> edit one of your "Front-End" product that you want to integrate with the script.
  • In "General Settings" tab, scroll down to find the "Third Party Script Integration" option, and set it to "Yes."
  • Enter your ZPN Listener URL in the "Notification Handler URL" field.
  • Save your changes

Note #1: If you enable the multi-price feature (a product has more than one price variant), then there'll be multiple ZPN URL fields too. For example, if someone bought your product for price variant #1, then Zaxaa will send the ZPN notification to ZPN URL #1. If someone bought price variant #2, then Zaxaa will send it to ZPN URL #2. In other words, you will need to enter multiple ZPN URLs when using the multi-price feature. You can enter a different ZPN handler script URL for each price variant or simply enter the same ZPN handler script URL.

Note #2: If you have setup the "OTO" funnel in your front-end product settings, Zaxaa will also send notification each time your customers purchase the OTO. ZPN will be sent to ZPN URL specified on the front end product settings. ZPN for OTO transactions may contain information or variables for multiple products, while ZPN for front-end transactions will ONLY contain information for a single product.

Note #3: When using the multi-price feature, the OTO ZPN will depend on the Front-End's price variant. For example, if the customer bought price variant #2 and then the he/she also bought the OTO, then both ZPN notification for Front-End and OTO will be sent to the frontend's ZPN handler script URL #2.

Note #4: Zaxaa also have the "Evergreen OTO" feature that allows customers to buy the OTO without having to buy the front-end first. If this is the case, ZPN will be sent directly to the ZPN URL that is specified in the OTO product settings.

Another important data that will be needed by your ZPN listener script is your unique API Signature. Your script must use your own API signature to verify the validity of the notifications.

How to obtain your API Signature:

  • Login to your Zaxaa account
  • Navigate to "Settings -> Account Settings"
  • Click on the "Show API Signature" button

Please see the ZPN sample code to find out how to use your API Signature to prevent fraud.

How It Works

Once you've enabled ZPN in your Zaxaa account, ZPN will be triggered every time a new transaction is created or an action is taken upon a transaction in your Zaxaa account.

Here's a quick illustration of how this works:

  1. An action occurs in Zaxaa (purchase, rebill, refunds, etc)
  2. Zaxaa send payment details and customer’s information variables via HTTP FORM POST to your ZPN Listener
  3. To prevent fraud, your ZPN listener will verify the validity of the received notification before proceeding to the next step
  4. If the notification is valid, your ZPN listener may processes the variables

Code Samples

More Information

Click Here To Learn More About The ZPN Variables

Related Information : Zaxaa Payment Data Transfer (PDT)

login dashboard get started