Operations and Execution
Payment Initiation
sd-payment-initiation · bian-operations
A BIAN service domain in Operations and Execution. It applies the Process functional pattern to the Payment Instruction, with the Payment Instruction Procedure as its control record — one independent Spring Boot microservice on the platform's Cilium eBPF mesh.
View repository ↗The 162-domain platform ↗
Business DomainPayments
Functional PatternProcess
Asset TypePayment Instruction
Control RecordPayment Instruction Procedure
USEWhat it is used for
Representative use cases for the Payment Initiation service domain within a BIAN-aligned core-banking landscape.
- Accept, validate, and route Payment Instruction instructions to the correct rail
- Execute transfers with debit/credit atomicity and compensation on failure
- Provide payment status tracking to channels and corporate clients (gpi-style)
- Screen instructions against sanctions lists before release
APIBIAN semantic API
The control record (Payment Instruction Procedure) is exposed through uniform BIAN action terms. Java 21 · Spring Boot 3, OpenAPI at /swagger-ui.html, health at /actuator/health.
| Method | Path | BIAN action |
| GET | /v1/service-domain | Service metadata |
| POST | /v1/payment-instruction-procedure/initiate | Initiate |
| GET | /v1/payment-instruction-procedure/{crId}/retrieve | Retrieve |
| PUT | /v1/payment-instruction-procedure/{crId}/update | Update |
| PUT | /v1/payment-instruction-procedure/{crId}/control | Control (suspend / resume / terminate) |
INTBackend integrations
The systems and standards a real deployment of Payment Initiation would transact with.
- Rails: SWIFT, SEPA, ACH/NACHA, UPI (NPCI), NEFT/RTGS/IMPS, FedNow, TARGET2
- Payment hubs: Volante, ACI Worldwide, FIS, Finastra
- Sanctions screening: Fircosoft, LexisNexis Bridger
RUNRun it yourself
Each service domain is its own standalone Spring Boot repository — clone and run in seconds, or deploy onto Kubernetes with the bundled Helm chart behind the Cilium mesh.
# run this service domain standalone
git clone https://github.com/Sreenivas-Sadhu-Prabhakara/sd-payment-initiation
mvn -f sd-payment-initiation spring-boot:run
curl localhost:8080/v1/service-domain
# or deploy onto Kubernetes (Cilium eBPF mesh)
helm upgrade --install sd-payment-initiation ./helm -n bian-operations
FAQQuestions
What is the BIAN “Process” functional pattern?
A Process service domain executes and tracks a defined operational procedure, step by step, to completion. Payment Initiation applies it to the Payment Instruction.
What is a BIAN service domain?
BIAN (the Banking Industry Architecture Network) decomposes a bank into independent service domains, each owning exactly one business capability. Payment Initiation is the service domain for Payments; it manages the Payment Instruction Procedure and exposes it through standard BIAN action terms.
What business area does Payment Initiation belong to?
Payment Initiation sits in the Operations and Execution business area — the operational core that executes payments, positions, settlements and transactions. It runs in the bian-operations namespace as one independent Spring Boot microservice.
Is Payment Initiation production-ready?
It is an educational reference implementation: a real BIAN REST API over an in-memory store, ready to be filled with domain logic. It is not a live bank and is not affiliated with BIAN.
SEEIn the landscape
Payment Initiation is one of 162 BIAN service domains on the platform. Explore the rest: