Build the customer profile your Klaviyo flows need
Ask shoppers about their preferences, save their answers in Shopify, and send supported customer information to Klaviyo when you enable the integration.
Installs from the Shopify App Store · Then US$29.99/month per store, billed through Shopify
A custom experience, built by you or your developer.
Illustration: a saved shopping interest, hiking, as a Klaviyo profile property that becomes an email idea about trail boots.
Illustrative storefront · Your design, your brand
Order history did not describe the customer
The skincare brand wanted to group customers by skin type, skin concern, age range, routine, and fragrance preference.
They could collect the answers in a quiz or profile form. Those answers also needed to reach the systems used after the form.
The brand used FieldsRaven to save the profile on the Shopify customer. With Klaviyo sync turned on for that field, eligible customer data could be queued as Klaviyo profile properties after the Shopify save.
Customer preferences, ready for Klaviyo segments.
Historical sync records
One skincare implementation processed nearly 100,000 Klaviyo sync records.
Is enough to start
A single preference can be useful before the customer profile grows.
This is a historically verified processing result from stores that later uninstalled, not unique or current Klaviyo profiles. FieldsRaven acceptance, the Shopify write, and any configured Klaviyo job are separate stages.
Historical implementation results from the existing FieldsRaven use-case story.
Make it feel like
part of your store.
Start with the recipe and code generated for your field. Adapt the interface, connect it, then test the full experience.
Configure your field
Choose the customer resource and the data your experience needs to save.
Connect your storefront
Use your field’s Get Code output and the recipe to connect your custom interface.
Test the complete journey
Confirm the value in Shopify and the profile property in Klaviyo.
Connect Codex, Claude Code, or Cursor through FieldsRaven MCP to configure fields, retrieve starter code, and check saved submissions.
Connect your coding tool ↗View starter code
Scroll sideways to see more code
const cfg = window.FR_CUSTOM__CUSTOMER_MARKETING_PREFERENCES;
const payload = {
skin_type: "combination",
routine_goal: "hydration",
product_interest: "serums"
};
await fetch("/apps/raven/create_metafield", {
method: "PUT",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
raven: {
raven_id: cfg.ravenId,
resource_id: cfg.resourceId,
raven_mac: cfg.ravenMac,
value: JSON.stringify(payload)
}
})
});
Run this request from a validated profile-form handler. Do not run it on page load.
A JSON save replaces the full metafield value. This example stays flat so merchant-defined keys have predictable mapping names.
Get Code supplies the configuration and inline HMAC. Klaviyo sync must be turned on for the field; it runs after the Shopify save, in the background.
Custom storefront design, integration, and testing are still required.
Does every field sync to Klaviyo?
No. Klaviyo sync is a per-field setting for eligible customer fields and needs valid configuration.
What happens to JSON fields?
Use a flat JSON object for predictable property names. The keys you define can become configured profile properties.
When does the Klaviyo sync run?
After the Shopify metafield save, in the background. A successful response confirms that FieldsRaven received the save, not that the Klaviyo update has finished.
Can I start with one preference?
Yes. A single useful preference can be enough to start; the profile can grow later.