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
- The user is completed a purchase and is redirected to
success.php - The user loads the
success.phppage During the time thatsuccess.phploads, the workflow is executed:-
This transaction was not seen before
-
Log the transaction as seen
Important: This will be actually written to disk in only 15 seconds
-
Ask the per-offer skip rule if skip
- If skipped, there will be an additional
?pixel=nullon the redirect out of the page
- If skipped, there will be an additional
-
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.
-
- If the user did not reach
success.php, konnektive will report the transaction tocallback.phpin 5-10 minutes after the fact, and similar processing will take place with the one exception that there will be no?pixel=nullappended to the redirect out of the page.