Subscription Purchases in StoreConnect Customer Commerce + CPQ

Configure Subscriptions in StoreConnect with Salesforce Configure Price Quote

April 11, 2024

Subscription purchases are an excellent way to offer value and ensure repeat business. StoreConnect has the ability to work with Salesforce CPQ as a native feature. CPQ is installed with a StoreConnect trial org and this guide will walk you through the process of enabling your customers to purchase subscriptions with StoreConnect. This guide will move step-by-step through the process of creating a subscription product in the ‘Beauty Demo Store’ which also installs with a StoreConnect trial installation.

The steps in this guide will result in a subscription with the following characteristics:

  1. Salesforce CPQ will enable evergreen (ongoing) subscription payments
  2. The product will be ‘Hydrating Face Cream’
  3. It will have a subscription sale price $25.00/mo, reduced from $30.00/mo
  4. It will charge $25.00 every month for the life of the subscription
  5. It will tender the first subscription payment at time of checkout/purchase

1. Install StoreConnect

To host this on a website, we need to get StoreConnect installed, as described here for a trial org or here for a sandbox or production org.

*If StoreConnect is already installed and you have access to the appropriate Salesforce objects, proceed to the next step.

2. Ensure that evergreen payments are enabled in Salesforce CPQ

Salesforce CPQ does not have evergreen subscriptions enabled by default. As such, they must be enabled as described here

*If evergreen payments are enabled in Salesforce CPQ, proceed to the next step.

3. Ensure that the your StoreConnect Layout is configured for Subscription Products with CPQ

You will need to update the subscription fields that show up twice to only use the CPQ field instead of the StoreConnect field (Known fields that will show up twice are Subscription Term and Subscription Pricing), make sure you remove the StoreConnect fields from your page layout to avoid duplicate entries.

To know which one is the StoreConnect field, move your mouse over the field item, it will start with s_c.

  1. Go to Setup->Object Manager->Products->Page->Layouts->SC Product Layout
  2. Insure that the s_c.Subscription_Pricing and s_c.Subscription_Term fields are NOT included in the layout and are in bold in the field selection area above the active fields. *If they are included in the layout, remove them and replace them with the SBQQ.SubscriptionTerm and SBQQ.SubscriptionPricing fields

StoreConnect Product Page Layout Configuration

4. Enable Subscriptions for the Product

We have selected the ‘Hydrating Face Cream’ product to use as an example for this guide.

  1. To configure this product, select ‘Products’ from the dropdown In the StoreConnect CMS app and select or search for ‘Hydrating Face Cream’ Foundation Product Select
  2. Select the ‘Hydrating Face Cream’ and scroll to the ‘Subscription Information’ section on the Product record page Product Subscription Section

5. Configure the Subscription Information Section

Products have several fields that are used to configure a subscription. Each field is listed below with its configuration options that we will use for the example product in this guide. For any product to be classified as a subscription product, these fields must be set on the product record.

Once the ‘Hydrating Face Cream’ product has been selected and you have scrolled to the ‘Subscription Information’ section, configure the following values:

  1. Subscription Pricing. Select the Pricing type. We will select Fixed Price, as this is the option supported by StoreConnect subscriptions.
  2. Subscription Type - Either Evergreen (Ongoing) or One-time (A subscription that runs for a specified number of payments before ending). When configuring a product with a Subscription Type of One-time, you need to set how many times the customer is to be charged until the subscription is considered “fully paid” and therefore ended. This would include the first payment made when completing checkout. Evergreen subscriptions will run endlessly until the subscription is canceled by the customer from their order history page in your store or if the payment fails too many times (see ‘Subscription Management and Delinquent Payments’ below), or is manually canceled on the Subscription record. We will select Evergreen to create an indefinite term for this subscription. The customer doesn’t have the option to log into the store to cancel this type of subscription (see ‘Subscription Management and Delinquent Payments’ below). Each payment taken is added to the original order in Salesforce. StoreConnect Subscription Products Configuration
  3. Subscription Term. We will enter ‘1’ for this value
  4. Subscription Term Unit. We will select ‘Month’, as we want this term to be measured by months
  5. Subscription Term Count. We will not add this value, as it will run indefinitely StoreConnect Subscription Product Term and Term Unit Configuration
  6. Subscription Billing Delay and Subscription Billing Delay Unit. Configure these values if a delay of payment is desired/required. Setting a delay will offset the Next Billing date from the Next Renewal Date. This is to give time before the next billing date to alter the subscription, if desired. StoreConnect Subscription Products Configuration

6. Configure the Product Price Book Entry

  1. Select the Price Book for the Product by selecting ‘Edit’ next to the Price Book entry in the Product’s Related tab Pricebook Select
  2. Add a Price of $30.00 and a Sales Price of $25.00. Enable these price settings with the ‘Active’ checkbox Price Book Entry with Sales Price

7. Purchase the Product to Test the Subscription

  1. Go to the product page of the ‘Hydrating Face Cream’. This can be done by going to the ‘Creams’ category of the featured products on the main page. If the subscription is configured correctly, we will see the sale price of $25.00, the normal price of $30.00, and ‘Every month’ listed in the product details Eyeshadow Product Page
  2. Add the product to your cart. If configured correctly, the regular price of $30.00 and the sale price of $25.00 will show with ‘Every month’ beneath it. Subscription Cart
  3. Complete the checkout and navigate to the ‘Subscriptions’ section of the StoreConnect storefront to ensure that the subscription is shown StoreConnect Subscription
  4. Check the order in the Salesforce back-end. This can be done by placing the StoreConnect reference ID into the search bar. Salesforce will search with this number and present a link with the Salesforce Order ID StoreConnect Subscription
  5. Verify that the ‘Hydrating Face Cream’ product and the subsciption are listed in the order related lists Salesforce Subscription

If the ‘Hydrating Face Cream’ product and subscription both appear in the related lists for the order, then the subscription has been processed successfully and will continue until cancelled.

Additional Note: Subscription Management and Delinquent Payments

There may be times where you are required to update a subscription or intervene in some way. Each subscription can be managed from its Subscription record which is directly related to the original order it was created from as well as the Contact it belongs to so can be found via the related list of either. You can also access Subscriptions from the Subscriptions tab in the StoreConnect Stock app.

*Consider adding Feed Tracking to the Subscription object to keep a history of what changes are made, when and by who for better visibility of a subscription’s history.

If a fixed end date is needed, the End Date of the subscription can be set manually. Alternatively, the Cancelled Date can be set to prevent any further payments. Subscriptions can also be paused by setting the Suspended Date. Removing the Suspended Date, End Date and Cancelled Date will let the subscription continue.

StoreConnect Subscription Products Configuration

For One-time subscriptions, the End Date gets set by the system on creation based on the number of terms for the subscription. If you temporarily suspend the subscription and then un-suspend it, consider if you need to extend the End Date.

A subscription will not charge the client if any of these conditions are met:

  • Process Subscription is False
  • Start Date is in the future
  • End Date is in the past
  • Cancelled Date is in the past
  • Suspended Date is in the past
  • Next Billing Date is in the future

A subscription will be charged if:

  • Process Subscription is True
  • Start Date is today or in the past
  • End Date is blank or in the future
  • Cancelled Date is blank or in the future
  • Suspended Date is blank or in the future
  • Next Billing Date is today or in the past

Subscriptions are processed daily. If Process Subscription = TRUE, StoreConnect will charge the customer on the Next Billing Date. The Next Renewal Date and Next Billing dates are then updated to the next term unless payment fails in which case the subscriptions payment is considered ‘delinquent’.

For monthly payments, if a billing date is 31st and the following month there are only 30 days, the billing date will move to the 30th from that point on. When it gets to February, the billing date will become 28th (29th on a leap year) and will continue as the 28th of the month moving forward.

Warning: If updating the Next Billing Date, make sure you consider updating the Next Renewal Date also. Remember that the Next Billing Date will be updated at next payment to the new Next Renewal Date plus any delay. If the Next Renewal date is in the past, the Next Billing Date may also end up in the past.

Delinquent Payments

If a subscription payment fails the Delinquent Date will be set to the date of the first failure, and the Delinquent Reason will be set with a date and any message returned by the payment provider (e.g. “Card Expired”).

On a successful retry, the subscription is processed as normal and the Delinquent Date and Delinquent Reason fields are cleared.

While the Next Billing Date is in the past and a Delinquent Date is set, StoreConnect will automatically retry the payment 5 times with increasing wait times:

1 day after Delinquent Date 2 days after Delinquent Date 3 days after Delinquent Date 5 days after Delinquent Date 8 days after Delinquent Date

On each subsequent failed retry, the Delinquent Reason has the date and any message returned by the payment provider appended to the end of the existing field data, creating a log of each failed attempt.

If the final attempt fails, the Suspended Date will be set, and no further payments will be attempted. You should setup a notification in Salesforce so you get alerted when this happens. You can also configure an email to go out from Salesforce to alert the contact each time a payment has failed and when it will be attempted again.

Learn more about StoreConnect subscription products here