high complexity v1.1 extracted Accounting Integration Confidence: 100%
3
Components
43
Shared
0
User Stories
Yes
Analyzed

Description

The Accounting API feature provides integration adapters that connect Meander to external accounting systems - Xledger for Blindeforbundet and the Dynamics portal for HLF. A single internal interface abstracts the divergent backends; tenant configuration in organization_settings determines which connector is active at runtime. Failed submissions are queued for retry with exponential backoff, and every attempt is logged to accounting_sync_logs for audit and reconciliation purposes.

Sources & reasoning

Section 2.1 explicitly names Xledger and Dynamics as target accounting backends, and the Fase 3 roadmap entry confirms accounting integration as a Phase 3 deliverable - normalizing to v1.1 per the third-phase rule. The connector pattern is justified because two organizations use structurally different accounting systems, and a single internal interface isolates the rest of the platform from that divergence.

No source references — this artifact was included based on reasoning alone (see above).

Analysis

Business Value

Automating expense transfer into existing accounting systems eliminates manual re-entry after approval, removing a significant source of transcription errors and administrative overhead for finance staff. For Blindeforbundet, direct Xledger integration supports reimbursements tied to Bufdir-funded activities; for HLF, Dynamics synchronization is required for accounting compliance workflows. Delivering a connector pattern rather than bespoke per-org scripts means new tenants with compatible accounting systems can be onboarded by configuration alone, protecting long-term code maintainability and reducing the cost of tenant expansion as the platform scales to additional organizations.

Implementation Notes

Implement as a connector pattern with a base AccountingConnector interface and concrete XledgerConnector and DynamicsConnector implementations. Tenant configuration in organization_settings drives connector selection at runtime with no hardcoded org checks in business logic. Xledger uses API key plus company ID header authentication; Dynamics uses OAuth2 client credentials against HLF's Azure AD tenant. Both connectors must tolerate transient failures via exponential backoff with a maximum of five retries before marking a record permanently failed and surfacing the error in the admin portal. The adapter runs as a background job triggered by queue or cron to avoid blocking approval responses. Integration tests use HTTP record-and-replay fixtures to keep CI independent of external system availability.

Components (46)

Service Layer (1)

Data Layer (1)

Infrastructure (1)

Shared Components

These components are reused across multiple features

User Stories

No user stories have been generated for this feature yet.