← Larkwell
DocumentationPrivacyEULASupport

Larkwell: Panel for Zoho CRM, Books, Billing, Inventory (docs)

Published at https://greatwork.company/apps/larkwell/docs. Support: hello@greatwork.company, reply within one business day.

What agents see

On a ticket, Larkwell finds the requester's Zoho CRM contact by every email address on their Zendesk profile (the primary email and every other email identity), matched against the contact's Email and Secondary Email. The panel shows each Zoho product your account uses, in this order:

  • Contact (Zoho CRM): name, title, email, phone, owner, lead source, when they were added.
  • Account: number, website, industry, size, location, type, owner, annual revenue.
  • Open deals for the contact: amount, stage, probability, owner and close date (amber within two weeks, red when past), then a count of won (with the total) and lost.
  • Recent activity: tasks, meetings, calls and notes, newest first (five, then "Show all").
  • Zoho Books: the customer linked to the CRM contact or account (Zoho's own CRM integration sets this link), else the customer with the requester's email. Balance due, unpaid invoices first with their due dates, then recent invoices, and recent payments. Invoice numbers open the invoice in Zoho Books.
  • Zoho Billing: the customer linked to the CRM contact or account, else by email. Subscriptions with plan, amount, interval, status and the next renewal or end date.
  • Zoho Inventory: the customer with the requester's email. Recent sales orders with status and total; the three newest show their shipments with carrier, tracking number and status.
  • Several contacts with the same email are listed so the agent can pick one.
  • No contact: the account whose website uses the requester's email domain (the website must be that domain or a subdomain of it; mailbox providers such as gmail.com are never matched). Books, Billing and Inventory still show by email.
  • Lookup box: any email, contact or account id, or a Zoho CRM record link.

On a user profile the same panel shows for that user, read-only. On an organization profile Larkwell shows the account whose website uses one of the organization's domains, else the account with exactly the organization's name, read-only. Every record has an Open in Zoho link.

Actions

Available on saved tickets to the agents you allow, each one switchable:

  • Create a contact (email, first and last name, title, phone, linked to the matched account). Larkwell searches Zoho CRM again right before creating, so it never adds a second contact for an email.
  • Add a note to the contact or the account, with a link to the ticket.
  • Log a call (inbound or outbound, minutes, description) on the contact or the account.

Each action shows exactly what will happen and waits for a confirmation. It is sent once: if Zoho does not answer clearly, Larkwell says so and asks the agent to refresh and check before trying again, instead of sending it twice. After Zoho accepts it, Larkwell adds an internal note to the ticket (what was done, by whom, a link to the record) and a tag: larkwell_contact, larkwell_note or larkwell_call. If the note cannot be written (for example, the ticket is closed), the panel shows the text to paste.

Settings

SettingWhat it does
Zoho data centerus, eu, in, au, jp, ca, uk, sa, ae or sg
Client ID, Client secretFrom your Self Client (the secret is a secure setting)
Refresh token (2, 3)Secure settings; the setup check makes the first one from a grant code
Refresh tokens saved1, 2 or 3
Show Zoho CRM, Books, Billing, InventoryTurn a product off even when the token reaches it
Organization IDsOnly if you have several organizations in Books, Billing or Inventory
Who may take actionsagent, admin, role ids, group:
Allow creating contacts, notes, callsEach action on or off
Match an account by email domainThe no-contact fallback and the organization match

Scopes Larkwell needs

Reads: ZohoCRM.modules.contacts.READ, accounts.READ, deals.READ, tasks.READ, events.READ, calls.READ, notes.READ, ZohoSearch.securesearch.READ; ZohoBooks.settings, contacts, invoices, customerpayments .READ; ZohoSubscriptions.settings, customers, subscriptions .READ; ZohoInventory.settings, contacts, salesorders .READ. Writes: ZohoCRM.modules.contacts.CREATE, notes.CREATE, calls.CREATE. Leave out the products you do not use; a read-only panel needs no CREATE scope. The setup check shows the full string.

Larkwell refuses to run if the token can read Zoho CRM security profiles (it carries ZohoCRM.ALL or ZohoCRM.settings, which can change profiles, roles and users) or Zoho Books bank accounts (Books full access or banking scopes).

Plans

  • Team: $100 per month, up to 6 agents and admins.
  • Scale: $15 per agent per month, 7 or more agents and admins.

14-day trial with a card. If the account outgrows its plan, the panel keeps showing Zoho records and turns actions off until an admin changes the plan in the Zendesk Marketplace.

Troubleshooting

  1. The setup check fails on the data center: type only the code; paste any Zoho address into the helper to get it.
  2. "Zoho does not know this Client ID": the Self Client was made in another data center's API Console, or the data center setting is wrong.
  3. "Zoho did not accept the refresh token": it was revoked, belongs to another Client ID, or Zoho dropped it after 20 newer ones were made for the same Zoho user. Make a new one in the setup check.
  4. "Larkwell will not run with this refresh token": generate a new code with the scope string in the setup check, save the new token, and revoke the old one in Zoho Accounts > Security > Connected Apps.
  5. "Zoho is limiting new sign-ins": save a second (and third) refresh token and set "Refresh tokens saved".
  6. A product does not show: the panel footer says why: the token has no scopes for it, your Zoho account has no organization in it, or the organization ID setting is not reachable.
  7. No contact found: the contact uses another email. Use the lookup box.
  8. No actions: your role or group is not in "Who may take actions", the action is turned off, Zoho CRM is hidden, the account outgrew its plan, or you are on a new ticket, user or organization profile (read-only).
  9. Zoho API limits: each panel load makes a few reads per product (Zoho Billing allows 1,000 calls a day on its Standard plan). Larkwell never polls; it reads when the panel opens or the agent clicks Refresh.

Data

Larkwell runs in the agent's browser. Records are read when the panel opens and gone when it closes. Great Work operates no server for it and receives none of your data. Nothing is stored outside Zendesk and Zoho, exported or used for AI. Full details: the privacy policy at https://greatwork.company/apps/larkwell/privacy.