This page covers the full lifecycle of a virtual account (VA): create, list, look up, inquire transactions, revoke, and configure the payment callback that fires when a customer transfers in. All endpoints here require Ed25519 request signing — see Request Signing.Documentation Index
Fetch the complete documentation index at: https://pay-docs.holdstation.com/llms.txt
Use this file to discover all available pages before exploring further.
Endpoint Summary
| Method | Path | Reference |
|---|---|---|
POST | /partners/mid/va | Create Virtual Account |
GET | /partners/mid/va | List Virtual Accounts |
GET | /partners/mid/va/{va_account} | Get Virtual Account |
DELETE | /partners/mid/va/{va_account} | Revoke Virtual Account |
GET | /partners/mid/va/{va_account}/inquiry | Inquire Transactions |
GET | /api/partners/mid/va-callback | Get Callback URL |
POST | /api/partners/mid/va-callback | Update Callback URL |
Create a Virtual Account
POST /partners/mid/va — creates a multi-use virtual account under the partner’s assigned HPay merchant. The VA is stored in Holdstation Pay and can be managed via the list, get, inquiry, and revoke endpoints.
Request Body:
| Field | Type | Required | Description |
|---|---|---|---|
va_name | string | Yes | Display name for the virtual account (max 200 chars) |
remark | string | Yes | Remark for the virtual account (max 50 chars) |
va_expiration_time | integer | null | Yes | Expiration as Unix timestamp (seconds). Pass null to use the maximum allowed TTL. |
status values: 1 = active, 2 = expired.
List Virtual Accounts
GET /partners/mid/va — returns all virtual accounts owned by the partner, sorted by creation time descending. Served from Holdstation Pay’s database (no upstream call).
Get a Virtual Account
GET /partners/mid/va/{va_account} — returns the details of a single VA the partner owns. Response shape matches the entries in List Virtual Accounts.
Revoke a Virtual Account
DELETE /partners/mid/va/{va_account} — marks the VA as expired in Holdstation Pay. The VA will no longer accept incoming transfers.
va_status 4 indicates the virtual account has been revoked.
Inquire Transactions
GET /partners/mid/va/{va_account}/inquiry — fetches live transaction history for a virtual account directly from the payment service provider.
Payment Callback URL
Holdstation Pay calls a partner-configured URL whenever a customer transfers into one of the partner’s virtual accounts.Get the Callback URL
GET /api/partners/mid/va-callback
Update the Callback URL
POST /api/partners/mid/va-callback
Payment Callback
When a payment is received on a partner’s virtual account, Holdstation Pay sends aPOST request to the configured va_callback URL.
Callback Payload
Callback Headers
Verification
Partners verify the callback using theirchecksum_key (the public key derived from the partner’s sign_key), the same way as webhook verification — see Webhook Verification.