v1

latestOpenAPI 3.1.02026-07-2656114159.7 KB
Issuing

Create a Card

Create a USD virtual card for a customer with full KYC and initial prefund. This operation is asynchronous: the response returns a card in PENDING status, and PayVessel notifies you via a webhook when the card reaches its final status (for example ACTIVE). You may also poll Get a Card until activation completes.

post/pms/api/external/request/virtual-cards/

Headers

api-keystring required

Your Payvessel public API key

api-secretstring required

Your Payvessel secret

Content-Type'application/json' required

Request content type

Request body

first_namestring

Customer first name

last_namestring

Customer last name

emailstring email

Email address

phonestring

Nigerian phone number

bvnstring

11-digit Bank Verification Number

ninstring

11-digit National Identification Number

dobstring date

Date of birth (YYYY-MM-DD)

imagestring

Base64-encoded identity document image

statestring

State of residence

lgastring

Local government area

streetstring

Street address

postal_codestring

Postal code

brand'VISA' | 'MASTERCARD' required

Card network

currency'USD' required

Must be USD for customer cards

is_contactlessboolean

Set to true to issue a contactless-enabled card. Defaults to false for a standard virtual card.

prefund_amountstring

Optional initial card balance in USD (minimum 1.00 when provided)

card_namestring

Optional label on card (max 255 characters)

Example request

{
  "prefund_amount": "10.00"
}

Response

Virtual card creation started

statusboolean required

Indicates whether the request succeeded

messagestring required

Human-readable result message

Example response

{
  "message": "Virtual card creation started"
}