For the complete documentation index, see llms.txt. This page is also available as Markdown.

🎯 Exercise 9

Sync Customers from BigCommerce to Frappe CRM

Objective: Practice building a reusable Snippet that creates or updates contacts in Frappe CRM, and calls it multiple times within the same workflow for different customer types.

Prerequisites:

  • A BigCommerce trial account with at least 2-3 customers — some with a company name and some without

  • A Frappe CRM free account

  • Go to https://frappe.io/cloud. Click Start Free Trial on the top right corner. Continue with Google and create an account. Install CRM and create a site. Complete the set up.

  • Go to https://<company>.frappe.cloud/app/user and click on your name on the bottom left.

  • Under Settings -> App -> Choose CRM and Save.

  • Now under Settings -> API Access -> Generate Keys and Download.

  • Go to https://<company>.frappe.cloud/crm/contacts/view/list and add columns for name and status.

Snippet to Build: Create or Update Contact in Frappe CRM

Build a Snippet called Create or Update Contact with the following inputs:

Label

Key

Data Type

Required

Contact Data

contact

JSON

Yes

Status

status

String (Open/Passive/Replied)

Yes

Inside the Snippet, build the following steps:

  1. Loop through the data,

  2. Search for the contact in Frappe CRM by email

  3. If contact exists, do nothing; if not, create a contact in Frappe CRM

  4. When creating contact in Frappe CRM, add success/failure contact creation detailed logs.

  5. Return the result

Workflow to Build:

  1. Create a new batch workflow

  2. Add the below contact data you got manually as Frappe CRM Contacts via DCKAP Integrator using the Snippet created. Keep the status key of these records as “Open”

  3. Contact Data:

  1. Fetch all customers from BigCommerce and create as Contacts if it doesn’t exist using the created snippet.

  2. Enable Console Logs, save and run the workflow

Hints:

  • Use the customer's email as the unique identifier to check if they already exist in Frappe CRM

  • The same Snippet is called twice in this workflow

Expected Outcome: All BigCommerce customers are synced as Frappe CRM Contacts. The Detailed Log shows a clear record of which customers were created and which failed.

Last updated

Was this helpful?