General Payment Webhook

This endpoint facilitates real-time payment notifications for all types of transactions through OPay, enabling you to seamlessly integrate payment statuses and transaction details into your system for efficient reconciliation processes.

General Payment Webhook

Request Header

ParameterTypeRequiredDescription
Content-TypeStringYes
X-Opay-TranidStringYesTransaction ID
merchantIdStringYesYour Business ID or Branch ID

Request Body

Here are the data you will get from OPay's payment notification:

ParameterTypeRequiredDescription
statusStringYesTransaction status (SUCCESS)
outOrderNoStringYesYour business order number
orderNoStringYesYour business order number
payNoStringOPay payment order number
errorMsgStringYesError message
senderNameStringNoSender name
senderBankStringNoSender bank
senderAccountStringNoSender account
recipientNameStringNoRecipient name
receiptBankStringNoRecipient bank
Show more parameters
POST
{
  "data": {
    "outOrderNo":"2334345345345211",
    "orderNo":"20220704741380171865833472",
    "payNo":"2334345345345245",
    "headMerchantId":"256622022480363",
    "merchantId":"256622022480364",
    "status": "SUCCESS",
    "errorMsg": "Not sufficient funds",
    "senderName": "LUJUN SUN",
    "senderBank": "ubaBank",
    "senderAccount": "2131****09",
    "recipientName": "LUJUN SUN",
    "receiptBank": "opay",
    "receiptAccount": "6119787331",
    "amount": "300.00",
    "fee": "1.50",
    "feePattern": "IN_DEDUCT",
    "payMethod": "BankCard",
    "settlementAmount":"100.00",
    "settlementFee":"10.00",
    "settlementFeePattern":"OUT_DEDUCT",
    "currency": "NGN",
    "isSplit":"Y",
    "splitInfo":[
      {
        "splitMerchantId":"25623232423432",
        "splitAmount":"20.00"
      }
    ],
    "productInfo":"",
    "sn":"XXXX",
    "remark": "static virtual account",
    "transactionTime":"1692773950143",
    "completedTime":"1692773950143",
    "additionalInformation": "{\"pnr\":\"123\",\"rrn\":\"310137872249\"}"
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38

Response

ParameterTypeDescription
codeString00000 stands for successful response, otherwise failed
messageString

POST
{
    "code": "00000",
    "message": "SUCCESSFUL"
}
1
2
3
4
Last Updated: 3/6/2025, 10:32:55 AM