Product
...
Flows
Managing Flows
Actions
16min
In Sanoflow's Flows module, each action represents a specific function that can be triggered within an automated workflow. These actions facilitate various operations from communication with clients to data management and task delegation.
- Purpose: Send messages directly to clients. Supports text, images, videos, and attachments.
- Properties:
- Action Name: Assign a unique name to the action for identification.
- Message Type:
- Text: Plain text messages.
- Media: Images, videos, or audio files.
- Attachment: Upload files (e.g., PDFs or brochures).
- Content:
- Enter the text message directly.
- Attach multimedia files using the upload option.
- Optional Fields: Add placeholders like {FirstName} for dynamic content.
- Use Cases:
- Send a personalized welcome message.
- Share product catalogs as PDFs or image-based brochures.
- FAQs:
- Can I use emojis in text messages? Yes, emojis are supported in text content.
- What happens if the attachment fails to upload? The action retries or triggers an error flow, depending on configuration.
- Purpose: Facilitate interactive communication by collecting client input.
- Properties:
- Action Name: Name the action (e.g., "Customer Feedback").
- Question Type:
- Text Input: Open-ended responses.
- Multiple Choice: Predefine options for clients to select.
- Numerical Input: Accept numbers only.
- Validation Options:
- Ensure input meets specific formats (e.g., email, phone number).
- Error Handling:
- Customize error messages for invalid inputs.
- Define retry limits.
- Use Cases:
- Gather feedback on customer service quality.
- Ask for delivery preferences (e.g., "Home" or "Office").
- FAQs:
- Can I save client answers to their profiles? Yes, pair this action with "Update Contact Field."
- What happens if the client doesn’t respond? Use a "Wait" action to add follow-up messages.
- Purpose: Add conditional logic to workflows for different outcomes.
- Properties:
- Action Name: Define a descriptive name for the branch.
- Conditions:
- Message Content: Trigger based on text (e.g., "contains refund").
- Profile Data: Use saved fields like customer tags, location, or email.
- Custom Variables: Evaluate values passed during interaction.
- Paths:
- Define outcomes for matched and unmatched conditions.
- Add multiple conditions for complex workflows.
- Use Cases:
- Route dissatisfied customers to a support team.
- Offer location-specific promotions (e.g., “US clients get free shipping”).
- FAQs:
- Can I use multiple conditions in one branch? Yes, combine conditions using AND/OR logic.
- What happens if none of the conditions are met? Create a default path for unmatched scenarios.
- Purpose: Automatically assign tasks, chats, or enquiries to team members.
- Properties:
- Action Name: Label the action (e.g., "Assign to Sales").
- Assignment Method:
- Team: Choose a department (e.g., Sales, Support).
- Individual: Assign to a specific team member.
- Auto-Rotation:
- Enable round-robin assignment to balance workloads.
- Fallback Assignment: Define backup assignee if no one is available.
- Use Cases:
- Assign incoming enquiries to the appropriate department.
- Route high-priority tasks directly to senior staff.
- FAQs:
- Can I exclude specific members from the rotation? No, rotations apply to all members in the team.
- What if no one is available? The task is routed to the fallback assignee.
- Purpose: Automatically update contact fields in the CRM.
- Properties:
- Action Name: Specify the action name (e.g., "Update Email").
- Field Name: Select from available fields (e.g., Email, Phone, Tags).
- New Value:
- Static: Enter predefined values.
- Dynamic: Use placeholders like {Input} or {Question Response}.
- Overwrite Rules: Decide whether to overwrite existing data or append new values.
- Use Cases:
- Update customer preferences based on survey responses.
- Tag users for targeted marketing campaigns.
- FAQs:
- Can I create custom fields? Yes, define custom fields in the CRM settings.
- What if the new value is empty? The action skips updates for blank inputs.
- Purpose: Integrate with external APIs to fetch or push data.
- Properties:
- Action Name: Identify the API action (e.g., "Fetch Appointments").
- API URL: Add the endpoint URL.
- HTTP Method: Choose GET, POST, PUT, or DELETE.
- Headers: Add authentication tokens or metadata.
- Payload: Define request body parameters for POST/PUT methods.
- Error Handling: Set fallback actions for failed API calls.
- Use Cases:
- Fetch real-time shipping data from external systems.
- Push customer feedback to analytics platforms.
- FAQs:
- Does this support secure APIs? Yes, use headers for authentication (e.g., Bearer Tokens).
- What happens if the API server is down? Fallback actions are triggered.
- Purpose: Automatically end a chat session when completed.
- Properties:
- Action Name: Name the closure action (e.g., "Close Chat").
- Closure Reason: Add predefined reasons (e.g., "Resolved" or "No Response").
- Trigger Feedback Survey: Optionally send a survey after closure.
- Use Cases:
- Close inactive chats after 15 minutes.
- End resolved customer service sessions.
- FAQs:
- Can I reopen closed conversations? Yes, use the "Assign To" action.
- What happens if the client responds after closure? The conversation can be reopened automatically.
- Purpose: Pause the workflow for a defined duration.
- Properties:
- Action Name: Define the action (e.g., "Wait for 5 minutes").
- Time Value: Specify the wait duration (e.g., 5, 10, 60).
- Unit: Choose Minutes, Hours, Days, or Weeks.
- Use Cases:
- Delay reminders for unpaid invoices.
- Schedule follow-up messages after customer inactivity.
- FAQs:
- What is the maximum wait duration? Up to 30 days for most platforms.
- Can wait durations be dynamic? No, wait times must be predefined.
- Purpose: Send pre-approved message templates.
- Properties:
- Action Name: Name the action (e.g., "Promo Template").
- Template Name: Choose from available templates (e.g., Appointment Reminder).
- Placeholders: Fill dynamic placeholders (e.g., {Name}, {Date}).
- Use Cases:
- Send order confirmations.
- Notify clients of upcoming appointments.
- FAQs:
- Can templates be edited dynamically? No, templates must be approved by the platform.
- Are templates platform-specific? Yes, they are typically approved for WhatsApp, Messenger, etc.
- Purpose: Trigger another flow from within the current workflow, enabling the creation of nested or modular flows.
- Properties:
- Action Name: Name the action (e.g., "Run Post-Purchase Flow").
- Channel: Specify the channel (e.g., WhatsApp, Messenger).
- Flow: Select the specific flow to be triggered from the dropdown menu.
- Data Mapping:
- Define variables or data to pass into the triggered flow (e.g., {CustomerID}).
- Error Handling:
- Specify what happens if the flow cannot be triggered (e.g., fallback to another action).
- Use Cases:
- After resolving a customer enquiry, trigger a satisfaction survey flow.
- When a specific condition is met (e.g., a customer opts in for a newsletter), activate a promotional flow.
- FAQs:
- Can I pass dynamic variables to the triggered flow? Yes, map variables such as {CustomerName} or {OrderID} in the data mapping field.
- What happens if the triggered flow is unpublished? An error is logged, and fallback actions (if defined) are executed.
- Purpose: Automatically generate a new enquiry in the system to track customer requests or issues.
- Properties:
- Action Name: Define the action (e.g., "New Support Enquiry").
- Pipeline: Select the pipeline where the enquiry will be created (e.g., "Sales Funnel").
- Title: Provide a title for the enquiry (static or dynamic, like {CustomerIssue}).
- Tags: Add tags to categorize the enquiry (e.g., “High Priority”).
- Contact:
- Existing: Attach the enquiry to an existing contact profile.
- New: Create a new contact if none exists.
- Assignment:
- Auto: Automatically assign based on pipeline rules.
- Select: Assign manually to a team or individual.
- Custom Fields: Add specific details like "Outlet Name" or "Order Number."
- Use Cases:
- Create an enquiry for every refund request to track the resolution.
- Generate service tickets for product-related complaints.
- FAQs:
- Can I associate an enquiry with multiple tags? Yes, use commas to separate tags when adding them.
- What happens if the contact is missing? The action will create a new contact if set to "New."
- Purpose: Add internal comments to a conversation or enquiry for reference or documentation.
- Properties:
- Action Name: Name the action (e.g., "Add Internal Note").
- Comment: Enter the comment text. Dynamic placeholders (e.g., {AgentName}) can be used.
- Use Cases:
- Document a client’s special preferences or requests for future reference.
- Add context to an enquiry for the next team member to pick up seamlessly.
- FAQs:
- Can clients see these comments? No, comments are internal and not visible to clients.
- Can I add comments to multiple enquiries simultaneously? No, comments are tied to individual conversations or enquiries.
- Purpose: Create tasks in the system to ensure follow-ups or specific actions are completed.
- Properties:
- Action Name: Define the task (e.g., "Follow-Up Call").
- Task Type:
- Task: General tasks for follow-ups or reminders.
- Call: Specific tasks requiring a phone call.
- Task Time:
- Now: Create a task immediately.
- Custom: Set a specific date and time for the task.
- Mark as Done: Enable this option to auto-complete the task after execution.
- Assign To:
- Select a team or specific user to handle the task.
- Description: Add detailed instructions or context for the task.
- Use Cases:
- Schedule a follow-up call with a lead after an enquiry.
- Set a task for the support team to check on a client’s unresolved issue.
- FAQs:
- Can I assign the same task to multiple users? No, tasks are assigned to one user or team at a time.
- What if no one is available for the task? The task remains unassigned until manually allocated.
- Purpose: Check team or department availability based on office hours.
- Properties:
- Action Name: Specify the action name (e.g., "Office Hours Verification").
- Team: Select the team whose office hours should be checked (e.g., "Support Team").
- Outcome Paths:
- Inside: Define the next action if within office hours.
- Outside: Define the next action if outside office hours.
- Use Cases:
- Route clients to live agents during office hours and chatbots outside office hours.
- Notify clients when a team will next be available if they message outside working hours.
- FAQs:
- Can I set different office hours for different teams? Yes, office hours are configured per team.
- What happens on public holidays? Public holiday hours need to be configured manually.
- Purpose: Notify internal teams or users about specific actions or events.
- Properties:
- Action Name: Define the notification action (e.g., "Notify Sales Team").
- Team: Select the team to receive the notification.
- User: Optionally, specify an individual user.
- Notification Type:
- Email: Send notifications via email.
- Browser: Trigger browser notifications.
- Alert: Create in-app alerts.
- Notification Category:
- Inbox: Notify about new conversations.
- Enquiries: Notify about new or updated enquiries.
- Integrations: Notify about external API-related updates.
- Notification Message: Enter the content of the notification (can include placeholders).
- Use Cases:
- Notify the sales team of a new high-priority lead.
- Alert the support team when a client enquiry is overdue.
- FAQs:
- Can I send notifications to external emails? No, notifications are limited to internal teams and users.
- What happens if the user doesn’t see the notification? Notifications remain in the system until dismissed.
- Purpose: Send a payment link to clients for transactions.
- Properties:
- Action Name: Name the action (e.g., "Send Payment Request").
- Payment Provider:
- ClickPay: Generate payment links via ClickPay.
- Stripe: Generate payment links via Stripe.
- Amount: Enter the payment amount (static or dynamic).
- Currency: Specify the currency (e.g., USD, EUR).
- Use Cases:
- Request payment for a product or service during a conversation.
- Send automated payment reminders for overdue invoices.
- FAQs:
- Can I track payment status? Yes, payment providers usually sync payment statuses back to the system.
- What happens if the client doesn’t complete the payment? Trigger a follow-up flow using "Wait" and "Message" actions.
Updated 23 Dec 2024
Did this page help you?