Virtual Account Generation

The Virtual Account Generation endpoint allows you to create unique, reserved bank account numbers linked to your Transactpay account. These accounts are useful for:

  • šŸ’ø Receiving customer payments
  • šŸ“Š Tracking transactions per user or department
  • āš™ļø Automating financial workflows

Virtual accounts simplify reconciliation, increase automation, and enhance transaction-level visibility.


šŸ‘

Good to Know

  • Payload must be encrypted using RSA (PKCS#1 v1.5) before making the request.
  • Virtual accounts are persistent and reusable for future transactions tied to the alias

šŸ“® Endpoint

POST http://payment-api-service.transactpay.ai/payment/virtual-account/generate

šŸ” Headers

HeaderTypeRequiredDescription
api-keystringāœ… YesYour Transactpay public API key
encryptionstringāœ… YesMust be "RSA"
Content-Typestringāœ… YesMust be application/json
āš ļø

Important:

Payloads must be encrypted using RSA (PKCS#1 v1.5).


šŸ“¦ Sample Request Payload

{
  "Alias": "TestAccountViaAPI"
}
KeyTypeRequiredDescription
Aliasstringāœ… YesLabel or identifier for the virtual account
NarrationstringāŒ No
ReferencestringāŒ NoReference for virtual account - to be returned as "accountReference" on callbacks

šŸ“¤ Sample cURL Request

āš ļø

Important:

You must encrypt the payload using RSA (PKCS#1 v1.5) before sending the request.

curl -X POST http://payment-api-service.transactpay.ai/payment/virtual-account/generate \
  -H "api-key: YOUR_PUBLIC_KEY" \
  -H "encryption: RSA" \
  -H "Content-Type: application/json" \
  --data @encrypted_payload.json

āœ… Sample Success Response

{
    "status": true,
    "message": "Account Number successfully generated",
    "accountNumber": "1234567890",
    "accountName": "Transactpay Inc",
    "bank": "Transactpay Bank",
    "bankCode": "123456"
}

šŸ“˜ Notes

  • Each virtual account is tied to the alias you provide.
  • You can reuse virtual accounts to collect future payments from the same user or group.