Automate your zoho inventory via SMS

zoho inventory + d7 sms

Goal

Automate post-shipment notifications end-to-end:

- Trigger on “Shipment Created” in Zoho Inventory.

- Notify the customer via D7 SMS with tracking details.

- Notify your logistics team in Slack with shipment context for operational visibility.

Step 1: Setup Trigger App (Zoho Inventory)

- Module: Zoho Inventory > Watch Shipments (Created)

- Connect Zoho Inventory

- Click Add connection, complete OAuth, and select the correct Zoho domain (e.g., .com, .eu, .in).

- Choose the Organization (Org ID) that owns the shipments.

- Configuration:

- Event type: Created (or equivalent) to capture only new shipments.

- Since/From: Set an appropriate start time to avoid importing historical shipments (or leave default to start now).

- Limit/Batch size: Keep default for testing; adjust later if volume is high.

- Outputs you’ll map later (typical fields):

- Shipment number and date

- Sales order/invoice reference

- Customer name

- Customer phone (billing/contact phone)

- Carrier and tracking number

- Tracking URL (if provided by Zoho or your carrier integration)

Tips:

- If your customer phone isn’t directly on the shipment object, use a preceding step to “Get Contact” by Customer ID and map the phone from there.

- Normalize phone numbers to E.164 using a Formatter step if your data is inconsistent.

Step 2: Configure D7 SMS module

- Module: D7 SMS > Send SMS

- Connect D7:

- Add connection using your D7 API key/token. Ensure your Sender ID is approved and you have sufficient credit.

- Fields:

- From (Sender ID): Your registered Sender ID or number.

- To: Map the customer phone from the Zoho shipment (use E.164 format, e.g., +15551234567).

- Message: Use a clear, concise template. Example:

- Hi {{CustomerName}}, your order {{OrderNumber}} has shipped via {{Carrier}}. Tracking: {{TrackingNumber}} {{TrackingURL_if_available}}

- Options:

- Enable unicode if you use special characters.

- Consider splitting long messages or keeping under 160 chars for single-part SMS.

- Error handling:

- Add a filter to skip SMS if the phone is empty or invalid.

- Use Make’s error handler to retry on transient failures (e.g., network errors).

Step 3: Add follow-up actions (Slack)

- Module: Slack > Create a message (or Post message)

- Connect Slack:

- Add connection and authorize the workspace. Ensure the app/bot is in the desired channel.

- Fields:

- Channel: #logistics (or your team’s channel)

- Message text (example):

- New shipment created

• Shipment: {{ShipmentNumber}} ({{ShipmentDate}})

• Order: {{OrderNumber}}

• Customer: {{CustomerName}}

• Carrier/Tracking: {{Carrier}} / {{TrackingNumber}}

• Link: {{TrackingURL_if_available}}

- Optional enhancements:

- Add a filter to only notify Slack for certain carriers or priorities.

- Include deep links to the Zoho shipment or sales order for quick access.

- Add a Router: if customer phone missing, skip D7 SMS but still post to Slack.

Test Your Workflow

1) Prepare data:

- In Zoho Inventory, create a test shipment tied to a contact with a valid mobile number (E.164 format). Include a tracking number and, if available, a tracking URL.

2) Run scenario once in Make:

- Click Run once, then create the test shipment. Confirm the trigger module receives the record.

3) Validate D7 SMS:

- Check the module output for status/ID. Confirm the phone receives the SMS and content is correct.

4) Validate Slack:

- Confirm the message appears in the chosen channel with the expected fields.

5) Edge cases:

- Test without tracking URL to ensure the SMS/Slack text still reads cleanly.

- Test with missing customer phone to verify your filter prevents SMS errors.

6) Go live:

- Turn on the scenario and set a scheduling interval (e.g., every 1 min).

- Monitor the first few runs in the Make execution log for any errors or rate limits.

Clone this Make scenario and deploy.

- Ready to use: Zoho Inventory (Watch Shipments) → D7 SMS (Send SMS) → Slack (Create message)

background image background image

Integrate Now

Configure your connections, map fields, test, and go live.