POST Create TapIn Pay
GET Get TapIn Pay status
LOCK TapIn Pay success callback
Welcome to the TapInPay documentation. This documentation will help you get started with TapInPay. If you have any questions you can use tapinserver@gmail.com to get in contact with us.
Testing Environment: https://demo.tapin.tech
Production Environment: https://app.tapin.tech
This number will represent your identity in TapIn Service.
This code should be kept secret and safe. This code is responsible for accessing all methods in the TapInPay API. This API code should be used by the server component of your application.
https://demo.tapin.tech/api/external_collection/create_external_collection
signature: string (required) - HASH-MD5 hex encoded keyed hash using your ss_code and request param
The payload to be signed will be ss_code and id_1 from the REQUEST PARAMS as shown below:
JavaScript / ECMAScrip
const signature = crypto.createHash('md5')
.update(ss_code + id_1, 'utf8')
.digest('hex')
.toLowerCase();
Field Name | Required | Type | Description |
---|---|---|---|
vendor_id | yes | number | Partner vendor id |
amount | yes | number | Amount (cents) |
id_1 | yes | string | id_1 (Partner order UUID) |
id_2 | no | string | id_2 (Partner order UUID) |
webhook | yes | string | Call back url |
limit_days | no | number | TapIn Pay url survival days(default to 30 days) |
merchant_phone | no | string | The sub-merchant Phone (No need of country code) |
earn_percentum | no (IF merchant_phone here should be yes) |
number | Percentage of the amount received by the sub-merchant |
is_customer_fee | no | number (0 / 1) |
Whether to let the customer pay the handling fee (1: yes)(Default read payee configuration: Sub-merchant > Platform account) |
instruction | no | string | Instruction from external |
Field Name | Required | Type | Description |
---|---|---|---|
collection_id | yes | number | TapIn Pay id |
ew_id | yes | string | TapIn Pay EW Code |
id_1 | yes | string | id_1 (Partner order UUID) |
id_2 | yes | string | id_2 (Partner order UUID) |
url | yes | string | TapIn Pay url |
errCode | msg |
---|---|
1 | Paramter error |
2 | TapIn Pay created by id_1 or id_2 |
4 | Please wait a moment. You are sending too many collect requests. |
9 | signature does not exist or cannot be matched |
500 | Server error, please try again later |
1734e90a57e422a1bc87100a567893c0
{
"vendor_id": 25467,
"amount": 0,
"id_1": "87324123",
"webhook": "https://demo.tapin.tech/mock/test_for",
"limit_days": 20,
"merchant_phone": "2377936927321",
"earn_percentum": 80,
"is_customer_fee": 1
}
Example Request
Create TapIn Pay Fail
Create TapIn Pay Fail
Create TapIn Pay Fail
Create TapIn Pay
curl --location --request POST 'https://demo.tapin.tech/api/external_collection/create_external_collection' \
--header 'signature: a0bb5801d88ce6548d7d8f4f8543ad0c' \
--data-raw '{
"vendor_id": 25467,
"amount": 0,
"id_1": "12312312312312351",
"webhook": "https://demo.tapin.tech/mock/test_for",
"limit_days": 20,
"merchant_phone": "237793692732",
"earn_percentum": 80
}'
Example Request
200 OK
Body
Header(7)
{
"errCode": 9,
"msg":"signature does not exist or cannot be matched"
}
https://demo.tapin.tech/api/external_collection/collection_status?id_1=87324123
signature: string (required) - HASH-MD5 hex encoded keyed hash using your ss_code and request param
The payload to be signed will be ss_code and id_1 from the REQUEST PARAMS as shown below:
JavaScript / ECMAScrip
const signature = crypto.createHash('md5')
.update(ss_code + id_1, 'utf8')
.digest('hex')
.toLowerCase();
Field Name | Required | Type | Description |
---|---|---|---|
ew_id | no | string | TapIn Pay EW Code |
id_1 | yes | string | id_1 (Partner order UUID) |
id_2 | no | string | id_2 (Partner order UUID) |
Field Name | Required | Type | Description |
---|---|---|---|
collection_id | yes | number | TapIn Pay id |
ew_id | yes | string | TapIn Pay EW Code |
id_1 | yes | string | id_1 (Partner order UUID) |
id_2 | yes | string | id_2 (Partner order UUID) |
status | yes | string | TapIn Pay status (waiting pay, pay success, money release) |
notice | yes | string | The collection has been pushed successfully |
limit_days | yes | number | TapIn Pay url survival days |
merchant_id | yes | number | Merchant id |
merchant_phone | yes | string | Merchant phone |
webhook | yes | string | Call back url |
pay_money | yes | number | Amount (cents) |
tip | yes | number | Tip (cents) |
is_customer_fee | yes | number | The flag of customer pay the handling fee (1: yes, 0: no) |
instruction | yes | string | Instruction from external |
errCode | msg |
---|---|
1 | Paramter error |
2 | not found |
9 | signature does not exist or cannot be matched |
500 | Server error, please try again later |
1734e90a57e422a1bc87100a567893c0
EW2021122800029
qwert..1.
87324123
Example Request
Get TapIn Pay status Fail
Get TapIn Pay status Fail
Get TapIn Pay status
curl --location --request GET 'https://demo.tapin.tech/api/external_collection/collection_status?id_1=8732412' \
--header 'signature: 55faf6d35d85e61ceee6ad3f4d5d7965' \
Example Request
200 OK
Body
Header(8)
{
"errCode": 9,
"msg":"signature does not exist or cannot be matched"
}
/
We will send an HTTP request with the following parameters to the callback address provided by the requester as soon as the customer has successfully paid. Be sure to return the "SUCCESS" string in the callback address to let us know that you have successfully received the request. Otherwise, we will send HTTP requests every minute(Six time total).
Field Name | Required | Type | Description |
---|---|---|---|
collection_id | yes | number | TapIn Pay id |
ew_id | yes | string | TapIn Pay EW Code |
id_1 | yes | string | id_1 (Partner order UUID) |
id_2 | yes | string | id_2 (Partner order UUID) |
status | yes | string | TapIn Pay status (waiting pay, pay success, money release) |
notice | yes | string | The collection has been pushed successfully |
limit_days | yes | number | TapIn Pay url survival days |
merchant_id | yes | number | Merchant id |
merchant_phone | yes | string | Merchant phone |
webhook | yes | string | Call back url |
pay_money | yes | number | Amount (cents) |
tip | yes | number | Tip (cents) |
is_customer_fee | yes | number | The flag of customer pay the handling fee (1: yes, 0: no) |
instruction | yes | string | Instruction from external |
Example Request
TapIn Pay success callback
curl --location --request LOCK '/'