Skip to main content

Welcome to Phoenix Java Middleware

Phoenix Java Middleware is a Java Spring Boot application that serves as a standalone microservice for integrating with the Interswitch Uganda Phoenix API. It provides a simplified REST interface for payment processing, client authentication, and biller management operations.

Quick start

Get up and running in minutes with the pre-built JAR

Configuration

Configure your credentials and settings

Authentication

Learn about key generation and client registration

API reference

Explore the complete API documentation

Key features

Client registration

Secure client registration with elliptic curve cryptography

Payment processing

Validate accounts and process payments seamlessly

Biller management

Browse categories, billers, and payment items

Transaction tracking

Check payment status and wallet balance

Architecture

The middleware is built on Spring Boot 3.1.5 and provides a clean separation of concerns:
  • Controllers - REST endpoints that expose the Phoenix API functionality
  • Services - Business logic for authentication, payments, and billers
  • DTOs - Data transfer objects for request/response handling
  • Utilities - Cryptographic operations, HTTP clients, and helper methods

Security

Phoenix Java Middleware implements enterprise-grade security features:
  • Elliptic curve cryptography for key exchange using Bouncy Castle
  • Signature-based authentication with Interswitch
  • Daily key rotation to maintain secure sessions
  • OTP encryption for sensitive payment operations

Technology stack

  • Spring Boot 3.1.5 - Application framework
  • Java 17+ (OpenJDK recommended)
  • Bouncy Castle 1.71 - Cryptographic operations
  • Apache HttpClient 4.5.13 - HTTP communication
  • Jackson 2.13.0 - JSON processing

Use cases

Phoenix Java Middleware is ideal for:
  • Fintech applications requiring payment processing
  • Mobile money integrations in Uganda
  • Bill payment systems
  • Wallet-based applications
  • POS terminal integrations

Next steps

Run the middleware

Start the application and test the endpoints

Configure credentials

Set up your Phoenix API credentials

Build docs developers (and LLMs) love