Skip to content

Every 10 minutes

Post big orders to Slack

Orders above your threshold show up in Slack with the customer and amount.

Runs
Every 10 minutes
Apps
Klaviyo
AI
Not needed
Access
read (events)

Send this to your assistant

Create a ClickRuntime automation: every 10 minutes, check Klaviyo for Placed Order events over $500 and post the customer and order value to #sales in Slack.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

Some orders deserve a human reaction: a $2,400 wholesale purchase from a first-time customer, a corporate gift order that needs a handwritten note, or a suspiciously large order that may be fraud. In Klaviyo these are just rows in a Placed Order event stream, and no one is watching that stream. Large orders get found at the end of the week, long after the chance to thank the buyer or catch a problem has passed.

Every ten minutes, ClickRuntime lists the Placed Order events in Klaviyo that arrived since its last check, filters them by order value, and posts every order over the amount you set, for example $500, to Slack. The post includes the customer and the order value, and only new orders are checked each time so nothing is announced twice.

Merchants who sell high-ticket items, bundles or B2B orders get the most out of it.

What you get out of it

  • Big customers get a personal touch

    A founder who sees a $900 first order within minutes can add a thank-you note to the box or send a short email. That kind of attention turns one large purchase into a repeat customer.

  • Possible fraud is reviewed before shipping

    Unusually large orders from new accounts are a classic fraud pattern. Seeing them in Slack while the order is still unfulfilled gives you time to verify the buyer rather than discovering a chargeback weeks later.

  • Fulfillment can prepare for large orders

    A big order may need extra stock, special packaging or freight. When the warehouse sees the alert, they can check inventory and plan the shipment instead of being surprised on pick day.

  • Your threshold reflects your business

    A $500 order is huge for a $20 candle shop and routine for a furniture store. Because the cutoff is yours, the channel only shows orders that are worth stopping for.

  • Sales wins are visible in real time

    Small teams enjoy seeing a large order land. It keeps morale up, and it lets whoever ran the campaign see right away that a send produced a notable result. Those moments are worth sharing when a team is small.

How it works

What happens, step by step

  1. Every 10 minutes ClickRuntime checks Klaviyo for orders placed since its last check, so each order is looked at only once.

  2. It keeps only orders worth more than your threshold, $500 in this example.

  3. Each big order is posted to your #sales Slack channel with the amount and the customer's email.

Before it runs live

  • Connect Klaviyo

What you get

RunsEvery 10 minutes
Post big orders to Slacktoday, 9:00Succeeded
Slack · #salesBig order: $742.00 from dana@acme.example

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Add an AI step, for example to summarize, sort or draft a reply
  • Add another app, for example also send it to Slack
  • Combine it with other Klaviyo steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
event_based_alert_e_g_big_order.pyexample
from datetime import datetime, timezone
from clickruntime import on_trigger, credentials, http, state, notify, report_fetched

API = "https://a.klaviyo.com/api"
PLACED_ORDER_METRIC_ID = "RESQ6t"
MIN_VALUE = 500

def klaviyo():
    return {"Authorization": f"Klaviyo-API-Key {credentials.secret('KLAVIYO_API_KEY')}",
            "revision": "2024-10-15", "accept": "application/vnd.api+json", "content-type": "application/vnd.api+json"}

@on_trigger
def run(event):
    since = state.get("since") or datetime.now(timezone.utc).strftime("%Y-%m-%dT%H:%M:%SZ")
    resp = http.get(f"{API}/events", headers=klaviyo(), params={
        "filter": f'equals(metric_id,"{PLACED_ORDER_METRIC_ID}"),greater-than(datetime,{since})',
        "include": "profile", "sort": "datetime"}).json()
    events = resp["data"]
    report_fetched(len(events))
    if not events:
        return {"summary": "Nothing new"}
    emails = {p["id"]: p["attributes"]["email"] for p in resp.get("included", [])}
    for e in events:
        value = e["attributes"]["event_properties"].get("$value", 0)
        if value > MIN_VALUE:
            who = emails.get(e["relationships"]["profile"]["data"]["id"], "unknown")
            notify.slack(f"Big order: ${value:,.2f} from {who}", channel="#sales")
    state.set("since", events[-1]["attributes"]["datetime"])
    return {"checked": len(events)}

FAQ

Common questions

Why every ten minutes instead of instantly?
This version checks Klaviyo on a ten-minute schedule rather than waiting for a webhook, which keeps setup simple and does not depend on extra Klaviyo configuration. An order is therefore announced within about ten minutes of being recorded. For most stores that is quick enough.
Can I trigger on a different event, like a refund or a started checkout?
Yes. The automation reads events for a particular metric, and Placed Order is only the default. You can point it at Started Checkout, Refunded Order or a custom event your store sends, and apply the same value filter to it.
Will an order be posted twice if it appears in two checks?
No. ClickRuntime remembers the time of its last check and only looks at events after it, so each order is evaluated once. If a check fails and is retried, the stored time prevents orders from being announced again.
What permissions does it need?
read (events). Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run each time it checks. Checks that find nothing new and stop right away aren't counted.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Post big orders to Slack” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.