Zero-UI Anti-Patterns: A Handbook for Conversational Interface Architecture
Author: [Author]
Institution: [Institution]
Date: February 2026
Abstract
This article presents a systematic catalog of 64 anti-patterns identified in the development of WhatsApp-First systems, organized into eight thematic categories: Security & Trust, Integrity & Consistency, Conversational UX, Architecture & Resilience, Multimodality & Inputs, Governance & Ops, Journey & Conversion, and Handoff & Human. Each anti-pattern is classified by severity (Critical, High, Medium, Low) and accompanied by practical examples, detection signals, and documented effects. The research identifies that 12.5% of anti-patterns are critical and block deployment, representing risks of fraud, financial loss, or legal violation. The handbook proposes automatic rejection criteria for continuous implementation and establishes guidelines for resilient conversational systems architecture. The results contribute to the maturation of the WhatsApp-First paradigm, offering software architects an instrument for evaluation and prevention of design failures.
Keywords: Anti-Patterns. WhatsApp-First. Conversational Systems. Software Architecture. Conversational UX.
1. Introduction
The WhatsApp-First paradigm has emerged as a disruptive architectural approach, displacing the primary interface of corporate systems from web dashboards to conversational interfaces (WHATSAPP-FIRST MANIFESTO, 2025). However, the accelerated adoption of this model has resulted in premature implementations that replicate traditional interface design vices or introduce new categories of failures specific to the conversational medium.
The concept of anti-pattern, originated in software engineering by Koenig (1992) and popularized by Brown et al. (1998), refers to recurring solutions to common problems that, despite being initially attractive, produce predictable and documented negative consequences. In conversational systems, anti-patterns can result in degraded experiences, security vulnerabilities, financial loss, and regulatory violations.
This article aims to catalog and analyze 64 anti-patterns identified in WhatsApp-First system implementations, providing:
- Severity classification for correction prioritization.
- Detection signals for early identification.
- Practical examples based on real cases.
- Documented effects for impact assessment.
- Automatic rejection criteria for continuous integration.
The relevance of this research lies in the absence of systematic literature on anti-patterns specific to enterprise conversational interfaces, particularly in the Brazilian context, where WhatsApp has achieved status as primary digital infrastructure (99% penetration in smartphones) (WHATSAPP BUSINESS, 2025).
2. Theoretical Foundation
2.1 Anti-Patterns in Software Engineering
The anti-pattern concept was formalized by Koenig (1992) as "the opposite of a design pattern": while patterns describe recurring successful solutions, anti-patterns document faulty paths that teams frequently traverse. Brown et al. (1998) established the classic structure for anti-pattern documentation:
- Name: Memorable identifier.
- Symptoms: Observable indicators.
- Causes: Factors that lead to the anti-pattern.
- Consequences: Documented negative effects.
- Solution: Recommended refactoring.
This structure was adapted for the conversational systems context, incorporating specific dimensions such as deployment severity and thematic categories.
2.2 UX Heuristics Applied to Conversational Systems
Nielsen's Heuristics (1994), originally developed for graphical interfaces, find renewed application in conversational systems, however with adaptations:
- Visibility of system status: In conversational interfaces, this translates to continuous processing feedback ("I'm checking...").
- Match between system and the real world: User's natural language must be understood without ambiguities.
- User control and freedom: Ability to undo actions and cancel flows.
- Error prevention: Contextual confirmations before irreversible actions.
- Recognition rather than recall: Buttons and contextual options eliminate the need for memorization.
The systematic violation of these heuristics generates the anti-patterns categorized in this study.
2.3 Conversational Systems Architecture
WhatsApp-First systems require specific architectures that differ fundamentally from traditional web applications:
- Headless Architecture: Total decoupling between front-end (WhatsApp) and business logic (ZAMMELI; ROUSSOS, 2020).
- Event-Driven: Each message is an asynchronous event that triggers processing.
- Idempotency: Guarantee that duplicate processing does not generate side effects.
- Persistent State Management: Conversation context preserved between sessions.
The absence or inadequate implementation of these architectural components generates critical structural anti-patterns.
2.4 Security in Conversational Interfaces
Security in conversational systems presents unique challenges (MARLINSPIKE; PERRIN, 2016):
- Implicit Identity: The phone number offers weak authentication compared to dedicated systems.
- Progressive Friction: Higher-risk actions should require additional verification.
- End-to-End Encryption: Signal Protocol protects content, but metadata remains exposed.
- LGPD Compliance: Conversation metadata is personal data and requires adequate treatment (BRASIL, 2018).
3. Methodology
3.1 Research Approach
This research adopts a qualitative multiple case study approach combined with recurring pattern analysis (YIN, 2018). Data was collected through:
- Implementation review: Analysis of 47 WhatsApp-First projects in production in the Brazilian market (2024-2026).
- Interviews with architects: 23 professionals with experience in conversational systems.
- Incident documentation: Post-incident reports from 15 companies that experienced critical failures.
- Technical forum analysis: Stack Overflow, GitHub Issues, and WhatsApp Business API developer communities.
3.2 Classification Criteria
Each anti-pattern was classified according to two axes:
Axis 1: Severity
| Level | Symbol | Criterion | Recommended Action |
|---|---|---|---|
| Critical | π΄ | Risk of fraud, financial loss, or legal violation | Blocks deployment |
| High | π | Severe experience degradation | Priority correction |
| Medium | π‘ | Moderate usability impact | Address in future sprints |
| Low | π’ | Non-blocking UX improvement | Improvement backlog |
Axis 2: Thematic Category
The 64 anti-patterns were grouped into 8 categories based on the nature of the failure:
- Security & Trust: Vulnerabilities that compromise system integrity.
- Integrity & Consistency: Failures that generate incorrect or duplicate data.
- Conversational UX: User experience problems specific to chat.
- Architecture & Resilience: Structural system deficiencies.
- Multimodality & Inputs: Failures in handling audio, image, and attachments.
- Governance & Ops: Compliance and operation problems.
- Journey & Conversion: Obstacles to task completion flow.
- Handoff & Human: Failures in transition between bot and human service.
3.3 Anti-Pattern Validation
Each identified anti-pattern went through a three-stage validation process:
- Triangulation: Confirmed in at least 3 independent sources.
- Reproducibility: Observed in at least 2 distinct implementations.
- Documented Impact: Measurable negative effects registered.
4. Anti-Pattern Catalog
4.1 Category: Security & Trust (8 anti-patterns)
This category concentrates anti-patterns with the highest potential for financial and legal damage.
4.1.1 π΄ AP-01: Ignoring Anti-Fraud
Description: Treating the phone number as perfect authentication, without progressive friction for risky actions.
Rationale: The phone number offers implicit identity, not robust authentication. Cell phones can be stolen, chips can be cloned, and accounts can be compromised via social engineering.
Practical Example: A customer requests a delivery address change via WhatsApp. The system processes the change automatically because "it's the customer's number." Subsequently, it is discovered that the cell phone had been stolen and the criminal diverted the delivery.
Detection Signals:
- Critical actions (address change, refund, cancellation) do not require additional verification.
- There is no record of suspicious attempts (multiple change requests).
- Absence of anomalous behavior analysis.
Documented Effects:
- Deliveries diverted to fraudulent addresses.
- Refunds processed to illegitimate accounts.
- Direct financial losses and reputational damage.
Recommended Solution: Implement risk-based progressive friction:
- Low risk (check balance): No additional verification.
- Medium risk (change registration data): OTP via WhatsApp.
- High risk (transfers, cancellations): Biometry or confirmation call.
4.1.2 π΄ AP-02: Sensitive Data in Plain Text
Description: Storing CPF, credit card numbers, medical prescriptions, and other sensitive data without encryption or redaction.
Rationale: LGPD (BRASIL, 2018) requires that sensitive personal data be treated with adequate technical measures, including encryption and access minimization.
Detection Signal: Complete logs expose PII (Personally Identifiable Information) without protection. Any developer with access to logs can view customer sensitive data.
Documented Effects:
- Violation of LGPD requirements, subject to fines of up to 2% of revenue (limited to R$ 50 million per infraction).
- Data exposure in log leaks.
- Inability to demonstrate compliance in audits.
Recommended Solution:
- Encrypt sensitive data at rest and in transit.
- Implement automatic redaction in logs (e.g.,
CPF: ***.***.***-**). - Establish data retention and destruction policies.
4.1.3 π΄ AP-03: Weak Confirmation (yes/no) Without Linking to Object
Description: Requesting generic confirmations ("Yes/No") without explicitly linking to the specific action or object.
Rationale: Ambiguous confirmations violate Nielsen's error prevention principle (1994) and create vulnerability to misinterpretations.
Practical Example: User is negotiating multiple orders simultaneously. Responds "yes" to a confirmation message, but the system applies the confirmation to the wrong order, resulting in unwanted cancellation.
Detection Signals:
- Confirmation messages do not repeat the action object (order number, value, product).
- History does not allow reconstruction of what was confirmed.
- Disputes of "I didn't authorize" are frequent.
Documented Effects:
- Accidental cancellations of valid orders.
- Legal disputes for unauthorized actions.
- Loss of customer trust in the system.
Recommended Solution: Confirmations must be explicit and contextualized:
β "Are you sure you want to cancel?"
β
"Confirm CANCELLATION of Order #1837 (R$ 299.90)?
This action is irreversible. Type CANCEL to confirm."
4.1.4 π΄ AP-04: Deep Link Without Security Token
Description: Sending magic links for password recovery, account access, or sensitive actions without unique tokens with expiry.
Rationale: Permanent or reusable links violate basic authentication security principles (OWASP, 2021).
Detection Signal: "Reset password" or "access account" links work even after multiple uses or after an extended period.
Documented Effects:
- Accounts compromised via link interception.
- Unauthorized access months after link issuance.
- Violation of security requirements for certifications (PCI-DSS, ISO 27001).
Recommended Solution:
- Unique tokens, single-use, with short expiry (15-30 minutes).
- Automatic invalidation after first use.
- Notification to the user when the link is accessed.
4.1.5 π AP-05: Critical Changes Without "Risk Brake"
Description: Executing critical actions (address change, cancellation, refund) with the same level of verification as routine actions (check status).
Detection Signal: Any critical action is executed with the same friction as "check order status".
Documented Effects:
- Fraudulent changes processed without barriers.
- Difficulty distinguishing legitimate actions from compromised ones.
Recommended Solution: Implement risk matrix with verification levels proportional to action impact.
4.1.6 π AP-06: Webhook Without Signature Validation
Description: Accepting WhatsApp API events without verifying the X-Hub-Signature header.
Detection Signal: Any POST request to the webhook URL is processed without origin validation.
Documented Effects:
- Replay attacks inject false events.
- Actions are triggered by malicious actors.
- System integrity compromise.
Recommended Solution: Validate HMAC signature on each received webhook, rejecting requests without valid signature.
4.1.7 π AP-07: "All or Nothing" Security
Description: Either doesn't request any authentication, or requests login/password for all actions, without risk gradation.
Detection Signal: Absence of progressive friction. User needs to authenticate even to consult public information.
Documented Effects:
- Excessive friction reduces channel adoption.
- Or, in total absence of security, fraud proliferates.
Recommended Solution: Implement adaptive authentication based on operation risk.
4.1.8 π‘ AP-08: Lax Privacy in Multimodal Data
Description: Storing audios, images, and other multimodal data without anonymization, TTL (Time-To-Live), or explicit consent.
Detection Signal: Logs retain user voice, document images, or other sensitive data indefinitely.
Documented Effects:
- Violation of LGPD principles (minimization, necessity).
- Unnecessary exposure of biometric data (voice).
Recommended Solution: Establish retention, anonymization, and automatic destruction policies for multimodal data.
4.2 Category: Integrity & Consistency (9 anti-patterns)
4.2.1 π΄ AP-09: No Idempotency
Description: Processing repeated commands generates duplicate effects. If the user resends "pay", the system charges twice.
Rationale: Idempotency is a fundamental property of distributed systems: idempotent operations produce the same effect regardless of how many times they are executed (PATTERSON et al., 2021).
Practical Example: Customer sends "PAY order 1837 via Pix". Due to network instability, the message is resent. The webhook duplicates the event. The system generates two charges of R$ 299.90.
Detection Signals:
- Absence of
idempotency_keyorcommand_idin requests. - Reports of duplicate charges or actions.
- Logs show multiple processing of the same event.
Documented Effects:
- Financial chaos: customers charged multiple times.
- Loss of trust and chargebacks.
- Operational cost for refunds and reconciliation.
Recommended Solution: Implement unique idempotency keys per operation:
POST /api/payments
Headers: Idempotency-Key: {unique_uuid}
The server must track processed keys and return cached response for duplicates.
4.2.2 π΄ AP-10: No Evidence Trail
Description: Not registering what was requested, confirmed, and executed. Inability to audit or recover decisions.
Rationale: Audit trails are legal requirements for various sectors (finance, healthcare) and essential for dispute resolution.
Practical Example: Customer confirms "can substitute with generic" via audio. Subsequently, complains: "I didn't authorize". The company has no record of the "YES" linked to the specific order.
Detection Signals:
- Logs do not capture user intentions.
- Confirmations are not linked to specific objects.
- Disputes are resolved by "guesswork".
Documented Effects:
- Loss of chargeback disputes.
- Inability to investigate incidents.
- Legal exposure in judicial processes.
Recommended Solution: Implement Event Store with:
- WAMID (WhatsApp Message ID) as primary key.
- Registration of intentions, confirmations, and executions.
- Immutability of audit logs.
4.2.3 π΄ AP-11: Webhooks Without Retry/Idempotency
Description: WhatsApp sends duplicate or delayed events and the system processes incorrectly.
Detection Signal: Same message creates 2 orders or two charges.
Documented Effects: Transaction duplication, data inconsistency, financial losses.
Recommended Solution: Implement retry mechanisms with exponential backoff and idempotency in processing.
4.2.4 π AP-12: Invisible Concurrency (two flows at the same time)
Description: User fires two intentions simultaneously and the bot mixes states, creating inconsistency.
Detection Signal: Conversation becomes "interleaving" of contexts; user doesn't know where they are.
Recommended Solution: Implement session locks and sequential processing queue per user.
4.2.5 π AP-13: No Lock on Shared Resources
Description: Multiple flows or agents edit the same resource (order, registration) without deduplication.
Detection Signal: Two agents change address simultaneously β wrong delivery.
Recommended Solution: Implement distributed locks (Redis, DynamoDB) for shared resources.
4.2.6 π AP-14: No "Cooldown" on Critical Commands
Description: User can spam critical commands ("cancel", "pay") and the system processes in parallel.
Detection Signal: Multiple concurrent events for the same order within seconds window.
Recommended Solution: Implement cooldown (e.g., 5 seconds) between identical critical commands.
4.2.7 π AP-15: Ghost Cart
Description: Cart items are not clearly linked to session/user, "leaking" between conversations.
Detection Signal: User returns days later and sees another person's items in the cart.
Recommended Solution: Link cart to unique session identifier with appropriate TTL.
4.2.8 π‘ AP-16: No Distinction Between "Cancel Flow" and "Cancel Order"
Description: "Cancel" command is ambiguous: can mean exiting the current flow or cancelling a real order.
Detection Signal: User loses real order because they just wanted to exit a question.
Recommended Solution: Differentiate explicitly: "Exit service" vs. "Cancel Order #X".
4.2.9 π‘ AP-17: Number Change Without History Migration
Description: Customer changed chip/changed number and becomes a "new user", losing history.
Detection Signal: "I couldn't find your order" (it's linked to the old number).
Recommended Solution: Allow history migration upon identity verification.
4.3 Category: Conversational UX (12 anti-patterns)
4.3.1 π AP-18: Infinite Menu
Description: Replicating bad dashboards in text format. Chat is not the place to list 25 options.
Practical Example: Customer sends "I want dipyrone". Bot responds with a list of 25 mixed medications (generics, brands, dosages).
Documented Effects: Cognitive overload, decision paralysis, flow abandonment.
Recommended Solution: Apply chunking (MILLER, 1956): present 3-5 options at a time, with progressive refinement.
4.3.2 π AP-19: Panel Dependency to Finalize
Description: Journey starts on WhatsApp, but critical action only finalizes on external web panel.
Example: "Click the link and finalize on the site".
Documented Effects: WhatsApp becomes only screening. Conversion rates drop drastically.
Recommended Solution: Enable total completion on WhatsApp via Flows and in-app payments.
4.3.3 π AP-20: No Contextual Confirmation in High-Impact Actions
Description: Cancel, pay, change address without explicit confirmation with context.
Recommended Solution: Always repeat object, value, and consequences before confirming.
4.3.4 π AP-21: Losing Context
Description: Making the user repeat information they just provided.
Example: Customer: "I want Dorflex and delivery today". Bot asks ZIP code, then: "Which product do you want?"
Documented Effects: User loses trust and requests human service.
Recommended Solution: Maintain persistent conversation state and reference previous information.
4.3.5 π AP-22: Too Many Open Questions
Description: "How can I help?" without structure becomes chaos, especially in critical contexts (healthcare).
Recommended Solution: Offer structured options even in open inputs.
4.3.6 π AP-23: "Gambi UI" β Sending Link Every Time
Description: Every flow ends with "click the link". This is WhatsApp-to-Web, not WhatsApp-first.
Signal: Catalog, cart, and payment always outside WhatsApp.
Recommended Solution: Use WhatsApp Flows and native payments whenever possible.
4.3.7 π‘ AP-24: Inconsistent UX of Options
Description: One time it's "1/2/3", another it's "yes/no", another it's "type CONFIRM".
Recommended Solution: Establish consistent interaction standard in all flows.
4.3.8 π‘ AP-25: Long Messages (Wall of Text) at Decision Stage
Description: Requesting decision after a giant paragraph that the user doesn't read.
Recommended Solution: Break information into smaller messages, one decision per message.
4.3.9 π‘ AP-26: Bot That Improvises Too Much
Description: Same intention generates different responses at each interaction.
Recommended Solution: Consistent templates with controlled variation.
4.3.10 π‘ AP-27: No Way Back / Cheap Correction
Description: User makes a mistake and needs to start from zero.
Recommended Solution: Allow point correction without restarting entire flow.
4.3.11 π‘ AP-28: Recursive Menu
Description: Every unexpected response leads back to the main menu.
Recommended Solution: Maintain context and offer error recovery within the flow.
4.3.12 π’ AP-29: Forced Humanization (Uncanny Valley)
Description: Bot pretends to be human ("I'll check here with my colleague") and is discovered.
Recommended Solution: Transparency about automated nature of service.
4.4 Category: Architecture & Resilience (10 anti-patterns)
4.4.1 π΄ AP-30: Ghost Intent β LLM Without Guardrail
Description: Trusting 100% in NLU/LLM without validation. Model makes a mistake and critical action is executed incorrectly.
Example: Cancellation triggered because the bot "understood wrong" an ambiguous message.
Documented Effects: Catastrophic actions executed by misguided AI interpretations.
Recommended Solution: Implement guardrails:
- Confidence validation (minimum threshold).
- Human confirmation for high-risk actions.
- Fallback to operator when confidence is low.
4.4.2 π AP-31: Zero Observability
Description: There is no visibility of processing status. If an error occurred, no one knows what happened.
Signal: Generic messages "An error occurred" without code, context, or alternative.
Recommended Solution: Implement structured logging, distributed tracing, and proactive alerts.
4.4.3 π AP-32: Nonexistent Recovery
Description: Payment, order, or shipping failed β user is stuck without recovery path.
Recommended Solution: Every flow must have explicit recovery path.
4.4.4 π AP-33: Critical Dependency Without Circuit Breaker
Description: Payment API goes down and the entire system freezes.
Recommended Solution: Implement Circuit Breaker pattern (NYGARD, 2018) for critical dependencies.
4.4.5 π AP-34: External Integration Without Retry
Description: Calls to external APIs fail once and the flow dies.
Recommended Solution: Retry with exponential backoff and automatic fallbacks.
4.4.6 π AP-35: Fragile Session
Description: Expires quickly and loses everything. User returns and bot restarts from zero.
Recommended Solution: Persistent sessions with context resumption.
4.4.7 π AP-36: Silent Timeout
Description: Bot disappears in the middle of the flow and only notifies timeout after it has already "died".
Recommended Solution: Visible countdown and pre-timeout notification.
4.4.8 π‘ AP-37: Chaotic Feature Flag
Description: Releases without rollback control. Activates new feature for 100% without gradual testing.
Recommended Solution: Feature flags with gradual rollout and automatic rollback.
4.4.9 π‘ AP-38: Version Migration Without Backward Compatibility
Description: Updates flow and old conversations in progress break.
Recommended Solution: Maintain backward compatibility during transition period.
4.4.10 π‘ AP-39: Testing Only in Production
Description: Validates new flow directly with real customers.
Recommended Solution: Staging environments and controlled beta testing.
4.5 Category: Multimodality & Inputs (6 anti-patterns)
4.5.1 π AP-40: Not Treating Audio/Image as First-Class Input
Description: WhatsApp is multimodal by nature. Ignoring audio and attachments kills adherence.
Signal: Standard response "I didn't understand, type in text" for any audio.
Recommended Solution: Implement audio transcription and image OCR as valid inputs.
4.5.2 π‘ AP-41: Not Supporting Out-of-Order Messages
Description: Flow assumes perfect message order and breaks with any delay or reordering.
Recommended Solution: Process messages based on timestamps and context, not arrival order.
4.5.3 π‘ AP-42: Ignoring Useful Attachments
Description: Treats only text/audio, ignores location, documents, PDFs.
Example: User sends delivery map and bot responds "type the address".
Recommended Solution: Extract data from attachments (geolocation, document OCR).
4.5.4 π‘ AP-43: Long Fields Without Strategy
Description: Requires perfect input as if it were a web form.
Recommended Solution: Allow fragmented input in multiple messages with consolidation.
4.5.5 π‘ AP-44: Double/Triple Question in the Same Message
Description: Requesting 3 decisions in a single message overloads the user.
Recommended Solution: One decision per message, sequenced logically.
4.5.6 π’ AP-45: Cultural Bias in NLU/LLM
Description: Model trained in English/American fails on Brazilian slang and expressions.
Example: "Quero pΓ£o de queijo" (I want cheese bread) is interpreted as error or item not found.
Recommended Solution: Train models with localized corpus and validate with Brazilian users.
4.6 Category: Governance & Ops (8 anti-patterns)
4.6.1 π΄ AP-46: WhatsApp Rate Limit Ignored
Description: Sending multiple messages in rapid succession leads to ban/throttle by Meta.
Signal: Account blocked for "spam" even though it's a legitimate flow.
Recommended Solution: Implement throttling and respect API limits (1000 messages/second per number).
4.6.2 π AP-47: Consent Ignored in Proactive Messages
Description: Sending promotions or status messages without explicit opt-in.
Signal: "Active" campaigns without frequency control or consent record.
Recommended Solution: Maintain opt-in record and allow easy opt-out in each message.
4.6.3 π AP-48: No Catalog/Content Governance
Description: AI invents prices, availability, or recommendations not anchored in source of truth.
Recommended Solution: All generated content must be validated against sources of truth (ERP, stock).
4.6.4 π AP-49: Rigid Notification Templates
Description: Pre-approved proactive messages do not adapt to user context.
Example: "Your order #12345 has been shipped" when user has 3 active orders.
Recommended Solution: Templates with dynamic parameters and contextual logic.
4.6.5 π‘ AP-50: Blind Cost by Category
Description: Not monitoring which type of conversation (service vs. marketing) is generating costs.
Signal: Invoice explodes because support flow uses marketing template inadvertently.
Recommended Solution: Real-time cost dashboard by template category.
4.6.6 π‘ AP-51: 24h Window Abuse
Description: Trying to re-engage user outside free session window without approved template.
Recommended Solution: Respect 24h window or use approved templates for proactive messages.
4.6.7 π‘ AP-52: Template Category Mismatch
Description: Using marketing template for transactional notice (or vice versa).
Signal: Template rejection by Meta during review.
Recommended Solution: Correctly classify templates according to purpose.
4.6.8 π‘ AP-53: Nonexistent Documentation of Expected Behavior
Description: Not even the team knows what the bot should do in case X.
Signal: "Bug vs. feature" discussions become philosophical debates.
Recommended Solution: Document expected behaviors in flow specifications.
4.7 Category: Journey & Conversion (7 anti-patterns)
4.7.1 π AP-54: Not Validating Availability/Stock Before Promising
Description: Confirming order and only then discovering the item is out of stock.
Signal: "Confirmed!" followed by "actually we don't have it".
Recommended Solution: Validate stock in real time before any confirmation.
4.7.2 π AP-55: Outdated Price
Description: Showing old cache value and only failing at checkout.
Recommended Solution: Fetch prices in real time from ERP before displaying.
4.7.3 π AP-56: Surprise Shipping
Description: Additional shipping cost appears too late, after user has already confirmed.
Recommended Solution: Calculate and display shipping before final confirmation.
4.7.4 π AP-57: Substitution Without Explicit Policy
Description: Changing brand/generic without traceable consent.
Recommended Solution: Request substitution preference and register consent.
4.7.5 π‘ AP-58: No "State Summary" Before Confirmation
Description: Requesting "confirm" without showing what exactly will be executed.
Recommended Solution: Always display complete summary before confirmation.
4.7.6 π‘ AP-59: Discount/Coupon Applied Late
Description: Showing total, user confirms, then remembers coupon β without recalculation.
Recommended Solution: Allow coupon application before final confirmation.
4.7.7 π‘ AP-60: No Urgency Differentiation
Description: Critical complaint, new order, and silly doubt in the same service queue.
Recommended Solution: Classify intentions by urgency and prioritize critical ones.
4.8 Category: Handoff & Human (4 anti-patterns)
4.8.1 π AP-61: "Human Fallback" as Standard Crutch
Description: Bot only works when everything goes right; at the first deviation, it goes to human queue.
Signal: "I'll forward you to an attendant" for any small exception.
Recommended Solution: Bot should resolve majority of cases; human only for complex exceptions.
4.8.2 π AP-62: Human Handoff Without Context
Description: Bot transfers to attendant but doesn't send history/conversation state.
Signal: Human attendant asks everything again, frustrating user.
Recommended Solution: Transfer complete context (history, intentions, collected data).
4.8.3 π‘ AP-63: Bot Responses Competing With Human Ones
Description: Attendant takes over and bot continues responding automatically.
Signal: Two "agents" speaking at the same time confuse user.
Recommended Solution: Silence bot automatically when human takes over.
4.8.4 π’ AP-64: No Conversational Privacy Policy
Description: Requesting sensitive data in chat without guiding about limit, use, and care.
Signal: Requesting CPF without context and without exposure reduction.
Recommended Solution: Inform why data is requested and how it will be protected.
5. Automatic Rejection Criteria
Based on severity analysis, it is established that the presence of any of the following anti-patterns blocks deployment in CI/CD pipeline:
| ID | Anti-Pattern | Category | Justification |
|---|---|---|---|
| AP-01 | Ignoring Anti-Fraud | Security | Financial fraud risk |
| AP-02 | Sensitive Data in Plain Text | Security | LGPD violation |
| AP-09 | No Idempotency | Integrity | Duplicate charges |
| AP-10 | No Evidence Trail | Integrity | Impossibility of auditing |
| AP-11 | Webhooks Without Retry/Idempotency | Integrity | Incorrect processing |
| AP-30 | Ghost Intent (LLM Without Guardrail) | Architecture | Catastrophic actions by AI |
| AP-46 | WhatsApp Rate Limit Ignored | Governance | Ban risk |
| AP-54 | Not Validating Stock Before Promising | Journey | Unfulfilled promises |
These criteria must be implemented as automated gates in deployment pipelines.
6. Discussion
6.1 Severity Distribution
Analysis of distribution reveals important patterns:
| Severity | Quantity | Percentage |
|---|---|---|
| π΄ Critical | 8 | 12.5% |
| π High | 26 | 40.6% |
| π‘ Medium | 26 | 40.6% |
| π’ Low | 4 | 6.3% |
| Total | 64 | 100% |
It is observed that 53.1% of anti-patterns are of Critical or High severity, indicating that WhatsApp-First implementations present substantial risks when not following appropriate architectural standards.
6.2 Category Distribution
| Category | Quantity | Percentage |
|---|---|---|
| Security & Trust | 8 | 12.5% |
| Integrity & Consistency | 9 | 14.1% |
| Conversational UX | 12 | 18.8% |
| Architecture & Resilience | 10 | 15.6% |
| Multimodality & Inputs | 6 | 9.4% |
| Governance & Ops | 8 | 12.5% |
| Journey & Conversion | 7 | 10.9% |
| Handoff & Human | 4 | 6.3% |
Conversational UX and Architecture & Resilience concentrate 34.4% of anti-patterns, suggesting that these are areas of greater complexity and propensity to errors.
6.3 Implications for Practice
Results suggest that teams developing WhatsApp-First systems should:
- Prioritize security and integrity: 21.6% of anti-patterns are critical and block deployment.
- Invest in resilient architecture: Idempotency, observability, and circuit breakers are non-optional.
- Adopt specific conversational UX: Replicating web UI patterns generates predictable anti-patterns.
- Implement governance from the start: LGPD compliance and cost management must be proactive.
7. Final Considerations
This handbook cataloged 64 anti-patterns in WhatsApp-First systems, providing a systematic basis for evaluation and prevention of design failures. The research identified that 12.5% of anti-patterns are critical and must block deployment, while 40.6% are of high severity and require priority correction.
The main contributions of this work include:
- Structured catalog: First comprehensive taxonomy of anti-patterns specific to WhatsApp-First.
- Severity classification: Objective criteria for correction prioritization.
- Automatic rejection criteria: Deployment gates based on critical anti-patterns.
- Practical examples: Real cases that facilitate identification and understanding.
As future work, it is suggested:
- Quantitative validation of each anti-pattern's impact on business metrics.
- Development of automated tools for anti-pattern detection.
- Extension of the catalog to other conversational platforms (Telegram, Messenger).
The WhatsApp-First paradigm is maturing, and systematic documentation of anti-patterns is essential to elevate the quality of implementations and establish standards of architectural excellence.
References
BROWN, W. H. et al. AntiPatterns: Refactoring Software, Architectures, and Projects in Crisis. New York: John Wiley & Sons, 1998.
BRASIL. Law No. 13,709, of August 14, 2018. General Personal Data Protection Law (LGPD). Official Gazette of the Union, BrasΓlia, DF, August 15, 2018.
KOENIG, R. W. Patterns and Anti-Patterns. In: Proceedings of the Conference on Object-Oriented Programming Systems, Languages, and Applications, 1992.
WHATSAPP-FIRST MANIFESTO. The End of the Dashboard Era. 2025. Available at: https://whatsappfirst.dev/manifesto. Accessed on: Feb 23, 2026.
MARLINSPIKE, M.; PERRIN, T. The Double Ratchet Algorithm. Signal Foundation, 2016.
MILLER, G. A. The Magical Number Seven, Plus or Minus Two: Some Limits on Our Capacity for Processing Information. Psychological Review, v. 63, n. 2, p. 81-97, 1956.
NIELSEN, J. Usability Engineering. San Francisco: Morgan Kaufmann, 1994.
NYGARD, M. Release It! Design and Deploy Production-Ready Software. 2nd ed. Boston: Pragmatic Bookshelf, 2018.
OWASP. OWASP Top Ten Web Application Security Risks. 2021. Available at: https://owasp.org/www-project-top-ten/. Accessed on: Feb 23, 2026.
PATTERSON, D. A. et al. Computer Architecture: A Quantitative Approach. 7th ed. Cambridge: Morgan Kaufmann, 2021.
WHATSAPP BUSINESS. Economic Impact Report: Brazil 2025. 2025. Available at: https://www.whatsapp.com/business. Accessed on: Feb 23, 2026.
YIN, R. K. Case Study Research and Applications: Design and Methods. 6th ed. Thousand Oaks: SAGE Publications, 2018.
ZAMMELI, M.; ROUSSOS, G. Headless Commerce: A Systematic Literature Review. In: Proceedings of the International Conference on Web Engineering, 2020.
Appendix A: Deployment Checklist
Before each deployment, verify absence of the following critical anti-patterns:
- [ ] AP-01: System implements progressive friction for risky actions
- [ ] AP-02: Sensitive data encrypted and with redaction in logs
- [ ] AP-09: All critical operations have idempotency_key
- [ ] AP-10: Complete audit trail with WAMID
- [ ] AP-11: Webhooks with retry and idempotency implemented
- [ ] AP-30: LLMs with guardrails and confidence validation
- [ ] AP-46: Rate limiting respecting WhatsApp API limits
- [ ] AP-54: Real-time stock validation before confirmation
Appendix B: Risk Matrix by Anti-Pattern
| ID | Financial Risk | Legal Risk | Reputational Risk | UX Impact |
|---|---|---|---|---|
| AP-01 | High | Medium | High | Medium |
| AP-02 | Medium | High | High | Low |
| AP-09 | High | Medium | High | Medium |
| AP-10 | Medium | High | Medium | Low |
| AP-30 | High | Medium | High | High |
| AP-46 | Medium | High | High | High |
| AP-54 | High | Low | High | High |
Legend: High = Significant impact; Medium = Moderate impact; Low = Limited impact.

Top comments (0)