Skip to main content

Overview

The Wallet API allows a partner to operate on a partner-scoped wallet reference. Each wallet reference represents a user identity mapped into your institution context through a PartnerWallet mapping, while your own partner balance is exposed as a Wallet ledger. These endpoints support:
  • Retrieving your authenticated partner wallet
  • Creating a partner-scoped wallet with KYC information
  • Retrieving the wallet profile by reference
  • Viewing the wallet transaction summary
  • Debiting the referenced wallet into your partner wallet
  • Crediting the referenced wallet from your partner wallet
  • Sending P2P transfers from a referenced wallet to a PayTag recipient
  • Creating a static virtual account on a referenced wallet
  • Creating a dynamic virtual account on a referenced wallet
  • Listing wallet transactions and retrieving a single wallet transaction
  • Reversing an earlier wallet transaction by reference
All wallet endpoints require partner authentication headers:
  • x-client-id
  • x-api-key
Successful wallet movements generate partner webhook callbacks: wallet.debited and wallet.credited. See the Webhooks page for payloads and signature verification.

Wallet Endpoints

Get Partner Wallet

GET /partner/wallet - Fetch the authenticated partner wallet tied to your API credentials

Create Wallet

POST /partner/wallet - Provision a partner-scoped wallet with KYC information

Get Wallet

GET /partner/wallet/{reference} - Fetch a partner-scoped wallet by reference

Wallet Summary

GET /partner/wallet/{reference}/summary - Retrieve inflow/outflow summary

Debit Wallet

POST /partner/wallet/{reference}/debit - Move funds from the referenced wallet into your partner wallet

Credit Wallet

POST /partner/wallet/{reference}/credit - Move funds from your partner wallet into the referenced wallet

P2P Transfer

POST /partner/wallet/{reference}/p2p - Transfer funds from the referenced wallet to a PayTag recipient

Create Static Account

POST /partner/wallet/{reference}/static-account - Create a persistent virtual account for wallet funding

Create Dynamic Account

POST /partner/wallet/{reference}/dynamic-account - Generate a temporary virtual account for a transaction

List Wallet Transactions

GET /partner/wallet/{reference}/transactions - Get paginated wallet transactions for a referenced wallet

Get Wallet Transaction

GET /partner/wallet/{reference}/transactions/{transactionReference} - Retrieve a wallet transaction by reference

Reverse Wallet Transaction

POST /partner/wallet/{reference}/transactions/{transactionReference}/reverse - Reverse a previous wallet transaction

Get Partner Wallet

Retrieve the wallet owned by the authenticated partner. This endpoint does not require a wallet reference because the wallet ledger is resolved directly from your partner credentials. Endpoint: GET /partner/wallet

Request Example

cURL

Response

Returns the authenticated Wallet ledger for your partner context, not the PartnerWallet mapping object used for referenced customer-scoped wallets.
Use this endpoint when you need the wallet currently attached to your partner account itself. Use GET /partner/wallet/{reference} to retrieve a customer-scoped PartnerWallet that was provisioned under your institution context.

Create Wallet

Create a new partner-scoped PartnerWallet mapping with customer KYC information. Endpoint: POST /partner/wallet Request Body:

Request Example

cURL

Response

Returns the created PartnerWallet mapping including the partner-scoped Reference and underlying Wallet ledger.

Authentication

Headers:
  • x-client-id: Your partner ID
  • x-api-key: Your partner API key

Wallet Reference

The reference path parameter is the partner wallet reference assigned to the user wallet in your partner context. You should store this reference when a wallet is provisioned or linked for your institution.

Get Wallet

Retrieve the wallet profile linked to your partner for the supplied wallet reference. This endpoint returns the PartnerWallet mapping for a referenced customer-scoped wallet, including the nested Wallet ledger. Endpoint: GET /partner/wallet/{reference} Path Parameters:
  • reference (required): Partner wallet reference

Request Example

cURL

Response


Wallet Summary

Retrieve a high-level inflow and outflow summary for the referenced wallet. Endpoint: GET /partner/wallet/{reference}/summary Path Parameters:
  • reference (required): Partner wallet reference

Request Example

cURL

Response


Debit Wallet

Debit the referenced wallet and move the value into your partner wallet. Endpoint: POST /partner/wallet/{reference}/debit Path Parameters:
  • reference (required): Partner wallet reference
Request Body:

Request Example

cURL

Response

Returns a wallet transaction detail object containing Reference, Status, Amount, Fee, Net, Sender, Recipient, and Metadata.

Credit Wallet

Credit the referenced wallet from your partner wallet balance. Endpoint: POST /partner/wallet/{reference}/credit Path Parameters:
  • reference (required): Partner wallet reference
Request Body: Uses the same payload as the debit endpoint.

Request Example

cURL

Response

Returns the same wallet transaction detail structure as the debit endpoint.

P2P Transfer

Transfer funds from the referenced partner wallet to a recipient identified by PayTag. Endpoint: POST /partner/wallet/{reference}/p2p Path Parameters:
  • reference (required): Partner wallet reference
Request Body:
The recipient value is resolved through the PayTag directory and may refer to a tag outside the local FLEX tag set. Use the exact canonical tag returned from the PayTag search or resolve endpoints.

Request Example

cURL

Response

Returns the same wallet transaction detail structure as debit and credit wallet operations.

Create Dynamic Virtual Account

Create a dynamic (temporary) virtual account linked to the referenced wallet. Endpoint: POST /partner/wallet/{reference}/dynamic-account Path Parameters:
  • reference (required): Partner wallet reference
Request Body: Uses the same payload as debit/credit (WalletTransferDto) to define amount, reference, and metadata.

Request Example

cURL

Response

Returns a WalletDynamicVirtualAccount payload containing account name/number, bank name, and expiry details.

Create Static Virtual Account

Create a static (persistent) virtual account linked to the referenced wallet. Endpoint: POST /partner/wallet/{reference}/static-account Path Parameters:
  • reference (required): Partner wallet reference

Request Example

cURL

Response

Returns a WalletStaticVirtualAccount payload containing account name/number, bank name, and status.

List Wallet Transactions

Retrieve paginated transactions for a referenced partner wallet. Endpoint: GET /partner/wallet/{reference}/transactions Path Parameters:
  • reference (required): Partner wallet reference
Query Parameters:
  • limit, offset
  • search, reference
  • status, currency
  • startDate, endDate (format: YYYYMMDD)

Request Example

cURL

Response

Returns a paginated response of wallet transaction detail objects.

Get Wallet Transaction

Retrieve a specific wallet transaction under a referenced partner wallet. Endpoint: GET /partner/wallet/{reference}/transactions/{transactionReference} Path Parameters:
  • reference (required): Partner wallet reference
  • transactionReference (required): Wallet transaction reference

Reverse Wallet Transaction

Reverse a previous partner wallet transaction by transaction reference. Endpoint: POST /partner/wallet/{reference}/transactions/{transactionReference}/reverse Path Parameters:
  • reference (required): Partner wallet reference
  • transactionReference (required): Wallet transaction reference to reverse

Request Example

cURL

Response

Returns a wallet transaction detail object for the generated reversal transaction.

Common Error Cases

Best Practices

Persist both the partner wallet reference and the returned transaction Reference values for reconciliation and reversal workflows.
Use your own reference in debit and credit requests so you can map FLEX transaction outcomes back to your internal ledger.
Resolve recipient PayTags through the Partner PayTag API before submitting a P2P transfer, especially when your users can transfer to tags that may live outside the local FLEX instance.
Only reverse completed partner wallet transfer flows that were initiated from your institution context.

Partner Overview

General partner API capabilities and authentication

Transactions API

Cross-partner transaction reporting and lookup

Webhooks

Partner transaction and wallet event callback payloads

OpenAPI Spec

Complete machine-readable API schema