ForhoppPay Connect — Enterprise Documentation Index
docs.forhopp.com — Feature-Level Documentation
Per-Feature Documentation
Each document below provides enterprise-level detail for a single feature: architecture, API specification, database schema, processing flows, code examples, validation rules, and correctness properties.
| # | Document | Feature | Key Services |
|---|---|---|---|
| 01 | Authentication & API Keys | FR-1, FR-2 | MerchantApiKeyService, ApiKeyAuthenticationFilter |
| 02 | Rate Limiting | FR-3 | ConnectRateLimiter, ConnectRateLimitFilter |
| 03 | Charges API | FR-5–FR-8 | MerchantChargeService, ConnectChargeController |
| 04 | Webhooks | FR-11–FR-13 | MerchantWebhookService, ConnectWebhookController |
| 05 | Hosted Checkout | FR-9, FR-10 | MerchantCheckoutService, SandboxPaymentSimulator |
| 06 | Payouts & Fees | FR-26, FR-27 | MerchantPayoutService, ConnectFeeCalculationService |
| 07 | Disputes | FR-29 | ConnectDisputeService |
| 08 | Multi-Currency | FR-28 | CurrencyConversionService |
| 09 | API Versioning | FR-30 | ApiVersionFilter, ApiVersionResponseAdvice |
| 10 | Subscriptions | FR-4 | ConnectSubscriptionService, ConnectSubscriptionController |
| 11 | Subscription Add-Ons | FR-4.1 | SubscriptionItemService, ConnectSubscriptionItemController |
| 12 | MoR Recurring Billing | FR-5 | SubscriptionBillingService, BillingCycleScheduler |
| — | Subscription Checkout Flow | Integration | End-to-end hosted checkout + recurring flow |
Cross-Cutting Documentation
| Document | Location | Description |
|---|---|---|
| Complete API Reference | Parent folder | Full endpoint reference with examples |
| Database Schema | Parent folder | All tables, indexes, constraints |
| Architecture & Security | Parent folder | System architecture, security model |
| Integration Guide | Parent folder | Step-by-step integration for all platforms |
| Merchant Guide | Parent folder | Dashboard and operational guide |
Correctness Properties Map
52 formal correctness properties are defined across the feature documents. Each property specifies a universal invariant that must hold across all valid system states.
| Properties | Feature | Document |
|---|---|---|
| 1–5 | Authentication | 01-AUTHENTICATION.md |
| 6 | Rate Limiting | 02-RATE-LIMITING.md |
| 8–16 | Charges | 03-CHARGES.md |
| 17–19 | Checkout & Sandbox | 05-HOSTED-CHECKOUT.md |
| 20–23 | Webhooks | 04-WEBHOOKS.md |
| 24–26 | Database Constraints | Database Schema |
| 27–28 | WordPress Plugin | Integration Guide |
| 29–30 | Shopify App | Integration Guide |
| 31–32 | JavaScript SDK | Integration Guide |
| 33–36 | Payouts & Fees | 06-PAYOUTS.md |
| 37 | Currency Conversion | 08-CURRENCY.md |
| 38–39 | Disputes | 07-DISPUTES.md |
| 40 | API Versioning | 09-API-VERSIONING.md |
| 41–44 | Subscriptions | 10-SUBSCRIPTIONS.md |
| 45–48 | Subscription Add-Ons | 11-SUBSCRIPTION-ADDONS.md |
| 49–52 | MoR Recurring Billing | 12-MOR-RECURRING.md |
Technology Stack
| Layer | Technology |
|---|---|
| Backend | Java 17, Spring Boot 3.4 |
| Database | PostgreSQL 13+ |
| Cache | Redis 6+ |
| ORM | Hibernate/JPA 6.x |
| Migrations | Flyway 9.x |
| Deployment | Kubernetes 1.28+ |
| Testing | JUnit 5, jqwik (property-based) |
Last Updated: June 2026
