โ ๏ธ Important: For production deployment, you must configure a public redirect URI.
๐ Step 1: Configure Your JSON File
Add the quickBooksRedirectUri field to your configuration file:
{
"quickBooksClientId": "your-client-id",
"quickBooksClientSecret": "your-client-secret",
"quickBooksRealmId": "your-realm-id",
"quickBooksRefreshToken": "will-be-updated-after-oauth",
"quickBooksEnvironment": "production",
"quickBooksRedirectUri": "https://your-domain.com:3000/api/oauth/quickbooks/callback"
}
๐ Step 2: Update QuickBooks Developer Portal
- Go to https://developer.intuit.com/
- Select your app
- Navigate to Keys & OAuth section
- Under Redirect URIs, add your production URI:
https://your-domain.com:3000/api/oauth/quickbooks/callback
- Click Save
๐ Step 3: SSL/HTTPS Requirements
Production environments MUST use HTTPS. QuickBooks OAuth will reject HTTP URLs in production mode.
- Use a reverse proxy (nginx, Apache) with SSL certificate
- Or use AWS Load Balancer with SSL termination
- Free SSL certificates: Let's Encrypt
๐ Example Configurations
AWS EC2 / Elastic IP
"quickBooksRedirectUri": "https://ec2-12-34-56-78.compute-1.amazonaws.com:3000/api/oauth/quickbooks/callback"
Custom Domain
"quickBooksRedirectUri": "https://aws.dashingdisty.com:3000/api/oauth/quickbooks/callback"
Behind Reverse Proxy (port 443)
"quickBooksRedirectUri": "https://bridge.dashingdisty.com/api/oauth/quickbooks/callback"
โ
Step 4: Verify Configuration
After configuring:
- Restart the admin panel
- The Redirect URI box above will show your configured URI
- Click Test Connection to verify
- If token expired, use Re-Authorize QuickBooks with the new URI
๐ก Pro Tip: Keep both sandbox and production redirect URIs in the QuickBooks Developer Portal. You can have multiple redirect URIs registered.