PayproPaypro
  • ๐Ÿ‡ฎ๐Ÿ‡ฉ Indonesia
  • ๐Ÿ‡ต๐Ÿ‡ฐ Pakistan
  • ๐Ÿ‡ป๐Ÿ‡ณ Vietnam
  • ๐Ÿ‡ต๐Ÿ‡ญ Philippines
  • ๐Ÿ‡ฐ๐Ÿ‡ช Kenya
  • ๐Ÿ‡ช๐Ÿ‡ฌ Egypt
  • ๐Ÿ‡ง๐Ÿ‡ท Brazil
  • ๐Ÿ‡ฒ๐Ÿ‡ฝ Mexico
  • ๐Ÿ‡ฎ๐Ÿ‡ฉ Indonesia
  • ๐Ÿ‡ต๐Ÿ‡ฐ Pakistan
  • ๐Ÿ‡ป๐Ÿ‡ณ Vietnam
  • ๐Ÿ‡ต๐Ÿ‡ญ Philippines
  • ๐Ÿ‡ฐ๐Ÿ‡ช Kenya
  • ๐Ÿ‡ช๐Ÿ‡ฌ Egypt
  • ๐Ÿ‡ง๐Ÿ‡ท Brazil
  • ๐Ÿ‡ฒ๐Ÿ‡ฝ Mexico
  • Kenya

    • Overview
    • Error Code
    • Payment API
    • Payment Casher
    • Payout API
    • Payment Query API
    • Payout Query API
    • Mpesa Query API
    • Payment Notify API
    • Balance Inquiry API

Payment API

    Tips

    • All requests are Post requests, and the data format is json
    Brief Description
    Request URL
    • /api/payin
    Request Method
    • POST
    Header
    headerRequiredTypeDescription
    merchantNoYesstringNone
    Body
    ParameterRequiredTypeDescription
    signYesstringExcept for the sign field, all remaining fields should be sorted alphabetically by their first letter, combined into key1=value1key2=value2, and encrypted using the app secret as salt via MD5. The final sign value should be in lowercase.
    timestampYeslongTimestamp (1715941383720)
    amountYesstringAmount๏ผˆThe minimum amount is recommended to be greater than KSH.50, and only integers are supported๏ผ‰
    remarkNostringRemark, this field will be returned as-is
    tradeNoYesstringTransaction number (uniqueness recommended: year, month, day, hour, minute, second + random number)
    mobileYesstringMobile number (in some countries, the mobile number is the account number)
    notifyUrlYesstringAsynchronous callback URL
    Request Parameter Example
    {
      "sign": "000000",
      "timestamp": "1715941383720",
      "amount": "3",
      "remark": "000000",
      "tradeNo": "00000001",
      "mobile": "mobile",
      "notifyUrl": "https://google.com"
    }
    
    
    Response Result
    ParameterRequiredTypeDescription
    msgYesstringRequest result (when returning success, it only indicates that the request was successful and cannot be used for merchant-side logic judgment)
    codeYesstringRequest response code (when returning 0000, it only indicates that the request was successful and cannot be used for merchant-side logic judgment). For specific error codes, please refer to the business error code enumeration.
    timestampYesstringTransaction time
    successYesstringTransaction result
    dataYesObjectReturn object
    data.serialNumberYesstringResult ID returned by paypro, unique
    data.statusYesstringRequest result, merchants can use this for logic processing. When the result is 0000, it indicates a successful transaction; 0015 indicates processing; all other codes indicate errors and can be treated as failures.
    data.descYesstringError description
    data.remarkYesstringRequest return content (returned as-is)
    Successful Response Example
    {
        "msg": "success",
        "code": "0000",
        "timestamp": 1719829837779,
        "success": true,
        "data": {
            "serialNumber": "5286e98841194687a95d25b5f3be346d",
            "status": "0015",
            "desc": "CREDIT_INPROGRESS"
        }
    }
    
    
    Last Updated:
    Contributors: wsc
    Prev
    Error Code
    Next
    Payment Casher