WanderCode logoWanderCode

Flower Shop — Production-Hardening Backend Automation for Orders, Notifications, and Webhooks

We turned half-finished order, notification, and webhook flows into reliable, production-ready backend services.

Flower Shop — Production-Hardening Backend Automation for Orders, Notifications, and Webhooks

Overview

We partnered with Flower Shop to stabilize and harden a business-critical module, converting partially implemented flows into production-ready backend services. We completed scheduled notifications, external catalog synchronization, AI-assisted task generation, and a unified event-ingestion architecture so the platform runs reliably day to day.

Challenges

  • Task reminder emails would not render because notification templates were missing, leaving staff without dependable daily, upcoming, and completion-based reminders.
  • Scheduled reminder jobs were inactive and never ran through the background scheduler, so recurring reminders silently failed to fire.
  • Customers and staff received excessive duplicate reminder emails, one per task, creating noise instead of a single clear update.
  • Manual reminder commands behaved differently from the scheduled jobs, producing inconsistent reminder logic across the system.
  • Product webhooks from the external commerce system were accepted but never processed, and store synchronization support was missing entirely, so local product data drifted out of sync on pricing, stock, status, creates, updates, and deletes.
  • External API calls had no retry or backoff, so transient failures broke synchronization, and production code still emitted print-style debug output instead of usable logs.
  • Webhook secret validation could be skipped in production, leaving the order-event intake exposed to unverified payloads.
  • AI task generation failed on transient provider errors, malformed JSON responses, broad exception handling, and date-format issues, and fell back to static generic tasks instead of useful, context-aware ones.
  • A duplicated, multi-endpoint webhook design made single-target event delivery impractical, and downstream order processing carried an undefined-variable runtime error plus broken, dead webhook task imports.

Solution highlights

  • Built a scheduled notification system delivering daily, upcoming, incomplete, and completion-based task reminders, with the background scheduler activated for multiple recurring reminder jobs.
  • Created reusable notification templates with dynamic variables and shared rendering logic, replacing inline HTML with template-driven delivery.
  • Implemented a consolidated digest flow that groups multiple matching items into one message per recipient, and aligned manual reminder commands to the same digest and template service.
  • Delivered product create, update, and delete synchronization plus a store/account metadata sync service for the external commerce system, with consistency handling for pricing, stock, status, and deletion states.
  • Added retry and backoff to external API communication for sync jobs, and structured synchronization logging that tracks success rates, failure rates, and last-sync timestamps.
  • Built AI-assisted task generation with automatic scheduled generation, response parsing, date normalization, validation, and a context-aware fallback workflow for when AI generation fails.
  • Hardened external webhook handling by enforcing signature verification in production and safeguarding AI calls against rate limits, timeouts, malformed JSON, and invalid dates.
  • Introduced a shared webhook service for single validation, payload parsing, event routing, and downstream fan-out, exposed through one order-event endpoint that routes a single payload to multiple internal pipelines.
  • Ran integration and regression testing across the notification, sync, AI, and webhook flows and produced technical documentation for synchronization and webhook configuration.

Outcomes

  • Reminder emails now render reliably and recurring jobs run on schedule, so staff consistently receive the right task reminders.
  • Recipients get one clean digest per cycle instead of duplicate per-task emails, cutting inbox noise while preserving every reminder.
  • Scheduled jobs and manual commands now behave identically, removing the inconsistency between automated and on-demand reminders.
  • Local product and store data stays consistent with the external commerce system across pricing, stock, status, creates, updates, and deletes.
  • Synchronization survives transient external failures thanks to retry and backoff, and operators can monitor health through structured success, failure, and last-sync logging.
  • The order-event intake is safer in production, with enforced webhook signature verification and a single, predictable endpoint feeding multiple internal pipelines.
  • AI-generated tasks degrade gracefully, returning useful context-aware fallbacks instead of failing or producing generic placeholders when the provider misbehaves.
  • Eliminated a duplicated webhook design, a downstream undefined-variable runtime error, and dead webhook task imports, simplifying external integration setup.
  • End-to-end and regression coverage plus configuration documentation give the team confidence that the scheduler, templates, sync jobs, AI generation, and webhook fan-out all work together and migrate safely.

Gallery

Flower Shop — Production-Hardening Backend Automation for Orders, Notifications, and Webhooks screenshot 1
Flower Shop — Production-Hardening Backend Automation for Orders, Notifications, and Webhooks screenshot 2
Flower Shop — Production-Hardening Backend Automation for Orders, Notifications, and Webhooks screenshot 3