QuickReply.ai Official Documentation
  • Introduction
    • QuickReply.ai
  • Getting Started
    • Installation
      • Install QuickReply on Shopify Store
  • Drip Campaigns
    • Drip Campaigns by QuickReply.ai
  • Templates Guide
    • Creating a standard template for WhatsApp
    • Creating a carousel template for WhatsApp
  • Broadcasts Guide
    • Creating a Broadcast
    • Creating a Broadcast using Carousel Template
    • Broadcasts Reports
    • Recover failed messages in a WhatsApp broadcast
      • How does Smart Utility Fallback Work?
  • Click-to-WhatsApp Ads
  • Two-Factor Authentication Guide
  • Uninstallation / Migration
    • Migrating from WhatApp Business API to WhatApp Mobile Apps
  • Customer profies
    • Export Customer Profiles
  • API Documentaion
    • Sync Contacts to CRM API
    • WhatsApp Chat API
    • Send Template API
    • Trigger Drip Campaign API
    • External CRM Integration
    • Fetch Campaign Messages Stats
    • Browse Abandoned Recovery Integrations
  • WhatsApp Green Tick
    • How to get a Green Tick on your WhatsApp number
  • Analytics
    • Order and Revenue Attribution
    • Google Analytics Report
  • Miscellaneous
    • Types of WhatsApp Messages
    • Quality Ratings & Messaging Limits
    • FAQs
    • Account health and blocking
    • What formats of media / image / video or audio are supported on WhatsApp Business API?
  • Segments Guide
    • Customer Segments
      • Customer Segment Filters
  • WhatsApp Display Name & WhatsApp Profile
    • WhatsApp Display Name
  • Customizations
    • Notifications
  • How to
    • Subscribe to push notifications on browser
    • Enable/Disable different notifications for agents
    • Unblock notifications permission
    • Install QuickReply on Mobile
  • Miscellaneous
    • QuickReply.ai - Data privacy and security
  • Message Template Guidelines
  • Video Tutorials on WhatsApp for E-commerce
  • Quality Ratings and Messaging Limits of WhatsApp Business API
  • Phone number requirements, Business Profile & Migration
  • Phone number and profile Messaging Limits FAQs
  • How to enable Facebook Business verification option
  • How to get Facebook Business Manager verified
  • Language Supported
  • Trusted Domains
  • Integration
  • Chat Widget
  • Channels
  • Team
  • How to Collect WhatsApp Business Opt-Ins for your Shopify Store?
  • FAQ Training
  • Keyword Training
  • How to export leads captured on chat by QuickReply.ai?
  • Merge Fields for WhatsApp Campaigns
  • How to send WhatsApp message using REST API - QuickReply.ai
  • How to share Facebook Business Manager Access to QuickReply.ai
  • What are the media file size limits and aspect ratio in WhatsApp Business API?
  • FAQ Training
  • How to integrate Razorpay for COD-to-Prepaid WhatsApp Campaigns?
  • How to integrate CashFree for COD-to-Prepaid WhatsApp Campaigns?
  • How to integrate PayU for COD-to-Prepaid WhatsApp Campaigns?
  • INTEGRATION
    • Social
      • Instagram DM & Messenger
        • Link Facebook page to Instagram account
        • Enable "Allow access to messages" for Instagram DM
    • Analytics
      • Meta Pixel
      • Google Analytics 4 (GA4)
    • CRM
      • HubSpot CRM
      • Zoho CRM
      • LeadSquared CRM
      • Salesforce
        • How to Enable WhatsApp Chat in Salesforce
        • How to Automatically Create Leads from New Chats and Get Notifications in Salesforce
    • CDP
      • MoEngage
  • FLASH RESPONSES
    • Flash Responses
    • Create Flash Response
    • Using Flash Response
  • FAQs
    • FAQ list
      • WhatsApp Messenger
        • "This business is now working to manage this chat", what does this mean?
      • Media
        • How can I send images as an album in WhatsApp Business API?
      • Blocking/ Unblocking
        • Can I reject or block incoming messages to my WhatsApp number on QuickReply.ai?
        • How to block an end-user from sending and receiving messages from your WhatsApp number?
        • Can users block or report WhatsApp Business API number?
Powered by GitBook
On this page
  • Flow Sequence
  • Event Webhooks
  • Add to Cart
  • Remove from Cart
  • Product Viewed
  • Collection Viewed
  • Journey Exit API

Was this helpful?

  1. API Documentaion

Browse Abandoned Recovery Integrations

If you want to create an integration where if a user does an activity on a store where using a third-party checkout solution - you can use QuickReply.ai integration to directly sync the events to QuickReply.ai where QuickReply.ai facilitates the messaging to the customer while maintaining a healthy personalised messaging sequence!

Flow Sequence

The flow scope looks like this:

  1. The checkout partner recognizes a user's activity on the user's website including a product view/ collection view/ add to cart/ checkout initiated/ etc.

  2. The checkout partner then keeps the buffer (e.g. 15 minutes) where if duplicate events of the same kind are done only the latest event is considered.

  3. Once the considered event is found - the checkout partner sends the event data to QuickReply.ai's endpoint - which will be unique for each store.

  4. QuickReply.ai schedules the recovery messages for the users in the future as per the personalisation requirements of the brand

  5. To exit the events in case of recoveries happening on checkout partner's end - QuickReply.ai uses an API extended by the checkout partner to fetch the recent events for the user and if a consecutive event is found - the journey exits for the user.

This approach extends the opportunity of integrations with multiple platforms with an efficient approach.

Event Webhooks

Add to Cart

{
  "event_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
  "organization_id": "21j2h3ef-56e0-4a1c-81ad-ff84j3615e22",
  "event_name": "cart_update",
  "sub_event_name": "add_to_cart | remove_from_cart",
  "timestamp": "2024-10-08T06:30:35.858469+00:00",
  "customer": {
    "customer_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
    "email": "email@gmail.co",
    "phone": "+919876543210",
    "name": "Test User"
  },
  "event_data": {
    "empty_cart": false,
    "cart_link": "https://store.com/cart/3284672934",
    "recent_product_image": "https://sample.com/aa8ab4876d3d.jpg",
    "price": {
      "amount": 600,
      "currency": "INR"
    },
    "line_items": [
      {
        "quantity": 1,
        "title": "Denim Shirt - Blue",
        "line_price": "600.00",
        "variant_id": 45471627190248,
        "product_id": 8498962518296,
        "product_url": "https://sample.com/8498962518296",
        "image_url": "https://sample.com/test.jpg"
      }
    ],
    "items_added": [
      {
        "quantity": 1,
        "title": "Denim Shirt - Black",
        "line_price": "600.00",
        "variant_id": 45471627190249,
        "product_id": 8498962518299,
        "product_url": "https://sample.com/8498962518296",
        "image_url": "https://sample.com/test.jpg"
      }
    ],
    "items_removed": []
  }
}

Remove from Cart

{
  "event_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
  "organization_id": "21j2h3ef-56e0-4a1c-81ad-ff84j3615e22",
  "event_name": "cart_update",
  "sub_event_name": "add_to_cart | remove_from_cart",
  "timestamp": "2024-10-08T06:30:35.858469+00:00",
  "customer": {
    "customer_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
    "email": "email@gmail.co",
    "phone": "+919876543210",
    "name": "Test User"
  },
  "event_data": {
    "empty_cart": false,
    "cart_link": "https://store.com/cart/3284672934",
    "recent_product_image": "https://sample.com/aa8ab4876d3d.jpg",
    "price": {
      "amount": 600,
      "currency": "INR"
    },
    "line_items": [
      {
        "quantity": 1,
        "title": "Denim Shirt - Blue",
        "line_price": "600.00",
        "variant_id": 45471627190248,
        "product_id": 8498962518296,
        "product_url": "https://sample.com/8498962518296",
        "image_url": "https://sample.com/test.jpg"
      }
    ],
    "items_added": [],
    "items_removed": [
      {
        "quantity": 1,
        "title": "Denim Shirt - Black",
        "line_price": "600.00",
        "variant_id": 45471627190249,
        "product_id": 8498962518299,
        "product_url": "https://sample.com/8498962518296",
        "image_url": "https://sample.com/test.jpg"
      }
    ]
  }
}

Product Viewed

{
  "event_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
  "organization_id": "21j2h3ef-56e0-4a1c-81ad-ff84j3615e22",
  "event_name": "product_view",
  "timestamp": "2024-10-08T06:30:35.858469+00:00",
  "customer": {
    "customer_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
    "email": "email@gmail.co",
    "phone": "+919876543210",
    "name": "Test User"
  },
  "event_data": {
    "product_id": 8498962518296,
    "variant_id": 45471627190248,
    "title": "Denim Shirt - Blue",
    "currency": "INR",
    "price": 600,
    "quantity": 1,
    "line_price": "600.00",
    "product_url": "https://sample.com/8498962518296",
    "image_url": "https://sample.com/test.jpg"
  }
}

Collection Viewed

{
  "event_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
  "organization_id": "21j2h3ef-56e0-4a1c-81ad-ff84j3615e22",
  "event_name": "collection_view",
  "timestamp": "2024-10-08T06:30:35.858469+00:00",
  "customer": {
    "customer_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
    "email": "email@gmail.co",
    "phone": "+919876543210",
    "name": "Test User"
  },
  "event_data": {
    "product_id": 8498962518296,
    "variant_id": 45471627190248,
    "title": "Denim Shirt - Blue",
    "line_price": "600.00",
    "collection_url": "https://sample.com/8498962518296",
    "image_url": "https://sample.com/test.jpg"
  }
}

Journey Exit API

To exit the events in case of recoveries happening on checkout partner's end - QuickReply.ai uses an API extended by the checkout partner to fetch the recent events for the user and if a consecutive event is found - the journey exits for the user.

This API consumes a unique ID of the user (e.g. customer_id) and then shares the recent N events done by the user on the store.

Journey Exit API with customer_id in Request Body

curl --location --request GET 'https://your-domain.com/fetch-user-events' \
--header 'Content-Type: application/json' \
--data '{
    "customer_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
    "event_count" : 5
}'

Journey Exit API with customer_id in URL Parameter

curl --location 'https://your-domain.com/fetch-user-events?customer_id=21h2sfef-56e0-4a1c-81ad-ff84j3615e22&event_count=5'

Journey Exit API's Response

{
  "customer_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
  "organization_id": "21j2h3ef-56e0-4a1c-81ad-ff84j3615e22",
  "recent_events": [
    {
      "event_name": "cart_update",
      "sub_event_name": "add_to_cart",
      "timestamp": "2024-10-09T06:30:35.858469+00:00"
    },
    {
      "event_name": "product_view",
      "timestamp": "2024-09-08T06:30:35.858469+00:00"
    },
    {
      "event_name": "collection_view",
      "timestamp": "2024-05-06T06:30:35.858469+00:00"
    }
  ],
  "customer": {
    "customer_id": "21h2sfef-56e0-4a1c-81ad-ff84j3615e22",
    "email": "email@gmail.co",
    "phone": "+919876543210",
    "name": "Test User"
  }
}
PreviousFetch Campaign Messages StatsNextHow to get a Green Tick on your WhatsApp number

Last updated 3 months ago

Was this helpful?