Academy / Week 4 / Type 3 Integration Implementation / Recalls, Insurance & Appointment Confirmations — RPC Implementation

Recalls, Insurance & Appointment Confirmations — RPC Implementation

Lesson 15.1 ⏱ ~34 min Week 4

💡 Why This Matters

Recalls, recall types, and appointment statuses are core Type 3 features that directly drive patient reminders and schedule visibility in the Weave UI. Without correctly syncing and pushing these entities into settings, messaging teams cannot send recall reminders and offices cannot map PMS-specific statuses to Weave schedule states. Understanding the RPC and push mechanics here is essential before tackling write-backs in Type 4.

🎯 What You'll Learn

  • What recalls are, how they differ from recall types, and why only two years of historical data is synced by default
  • How partial vs full sync applies to recalls, including the two-year lookback window logic
  • How recall types are pushed into settings via info push and consumed by the messaging team to drive reminder configuration
  • How appointment statuses are fetched from the PMS and pushed into settings as a key-value map
  • How the appointment status map is configured per office, including the one-to-many mapping constraint between PMS statuses and Weave statuses
  • Where recall types and appointment status maps are visible in WAM and the Weave UI, and how manual settings overrides can be used for debugging

▶ Watch Video

Open in Google Drive 💡 Open in Drive for AI-powered transcript search and summaries

📋 Lesson Summary

Recalls represent events stored in the PMS that are synced into Data Service to power Weave's recall reminder feature. Sync uses a two-year lookback window: on first run it performs a full sync from two years back, and on subsequent runs it performs a partial sync from the last sync timestamp. Recall types are a distinct entity — a key-value listing of all possible recall categories — which is pushed into settings via the info push RPC alongside appointment statuses, medical conditions, and appointment types. The messaging team reads recall types from settings to present a toggle UI to office users, who then select which recall type categories should trigger reminders. Appointment statuses follow the same push pattern: the integration fetches all possible PMS appointment statuses, pushes them into a settings key called appointment statuses, and separately maintains an appointment status map that stores the office-configured mapping from PMS status IDs to Weave schedule statuses. This mapping is one-to-many from Weave status to PMS status, but each PMS status ID must map to exactly one Weave status to avoid UI ambiguity. If no mapping is configured, appointments display as unknown in the Weave schedule UI. The current architecture pushes recall types and appointment statuses into settings rather than exposing a dedicated API, which is acknowledged as a suboptimal pattern; these values are refreshed only on SyncApp restart or when the info push RPC is manually triggered.

🏷 Key Concepts

Recall sync with two-year lookback windowPartial sync vs full sync for recallsRecall types as key-value pairs pushed to settingsInfo push RPC as the trigger for recall types and appointment status pushAppointment statuses fetched per PMS and stored in settingsAppointment status map: one-to-many Weave-to-PMS mapping constraintSettings as the data bus between integrations and messaging/UI teamsWAM settings inspection for recall types and appointment status mapUnknown status shown when no appointment status mapping is configuredPush type pattern: recall types and appointment statuses always fetched in full

⭐ Key Takeaways

01Always set the recall sync lookback to two years for full sync and use the last sync timestamp for partial sync — never pull unlimited historical recall data
02Never map a single PMS appointment status ID to more than one Weave status — enforce the one-to-many constraint at the mapping layer to prevent ambiguous schedule UI states
03Check WAM settings under appointment status map and recall types to verify that info push has correctly propagated PMS data before assuming a UI display issue is a frontend bug
04Implement recall types and appointment statuses as key-value pair returns inside the info push RPC, not as standalone scheduled syncs, matching the existing push type pattern
05Always revert manual settings overrides in WAM immediately after debugging — direct settings injection bypasses normal sync flow and can persist across restarts
06Prefer exposing a dedicated RPC for recall types and appointment statuses over relying on settings as the data bus — flag this as tech debt when building new integrations