Single Email Fulfillment for a Product Bundle
Overview
When creating a product bundle to offer several products for sale as one combined product with an overall discounted price, instead of an Email Fulfillment being set up and sent for each product in the bundle, you can create a single Email Fulfillment that will provide delivery information, including download links and license codes, for all the products in the bundle.Single Email Fulfillment Setup
Once you create your product bundle and add your products as Product Options, go to SpringBoard's Store Home » Products and Pages and select your product bundle. Click to Add a Fulfillment Action. Select Email / Web Notification and click Next.
Under Email Text Contents, enter in the following code that will display all download and license information for all products that are part of the bundle, including products that have a custom template key set on File Fulfillments (if there is more than one file to download for any product in the bundle) or License Fulfillments (if there is more than one license code for any product in the bundle), and that will only print a license name if the license name is name based.
<repeat value="#{orderItem.allItems}" var="childItem"> #{childItem.display} <repeat value="#{childItem.allFulfillment}" var="fulfillment"> <if test="#{fulfillment.type.value eq 'file'}"> Download<if test="#{fulfillment.key ne 'file'}"> (#{fulfillment.key})</if>: #{fulfillment.url}</if> <if test="#{fulfillment.type.value eq 'license'}"> <if has="#{fulfillment.licenseName}">License Name<if test="#{fulfillment.key ne 'license'}"> (#{fulfillment.key})</if>: #{fulfillment.licenseName}</if> License Code<if test="#{fulfillment.licenses.size gt 1}">s</if><if test="#{fulfillment.key ne 'license'}"> (#{fulfillment.key})</if>: #{fulfillment.licenses.list}</if> </repeat>----------------------------------------------------------------------- </repeat>
If you have an html version of your email fulfillment, click the Email (HTML) tab. Under Email XHTML Contents, enter in the following code:
<repeat value="#{orderItem.allItems}" var="childItem">
<strong>#{childItem.display}</strong><br/>
<repeat value="#{childItem.allFulfillment}" var="fulfillment">
<if test="#{fulfillment.type.value eq 'file'}">
Download<if test="#{fulfillment.key ne 'file'}"> (#{fulfillment.key})</if>: <a href="#{fulfillment.url}">#{fulfillment.url}</a><br/></if>
<if test="#{fulfillment.type.value eq 'license'}">
<if has="#{fulfillment.licenseName}">License Name<if test="#{fulfillment.key ne 'license'}"> (#{fulfillment.key})</if>: #{fulfillment.licenseName}<br/></if>
License Code<if test="#{fulfillment.licenses.size gt 1}">s</if><if test="#{fulfillment.key ne 'license'}"> (#{fulfillment.key})</if>: <code>#{fulfillment.licenses.list}</code><br/></if>
</repeat><hr/>
</repeat>
Click Create.
Go to SpringBoard's Store Home » Products and Pages and select your product bundle again. Click on each of the Product Options that have been added to the product bundle, and if an Email Fulfillment has been set on that product, click to Edit the Email Fulfillment.
Click on the Advanced tab. Under Fulfillment Applicability, select Applies to Base Products. Click Save. This setting will prevent the Email Fulfillment from being sent when the product is sold as a Product Option, as is the case in a bundle.
Now all of the delivery information for multiple products that are part of the bundle will be included in a single email, as shown below.