Currency Management #
Supporting Multiple Currencies for International Clients #
Corcava provides comprehensive multi-currency support for international business operations:
Multi-Currency Architecture:
- Team Base Currency: Each team has a configurable base currency for internal reporting
- Client-Specific Currencies: Individual clients can have their own preferred currencies
- Invoice Currency Selection: Invoices automatically use client currency or fall back to team base currency
- Payment Currency Tracking: Payments tracked in both invoice currency and base currency
- Comprehensive Currency Database: Support for major international currencies
- Currency Database: Complete database of international currencies with currency codes
- Team Configuration: Team-level base currency configuration and management
- Client Configuration: Client-specific currency preferences and settings
- Automatic Selection: Automatic currency selection based on client configuration
- Currency Relationships: Proper relationships between teams, clients, and currencies
- Global Client Management: Support for clients in different countries with local currencies
- Currency Consistency: Consistent currency handling across all financial operations
- Professional Invoicing: Invoices displayed in client’s preferred currency
- Financial Reporting: Multi-currency reporting with base currency conversion
- Exchange Rate Integration: Real-time exchange rate integration for accurate conversions
- Base Currency Setting: Configurable base currency for each team (`base_currency_id`)
- Default Currency: Team base currency used as default for new clients
- Reporting Currency: Base currency used for internal financial reporting
- Currency Change Support: Administrative commands for changing team base currency
- Migration Support: Database migration support for currency configuration changes
- Individual Client Currencies: Each client can have a specific preferred currency
- Currency Override: Client currency overrides team base currency for invoicing
- Automatic Detection: Currency selection based on client configuration
- Fallback Logic: Fallback to team base currency when client currency not specified
- Currency Validation: Validation of currency settings and relationships
- Alpha Vantage Integration: Real-time exchange rates through Alpha Vantage API
- Current Exchange Rates: Real-time current exchange rate retrieval
- Historical Exchange Rates: Support for historical exchange rate data
- Average Exchange Rates: Calculate average exchange rates over date ranges
- Cached Exchange Rates: Cached exchange rates for performance optimization
- Real-Time Rates: Current exchange rates updated in real-time
- API Integration: Professional API integration with Alpha Vantage service
- Rate Caching: 2-hour caching of exchange rates for performance
- Error Handling: Comprehensive error handling for API failures
- Fallback Mechanisms: Graceful fallback when exchange rates unavailable
- Automatic Conversion: Automatic conversion between currencies during invoice creation
- Coefficient Calculation: Exchange coefficient calculation and storage
- Precision Handling: Proper decimal precision for financial calculations
- Rounding Logic: Consistent rounding logic for currency conversions
- Base Currency Conversion: Conversion to team base currency for reporting
- CURRENCY_EXCHANGE_RATE: Real-time exchange rate endpoint
- FX_DAILY: Daily historical exchange rate data
- API Key Configuration: Secure API key configuration and management
- Rate Limiting: Proper handling of API rate limits
- Error Response Handling: Comprehensive error response handling
- Real-Time Data: Access to real-time currency exchange data
- Historical Data: Access to historical exchange rate information
- Reliable Service: Professional-grade API service integration
- Comprehensive Coverage: Support for major international currencies
- Data Validation: Validation of API responses and data quality
- Exchange Rate Caching: 2-hour caching of exchange rates (`Cache::remember`)
- Performance Optimization: Optimized API calls and response handling
- Cache Key Management: Proper cache key management for different currency pairs
- Cache Invalidation: Automatic cache invalidation and refresh
- Fallback Handling: Graceful handling when cached rates unavailable
- Base Currency Selection: Configurable base currency for each team
- Currency Relationship: Direct relationship between teams and base currencies
- Default Settings: Base currency used as default for new clients and invoices
- Administrative Control: Administrative commands for changing team base currency
- Migration Support: Database migration support for base currency changes
- Team Isolation: Base currency settings isolated by team
- Currency Consistency: Consistent base currency usage across team operations
- Reporting Foundation: Base currency serves as foundation for financial reporting
- Conversion Reference: Base currency used as reference for all conversions
- Administrative Management: Team administrators can manage base currency settings
- Invoice Creation: Base currency used when client currency not specified
- Financial Reporting: All financial reports use base currency for consistency
- Payment Tracking: Payments converted to base currency for reporting
- Exchange Rate Calculations: Base currency used as reference for exchange rates
- Team Analytics: Team-level analytics use base currency for consistency
- Administrative Command: `app:change-team-currency` command for currency changes
- Comprehensive Updates: Updates teams, clients, invoices, and related records
- Data Integrity: Maintains data integrity during currency changes
- Batch Processing: Efficient batch processing of currency updates
- Audit Trail: Clear audit trail of currency change operations
- Client Currency Priority: Client-specific currency takes priority over team base currency
- Automatic Detection: Automatic currency selection during invoice creation
- Fallback Logic: Fallback to team base currency when client currency not set
- Currency Validation: Validation of currency selection and compatibility
- Professional Display: Professional currency display in invoices
- Currency Storage: Invoice currency stored with each invoice record
- Exchange Coefficient: Exchange coefficient calculated and stored with invoice
- Dual Amount Tracking: Amounts tracked in both invoice currency and base currency
- Currency Display: Professional currency display in invoice templates
- Payment Integration: Currency integration with payment processing
- Invoice Currency: Primary currency for invoice display and client interaction
- Base Currency Amounts: Converted amounts in team base currency for reporting
- Exchange Coefficients: Exchange rate coefficients stored with each invoice
- Currency Consistency: Consistent currency handling across invoice lifecycle
- Professional Display: Professional currency formatting and display
- Dual Amount Storage: Amounts stored in both invoice currency and base currency
- Exchange Rate Preservation: Exchange rates preserved for historical accuracy
- Currency Validation: Validation of currency amounts and calculations
- Professional Formatting: Professional currency formatting for different locales
- Reporting Integration: Multi-currency integration with financial reporting
- Base Currency Reporting: All reports use team base currency for consistency
- Currency Conversion: Automatic conversion of multi-currency data to base currency
- Exchange Rate Application: Historical exchange rates applied for accurate reporting
- Consolidated Reporting: Consolidated financial reports across all currencies
- Professional Presentation: Professional presentation of multi-currency data
- Revenue Tracking: Revenue tracking across multiple currencies with base currency conversion
- Outstanding Balances: Outstanding balance tracking in base currency
- Payment Analytics: Payment analytics with currency conversion
- Client Analytics: Client-specific analytics with proper currency handling
- Team Performance: Team performance metrics in consistent base currency
- Currency Consistency: Consistent currency presentation across all reports
- Historical Accuracy: Historical exchange rates preserved for accurate reporting
- Professional Display: Professional currency formatting in reports
- Consolidated Views: Consolidated views of multi-currency financial data
- Export Capabilities: Export capabilities for multi-currency financial data
- Real-Time Rates: Real-time exchange rates for accurate conversions
- Decimal Precision: Proper decimal precision for financial calculations
- Rounding Consistency: Consistent rounding logic across all conversions
- Historical Preservation: Historical exchange rates preserved for accuracy
- Validation Checks: Validation checks for conversion accuracy
- Audit Trail: Complete audit trail of all currency conversions
- Data Consistency: Consistent currency data across all financial records
- Error Prevention: Validation to prevent currency conversion errors
- Professional Standards: Currency handling meets professional accounting standards
- Regulatory Compliance: Currency handling supports regulatory compliance requirements
Currency Management Features:
International Business Support:
Currency Configuration Options #
Currency configuration provides flexibility for international operations:
Team Base Currency:
Client Currency Settings:
Exchange Rate Handling #
Automatic Currency Conversion and Exchange Rate Management #
Exchange rates are managed through sophisticated real-time integration:
Exchange Rate Service:
Exchange Rate Features:
Exchange Rate Calculations:
Exchange Rate API Integration #
Exchange rate integration provides reliable currency conversion:
Alpha Vantage API Integration:
API Features:
Caching and Performance:
Base Currency Configuration #
Team Base Currency Settings and Conversions #
Base currency configuration provides foundation for multi-currency operations:
Team Base Currency Management:
Base Currency Features:
Base Currency Applications:
Currency Change Management #
Currency changes are managed through administrative tools:
Team Currency Change Command:
Currency Change Process:
1. Team Update: Update team base currency setting 2. Client Updates: Update all team clients to new currency 3. Invoice Updates: Update existing invoices to new currency 4. Rate Updates: Update bill rates and project rates 5. Validation: Validate all currency changes for data integrity
Currency-Specific Invoicing #
Creating Invoices in Client-Specific Currencies #
Invoice creation automatically handles client-specific currencies:
Currency Selection Logic:
Invoice Currency Features:
Currency Conversion Process:
1. Currency Detection: Detect client-specific currency or use team base currency 2. Exchange Rate Lookup: Lookup current exchange rate for currency conversion 3. Amount Conversion: Convert amounts between invoice currency and base currency 4. Coefficient Storage: Store exchange coefficient with invoice for consistency 5. Dual Tracking: Track amounts in both currencies for reporting
Multi-Currency Invoice Management #
Multi-currency invoices are managed with comprehensive tracking:
Currency Tracking:
Multi-Currency Features:
Multi-currency Reporting #
Financial Reporting Across Different Currencies #
Multi-currency reporting provides comprehensive financial insights:
Reporting Currency Management:
Multi-Currency Analytics:
Reporting Features:
Currency Conversion Accuracy #
Currency conversion maintains high accuracy standards:
Conversion Accuracy:
Financial Integrity: