This page outlines all possible ways of injecting transactional data into Mapp Engage.

Injection with a Mapp Connect integration

Mapp Connect currently supports saving transaction data from:

For more information, see Mapp Connect.

Automated Imports

Schedule a job in Whiteboard.

When following the structure presented below, remember that the field "user_id" needs to be an email address. Importing transactions will not trigger a Whiteboard event "New Transaction Registered".

Schedule a job in Whiteboard..

Example
transaction_sample_V2.csv


Manual import from UI

  1. Go to Administration > E-commerce > System Transactions
  2. Manually import transactions using this sample file.

For more details, see Manual Import & Search of eCommerce Data.

Data injection with API

Storing data without email sendout

All required fields need to be provided to save the record. Learn more...

Storing data with email sendout

Using REST call sendTransactionalWithEventDetails, you can send Transactional (order confirmation) email and store data under Transactional Related Data at the same time. 

Read more here.

Transactions will be stored for users (email) already existing in the designated Mapp Engage instance. 

 Example of call body
{
"parameters":
   [
       {"name" : "Parameter Name 1","value" : "Parameter Value 1"},
       {"name" : "Parameter Name 2","value": "Parameter Value 2"}
   ],
  "attachments": [
    {
      "name": "twitter_logo.png",
      "contentType": "image/png",
      "content": "iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAASFJREFUeNqslM0NgkAQhRdiAdiAgQ6468EO1INntQOpwFABdqBe9aAdiIl3twS1AbECfJPMkhVZftSXjJPsDh87z2WsNE1Fb3d3z+POVVQIdQ5ShJhqywdEgEgQQ1qwutsbFT4QM4DXFcALwi3YJqDD2bPx4/PGCg/OSw46NwAFA0nU7d7ObUYAHxF+wYMDUU8jiz19aG9TihEbyuS3oSavNmoT5Sm1thA/CkCLsvJ0In5XdnsIKkv+gCaSGZQ8QF7+AXrST0peBH8Ar9+grKfuS1Mgd/wBjb/0lmChvmBr14GgMy5qoiA/N+zcPSNfPN2fCoVF86KlDQxqvc93tl8DaBxALcAi/qLqKuaWpalAffsOz8iB4ZRSzYIymNJLgAEAYsJkJOLW//gAAAAASUVORK5CYII="
    }
  ],
"eventDetails":
   [
      {
          "itemDetails":[
                {"name":"productName","value":"Chair C1"},
                {"name":"brandName", "value":"aaa aaa"}
              ]
      },
      {
          "itemDetails":[
                {"name":"productName","value":"Sofa S1"},
                {"name":"brandName", "value":"bbb bbb"}
              ]
      },
      {
          "itemDetails":[
               {"name":"productName","value":"Bed B1"},
                {"name":"brandName", "value":"cccc cccc"}
              ]
      }
   ]
}
XML
 Example of a HTML prepared message
<html>
  
<body>
  <p>Dear
    <%user.firstname%>
      <%user.lastname%>
  </p>
  <p> Thank you for shopping , please see your order details below: </p>
  <br>
      <table class="order-details">
        <tr>
          <td class="address-details">
            <h3>Billing Info</h3>
            <p>
              <%parameter.billingAddress%>
            </p>
          </td>
          <td class="address-details">
            <h3>Shipping Info</h3>
            <p>
              <%parameter.shippingAddress%>
            </p>
          </td>
        </tr>
        <tr>
          <td class="method-info">
            <h3>Payment Method</h3>
            <p>
              <%parameter.paymentInfo%>
            </p>
          </td>
          <td class="method-info">
            <h3>Shipping Method</h3>
            <p>
              <%parameter.shippingMethod%>
            </p>
  
            <%InsertIf expression="${not empty parameter['shippingMessage']}" id="1"%>
              <h3>Shipping message:</h3>
              <p>
                <%parameter.shippingMessage%>
              </p>
              <%/InsertIf%>
          </td>
        </tr>
      </table>
  
      <%ForEach var="product" items="${transaction_details}"%>
        <table width="100%" cellpadding="0" cellspacing="0" border="0" style="width:100%;">
          <tr>
            <td align="top" style="padding-top:20px;">
              <table width="100%" cellpadding="0" cellspacing="0" border="0" style="width:100%;">
                <tr>
                  <td align="center" class="someCSSSstyle">
                    <a href="<%${product['productURL']}%>" style="text-decoration:none;">
              <img src="<%${product['imageURL']}%>" width="280" border="0" style="display:block; width:100%; max-width:280px;" /></a>
                  </td>
                </tr>
                <tr>
                  <td style="padding-top:20px;">
                    <table width="100%" cellpadding="0" cellspacing="0" border="0" style="width:100%;">
                      <tr>
                        <td align="center" style="font-family: Arial, Helvetica, sans-serif; font-size:14px; line-height:18px; color:#aead9e; text-align:center;">
                          <a href="url" target="_blank" style="text-decoration:none; color:#aead9e;">
                           <span style="font-family: 'Open Sans', Arial, Helvetica, sans-serif !important; font-weight:400;">
                          <%${product['brand']}%>
                           </span>
                           </a>
                        </td>
                      </tr>
                      <tr>
                        <td align="center" style="font-family: Arial, Helvetica, sans-serif; font-size:16px; line-height:20px; color:#57574f; text-align:center; padding-top:5px;">
                          <a href="url" target="_blank" style="text-decoration:none; color:#57574f;">
                           <span style="font-family: 'Open Sans', Arial, Helvetica, sans-serif !important; font-weight:400;">
                          <%${product['productName']}%>
                           </span>
                           </a>
                        </td>
                      </tr>
                      <tr>
                        <td align="center" style="font-family: Arial, Helvetica, sans-serif; font-size:16px; line-height:20px; color:#57574f; text-align:center; padding-top:5px;">
                          <a href="url" target="_blank" style="text-decoration:none; color:#57574f;">
                           <span style="font-family: 'Open Sans', Arial, Helvetica, sans-serif !important; font-weight:400;">
                          Quantity: <%${product['productQuantity']}%>, Price per item: <%${product['productPrice']}%> <%${product['currency']}%>
                           </span>
                           </a>
                        </td>
                      </tr>
                    </table>
                  </td>
                </tr>
              </table>
            </td>
          </tr>
        </table>
        <%/ForEach%>
  
          <table class="order-details">
            <tr>
              <td class="address-details">
                <h3>Shiping Price:</h3>
                <p>
                  <%parameter.shippingTotal%>
                </p>
              </td>
              <td class="address-details">
                <h3>Order items total:</h3>
                <p>
                  <%parameter.orderItemsTotal%>
                </p>
              </td>
            </tr>
          </table>
  
          <br>
          <h2> TOTAL:
            <%parameter.orderTotal%>
              <%${product['currency']}%>
          </h2>
          <br>
  
          <p>Greetings!</p>
</body>
  
</html>
XML

Mapp Acquire Transaction Event

Mapp Acquire allows storing order data in Mapp Engage Transactional Related Data table.

Requirements

To setup the Transaction Event properly, you need to have Google E-commerce Data Layer set up in your Google Tag Manager. 

Storing data works only for users matched between Mapp Acquire and Mapp Engage. Other scripts might block standard setup and a custom script is required. 

Related Topics