Float Service
Welcome to the documentation for the Float Service.
Overview
The Float Service is a core component of the FloatMe platform, responsible for managing short-term financial advances, known as "floats", for our users. This service orchestrates the entire float lifecycle, from initial request and underwriting approval to fund disbursement and eventual collection.
Key Features
-
Float Management: CRUD operations for floats, maintaining a source of truth for all active and historical advances.
-
Collection Orchestration: Automated systems for scheduling and executing float collections via ACH and pinless debit.
-
Administrative Tools: QA endpoints for automation and internal tools for managing bypasses and user bans.
-
Event-Driven Architecture: Integrations with AWS EventBridge to notify other services of float lifecycle events.
Service Components
The repository is structured into several specialized services:
-
API Service (
cmd/api): The primary interface for internal clients to manage floats. -
Collections Worker (
cmd/collections-worker): Processes scheduled collection attempts. -
Collections Scheduler (
cmd/collections-scheduler): Identifies floats due for collection and queues them for processing. -
Webhook Workers (
cmd/webhook-worker): Trigger collections based on external events like income detection. -
Batch Worker (
cmd/batch-worker): Handles bulk operations and data management.