paycools-my
Languages
Languages
  • 简体中文
  • English
Languages
Languages
  • 简体中文
  • English
    • Merchant Unified API Param
    • API Code Collection
    • Unified API Param
    • 1. Account
      • 1.1 Balance Inquiry
        POST
    • 2. Disbursement
      • Disburse API Supported Types
      • Account Verification Related Enum List
      • 2.1 Account Validation
        POST
      • 2.2 Check Account Validation Order Status
        POST
      • 2.3 Create Payout
        POST
      • 2.4 Check Payout Status
        POST
      • 2.5 Disburse callback notification api
        POST
    • 3. QR Code
      • QR Code Channel Code List
      • 3.1 QR Code Create
        POST
      • 3.2 QR Code Detail
        POST
      • 3.3 QR Code Payment List
        POST
      • 3.4 QR Code Payment Notification
        POST
    • 4. WebPay
      • WebPay Channel Code List
      • 4.1 WebPay Create
        POST
      • 4.2 Retrieve WebPay Status
        POST
      • 4.3 WebPay Payment Notification
        POST
    • 5. Refund
      • Refund Support Channel List
      • Refund Status Enum
      • 5.1 Refund
        POST
      • 5.2 Get Refund Payments
        POST
      • 5.3 Refund Notification
        POST

    Unified API Param

    Content#

    parameter namerequiredtypedescription
    signYesstringRSA sign of param
    paramYesstringrequest param content string

    Example#

    {
        "sign": "abcdef",
        "param": "{}"
    }

    Descrption#

    1.
    PayCools will construct the request parameters according to the specific interface documents, and format the request parameters into JSON format as the value of param;
    2.
    PayCools uses PayCools' RSA private key to sign param, and the obtained value is used as the value of sign;
    3.
    When the merchant receives the request from PayCools, it uses the RSA public key of PayCools to verify and sign param. If the signature is consistent with sign, it proves that the request is requested by PayCools;
    4.
    Please ask the PayCools administrator for the RSA public key of PayCools.

    Appendix RSA using case(in Java)#

    Generate RSA key pair:
    RSA key length should be 4096
    RSA public key should be provided to PayCools, and do not disclose to any other.
    RSA private key is kept by merchant, and do not disclose to any other.
    When the merchant calls the PayCools Open API, it uses the RSA private key to sign the request param, and the PayCools server uses the RSA public key provided by the merchant to verify the signature. If the verification fails, it will refuse to process the request.

    key pair example#

    RSA public key:
    MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAnFPgpmzqcKVGp1Ci/WUPzPkhBnojDwPDBFWbB6RBXKjU8Pdp+n9K7rA0ZP6BD19O4MMJwYxG9n7zf7/IboA+bFfW/jsBGi41g7wBafbJxBKXQeXsdE8aRw7BcvjrTbL6EVUn2kMci2d9BMPMsPHCyDmubVIVVN+0rxft0vw2R5jbD/kg7e0K4+ls505eY8KRv2rpLdElhyYoA+PpFGZ/84FhO0nCGTQZCz4dcIK9axZ8RXKpVZQUotBfbKzzYmC8FQU4MeQp5vTttyEudyO0/9PtZUEEg1sN217YZywHeS274031F8dDC7afD2iVTES1obIoqvwEnD9CDfSbmF0pwLvheLhdGyVnh3FmMvQeturf+cTYZotP7igToL1MkmTIlSJ2q2pzPNaz0dyBorxB28WlxCuPRZuRCNzhdz/H694ytymEpwqXUo5Vbcfe+QgVFKduhnYapY4Ntv8oSdsH2MeKb5dhc1sO+I0fqrIW25zUOH8ECWQbgV50I7QIPOhKuLOkZW/EEG2epwlY83HqNrKhH6Wd+DXEjimz9zRmCNRboA8MswN8TRv6vGnmP8rFbPiIl/pBADFViiF+TP08O2VWb/9RaXils0MJfhMvTZ6PjhScIKtX9q6wT28gHYIdBD5UfrKLPndJMxM9u3HzWYCwhxa4boxu2+3KLwd7zFECAwEAAQ==
    RSA private key:
    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

    RSA sign#

    the value of sign should be:
    TRFUJBoPDGaxXGCPp6BdMtRX4KjsfcPLQNkB95WCbO47LCU6NEohiNcIj1G7RG9OfbeYC3VrMXj7NnRrsvVnZQNUq1F5FIOb0C52qYjYimzY5MXpTBEgZ/Fxg75b9g5/tQAN48tQX3/gPTaJudeyT3POwsHx2jNBiJoV59nPEXFT56X3BzsXjLejEVlB2CuVBAOo8zQ0smq9eqrplWY+nTgwS3LY5tdrbHlMbxIj4Jfn+GTZBqrlC80GgFlaAR3iU8p4Jyjmb2HBjUUO6cs/F6JRwPrZdVjlmL+4dFd+GCL8QEAWs+7epVjIE5rIF7XoLSvenryW3IR0H3OPAtj3ETEekCkttC7sDynPDOkjhSE5uwc0HtYyUFVxXQJAYPNSNWXYxVQFSXzaVdEzgdqSaRzLuSrYzpT38ua/ZtzhvpWAyeWvUSONP6q4ZJEWcDsafDhy4/LLKjdOisiLgaBHiiaOYZQYqo6p7pPE9Rv8/MIZgm5qXqVEC5OI+tYeMssSMZIrnd1jDkjW+h1RpuuvD0pmYQjrhk9/+hH6empXLnCfSA5kzGw6shi8c/XbiKWOaqgSTLsHXxmjATDdSKjuQk4VJ4aNxcve1G8Tx7FqWxBCVESkJPRODMnp6S//dZmCO9+xNVPCwhFOArMH/AB+YwbFPsMVku2J12Kk96sy/mo=

    RSA verification#

    the value of result should be true
    修改于 2026-08-27 09:08:48
    上一页
    API Code Collection
    下一页
    1.1 Balance Inquiry
    Built with