Your 500 error requires investigating OData service error handling, authorization object assignment, and Fiori role configuration post-upgrade.
OData Service Error Handling Analysis:
The F_FICA_RLV authorization object appearing in travel expense processing indicates a configuration issue introduced during your S/4HANA 2020 upgrade. Check transaction /IWFND/ERROR_LOG for detailed error traces:
/IWFND/ERROR_LOG → Filter by service FITE_TRIP_EXP_SRV
Look for: AUTHORITY_CHECK_FAILED entries
Note the exact authorization object and field values
The error occurs on write operations because S/4HANA 2020 introduced enhanced authorization checks for financial postings triggered by expense submissions. The OData service now validates not just travel authorizations but also any downstream FI/CO postings.
Authorization Object Assignment Fix:
The F_FICA_RLV object shouldn’t be required for standard travel expenses. This suggests custom coding or misconfiguration. Investigate:
-
Custom BAdI Check: Transaction SE19 → Search for implementations of FITE_BADI_EXPENSE_CHECK or similar travel BAdIs. If custom code calls financial functions, those need proper authorization handling.
-
Expense Type Configuration: Transaction TRIP → Expense Types → Check if expense types are configured to trigger FI-CA (Contract Accounts) postings instead of standard FI postings. This would explain the F_FICA_RLV requirement.
-
Required Authorization Objects: The correct authorization objects for FITE_TRIP_EXP_SRV write operations are:
F_PTRM_EXP - Travel Expense Processing
ACTVT: 01, 02, 03
RTYPE: All relevant receipt types
F_PTRM_TRV - Travel Request Processing
ACTVT: 01, 02
F_TRIP - Travel Management Authorization
ACTVT: 01, 02, 23
Fiori Role Configuration Update:
After S/4HANA 2020 upgrade, regenerate the Fiori roles:
- Transaction PFCG → Open role SAP_FIORI_TRAVEL
- Go to “Authorization” tab → Click “Change Authorization Data”
- Select “Expert Mode” → Click “Edit” → “Insert authorization(s)” → “From Template”
- Search for template S_TCODE with value TRIP and PR05
- Generate the role: “Authorization” → “Generate”
- Assign role to test user and verify
Service Activation Verification:
Ensure the OData service is properly activated post-upgrade:
Transaction: /IWFND/MAINT_SERVICE
Service: FITE_TRIP_EXP_SRV
System Alias: LOCAL
Status: Active (green)
If not active, use “Add Service” to register it from the service catalog.
Root Cause Resolution:
The F_FICA_RLV error most likely comes from:
- Custom validation logic calling FI-CA functions - Review and remove or add proper authorization handling
- Incorrect expense type master data pointing to FI-CA account assignments - Correct in transaction TRIP
- Missing authorization object F_PTRM_EXP in user roles - Add to SAP_FIORI_TRAVEL role
Testing Procedure:
- Use transaction SU53 immediately after error to capture missing authorization
- Run ST01 trace (authorization check) while reproducing the error
- Check transaction /IWFND/ERROR_LOG for complete error stack
- Test with a user having SAP_ALL temporarily to confirm it’s authorization-related
Implement the authorization object additions to your Fiori role, verify expense type configurations don’t reference FI-CA, and regenerate roles post-upgrade. This approach resolves 95% of post-upgrade OData authorization issues in travel management.