Features
See how everything works together

When starting out with a fresh account, a customer might only have their email entered. You will notice a new banner added at the top of the page highlighting the fields that are empty.
A new form field has also been created to capture the customer's birthday. When this is filled in, the value is saved to a customer metafield.
- What custom fields would you add to your customer profiles, and what validation would you need for each?
- How would you use the data collected to personalize the shopping experience?

The status messaging is using Shopify's Banner component, which has options for "info" (grey), "critical" (red), "warning" (yellow), and "success" (green).
By default the app turns the status from "critical" to "warning" once two missing fields are entered, but this logic - as well as the statuses and messaging shown - will be unique for each implementation.
- What statuses would you show, and when?
- What messaging would you add to encourage completion?

If a customer has not previously submitted their phone number, the phone number field does not appear in the account profile, and there is no place to enter it. For this reason a custom phone field has been added under "Additional Fields".
Once a phone number has been saved using the custom field, it will now appear in the native Shopify location next to the customer email, and in the editing modal with other native fields. The custom field under "Additional Fields" will be hidden.
- What the heck, Shopify?

Once the customer has filled in all native and custom fields, the banner will show the "success" state and messaging. Assuming you choose to offer a discount for profile completion, the message at top left advertising the discount disappears, and new messaging in the banner showing the promo code appears.
Behind the scenes, the customer will now be tagged with "profile_complete", which will be used in our customer segment to see who is eligible for the promotion.
- Would you offer an order discount for profile completion, and if so, how much?

Once a customer has used the discount, the app listens for the order creation webhook, and if it finds that the discount code has been used, it will tag the customer with "profile_discount_used". The messaging in the banner showing the discount code will be hidden.
By creating a customer segment that ensures the customer both, a) has the "profile_complete" tag, and b) does not have the "profile_discount_used" tag, we can use this segment in our discount to determine elibility for the promotion.
- What customer segments would you create using "profile_complete"?
- How would you integrate this data with other tools, such as Google Analytics, Klaviyo flows, or loyalty programs?

Once a profile is complete, and the discount has been used, it may not be that helpful to keep showing the banner. For that reason a "Dismiss" button has been added to the success banner, which when clicked saves the choice to another customer metafield.
As long as none of the profile information is deleted, the banner will not show up again. However, if any values are removed, the customer's "profile_complete" tag will be removed, and the metafield that dismissed the banner will be cleared. The "profile_discount_used" tag persists, so the discount can't be reused.
- What did I miss?
- What can we add together to make it better?
Interested in implementing Profile Completer for your store?
Please choose a contact method below to discuss the specifics of your project.