Work project

Zoho Bulk Operations Toolkit

Bulk loads, links and syncs in each client's CRM

Python scripts and notebooks that move large volumes of records in each client's Zoho CRM, across loads, links, tags, deletions and syncs.

Recreation of a Jupyter notebook that bulk-loads leads. It cleans a CSV, creates the Bulk Write API job, waits with a resume point, sums up created, updated and failed records, and links and tags them. (open the full-size image)
Recreated with fictional data; the real system is private.

What it is about

Each of the agency's clients keeps large volumes of records in Zoho CRM that sometimes need to be loaded, fixed, linked or deleted at once. This toolkit holds the scripts and notebooks that do it per client, on Zoho's bulk API.

It also includes small integrations a client needed, such as syncing its Oracle database with the CRM or copying its properties' photos to another platform.

What it does

  • Splits the CSV files, uploads them as ZIP to the Bulk Write API, creates the jobs, checks their status and resumes them if something breaks.
  • Links, tags and deletes records in bulk from a CSV, and prepares imports in Jupyter notebooks.
  • Syncs the customers of one client's Oracle database with its CRM.
  • Assigns codes and prepares a campaign's SMS sends, and analyzes the segments before each send.
  • A Flask service copies each property's photos from Zoho CRM to one client's real estate platform.

How it works

From a CSV to a client's CRM

Inputs go through bulk jobs that can be resumed before they reach their target.

  1. Inputs

    • Each client's CSV files
    • One client's Oracle database
    • Preparation notebooks
  2. Operations

    • Bulk Write API in batches
    • Resumable jobs
    • Links, tags and deletions
  3. Targets

    • Each client's Zoho CRM
    • SMS sends with codes
    • One client's real estate platform

Decisions and their costs

  1. Jobs that can be resumed

    A large load can break halfway.

  2. One folder per client

    A change for one client must never touch another's data.

Stack

Pick a technology to see the projects that use it.