- Tech Docs

Monetize

How do I gain revenues from the network

When Bob, one of your customers, finalizes an order on your e-shop, Transactionale will send him non-competing and complementary offers from other companies in our network, gaining two benefits:

  1. you make Bob’s buying experience more pleasant with interesting offers (coupons, discounts) on other shops
  2. every time an offer generates a lead (i.e. Bob clicks on the ad and lands on the advertising site for the first time) you gain money

In addition, if you are also an advertiser, you can reinvest this money for your very own lead generation program, thus reducing the acquisition costs.

How does it technically work

  1. Bob orders on your shop
  2. Everytime he finalizes an order (which happens usually on the order confirmation page), you shop will notify us of the order completion with a call to our server
  3. As soon as we receive this call, Transactionale whill ship a transactional e-mail with the offers
  4. If Bob clicks on one of these offers, a lead is generated

If your shop is based on WooCommerce, PrestaShop or Magento we can provide ready-made integration plugins that will install with no effort and can be fully configured on your backend with virtually no technical involvement.

For all other scenarios, you can prompt the transactional email with our simple code integration snippets, as explained below.

What do I need to do (technical details)

Your shop must make us a call as soon as the order is confirmed.

This communication should not be delayed. We have ample evidence that the customer is much more likely to open the transactional email if he/she receives it with the order confirmation mail

If you delay the API call for some reason (f. ex. to do it in bulk calls at a certain point of the night), the open rate decreases dramatically, thus hindering any effectiveness of the network. The ideal scenario is that the user receives the transactional email right after the order confirmation email.

The integration details heavily depend upon your CMS/implementation and your server’s language.

Which data is sent

Here are the supported attributes for every transaction notification:

Name Description
country (string) The ISO 2-letter code of customer’s country ("IT", "DE", …)
email (string) The customer’s e-mail
first_name (string) The customer’s name
last_name (string) The customer’s surname
zip_code (string) ZIP code (or national equivalents); geolocalized offers are more effective
transaction_value (number, optional) Value of the transaction, without currency
transaction_currency (string, optional) Three-letter ISO code of the currency ("EUR", "GPB", …)
national_identification_number (string, optional) Personal nationwide identification code (like SSN, NIN in UK, codice fiscale in Italy…)
birth_year (string, optional) 4-digit birth year (es. "1976")
gender (string, optional) M or F
phone (string, optional) Phone number
  • If you integrate manually, the data must be encoded in JSON format (es.: "{"country":"IT","email":"john@example.com","zip_code":"12345","birth_year":"1976"}") and sent with the specifications described below
  • If you use one of the ready-made plugins for Prestashop or WooCommerce all the codification and sending duties will be automatically performed.

Integration examples

The API call is very simple. Here you will find some examples with the most commond server-side programming languages:

NOTE: you could also integrate this call client-side, but we strongly suggest server-side implementation for security reasons, because it could involve sensitive data. Anyway you are free to opt for the strategy you deem adequate.

Some notes:

  • We use Unirest in our examples, but feel free to use any framework or library capable of making HTTP POST requests
  • Remember to customise the variables in the examples - the snippet will not work as-is
  • You have a personal API key in the Integrate section of your account. Copy that key and subsitute it in the snippet where YOUR_API_KEY is noted
  • The HTTP request’s content type must be application/json (the example should already take care of this)
  • The body of the HTTP request must contain a JSON-encoded object with your data (the example should already take care of this)