Table of Contents
- Overview
- Permission Configuration
- Checklist Template Setup
- Integration Configuration
- Event Contracts
- API Contracts
- Security Considerations
- Troubleshooting
Overview
This guide covers the administrative configuration and technical details for the Financial Close Management module (FA-19). It is intended for system administrators, finance managers, and technical staff responsible for setting up and maintaining the close management process.Module Architecture
FA-19 consists of four primary database tables:Key Dependencies
- FA-02 (General Ledger): Fiscal period linking
- FA-07 (Financial Reporting): Close status verification for reports
- PF-10 (Notifications): Task assignments and approval alerts
- PF-11 (Documents): File storage for attachments
- FW-03 (Approval Workflow): Close period approval events
Permission Configuration
Permission Keys
FA-19 uses the following permission keys for access control:Role Assignment Matrix
Configuring Permissions
- Navigate to Settings > Permissions
- Select the role to modify
- Under Finance & Accounting > Close Management:
- Enable/disable each permission as needed
- Click Save Changes
Permission Check Pattern
In code, use theuseHasPermission hook:
Checklist Template Setup
Standard Template Structure
Create templates for each close type:Month-End Close Template
Quarter-End Close Template
Include all month-end tasks plus:Year-End Close Template
Include all quarter-end tasks plus:Template Management Best Practices
- Version Control: Include version numbers in template names
- Annual Review: Review and update templates annually
- Document Changes: Add notes when updating templates
- Test New Templates: Create a test period before production use
Integration Configuration
FA-02 (General Ledger) Integration
Close periods can be linked to fiscal periods:- Linking: When creating a close period, select the corresponding fiscal period
- Status Sync: Close period status does not automatically update fiscal period
- Use Case: Financial reports can verify close period status before generating final statements
FA-07 (Financial Reporting) Integration
Financial Reporting checks close status:PF-10 (Notifications) Integration
Notifications are triggered for:PF-11 (Documents) Integration
Document storage uses the platform document service:- Bucket:
fa-close-documents - Path Pattern:
{organization_id}/{close_period_id}/{document_id} - Max File Size: 50MB per document
- Allowed Types: PDF, Excel, Word, images
Event Contracts
FA-19 publishes the following events to thefa_events channel:
close_period_started
Trigger: When close period status changes to ‘in_progress’close_period_completed
Trigger: When close period status changes to ‘completed’close_period_approved
Trigger: When close period status changes to ‘approved’close_task_assigned
Trigger: When a task’s assigned_to field changesclose_task_completed
Trigger: When a task’s status changes to ‘completed’Subscribing to Events
API Contracts
Close Period Approval API
Endpoint:/api/v1/fa/close/periods/{period_id}/approveMethod: POST
Permission:
fa.close.approve
Request:
403: Access denied (no permission or wrong organization)404: Period not found409: Invalid status or incomplete tasks
Close Period Status API
Endpoint:/api/v1/fa/close/periods/{period_id}/statusMethod: GET
Permission:
fa.close.view
Response:
Security Considerations
Row-Level Security (RLS)
All FA-19 tables have RLS policies:Defense-in-Depth
All mutations include organization_id validation:Audit Trail
All close management actions are logged:- Task completion with user and timestamp
- Status changes with actor information
- Document uploads with user and timestamp
- Approval decisions with comments
Locked Period Protection
Completed/locked periods cannot be modified:Task Dependency Validation
Circular dependencies are prevented:Troubleshooting
Common Administrative Issues
Users Can’t See Close Periods
Cause: Missingfa.close.view permission
Solution:
- Check user’s role assignment
- Verify role has
fa.close.viewpermission - Clear browser cache and retry
Template Changes Not Reflected
Cause: Template changes don’t update existing periods Solution:- Template changes only affect new periods
- For existing periods, manually add/update tasks
- Consider creating a new period with updated template
Approval Notification Not Sent
Cause: Notification service issue or user preferences Solution:- Check notification service logs
- Verify user has email notifications enabled
- Check user’s notification preferences in profile
Period Stuck in “Pending Approval”
Cause: No users withfa.close.approve permission
Solution:
- Verify users have approval permission
- Check if approvers are active in the organization
- Grant approval permission to appropriate user
Database Queries for Troubleshooting
Check Close Period Status
Find Incomplete Tasks
Check Event Publishing
Related Documentation
- Financial Close Management User Guide
- General Ledger Guide
- FA Security Considerations
- API Contracts
- Event Contracts
Document Version: 1.0.0
Last Updated: 2026-01-19
Next Review: 2026-04-19