Skip to main content

Quick Troubleshooting Checklist

Before diving into specific issues, verify these basics:
  • ✅ Your API key is valid and not expired
  • ✅ You’re using the correct base URL: https://api.upwell.com
  • ✅ All required headers are included
  • ✅ Request format follows the API specification
  • ✅ You have sufficient permissions for the operation

Common Issues and Solutions

Authentication Problems

Symptoms: Getting 401 Unauthorized errorsSolutions:
  1. Verify API Key Format
  2. Check Key Expiration
    • Log into your Upwell dashboard
    • Navigate to Settings → API Keys
    • Verify your key’s expiration date
  3. Regenerate API Key
    • Generate a new API key if the current one is expired
    • Update your application with the new key
    • Revoke the old key for security
Symptoms: Getting 403 Forbidden errorsSolutions:
  1. Check User Permissions
    • Verify your user account has the necessary permissions
    • Contact your administrator to update permissions
  2. Verify API Key Scope
    • Some API keys may have limited scope
    • Generate a new key with appropriate permissions
  3. Resource Access Rights
    • Ensure you have access to the specific customer/carrier data
    • Verify organization-level permissions

Data Integration Issues

Symptoms: Invoices not processing correctlySolutions:
  1. Check File Format
    • Supported formats: PDF, TIFF, PNG, JPEG
    • Maximum file size: 10MB per document
    • Ensure files are not corrupted
  2. Verify Email Configuration
  3. Document Quality Requirements
    • Resolution: Minimum 300 DPI
    • Text must be clearly readable
    • No handwritten annotations over critical data
Symptoms: Shipment data not syncingSolutions:
  1. Connection Testing
  2. Data Format Validation
    • Ensure shipment IDs match between systems
    • Verify date formats are ISO 8601 compliant
    • Check required fields are populated
  3. Webhook Configuration
    • Verify webhook URLs are accessible
    • Check SSL certificate validity
    • Confirm webhook authentication is configured
Symptoms: Payments not applying to invoicesSolutions:
  1. Check Payment Matching Rules
    • Verify invoice numbers match exactly
    • Ensure customer information is consistent
    • Review payment amount matching tolerances
  2. Review Bank Integration
    • Confirm bank feed is active and current
    • Check for connectivity issues
    • Verify account mapping is correct
  3. Manual Payment Application
    • Use the dashboard to manually apply payments
    • Document any discrepancies for future automation

Performance and Rate Limiting

Symptoms: API calls taking longer than expectedSolutions:
  1. Optimize Query Parameters
  2. Implement Efficient Filtering
  3. Use Bulk Operations
Symptoms: Getting 429 Too Many Requests errorsSolutions:
  1. Implement Exponential Backoff
  2. Respect Rate Limit Headers

Data Quality and Validation

Symptoms: Getting 400 Bad Request with validation detailsSolutions:
  1. Required Field Validation
  2. Data Type Validation
  3. Business Rule Validation
    • Check credit limits before creating invoices
    • Verify carrier contracts are active
    • Ensure payment terms are valid
Symptoms: Getting 404 Not Found for existing resourcesSolutions:
  1. Verify Resource IDs
    • Check for typos in UUIDs or reference numbers
    • Ensure you’re using the correct identifier type
    • Confirm the resource hasn’t been deleted
  2. Check Data Permissions
    • Verify you have access to the specific customer/carrier
    • Confirm organization-level data access
  3. Search Alternative Endpoints

Testing and Debugging

API Testing Tools

Basic Request Testing:
Setting Up Postman:
  1. Import the Upwell OpenAPI specification
  2. Configure environment variables:
  3. Set up authentication in the Authorization tab
  4. Use the Collection Runner for batch testing

Logging and Monitoring

Essential Logging Information:
Key Metrics to Track:
  • Response times by endpoint
  • Error rates by error code
  • Rate limit utilization
  • Success/failure ratios

Getting Additional Help

Support Channels

Technical Support

For API and integration issues

API Documentation

Complete endpoint reference

Error Codes Reference

Detailed error code explanations

Implementation Guide

Step-by-step setup instructions

When Contacting Support

Include the following information in your support request:
  1. Error Details
    • Complete error message and code
    • Request timestamp
    • Endpoint being called
  2. Request Information
    • HTTP method and URL
    • Request headers (excluding API key)
    • Request body (if applicable)
  3. Environment Details
    • Programming language and version
    • Library/SDK versions
    • Network configuration (if relevant)
  4. Steps to Reproduce
    • Detailed steps that led to the issue
    • Expected vs. actual behavior
    • Frequency of occurrence

Best Practices for Smooth Operation

  1. Keep API Keys Secure
    • Never commit keys to version control
    • Use environment variables
    • Rotate keys regularly
  2. Implement Proper Error Handling
    • Handle all HTTP status codes appropriately
    • Implement retry logic for transient errors
    • Log errors for debugging
  3. Monitor API Usage
    • Track request volumes and patterns
    • Monitor rate limit usage
    • Set up alerts for unusual activity
  4. Test Thoroughly
    • Test error scenarios in addition to success cases
    • Use staging environment for integration testing
    • Validate data before sending to API
  5. Stay Updated
    • Subscribe to API change notifications
    • Review documentation updates
    • Test new features in staging first