Skip to main content
ContactShip already talks to your customers: it answers WhatsApp, calls leads, confirms appointments and reminds people of payments. What happens next —whether the order was delivered, whether they paid, showed up or enrolled— stays in your system. With events, that reaches each contact’s record. You can use it to choose who to message and to measure what each campaign and each agent brought in. These cases come from the most common ways ContactShip is used. Each one has the body your system sends to POST /v1/events, the steps in ContactShip and what to measure. The data in the examples is made up.
If nobody on your team codes, n8n or Make can send the events with an HTTP step, the same way they launch calls in Qualify leads automatically.

Restaurants and delivery

Who it is for. Food chains that take orders with an AI agent on WhatsApp or by phone. The problem. You have thousands of conversations a week, but the order is closed in your POS or your ordering platform. You don’t know who stopped ordering, or how much the agent that answers the phone sells. What your system sends. Each order, when it is closed in the POS:
What you do in ContactShip.
1

Win back the ones who stopped ordering

In Reports → Customize → Add widget, add Customers who stopped buying and choose 60 days to see how many there are. Then build a WhatsApp campaign with a coupon. In the contacts step, filter by purchase Did it + purchase Did not do it in the last 60 days, and click Select the N that match.
2

Make the most of big days

Before a match or a long weekend, send a promo to your frequent customers: purchase Did it at least 3 times in the last 90 days.
3

Measure what came back

Add Sales credited to ContactShip twice: with the 7-day window, for campaigns, and with the 1-day window, for the agent that answers the phone. Every order closed after a call with that agent is credited to it.
What you measure. How much comes back from each campaign and how much the phone agent sells. Since store, channel and coupon are at the top level of params, a custom report also shows which store and channel people buy through, and how many used the campaign’s coupon.

Phone sales with AI

Who it is for. Brands that sell monthly-use products by phone —supplements, cosmetics, pet food— to people who leave their details on an ad, often with cash on delivery. The problem. Your system calls the lead with an AI agent as soon as it arrives, and the agent closes the sale. But a closed sale is not a paid sale: some orders are refused at the door. You don’t know which agent brings sales that get delivered, and you don’t call in time for the second purchase. What your system sends. The lead, the order and what happens with the delivery:
What you do in ContactShip.
1

Keep calling as you do today

Your system launches the call with the calls API as soon as the lead arrives. Each call shows in the contact’s activity, next to the lead and the order.
2

Measure which agent really sells

Build a custom report with the Events source: event order_delivered, Total amount, split by Credited AI agent, with a 14-day window. Another one just like it with order_returned tells you which agent brings the most refusals.
3

Follow up with the ones who did not buy

Send a WhatsApp campaign to generate_lead Did it in the last 3 days + purchase Did not do it in the last 3 days.
4

Be on time for the repeat purchase

If the product lasts a month, filter by order_delivered Did it in the last 30 days + order_delivered Did not do it in the last 20 days + purchase Did not do it in the last 20 days. They received it between 20 and 30 days ago and have not ordered again. Send them a WhatsApp message and follow the result with Repeat purchases.
A call counts from when it begins: if your agent closes the order while talking, the sale is credited to it all the same. Only calls someone answered count. Measuring with the delivery, as in this case, leaves out the orders that come back.
What you measure. Delivered and refused sales by agent and by product, and how much of the repeat purchases come after the reminder.

Collections

Who it is for. Lenders, credit unions, schools and any business that charges in installments. The problem. Your system already launches AI calls based on each installment’s status: before it is due, right after it is due and when it is late. The payment comes in through the bank or the payment gateway, and you don’t know how much each call collected, or how much would have been paid anyway. What your system sends. When an installment becomes overdue and when a payment comes in:
What you do in ContactShip.
1

Name the events

In Settings → Organization → Events, set their Name to Installment overdue and Payment received, and add loan_number and installment to Highlighted data. Your team sees on the contact’s record which installment each customer owes and which one they paid.
2

Keep calling as you do today

Your system calls with one agent per stage —coming due, overdue, late— using the calls API. To build the agent, see AI-powered collections.
3

Measure what each agent collects

Build a custom report with the Events source: event payment_received, Total amount, split by Credited campaign or agent, with a 7-day window. Not credited is what was paid with no AI call or campaign in those 7 days.
4

Remind the ones who still have not paid on WhatsApp

Send a WhatsApp campaign to payment_overdue Did it in the last 15 days + payment_received Did not do it in the last 15 days.
What you measure. What each agent and each campaign collected, against what came in with no follow-up. If you have one agent per stage, you know which one performs best.

Clinics and medical practices

Who it is for. Clinics, labs and medical centers that serve patients on WhatsApp, Instagram or Messenger and confirm appointments with an AI agent. The problem. Many prospects come in from ads and social media and never book, and some patients miss their appointment and never book again. The appointment lives in your scheduling system. What your system sends. The prospect, the appointment and what happened with it:
What you do in ContactShip.
1

Win back the ones who did not book

Send a WhatsApp campaign to generate_lead Did it in the last 7 days + appointment_booked Did not do it in the last 7 days. Replies land in the inbox, where your AI agent or your team handles them.
2

Rebook no-shows the same day

When your system marks a no-show, have it call the patient with an AI agent using the calls API. That way it doesn’t depend on someone remembering.
3

Measure how many appointments each action brings

Build a custom report with the Events source: event appointment_booked, Distinct contacts, split by Credited campaign or agent, with a 7-day window. Since specialty is at the top level of params, you can also split it by specialty.
4

Add up the revenue

With appointment_attended and its amount, Total amount split by specialty tells you how much each specialty bills.
Do not send diagnoses, results or other clinical data in params. For these cases, the specialty and the site are enough.
What you measure. Appointments that come from each campaign or call, no-shows that are recovered, and revenue by specialty.

Schools and courses

Who it is for. Language schools, business schools and course platforms that qualify prospects on WhatsApp and hand the best ones to an advisor. The problem. Your AI agent qualifies each prospect and hands them to an advisor, but the enrollment is paid in your school system. You don’t know how many prospects end up enrolled, or who to offer the next course to. What your system sends. The prospect, the trial class, the enrollment and the end of the course:
What you do in ContactShip.
1

See each student's journey

On the contact’s record you see, in order, the conversation with the agent, the advisor’s calls, the trial class and the enrollment.
2

Follow up with the ones who tried and did not enroll

Send a WhatsApp campaign to trial_class_attended Did it in the last 14 days + enrollment Did not do it in the last 14 days.
3

Offer the next course

For course_completed Did it in the last 30 days + enrollment Did not do it in the last 30 days, send them a campaign or have your system call them with an AI agent.
4

Measure enrollments

Build a custom report with the Events source: event enrollment, Distinct contacts and Total amount, split by Credited campaign or agent, with a 14-day window.
Your advisors’ calls do not count for crediting: only campaigns and calls with AI agents count. The ready-made Sales reports look for purchase; if you want to use them for enrollments, send them with that name.
What you measure. How many prospects end up enrolled, how much each campaign bills and how many students move on to the next course.

Technical support

Who it is for. Manufacturers and tech companies with a help desk: an AI agent answers and routes, and your team solves. The problem. When an installer or a customer calls, your team doesn’t know which devices they registered, whether they are under warranty or whether they already have an open repair. All of that is in your ERP. What your system sends. The devices each customer registers and their repairs:
What you do in ContactShip.
1

Give your team context

In Settings → Organization → Events, set their Name to Device registered and Repair opened, and add model and rma_number to Highlighted data. Your team sees it in the inbox contact panel and on the contact’s record, without opening another system.
2

Find your best installers

In Contacts → Events, filter by product_registered Did it at least 10 times in the last 90 days. They are the ones who install the most: invite them to a training or to your partner program with a WhatsApp campaign.
What you measure. Less time looking up data on each call, and which installers are worth looking after.

Tips for any case

  • Send the phone in international format. It is what ties the event to the contact’s conversations and calls.
  • Use event_id with the order, installment or appointment number. If you retry, nothing is duplicated.
  • Put at the top level of params whatever you want to split reports by, such as the store, the product or the specialty. What goes inside items cannot be used in reports.
  • Send the sale with its real time in occurred_at. Crediting compares it with campaigns and calls, and a call counts from when it begins.
  • Crediting counts campaigns and answered calls with AI agents. Conversations the customer starts, calls nobody answered and calls handled only by people do not count.
  • Do not send sensitive data in params: no diagnoses, card numbers or passwords.
  • Campaigns are built by hand, for example once a day or once a week. Sending them automatically when an event arrives does not exist yet. To react right away, have your system launch the call through the API.

See also

Contact events (API)

How to connect your system, and every format.

Contact events

Filter contacts by what they did.

Sales reports

Sales, repeat purchases and crediting.

Message campaigns

Send WhatsApp to a group of contacts.