Manage Virtual Accounts used as Collection Wallets
Learn how you can update and deactivate virtual accounts used as collection wallets.
Listed below are the various options available to manage virtual accounts used as collection wallets.
-
Update Virtual Account: Update account information.
-
Deactivate Virtual Account: Instantly deactivate a virtual account.
Update Virtual Account
After creating a virtual account used as a collection wallet, you can update the information listed below using the Update Virtual Account API.
- Create additional VPA handled for the account.
- Verified beneficiaries.
- Account holder's email address.
- Metadata
Create Additional VPA Handles
To create additional VPA handles, pass true
against the create_vpa
parameter in the request body.
When you do this, we autogenerate an additional VPA for the account.
Note
- You can create a maximum of 3 additional VPA handles for an account.
- You cannot deactivate individual VPA handles. To deactivate a VPA handle, deactivate the account. This deactivates all VPA handles linked to the account.
Update Verified Beneficiaries
First, to update verified beneficiaries, please utilize our Verification Suite APIs. These APIs help to confirm your bank account details and verify your name.
Use the following API to verify your bank account details and verify your name:
- Bank Account Verification API.
- PAN Verification API.
- Name Verification - PAN vs Account Verification API.
Note:
Virtual Accounts used as collection wallets without linked verified beneficiaries can only update the verified beneficiaries.
Update Email Address
To update the email address linked to an account, pass the new email address against the email
parameter.
Endpoint
Use the below endpoint to update information linked to a virtual account.
POST: https://api.zwitch.io/v1/accounts/{account_id}
Sample Code
Below is a sample request and response for the Update Virtual Account API.
{
"create_vpa": true,
"kyc": {
"state_code": "KA",
"city": "Bangalore",
"pan": "AAAPA0000A",
"pan_verification_id": "pan_r2cBKOyB6PHvpknksQnsE3Dmf",
"postal_code": 560010,
"business_type": "partnership",
"business_category": "garage_owners"
},
"email": "[email protected]",
"verified_beneficiaries": [
{
"account_verification_id": "accver_gPRuPTJwraFeJSLtMHvY7YdXo",
"name_match_id": "nm_ZSTga677dDHYwRH15r1M55z38"
}
]
}
{
"id": "va_VTNxiFQ5nVt1UPOB6k643mk4G",
"object": "account.virtual",
"type": "virtual",
"used_as": "wallet",
"bank_name": "yes_bank",
"name": "Anil Reddy",
"mobile_number": "9876543210",
"email": "[email protected]",
"account_number": "36363651511821672",
"ifsc_code": "YESB0CMSNOC",
"vpa": "zwch1835238750@yesbank",
"additional_vpa": [
{
"vpa": "zwch1469486732@yesbank",
"status": "active",
"created_at": 1707736926
}
],
"whitelisted_remitters": [],
"whitelisted_beneficiaries": [
{
"account_number": "91021021021212",
"ifsc_code": "ICIC0000001",
"vpa": null
}
],
"kyc": {
"city": "Bangalore",
"postal_code": "560010",
"state_code": "KA",
"pan": "XXXXXX000A",
"business_type": "partnership",
"business_category": "garage_owners",
"contact_person": null,
"pan_verification_id": "pan_r2cBKOyB6PHvpknksQnsE3Dmf"
},
"customer": {
"id": "cus_OGOuL7NxzlUj27ECK6T6E0xCR",
"mobile_number": "9876543210"
},
"metadata": {
"key_1": "DD+Cheque",
"key_2": "MSF"
},
"status": "active",
"created_at": 1707736918,
"is_sandbox": true,
"settlement_account_id": null,
"verified_beneficiaries": [
{
"account_verification_id": "accver_gPRuPTJwraFeJSLtMHvY7YdXo",
"name_match_id": "nm_ZSTga677dDHYwRH15r1M55z38"
}
],
"verified_remitters": []
}
Refer to the Update Virtual Account API documentation for more information.
Deactivate Account
The Deactivate Account API allows you to instantly deactivate an account. Accounts can be deactivated after they have served their purpose. This prevents misuse of the account and ensures the account is only used for the intended purpose. This makes accounting and account reconciliation easier. An account can also be deactivated if any suspicious activity is detected on the account.
Once an account is deactivated, it cannot be used to make transfers or receive payments.
Note
Once a virtual account is deactivated it cannot be reactivated.
Only virtual accounts with zero balance can be deactivated.
Endpoint
Use the below endpoint to deactivate a virtual account.
POST: https://api.zwitch.io/v1/accounts/{account_id}/deactivate
Sample Code
Below is a sample response for the Deactivate Account API.
{
"id": "va_VTNxiFQ5nVt1UPOB6k643mk4G",
"object": "account.virtual",
"type": "virtual",
"used_as": "wallet",
"bank_name": "yes_bank",
"name": "Anil Reddy",
"mobile_number": "9876543210",
"email": "[email protected]",
"account_number": "36363651511821672",
"ifsc_code": "YESB0CMSNOC",
"vpa": "zwch1835238750@yesbank",
"additional_vpa": [
{
"vpa": "zwch1469486732@yesbank",
"status": "deactivated",
"created_at": 1707736926
}
],
"whitelisted_remitters": [],
"whitelisted_beneficiaries": [
{
"account_number": "012920022013",
"ifsc_code": "ICIC0000001",
"vpa": null
}
],
"kyc": {
"city": "Bangalore",
"postal_code": "560010",
"state_code": "KA",
"pan": "XXXXXX000A",
"business_type": "partnership",
"business_category": "garage_owners",
"contact_person": null,
"pan_verification_id": "pan_r2cBKOyB6PHvpknksQnsE3Dmf"
},
"customer": {
"id": "cus_OGOuL7NxzlUj27ECK6T6E0xCR",
"mobile_number": "9876543210"
},
"metadata": {
"key_1": "DD+Cheque",
"key_2": "MSF"
},
"status": "deactivated",
"created_at": 1707736918,
"is_sandbox": true,
"settlement_account_id": null,
"verified_beneficiaries": [
{
"account_verification_id": "accver_gPRuPTJwraFeJSLtMHvY7YdXo",
"name_match_id": "nm_ZSTga677dDHYwRH15r1M55z38"
}
],
"verified_remitters": []
}
Refer to the Deactivate Virtual Account API documentation for more information.
Updated 8 months ago