# B2B Virtual Account Payment Method

Search API Reference

- [Getting Started](https://developer.visa.com/capabilities/vpa/docs-getting-started)
- [Authentication Method](https://developer.visa.com/capabilities/vpa/docs-authentication)
- [How to Use B2B Virtual Account Payment Method](https://developer.visa.com/capabilities/vpa/docs-how-to)
- [How to Use B2B Virtual Account Payment Method for Buyers Using VANs](https://developer.visa.com/capabilities/vpa/docs-how-to-vpp)
- [Error Codes](https://developer.visa.com/pages/visa-developer-error-codes)
- [Request & Response Codes](https://developer.visa.com/pages/B2B-virtual-account-payment-method-codes)

# Account Management service

The Account Management web services are used to manage payment controls for existing card accounts and to request virtual accounts while setting controls. The endpoints allow the user to retrieve the status of new account requests, view authorization rules, submit virtual card requisitions for an employee, and retrieve security code (CVV2) details of an existing account.

## Get Security Code  v1

Request

##### Request Body schema: application/json

Get Security Code Request

|     |     |
| --- | --- |
| accountNumber<br>required | string <= 19 characters <br>The full 16 digit Visa account number. |
| buyerId<br>required | string <= 25 characters <br>Buyer ID is the buyer identifier as defined in Visa Payables Automation(VPA) system. Value format is 0-9. |
| clientId<br>required | string <= 25 characters <br>Client ID field is a unique identification of the financial institution. This will be provided by Visa at the time of setup. |
| expirationDate<br>required | string <= 6 characters <br>Expiration date of the account for which the CVV2 is requested. The format is MM/YYYY. |
| messageId<br>required | string <= 36 characters <br>Unique identifier for this request. Each request sent to VPA requires its own unique ID. |

Responses

200
OK

##### Response Schema: application/json

|     |     |
| --- | --- |
| GetSecurityResponse | object<br>Success |
| |     |     |
| --- | --- |
| messageID<br>required | string <= 36 characters <br>Unique identifier which was sent in the request. |
| statusCode<br>required | string <= 6 characters <br>Status code of the response. It is alphanumeric. The values are specific to each method. Example- CS001, CS002, and so on. In case of error please refer to the [Error Codes](https://developer.visa.com/pages/B2B-virtual-account-payment-method-error-codes#get_security_code) page for this api |
| statusDesc<br>required | string <= 255 characters <br>Status description of the response. |
| securityCode | string <= 3 characters <br>CVV2 number. |

400
Refer to the [Error Codes](https://developer.visa.com/pages/B2B-virtual-account-payment-method-error-codes#get_security_code) page for the list of error codes for this API.

##### Response Schema: application/json

|     |     |
| --- | --- |
| messageId | string <= 36 characters <br>Unique identifier which was sent in the request. |
| statusCode | string <= 6 characters <br>Status code of the response. |
| statusDesc | string <= 255 characters <br>Status description of the response. |

post/vpa/v1/accountManagement/GetSecurityCode

Try it

Sandbox server

https://sandbox.api.visa.com/vpa/v1/accountManagement/GetSecurityCode

Request samples

- Payload

application/json

Copy

`{"clientId": "B2BWS_1_1_9999",

"messageId": "2017-04-06T03:47:20.000Z",

"buyerId": 9999,

"accountNumber": 4111111111111111,

"expirationDate": "10/2022"
}`

Response samples

- 200
- 400

application/json

Copy

Expand allCollapse all

`{"GetSecurityResponse": {"messageID": "string",

"statusCode": "string",

"statusDesc": "string",

"securityCode": "str"

}
}`
