๐Ÿ’ณ Zoho Payments โ€” setup guide

Send customers a payment link from any lead or booking in Saskey CRM. When they pay, the payment appears on the lead's timeline and the salesperson gets a notification.
Before you start: Saskey must switch on the Zoho Payments module for your account (Super Admin). Your Zoho Payments account must be activated and KYC-complete to take real money. Do the whole setup in Sandbox first โ€” switching to Live later is one dropdown.

Part 1 ยท In Zoho Payments

1
Copy your Account IDOpen Zoho Payments โ†’ gear icon โ†’ Settings โ†’ Business Profile. It's a number like 60012345678.
2
Add the webhookSettings โ†’ Developer Space โ†’ Webhooks โ†’ + Configure Webhook. Paste the Webhook URL shown in Saskey CRM โ†’ Settings โ†’ Zoho Payments (it is https://crm.saskey.in/api/v1/zoho-payments/webhook). Subscribe to the payment link events: paid, expired, cancelled. Save.
3
Copy the signing keyAfter saving the webhook, open it and copy its signing key. The CRM uses it to prove a "paid" notice really came from Zoho.
Don't skip the webhook. Without it the customer can still pay, but the CRM never finds out โ€” staff would have to press "Check status" on each link.

Part 2 ยท In the Zoho API Console

4
Copy the Redirect URI from the CRMSaskey CRM โ†’ Settings โ†’ Zoho Payments โ†’ section 2 shows the Authorized Redirect URI: https://crm.saskey.in/api/v1/zoho-payments/callback.
5
Create the clientOpen api-console.zoho.in (sign in with the Zoho account that owns Zoho Payments) โ†’ Add Client โ†’ Server-based Applications. Any name, homepage https://crm.saskey.in, and paste the Redirect URI exactly.
6
Copy the Client ID and Client SecretShown once the client is created.
Exactly. The Redirect URI must match character for character. One character out and Connect fails with "invalid redirect uri".

Part 3 ยท In Saskey CRM

7
Save the credentialsSettings โ†’ Zoho Payments: choose Environment (start with Sandbox), enter Account ID, Client ID, Client Secret and Webhook Signing Key โ†’ Save credentials.
8
ConnectPress Connect Zoho account, approve on Zoho's screen (only an Account Owner/Admin of Zoho Payments can). You return to the CRM showing CONNECTED.
9
Switch it onTick Enable Zoho Payments. Staff now see Collect payment on leads and Payment link on bookings.
10
TestOpen a lead โ†’ Collect payment โ†’ enter an amount โ†’ Create link โ†’ WhatsApp or Copy. Pay it in Sandbox and watch "โ‚นโ€ฆ received online via Zoho Payments" appear on the lead's timeline.
11
Go liveChange Environment to Live, enter the live Account ID, a live client's ID/Secret, configure the webhook again in the live account (new signing key), and press Connect again. Sandbox and Live keys never carry over.

What each value is for

ValueWhere to get itUsed for
Account IDZoho Payments โ†’ Settings โ†’ Business ProfileWhich Zoho Payments account to bill into; sent on every API call.
Client ID + SecretZoho API Console โ†’ your Server-based clientLets the CRM create and cancel payment links. The secret is stored encrypted and never shown again.
Webhook Signing KeyZoho Payments โ†’ Developer Space โ†’ Webhooks โ†’ your webhookVerifies that "paid" notices really come from Zoho.
Redirect URI / Webhook URLShown in CRM Settings โ€” copy from thereWhere Zoho sends you back after Connect / where it posts payment events.

How links reach the customer

Zoho does not message the customer. Staff press WhatsApp (opens their own WhatsApp with the dealer's message and the link) or Copy link. No Zoho SMS add-on is needed.

If something goes wrong

MessageWhat to do
Connect fails: "invalid redirect uri"The URI in the API Console doesn't match. Copy it again from Settings without editing.
"Not an Authorized User" / 401Environment mismatch โ€” a sandbox client used on Live or vice versa. Check the Environment and reconnect.
Customer paid but the lead doesn't show itWebhook missing or wrong signing key. Check Developer Space โ†’ Webhooks deliveries, re-copy the signing key into Settings. Meanwhile press Check status on the link.
"An earlier attempt didn't finish"Zoho didn't answer while a link was being made. Check the Zoho dashboard, then Cancel that attempt in the CRM and create a new link โ€” this stops two live links for the same money.