Django-based application handling OAuth2 authentication flow for Enroads paving ERP system integration with QuickBooks Online.
Provides secure authentication and authorization for accessing QuickBooks Online data, enabling seamless integration between Enroads paving operations and financial management systems.
- OAuth2 Flow Management: Complete authorization code flow implementation
- Token Management: Secure access and refresh token handling
- Multi-Scope Support: Accounting, OpenID, and app-specific scopes
- Company Data Access: Retrieve QuickBooks company information
- User Profile Integration: OpenID Connect for user authentication
- JWT Validation: Secure token verification
- Session Management: Persistent authentication state
/- Main authentication portal/connectToQuickbooks- Initiate accounting scope connection/signInWithIntuit- OpenID Connect authentication/getAppNow- App-specific scope authorization/callback- OAuth2 callback handler/connected- Post-authentication dashboard/disconnect- Token revocation and session cleanup/refreshTokenCall- Token refresh functionality/apiCall- Test QuickBooks API connectivity
Set up the following in Django settings:
CLIENT_ID: Intuit app client IDCLIENT_SECRET: Intuit app client secretREDIRECT_URI: OAuth2 callback URLACCOUNTING_SCOPE: QuickBooks accounting permissionsOPENID_SCOPES: User authentication scopes
- CSRF token validation
- JWT token verification
- Secure session management
- Token expiration handling
- Automatic token refresh
This app serves as the authentication foundation for:
- Project management operations
- Estimate and invoice creation
- Customer data synchronization
- Financial reporting access