Paytend Funding Notification

Paytend Funding Notification Product Documentation

1. Introduction

Paytend Funding Notification API allows you to obtain transaction credit notifications of your Paytend account in real time, and you can also query the account balance to help you understand the dynamics of funds in real time. This feature is enabled by default for all Paytend business bank account customers, ensuring you don’t miss any money flow information.

2. Main functions

The Paytend Funding Notification API provides the following main features:

2.1 Real-time transaction notification

  • Real-time Notification: API allows you to receive real-time notifications of transactions in your Paytend account, including deposits, transfers, payments, collections and other transaction activities. This helps you instantly know what's going on in your account.

2.2 Check account balance

  • Account Balance Query: You can use the API to query the balance information of your Paytend account so that you can know the available funds in the account at any time.

3. Usage scenarios

Paytend Funding Notification API is suitable for a variety of usage scenarios, including but not limited to the following:

  • Corporation Financial Management: Help corporation and their financial departments track and manage the flow of funds to ensure the stable operation of the business.
  • Real-time transaction monitoring: For applications that require real-time monitoring of transaction activities, such as payment processing, fund settlement, etc., the API provides timely notifications.
  • Account Inquiry Service: Provides customers with account balance inquiry services to facilitate them to check their account status at any time.

4. Access and documentation

Detailed access and integration documentation will be provided on the Paytend official website, including information such as API endpoints, authentication, request examples, and response examples. Customers can access according to the documentation and customize the integration according to their needs.

4.1 Interface communication method

  • Communication Method

    Communicate using HTTPS, the message format is JSON

  • Character Set

    Messages are uniformly encoded in UTF-8

4.2 Signature verification field description

  • bizData: Encrypted by randomly generated AES KEY.
  • randomKey: AES KEY is encrypted by Paytend public key.
  • signature: The signature source string is composed of all non-empty field contents except the signature field, sorted according to the ASCII code of the message field, and connected with the "&" symbol in the manner of "field name = field value".
    • for example: Send SMS verification code to request data
{
  "randomKey":"qeM/mnvepEv5MFe7n77brQ==",
  "requestId":"20231025102930718",
  "signType":"RSA",
  "bizData":{
    "mobile":"13261402222",
    "type":"1"
  },
  "partnerId":"888666000100260",
  "version":"2.0"
}

The signature source string signature is as follows. The signature source string uses the partner RSA private key signature to generate the signature.

bizData={"mobile":"8613261402222","type":"1"}&partnerId=888666000100260&randomKey=gNx86vc1yttHs8ZWOf7+5g==&requestId=20231025095118321&signType=RSA&version=2.0
  • Precautions
    • The signature algorithm of RSA is SHA256withRSA.
    • The maximum encrypted plaintext length of RSA is 117.
    • The maximum decryption ciphertext length of RSA is 128.
    • The signature field in the request data is generated by the Partner RSA private key signature.
    • The signature field in the response data is generated by the Paytend RSA private key signature.
    • randomKey and bizData plain text participate in the signature.
    • For specific implementation, please refer to the Sandbox demo in Support and Contact
    • When decrypting the returned data or verifying the signature, you need to first determine whether the field has a value. Some errors will not result in a signature, such as: The request field type is wrong.

5. Security

Data security is crucial in the financial sector. Paytend Funding Notification API uses advanced security measures to ensure that customers’ account information and transaction notifications are protected and comply with financial industry security standards.

6. Support and Contact

Configure Interface

Set callback URL

The following interfaces share this URL:

  • 'Fund deposit notification' in 'Paytend Funding Notification API'
  • 'Account opening notification' in 'Paytend BaaS Core API'
  • 'User status change notification' in 'Paytend BaaS Core API'
  • 'User upgrade notification' in 'Paytend BaaS Core API'
  • 'Transfer order notification' in 'Paytend BaaS Core API'
  • 'Payment failure notification' in 'Paytend Payout API'
Request Body schema: application/json
required

request

required
object (CallBackURL_BizData)
requestId
required
string = 32 characters

Request serial number, globally unique.

partnerId
required
string = 15 characters

Assigned by paytend.

randomKey
string

AES key
Randomly generated, encrypted by paytend RSA public key.
When bizData exists, randomKey must exist.

signType
required
string

Fixed value RSA.

signature
string

Signed by partner RSA private key.
When the requested data format is incorrect, the signature may not exist.

version
required
string

Fixed value 2.0.

Responses

Response Schema: application/json
respCode
required
string

Response code.
00. success
Others. failure

respMsg
string

Response message.

respData
object

Business data.

randomKey
string

AES key.
Randomly generated, encrypted by partner RSA public key.
When respData exists, randomKey must exist.

signType
required
string

Fixed value RSA.

signature
string

Signed by paytend RSA private key.
When the requested data format is incorrect, the signature may not exist.

Request samples

Content type
application/json
{
  • "bizData": {
    },
  • "requestId": "stringstringstringstringstringst",
  • "partnerId": "stringstringstr",
  • "randomKey": "string",
  • "signType": "string",
  • "signature": "string",
  • "version": "string"
}

Response samples

Content type
application/json
{
  • "respCode": "string",
  • "respMsg": "string",
  • "respData": { },
  • "randomKey": "string",
  • "signType": "string",
  • "signature": "string"
}

Webhook Interface

Fund deposit notification

When funds are transferred into the user's account, the partner will be notified.
The partner is required to provide a callback URL, which can be set through the interface 'Set callback URL' in 'Paytend Funding Notification API'.

The following interfaces share this URL:

  • 'Fund deposit notification' in 'Paytend Funding Notification API'
  • 'Account opening notification' in 'Paytend BaaS Core API'
  • 'User status change notification' in 'Paytend BaaS Core API'
  • 'User upgrade notification' in 'Paytend BaaS Core API'
  • 'Transfer order notification' in 'Paytend BaaS Core API'
  • 'Payment failure notification' in 'Paytend Payout API'

This interface field 'notifyType' is fixed to 2.

Request Body schema: application/json
required

notify

required
object (IBANTransaction)
partnerId
required
string

Assigned by paytend.

notifyType
required
string


1. Account opening notification
2. Fund deposit notification
3. User status change notification
4. Payment failure notification
6. User upgrade notification
8. Transfer order notification

randomKey
string

AES key.
Randomly generated, encrypted by partner RSA public key.
When content exists, randomKey must exist.

signature
required
string

Signed by partner RSA private key.
When the requested data format is incorrect, the signature may not exist.

signType
required
string

Fixed value RSA.

version
required
string

Fixed value 2.0.

Responses

Response Schema: application/json
msg
string

Business description.

status
string

Status.
00 success
other failed

Request samples

Content type
application/json
{
  • "content": {
    },
  • "partnerId": "string",
  • "notifyType": "string",
  • "randomKey": "string",
  • "signature": "string",
  • "signType": "string",
  • "version": "string"
}

Response samples

Content type
application/json
{
  • "msg": "string",
  • "status": "string"
}