The Limio for Salesforce Managed Package comes with an out of the box pre-built Salesforce Flow that allows to create a new subscription for a customer, in the context of a case record.
When Limio for Salesforce is installed, the flow is created in the org as "Limio Acquisition Journey", and can be found in the list of flows.
Because this flow is a template one, it can be copied and customised to accommodate for customer specific requirements, that are not necessarily part of the master flow.
This document provides an overview of the master flow, what its component are for, and where to add customisations, if required.
Overall, the acquisition journey consists of the following steps:
- search for the relevant offer from the Limio offer catalog
- customise the relevant information such as quantity
- specify a payment method
- submit the order
Pre-requisite: Pass the recordId
The flow is designed to work in the context of a Salesforce Case record. As such, the input variable recordId must be populated with a Salesforce case record Id at the beginning of the flow.
Step: Default Customer Country
The default customer country is retrieved in the flow from Limio via the apex class "Get Purchase Country". This is the purchase country associated to the customer record in limio.
The default country being used can be changed, see the relevant article Customise the Acquisition Flow
Step: Offer Selection
The offer selection is implemented with the custom lightning component Limio Offer Catalog
This component loads the offers catalog from Limio. The default country the catalog is initiated with is the one retrieved in the previous step.
In order to move on to the next step the user must select an offer, simply by clicking a row in the table.
Step: Order Data
For an acquisition journey, the user can customise the start date and quantity for the selected offer.. Currently, editing start date is not supported, and it's always defaulted to the current's date, and made read only. As for quantity, this is made editable only if the selected Limio offer has the Allow Multibuy property set to true. If not, the quantity will be read only and set to 1 by default.
Optional Step: Delivery Address
If the selected offer includes a physical product (e.g. magazine) that requires a delivery address, the delivery address component is shown on the next step.
The Address Book is retrieved from Limio by the apex class "Get Customer Address", and it returns the list of all addresses from the customer record in Limio.
This list can be customised, see the relevant article Customise the Acquisition Flow
Step: Payment Selection
This steps shows the supported payment methods configured within the flow.
Since this uses the standard picklist flow component, payment methods can be configured directly within this component, as picklist choices.
Once the relevant payment method is selected, click next to navigate to the dedicated payment capture page.
Step: Supported Payments
At the moment, only two payment methods are supported: credit card via zuora iframe, and direct debit, also via zuora iframe.
More payments can be added to the flow, see the dedicated section here: Customise the Acquisition Flow.
Zuora iframe - Credit Card
The credit card zuora iframe is loaded with the following information:
- pre filled cardholder name from the contact/person account the case is linked to
- pre filled email from the contact/person account the case is linked to
- countries from the list of allowed countries for the selected offer, as specified in the first step
- address book: list of addresses stored for the customer record in limio, if anything. This list could be customised to also pull additional entries from other salesforce records, see dedicated section in Flow Customisation: Capture an additional payment
Step: Order Summary
In the last step a summary of the order is shown, with the selected offer and total to pay. At this point the user only needs to submit the order, and they'll receive immediate feedback about the order submission to limio. This is the last and final step of the flow. The subscription is now created.