Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Inner workflow

This workflow is applicable to both success.php and callback.php.

1. Seen list

When the system accepts a transaction, it first checks if the transaction has been seen before by the system. If it has been, it will ignore the transaction.

The transaction seen list is stored in the redis cache with the key postbacked-transactions.

Since redis saves every 15 seconds after an update, it is possible that a postback may be sent twice during a power off. For this reason, it is recommended to turn off the network for the server for 30 seconds before the power off.

2. Per-offer skip rule

There is a rule that can be set that the system may not send every Nth postback per offer. This is more detailed in the skip some transactions section.

If the rule decides that the postback should be skipped and the transaction is processed via success.php, the user will be redirected back to the offer with parameter ?pixel=null.

Total schematic

  1. The user is completed a purchase and is redirected to success.php
  2. The user loads the success.php page During the time that success.php loads, the workflow is executed:
    1. This transaction was not seen before

    2. Log the transaction as seen

      Important: This will be actually written to disk in only 15 seconds

    3. Ask the per-offer skip rule if skip

      1. If skipped, there will be an additional ?pixel=null on the redirect out of the page
    4. If not skipped, the postback will be sent. The data supplied by konnektive to the user will be used to fill out the postback URL

      Important: There is a security concern since the data is actually passed on to the user, and the user passes that data on to us. Therefore, we trust whatever the user gives us, which is not secure by any means.

  3. If the user did not reach success.php, konnektive will report the transaction to callback.php in 5-10 minutes after the fact, and similar processing will take place with the one exception that there will be no ?pixel=null appended to the redirect out of the page.