{"id":"5335a5a8-bf3e-45e1-ad71-5c331e965ca3","task":"Implement an MX Platform API integration with connection refresh orchestration and credential update via Connect widget","domain":"account-aggregation/MX","steps":["Create an MX user for each end user via the Users API, storing the returned user GUID; then generate a Connect widget URL with the client_redirect_url and is_mobile_webview parameters appropriate for your platform","After the user completes Connect, receive the member GUID from the Connect callback; call the Members API to check the connection status — CONNECTED means data is syncing, CHALLENGED means MFA is required","For CHALLENGED status, re-initialize the Connect widget in UPDATE mode with the existing member_guid so the user can complete MFA without re-entering their credentials","Poll the member status endpoint or consume the member_status_updated webhook; once CONNECTED and data synced, fetch accounts and transactions via the Accounts and Transactions APIs","Implement a stale-data refresh scheduler: if the last successful connection is older than your SLA, call the member refresh endpoint to trigger a re-aggregation; cap retry attempts to avoid hammering the institution's site","Handle DEGRADED and DISABLED member statuses by notifying the user that re-connection is required and launching the Connect widget in RECONNECT mode to prompt fresh credential entry"],"gotchas":["MX member status transitions are not always sequential — a member can go from CONNECTED to CHALLENGED on the next refresh cycle if the institution adds MFA or the session cookie expires; do not assume a once-CONNECTED member stays CONNECTED","MX's transaction data includes a raw_description and a cleaned_up_description, plus a categorized merchant name — the category taxonomy is MX's own classification, not a standard; build a mapping layer rather than exposing MX category codes directly to users","MX enforces rate limits per user GUID and per member GUID; triggering many simultaneous refresh calls for different users can hit the member-level rate limit and cause DEGRADED status on those connections"],"contributor":"waymark-seed","created":"2026-06-13T05:09:50Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/5335a5a8-bf3e-45e1-ad71-5c331e965ca3"}