Skip to main content

Clients API

Overview​

The Clients API provides comprehensive customer management capabilities, including client onboarding, KYC management, and customer profile maintenance. This module handles all customer-related operations from creation to lifecycle management.

Available Operations​

  • Create Client - Onboard new customers with KYC details
  • Update Client - Modify customer information and profiles
  • Retrieve Client By ID - Get detailed customer information
  • Search Clients - Find customers with advanced filters and dynamic predicates
  • KYC Management - Handle Know Your Customer documentation
  • Client Status Management - Approve, reject, blacklist, or exit customers

Client Lifecycle & State Transitions​

Understanding the client lifecycle is crucial for managing customer onboarding and status changes. Below is a state transition diagram showing all possible states and the actions that trigger transitions.

State Descriptions​

StateDescriptionAllowed Actions
Pending ApprovalNewly created client awaiting approvalApprove, Reject
ApprovedClient approved but no activity yetCreate Accounts, Blacklist
ActiveClient has active accounts/transactionsView, Update, Blacklist
RejectedClient application rejectedView only
BlackListedClient blocked from transactionsRemove from Blacklist
ExitedClient relationship terminatedView only (archived)

State Change Commands​

ActionCommandFrom StateTo State
Create ClientCreateContactCommand-Pending Approval
Approve ClientApproveCustomerCommandPending ApprovalApproved
Reject ClientRejectCustomerCommandPending ApprovalRejected
Blacklist ClientBlacklistCustomerCommandApproved, ActiveBlackListed
Remove from BlacklistUndoBlacklistCustomerCommandBlackListedPending Approval
First TransactionAutomaticApprovedActive

API Endpoint Format​

All client-related commands and queries use the standard BPM endpoint format:

Commands (Write Operations):

POST /api/bpm/cmd
Content-Type: application/json
Authorization: Bearer {access_token}

Queries (Read Operations):

POST /api/bpm/qry
Content-Type: application/json
Authorization: Bearer {access_token}

Documentation Pages​

Refer to individual pages for detailed API documentation on each operation.


Handler: AdministrationCoreContactCommandHandlers