Updating Accounts
The Clutch account will store a host of information including demographics, preferences, and reward or custom balances.
As a website often serves as the vehicle for a customer to self manage their account, or collect additional preferences useful for marketing the ability to update this information in real-time is very important. It is important that as those changes are completed by the customer on the Ecommerce site, the site notifies Clutch via API calls to reflect any changes. This can be done by using the updateAccount API call.
Customer information should be kept up to date both by retrieving information from Clutch and sending information to Clutch when it is updated. This allows Clutch to keep all other integrated systems (point of sale, etc) up to date and in sync .
Retrieving customer information can be done by leveraging the Search API call.
Transaction & Checkout
While there are multiple Clutch related activities to integrate during checkout, the few we would like to focus on here are:
- Passing of transaction data
- Real-Time, personalized discounts
- Reward redemption
The first two of these items are accomplished through the Checkout API call and for the last, the updateBalance API call is leveraged.
Both of these calls support a 2 stage process which is important in an online setting as there are multiple steps for a user between the shopping cart and final checkout.
Passing Transaction Data
Transaction data is passed by leveraging the Checkout API call.
In relation to capturing checkout data, the checkout process should provide a few key functions including:
- Passing member transactions to Clutch for loyalty earning
- Passing identified non-member transactions to Clutch for tracking and marketing
- Passing guest transactions to Clutch for reporting
- Include sku level data including items, as well as total amount, discounts, taxes, and shipping.
When leveraging the Checkout call, you can perform a Checkout Setup (used to see if there are any discounts) and a final Checkout. When the final Checkout call is made, Clutch will record that information, at apply it to the customer’s account. It is typically at this point when points or other rewards are earned, though it is possible for Merchants to setup delayed rewards from within the Clutch platform. We still receive and log the transaction, but we simply delay the points or other reward types from being issued for a period of time.
Redeeming Rewards
As customers work to earn rewards, of equal importance is the ability for them to easily redeem their rewards during checkout online. The most common scenario for ecommerce is supporting a cashback (a custom value type that represents a currency discount).
In the Front End > Shopping Cart article on this site we illustrate best practices for redemption, but the key point to take away is that when redeeming cashback rewards, they should be applied to the cart and order as a discount, not a payment tender type. Cashback rewards are a promotional expense with different rules than gift or stored value which should be considered a payment type.
In terms of redemption, much like checkout, there are two steps. The first is placing a hold on the value the customer wishes to redeem. This is typically done in the shopping cart when the customer has chosen to apply available cashback to their order. The second step is capturing that balance. The capture is typically done when payment is received (checkout is complete) or possibly at fulfillment or shipping depending on the Merchants preference.
New API improvements also make it possible to do this redemption from within the checkout API call. Please see the following section of our documentation to understand more about using Payment Methods for redemption. If you chose to redeem outside of a checkout call, it is important to first call the updateBalance API followed by Checkout to ensure that no points are accrued on the amount being redeemed. (Example: Customer spends $100, redeems 10 Cashback, they should earn 90 Points on that order, NOT 100)
Real-Time Personalized Discounts
As discussed previously, the ability to do one to one, personalized, in-cart discount campaigns is part of the clutch platform. A few examples of campaigns a merchant might decide to run are:
- “Buy 5 or more items and save 15%”
- “Shop 3 times or more this month and on your 4th visit, you’ll save $10”
The way this works is that when you perform your Checkout Setup API call (see flow below) the API will return the cart contents with any adjusted item prices. For example, if the campaign was set to save 15%, you would receive the new item prices (each 15% discounted) and could then update the cart contents.
You would also likely want to provide a message to the user such as:
Congratulations, based on your rewards membership and cart contents you qualify for special discounts! The discounts have been applied to your cart.
Recommended Checkout Flow
Our recommended checkout flow, which accounts for the 3 activities that happen during checkout is illustrated here.
** Note that this flow assumes the customer has already been identified/signed in and is proceeding to checkout.