← Zid | زدCONTENT HISTORY
WHAT CHANGED
Update to Zid | زد
Snapshot Oct 31, 2026 · 06:10 UTC · version 1.1.0
Collection source: downloaded plugin package.
First saved snapshot
No earlier snapshot is available to establish a change.
Save Zid | زد and check future changes in Following.
Up to 10 plugins free · no card required.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"description": "Move Zid customers between the store and a CRM, email or WhatsApp marketing tool, or loyalty system such as Mailchimp, Klaviyo, HubSpot, Zoho CRM, Brevo or a WhatsApp broadcast app. Use to build a contact file that carries marketing consent, segment customers by value or recency, tag Zid customers from an outside segment, or bring loyalty points in line with another system.",
"included_files": [
{
"relative_path": "references/destinations.md",
"size_in_bytes": 2625
}
],
"name": "customer-sync",
"skill_md_contents": "---\nname: customer-sync\ndescription: Move Zid customers between the store and a CRM, email or WhatsApp marketing tool, or loyalty system such as Mailchimp, Klaviyo, HubSpot, Zoho CRM, Brevo or a WhatsApp broadcast app. Use to build a contact file that carries marketing consent, segment customers by value or recency, tag Zid customers from an outside segment, or bring loyalty points in line with another system.\n---\n\n# Customer sync\n\nKeeps customer records, segments and loyalty points consistent between Zid and\nthe merchant's marketing tools, without sending anyone a message they did not agree to.\n\n## Ground rules\n\n- The merchant's explicit instructions take precedence over this skill.\n- Consent travels with the contact. Zid's newsletter subscription is the email\n marketing consent; SMS and WhatsApp consent comes only from a recorded opt-in.\n Unknown consent is \"not subscribed\".\n- Export only the fields the destination needs.\n- Show the full change list and apply it after the merchant agrees. When a\n manage tool answers `confirmation_required`, compare its plan with what the\n merchant approved: if they match, repeat the call with its `plan_id`; if not,\n show the plan and ask again.\n- Destination credentials (API keys, tokens) stay in that tool or the merchant's\n automation tool. Customer wallet balances are changed in the Zid dashboard.\n\n## 1. Direction and owner\n\nSettle which way the data flows (Zid → tool, tool → Zid, or both) and whether a\nconnector app already syncs it: `zid_account.list_installed_apps`, then\n[references/destinations.md](references/destinations.md). With a connector in\nplace, compare the two sides and report differences instead of writing.\n\n## 2. Read Zid customers\n\n- `zid_customers.list_customers` with `perPage` 100, every page. Filters:\n `isNewsletterSubscriber`, `dateFrom` and `dateTo` (sign-up), `ordersCountCompare`\n with `ordersCountValue`, `tagIds`, `groupIds`, `customerChannels`.\n- Value and recency: `zid_reports.customers_report` (lifetime value, orders and\n last order per customer; `page_size` up to 100), or `zid_reports.top_customers`.\n- Large stores: `zid_customers_manage.export_customers` with `filters` emails the\n merchant a spreadsheet of customers' personal data; it needs the merchant's\n approval. Ask them to share only the columns the destination needs.\n\n## 3. Segment\n\nDefault segments, unless the merchant defines their own:\n\n| Segment | Rule |\n| --- | --- |\n| VIP | Top 10% by lifetime value, ordered in the last 90 days |\n| Lapsed VIP | Top 10% by lifetime value, no order in 90 days |\n| Repeat | 2 or more orders, ordered in the last 90 days |\n| Lapsed | Ordered before, nothing in 90 days |\n| New | First order in the last 30 days |\n| Never ordered | Account without orders |\n\n## 4. Zid → destination\n\nBuild one row per customer with the destination's headers from\n[references/destinations.md](references/destinations.md):\n\n- phone in international format (`+9665…`), email, first and last name;\n- segment and tags as the destination's tags or properties;\n- consent per channel: email from `isNewsletterSubscriber`; SMS and WhatsApp\n only where the merchant has a recorded opt-in.\n\nSplit the file at the destination's row limit.\n\nDone when every customer in scope is either in the file or in the skipped list\nwith a reason.\n\n## 5. Destination → Zid\n\n- **Tags**: `zid_customers_manage.add_customer_tag` (`customerId`, `name`) adds\n one; `zid_customers_manage.set_customer_tags` (`customerId`, `tagNames`)\n replaces the customer's tags, so include the ones to keep.\n- **Groups** are rule-based: `zid_customers_manage.create_customer_group` with\n `name` and `filters`. Members cannot be added one by one; tag them and build\n the group on the tag.\n- **Email consent**: `zid_customers_manage.set_customer_marketing`\n (`customerId`, `subscribed`), only from a recorded opt-in or opt-out.\n- **New or changed customers**: match by mobile, then email; create with\n `zid_customers_manage.create_customer` (`name`, `mobile`) or update with\n `zid_customers_manage.update_customer`.\n\n## 6. Loyalty points\n\n`zid_promotions.get_loyalty_status` confirms the program is on. For each\ncustomer: `zid_promotions.get_customer_points`, the difference to the target\nbalance, then `zid_promotions_manage.adjust_customer_points` with `customerId`,\n`direction` (`+` or `-`), `points` and a `reason` naming the source system.\n`zid_promotions.get_customer_points_history` explains a balance.\n\n## Output\n\nCounts per segment, the contact file or the change list, then rows skipped with\nthe reason (no phone or email, no consent, no match, duplicate).\n\nTo keep the sync running daily, use the `zid-ops` skill.\n"
}SHA-256 of public snapshot: 50adf0c9e8420057f24f5a2a50dc246ef20a00af3c81f952f76a88f9bafb2df7