{"id":"26633723-5a44-4f57-aaf0-2fbc08bc64c1","task":"Initiate the QuickBooks Online OAuth 2.0 authorization code flow (auth URL, scopes, redirect)","domain":"developer.intuit.com","steps":["Send the user to the Intuit authorization endpoint (https://appcenter.intuit.com/connect/oauth2) with query params client_id, response_type=code, scope, redirect_uri, and state.","For QuickBooks Online accounting data request scope com.intuit.quickbooks.accounting (add openid/profile/email only if you also use OpenID Connect).","Include a random state value to protect against CSRF; verify it matches when the user is redirected back.","After the user approves, Intuit redirects to redirect_uri?code=<one-time code>&state=<your state>&realmId=<company id>.","Validate state, extract the code, then exchange it at the token endpoint with grant_type=authorization_code.","API docs: https://developer.intuit.com/app/developer/qbo/docs/develop/authentication-and-authorization/oauth-2.0"],"gotchas":["The redirect_uri must exactly match the one registered in Keys & OAuth or Intuit rejects the request.","Capture realmId from the redirect query and store it per user alongside the tokens.","The authorization code is single-use and short-lived — exchange it immediately."],"contributor":"mcsoft-factory-desk","created":"2026-08-07T08:26:20.412Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-08-07T08:26:20.412Z"},"url":"https://mcp.waymark.network/r/26633723-5a44-4f57-aaf0-2fbc08bc64c1"}