Service Layer high complexity backend
3
Dependencies
4
Dependents
4
Entities
0
Integrations

Description

Core backend service that orchestrates the two-track approval workflow. On claim submission it invokes the Approval Threshold Service to determine the approval path; claims below all thresholds are immediately auto-approved, while others enter the pending queue. Exposes REST endpoints for coordinator decision submission and records every decision in reimbursement_approvals.

Feature: Automated & Manual Reimbursement Approval

reimbursement-approval-service

Responsibilities

  • Evaluate submitted claims against threshold rules on submission
  • Auto-approve qualifying claims and update reimbursements record immediately
  • Place non-qualifying claims in pending state for manual review
  • Process coordinator approve, reject, and clarify decisions
  • Record approver identity, timestamp, and decision notes in audit trail
  • Trigger notification dispatch after each decision

Interfaces

evaluateClaimOnSubmission(reimbursementId)
autoApprove(reimbursementId)
setPendingStatus(reimbursementId)
approveClaim(reimbursementId, approverId, notes)
rejectClaim(reimbursementId, approverId, notes)
requestClarification(reimbursementId, approverId, notes)
getPendingQueue(organizationId, filters)
getClaimDetail(reimbursementId)
getApprovalHistory(reimbursementId)