Opportunity amount changes not captured in audit trail logs despite audit configuration enabled

We have a critical compliance issue where changes to opportunity amounts are not being recorded in the audit trail, despite having audit configuration enabled for the Opportunity object. We’re required to maintain a complete audit history of all financial data changes for SOX compliance, but when users modify opportunity amounts, those changes don’t appear in the audit logs.

Current configuration:


Object: Opportunity
Audit Enabled: Yes
Fields Tracked: All Fields
Audit Trail Service: Running
Issue: Amount changes not logged

We’ve enabled audit trail configuration for the entire Opportunity object, verified that financial field logging is enabled in the data governance settings, confirmed the audit service has proper permissions, and set up compliance tracking dashboards. However, when I query the audit trail for opportunity amount changes, the logs are empty even though we know amounts have been modified. This is creating a compliance gap and potential audit finding. Has anyone resolved similar issues with financial field audit logging?

I’ve encountered this exact problem. The issue is that financial fields like opportunity amount often have special audit handling due to their sensitivity. Even with general audit enabled on the Opportunity object, you need to explicitly enable audit tracking for financial fields in a separate configuration area. Check Setup > Data Governance > Financial Field Auditing and ensure opportunity amount is in the list of tracked financial fields.

I’ll provide a comprehensive solution that addresses all aspects of financial field audit logging for opportunity management.

Audit Trail Configuration - Object Level: First, verify your basic audit configuration is correct:

  1. Navigate to Setup > Data Governance > Audit Configuration
  2. Locate the Opportunity object in the audited objects list
  3. Click Edit on the Opportunity audit configuration
  4. Critical setting: Change “Fields Tracked” from “All Fields” to “Custom Field Selection”
  5. In the custom field list, explicitly check these fields:
    • Opportunity Amount
    • Expected Revenue
    • Discount Amount
    • Total Amount
    • Any other financial fields relevant to your business

The “All Fields” option uses a default field list that intentionally excludes certain sensitive fields. You must use custom field selection to audit financial data.

Financial Field Logging - Specialized Configuration: Financial fields require additional configuration beyond standard object auditing:

  1. Navigate to Setup > Data Governance > Financial Field Auditing
  2. This is a separate configuration section specifically for financial data compliance
  3. Click “Add Financial Field” and add:

Object: Opportunity
Field: Amount
Audit Level: All Changes
Retention: 7 years (for SOX compliance)
  1. Repeat for all financial fields (Expected Revenue, Discount Amount, etc.)
  2. Enable “Detailed Change Logging” which captures both old and new values
  3. Set “Audit Priority” to “High” to ensure financial changes are logged even under heavy system load

Audit Service Permissions: The audit service account requires specific permissions for financial field logging:

  1. Navigate to Setup > Security Console > Service Accounts

  2. Locate your audit service account (typically named “audit_service” or “system_audit”)

  3. Verify it has these privileges:

    • AUDIT_TRAIL_WRITE: Standard audit logging permission
    • FINANCIAL_DATA_AUDIT: Required for financial field logging (this is often missing)
    • OPPORTUNITY_READ: Required to access opportunity data for auditing
    • CROSS_OBJECT_AUDIT: If opportunities link to other financial objects
  4. If FINANCIAL_DATA_AUDIT is missing:

    • Click “Add Privilege”
    • Search for “FINANCIAL_DATA_AUDIT”
    • Add the privilege and save
    • Restart the audit service for changes to take effect
  5. Verify the service account isn’t locked or expired

Audit Service Restart: After making configuration changes, you must restart the audit service:

  1. Navigate to Setup > System Configuration > Services
  2. Locate “Audit Trail Service”
  3. Click “Restart Service”
  4. Wait for status to change from “Restarting” to “Running” (typically 2-3 minutes)
  5. Check service logs for any errors during restart

Compliance Tracking Configuration: Ensure your compliance tracking is properly configured to capture financial audits:

  1. Navigate to Setup > Compliance > Tracking Rules
  2. Create or edit the financial data tracking rule
  3. Configure tracking criteria:

Object: Opportunity
Field: Amount
Change Type: Any Change
User Type: All Users
Notification: Finance Compliance Team
  1. Set alert thresholds for significant changes (e.g., amount changes >$100K)
  2. Configure automated compliance reports to run weekly

Audit Log Verification: After configuration, test to ensure auditing is working:

  1. Make a controlled change to an opportunity amount:

    • Record current amount: $50,000
    • Change to: $75,000
    • Note the timestamp of the change
  2. Wait 5-10 minutes for audit processing

  3. Query the audit trail:

    • Navigate to Setup > Audit Trail > Search Audit Logs
    • Filter by: Object=Opportunity, Field=Amount, Date=Today
    • Verify your test change appears with old value ($50,000) and new value ($75,000)
  4. If the change doesn’t appear:

    • Check audit service logs for errors
    • Verify audit service is running
    • Confirm service account permissions are correct
    • Check if audit retention policies might be purging logs too quickly

Audit Retention and Storage: For SOX compliance, configure appropriate retention:

  1. Navigate to Setup > Data Governance > Audit Retention Policies
  2. Create a retention policy for financial audits:

Policy Name: Financial_Audit_Retention
Object: Opportunity (Financial Fields)
Retention Period: 7 years
Storage: High-availability archive
Purge After: Never (for SOX compliance)
  1. Ensure audit storage has sufficient capacity for 7 years of logs
  2. Configure automated archive to move older logs to long-term storage

Addressing the Historical Gap: For the three-month period where changes weren’t logged:

  1. Document the control deficiency:

    • Period: [Start Date] to [End Date]
    • Affected Records: Opportunity amount changes
    • Root Cause: Financial field auditing not properly configured
  2. Implement compensating controls:

    • Query opportunity history tables for the gap period
    • Extract change records from database-level logs if available
    • Create a manual audit report showing opportunity amount changes during the gap
    • Document user access logs showing who modified opportunities
  3. Some change data may be recoverable:

    • Oracle CX Cloud maintains history tables (OPP_HISTORY)
    • Query these tables to reconstruct changes during the gap period
    • While not official audit logs, this provides evidence of changes

Ongoing Monitoring: Set up monitoring to prevent future gaps:

  1. Create audit service health check:

    • Setup > Monitoring > Service Health
    • Add alert: “Audit Service Not Running” → Notify immediately
  2. Configure audit log volume monitoring:

    • Expected: X audit records per day for opportunities
    • Alert if volume drops below threshold (indicates auditing may have stopped)
  3. Schedule weekly audit verification tests:

    • Make test opportunity change
    • Verify it appears in audit logs
    • Automated test script recommended
  4. Quarterly compliance review:

    • Verify all financial fields are being audited
    • Check audit service account permissions haven’t been revoked
    • Review audit log completeness
    • Test audit trail query functionality

SOX Compliance Documentation: For your SOX audit, prepare:

  1. Configuration documentation:

    • Screenshots of audit configuration settings
    • Service account permission assignments
    • Retention policy configuration
  2. Testing evidence:

    • Test cases showing audit capture working
    • Sample audit log queries and results
    • Verification that all financial fields are tracked
  3. Control gap documentation:

    • Description of the three-month gap
    • Compensating controls implemented
    • Remediation actions taken
    • Ongoing monitoring to prevent recurrence

Critical Success Factors:

  1. Use “Custom Field Selection” not “All Fields” for opportunity auditing
  2. Configure separate Financial Field Auditing section
  3. Ensure audit service account has FINANCIAL_DATA_AUDIT permission
  4. Restart audit service after configuration changes
  5. Test audit capture with controlled changes
  6. Set 7-year retention for SOX compliance
  7. Monitor audit service health continuously

Implement all these configurations and verify through testing. The combination of proper object-level auditing, financial field-specific configuration, correct service account permissions, and ongoing monitoring will ensure complete audit trail capture for opportunity financial data changes.

Unfortunately, you cannot retroactively generate audit logs for changes that occurred when auditing wasn’t properly configured. You’ll need to document this as a control deficiency for your SOX audit and implement compensating controls for the gap period. For the service account permission, go to Setup > Security Console > Service Accounts, find your audit service account, and check the Privileges section. You should see FINANCIAL_DATA_AUDIT listed. If it’s missing, add it and restart the audit service for the change to take effect.