Skip to main content
Zunn
Get Started
Ecommerce CX & AutomationSeptember 24, 20267 min read

Moving Beyond FAQ Chatbots: Engineering 12 Deterministic Store Backend Mutations and Sandbox AutoQA in Zunn Fihi

Why traditional customer support chatbots fail ecommerce shoppers, and how Zunn Fihi executes real backend store actions across Shopify and WooCommerce within merchant policy bounds.

SA

Sabbir Ahmed

Lead Ecommerce Systems Architect

1. The FAQ Chatbot Trap

Most ecommerce customer service chatbots merely recite canned return policy text. When a customer messages on WhatsApp asking 'Please change my delivery address to Gulshan-2, Dhaka,' the generic bot tells them to 'Contact our customer service team during office hours.'

This generates customer frustration and forces human agents to manually copy-paste customer details between chat tools and the Shopify/WooCommerce admin console.

Zunn Fihi was engineered on a different thesis: customer support AI must possess read-and-write operational capability constrained by strict programmatic guardrails.

2. The 12 Audited Store Mutations

Fihi connects directly to store backends via audited API mutations: Cancel Unfulfilled Order, Update Shipping Address, Issue Store Credit Gift Card, Duplicate Draft Order, Hold Fulfillment, Restock Returned Items, and more.

When a customer requests an address update, Fihi verifies the customer's identity, checks fulfillment status, executes the mutation via Shopify Admin GraphQL, and confirms the change to the customer—all in under 2 seconds.

Shopify Address Mutation Execution Flow
async function executeAddressUpdate(params: AddressUpdateParams): Promise<MutationResult> {
  // 1. Verify order fulfillment status
  const order = await shopifyClient.getOrder(params.orderId);
  if (order.fulfillmentStatus === 'FULFILLED') {
    return { success: false, reason: 'ORDER_ALREADY_DISPATCHED_TO_COURIER' };
  }
  // 2. Validate postal code & district
  const normalizedAddress = await validateDistrictZone(params.newAddress);
  // 3. Execute atomic GraphQL mutation
  const result = await shopifyClient.mutateOrderAddress(order.id, normalizedAddress);
  // 4. Record cryptographic audit event
  await auditLog.record({ action: 'MUTATION_ADDRESS_UPDATE', orderId: order.id, user: params.customerId });
  return { success: true, trackingToken: result.token };
}

3. Merchant Policy Guardrails

Every mutation is governed by customizable business rules: maximum refund ceilings (e.g., auto-refund up to BDT 2,500), fulfillment cutoffs (no changes after courier pickup), and fraud velocity limits.

If an order exceeds the merchant's automated risk threshold, Fihi prepares a 1-click approval card in the agent's 3-pane inbox rather than executing blindly.

4. 200-Ticket Sandbox AutoQA

Before taking an AI agent live, merchants can run our synthetic Sandbox AutoQA. The system runs 200 of the merchant's historical customer tickets in a read-only simulated environment, evaluating intent classification accuracy, tone, and mutation recommendations.

The merchant receives a comprehensive score report certifying safety and deflection readiness.

5. Courier Telemetry Integration

By syncing live webhooks from local courier networks (Pathao, Steadfast, RedX), Fihi answers 'Where is my order?' tickets with real-time package coordinates, eliminating 60%+ of routine support volume.