Skip to main content
POST
/
pms
/
transactions
/
initialize
Initialize Transaction
curl --request POST \
  --url http://sandbox.mintlify.com/pms/transactions/initialize/ \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: <content-type>' \
  --header 'api-key: <api-key>' \
  --header 'api-secret: <api-secret>' \
  --data '
{
  "amount": "<string>",
  "channels": [
    "BANK_TRANSFER"
  ],
  "currency": "NGN",
  "customer_name": "<string>",
  "customer_email": "[email protected]",
  "customer_phone_number": "<string>",
  "metadata": "<string>",
  "redirect_url": "<string>",
  "webhook_url": "<string>",
  "reference": "<string>"
}
'
{
  "status": true,
  "message": "<string>",
  "data": {
    "amount": "<string>",
    "channels": [
      "<string>"
    ],
    "currency": "<string>",
    "metadata": "<string>",
    "customer_name": "<string>",
    "customer_email": "<string>",
    "customer_phone_number": "<string>",
    "redirect_url": "<string>",
    "webhook_url": "<string>",
    "reference": "<string>"
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

api-key
string
required

Your Payvessel public API key

api-secret
string
required

Bearer token with your Payvessel secret

Content-Type
enum<string>
required

Request content type

Available options:
application/json

Body

application/json
amount
string
required

Transaction amount in kobo (for NGN) or minor currency units

channels
enum<string>[]
required

Payment channels to enable for this transaction

Available options:
BANK_TRANSFER,
CARD,
USSD
currency
enum<string>
required

Transaction currency code

Available options:
NGN
customer_name
string
required

Customer's full name

customer_email
string<email>
required

Customer's email address

customer_phone_number
string
required

Customer's phone number

metadata
string

Additional information about the transaction

redirect_url
string<uri>

URL to redirect customer after payment completion

webhook_url
string<uri>

URL to receive payment notifications

reference
string

Unique transaction reference (optional - auto-generated if not provided)

Response

200 - application/json

Transaction initialized successfully

status
boolean

Transaction initialization status

message
string

Response message

data
object