Files
defiQUG e8ae376e90 Enhance API services with validation and error handling improvements
- Integrated Zod validation schemas across various API routes to ensure input integrity and improve error handling.
- Updated `mapping-service`, `orchestrator`, `packet-service`, and `webhook-service` to utilize validation middleware for request parameters and bodies.
- Improved error handling in webhook management, packet generation, and compliance routes to provide clearer feedback on request failures.
- Added new validation schemas for various endpoints, enhancing overall API robustness and maintainability.
- Updated dependencies in `package.json` to include the new validation library.
2025-12-12 20:23:45 -08:00
..

Orchestrator Service

ISO-20022 orchestrator service managing trigger state machine and rail adapters.

Features

  • ISO-20022 message routing and normalization
  • Trigger state machine (CREATED → VALIDATED → SUBMITTED → PENDING → SETTLED/REJECTED)
  • On-chain fund locking and release
  • Rail adapter coordination (Fedwire, SWIFT, SEPA, RTGS)
  • Event publishing

State Machine

CREATED → VALIDATED → SUBMITTED_TO_RAIL → PENDING → SETTLED
                                              ↓
                                           REJECTED

API Endpoints

  • GET /v1/orchestrator/triggers/:triggerId - Get trigger
  • GET /v1/orchestrator/triggers - List triggers
  • POST /v1/orchestrator/triggers/:triggerId/validate-and-lock - Validate and lock
  • POST /v1/orchestrator/triggers/:triggerId/mark-submitted - Mark submitted
  • POST /v1/orchestrator/triggers/:triggerId/confirm-settled - Confirm settled
  • POST /v1/orchestrator/triggers/:triggerId/confirm-rejected - Confirm rejected
  • POST /v1/iso/inbound - Route inbound ISO-20022 message
  • POST /v1/iso/outbound - Route outbound ISO-20022 message

Rails

Supported payment rails:

  • fedwire - Fedwire
  • swift - SWIFT
  • sepa - SEPA
  • rtgs - RTGS

Configuration

  • REST_API_URL - Main REST API URL
  • RPC_URL - Blockchain RPC URL
  • PRIVATE_KEY - Signer private key