Search Receiver Onboard
Service Name: | Search Receiver Onboard |
URL: | [SANDBOX] https://sandbox-api-payout.chillpay.co/api/v1/receiver/search |
[PROD] https://api-payout.chillpay.co/api/v1/receiver/search | |
Method: | POST |
Descript: | เป็นเซอร์วิสในการค้นหารายการตรวจสอบผู้รับเงิน (Receiver Onboard) |
ตารางที่ 1.1 Request Header Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | Content-Type | String | 16 | M | application/json |
2 | CHILLPAY-MerchantCode | String | 15 | M | รหัสร้านค้าที่ออกให้โดยชิวเพย์ |
3 | CHILLPAY-ApiKey | String | 100 | M | รหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ |
ตารางที่ 1.2 Request Body Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | OrderBy | String | 20 | O | เรียงตามคอลัมน์ – Id – ReceiverType – Name – TaxId – TelNumber – Bank – BankAccount – DateCreated – DateModified – Relationship – Status * หากไม่ได้ส่งมาค่าเริ่มต้นคือ Id |
2 | OrderDir | String | 4 | O | ทิศทางการเรียง ASC : เรียงจากน้อยไปมาก DESC : เรียงจากมากไปน้อย * หากไม่ได้ส่งมาค่าเริ่มต้นคือ DESC |
3 | PageSize | Number | O | จำนวนรายการต่อหน้า (1-100) * หากไม่ได้ส่งมาค่าเริ่มต้นคือ 10 | |
4 | PageNumber | Number | O | เลขหน้า * หากไม่ได้ส่งมาค่าเริ่มต้นคือ 1 | |
5 | ReceiverType | String | 20 | O | ประเภทผู้รับเงิน ภาคผนวก ฉ. |
6 | SearchText | String | 255 | O | คำหรือข้อความที่ต้องการค้นหา |
7 | Status | String | 20 | O | สถานะการตรวจสอบผู้รับเงิน ภาคผนวก ก. |
8 | CreatedDateFrom | String | 19 | O | วันที่สร้างรายการ (จาก) [dd/MM/yyyy HH:mm:ss] |
9 | CreatedDateTo | String | 19 | O | วันที่สร้างรายการ (ถึง) [dd/MM/yyyy HH:mm:ss] |
10 | Checksum | String | 32 | M | ผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส |
ตัวอย่าง การเรียก Search Receiver Onboard (Code ภาษา C# .NET)
var client = new RestClient("https://api-payout.chillpay.co/api/v1/receiver/search");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("CHILLPAY-MerchantCode", "xxx");
request.AddHeader("CHILLPAY-ApiKey", "xxx");
request.AddHeader("Content-Type", "application/json");
var body = @"{""OrderBy"": ""Id"", ""OrderDir"": ""DESC"", ""PageSize"": null, ""PageNumber"": null, ""ReceiverType"": null, ""SearchText"": null, ""Status"": null, ""CreatedDateFrom"": null, ""CreatedDateTo"": null, ""Checksum"": ""5d85f1096f37c540b5118a50ed399bcd""}";
request.AddParameter("application/json", body, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
หมายเหตุ
- ค่า Checksum เป็นการนำค่าจาก Parameter ตามตารางที่ 1.2 (ข้อ 1-9) มาเรียงต่อกัน แล้วต่อท้ายด้วย MD5 Secret Key (ที่ได้รับจากทางชิวเพย์) ดังนี้
- OrderBy + OrderDir + PageSize + PageNumber + ReceiverType + SearchText + Status + CreatedDateFrom + CreatedDateTo + MD5 Secret Key
- จากนั้นนำข้อมูลที่เรียงกันทั้งหมดนี้ไปเข้ารหัสด้วยฟังก์ชั่น MD5 Hashing จึงจะได้เป็นค่า Checksum
- ตัวอย่าง การนำข้อมูลมาเรียงต่อกันเพื่อเข้าฟังก์ชั่น MD5
- IdDESCAAABBBCCCDDD
ตารางที่ 1.3 Response Message Parameters
No. | Parameters Name | Data Type | Description |
---|---|---|---|
1 | totalRecord | Number | จำนวนรายการทั้งหมด |
2 | pageSize | Number | จำนวนรายการต่อหน้า |
3 | pageNumber | Number | เลขที่หน้า |
4 | filteredRecord | Number | จำนวนรายการในหน้าปัจจุบัน |
5 | status | String | รหัสสถานะการทำรายการ ภาคผนวก ข. |
6 | message | String | คำอธิบายสถานะการทำรายการ |
7 | data[].id | Number | เลขที่อ้างอิงผู้รับเงิน |
8 | data[].receiverType | String | ประเภทผู้รับเงิน ภาคผนวก ฉ. |
9 | data[].name | String | Individual – ชื่อนามกุล (Name-Surname) Organization – ชื่อบริษัท (Company Name) |
10 | data[].taxId | String | Individual – เลขบัตรประชาชน (ID Card Number) Organization – หมายเลขทะเบียนนิติบุคคล (Business Registration No.) |
11 | data[].telNumber | String | เบอร์โทรศัพท์ |
12 | data[].bank | String | ธนาคาร ภาคผนวก ค. |
13 | data[].bankAccount | String | เลขบัญชีธนาคาร |
14 | data[].email | String | อีเมล |
15 | data[].dateCreated | String | วันที่สร้าง [dd/MM/yyyy HH:mm:ss] |
16 | data[].dateModified | String | วันที่แก้ไชล่าสุด [dd/MM/yyyy HH:mm:ss] |
17 | data[].relationship | String | ความสัมพันธ์ |
18 | data[].status | String | สถานะการตรวจสอบผู้รับเงิน ภาคผนวก ก. |
ตัวอย่าง ข้อมูล JSON Response Message ที่ได้รับจากการเรียก API
{
"totalRecord": 9,
"pageSize": 10,
"pageNumber": 1,
"filteredRecord": 9,
"status": 200,
"message": "Success",
"data": [
{
"id": 163,
"receiverType": "Individual",
"name": "นายพระอินทร์ ฟินเทค",
"taxId": "9999999999999",
"telNumber": "0899999999",
"bank": "BAY",
"bankAccount": "1234567890",
"email": "prain.fintech@chillpay.co",
"dateCreated": "01-04-2022 09:51:27",
"dateModified": "01-04-2022 09:51:29",
"relationship": "Partner",
"status": "Pending"
},
...
]
}
Add Receiver Onboard
Service Name: | Add Receiver Onboard |
URL: | [SANDBOX] https://sandbox-api-payout.chillpay.co/api/v1/receiver/add |
[PROD] https://api-payout.chillpay.co/api/v1/receiver/add | |
Method: | POST |
Descript: | เป็นเซอร์วิสในการเพิ่มรายการตรวจสอบผู้รับเงิน (Receiver Onboard) |
ตารางที่ 2.1 Request Header Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | Content-Type | String | 16 | M | application/json |
2 | CHILLPAY-MerchantCode | String | 15 | M | รหัสร้านค้าที่ออกให้โดยชิวเพย์ |
3 | CHILLPAY-ApiKey | String | 100 | M | รหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ |
ตารางที่ 2.2 Request Body Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | ReceiverType | String | 20 | M | ประเภทผู้รับเงิน ภาคผนวก ฉ. |
2 | Name | String | 255 | M | Individual – ชื่อนามกุล (Name-Surname) Organization – ชื่อบริษัท (Company Name) * ที่ตรงกับหน้าสมุดธนาคาร |
3 | TaxId | String | 13 | M | Individual – เลขบัตรประชาชน (ID Card Number) Organization – หมายเลขทะเบียนนิติบุคคล (Business Registration No.) |
4 | TelNumber | String | 20 | M | เบอร์โทรศัพท์ |
5 | Bank | String | 20 | M | ธนาคาร ภาคผนวก ค. |
6 | BankAccount | String | 20 | M | เลขบัญชีธนาคาร |
7 | String | 255 | O | อีเมล | |
8 | Relationship | String | 100 | M | ความสัมพันธ์ |
9 | Checksum | String | 32 | M | ผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส |
ตัวอย่าง การเรียก Add Receiver Onboard (Code ภาษา C# .NET)
var client = new RestClient("https://api-payout.chillpay.co/api/v1/receiver/add");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("CHILLPAY-MerchantCode", "xxx");
request.AddHeader("CHILLPAY-ApiKey", "xxx");
request.AddHeader("Content-Type", "application/json");
var body = @"{""ReceiverType"": ""Individual"", ""Name"": ""นายพระอินทร์ ฟินเทค"", ""TaxId"": ""9999999999999"", ""TelNumber"": ""0899999999"", ""Bank"": ""BAY"", ""BankAccount"": ""1234567890"", ""Email"": "prain.fintech@chillpay.co", ""Relationship"": ""Partner"", ""Checksum"": ""b09e36d1aeb0b6a5a98b62b3c1768f4b""}";
request.AddParameter("application/json", body, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
หมายเหตุ
- พารามิเตอร์ TelNumber และ Email ระบบจะเก็บข้อมูลเฉพาะผู้รับเงิน ประเภทบุคคลธรรมดาเท่านั้น
- ค่า Checksum เป็นการนำค่าจาก Parameter ตามตารางที่ 2.2 (ข้อ 1-8) มาเรียงต่อกัน แล้วต่อท้ายด้วย MD5 Secret Key (ที่ได้รับจากทางชิวเพย์) ดังนี้
- ReceiverType + Name + TaxId + TelNumber + Bank + BankAccount + Email + Relationship + MD5 Secret Key
- จากนั้นนำข้อมูลที่เรียงกันทั้งหมดนี้ไปเข้ารหัสด้วยฟังก์ชั่น MD5 Hashing จึงจะได้เป็นค่า Checksum
- ตัวอย่าง การนำข้อมูลมาเรียงต่อกันเพื่อเข้าฟังก์ชั่น MD5
- Individualนายพระอินทร์ ฟินเทค99999999999990899999999BAY1234567890prain.fintech@chillpay.co PartnerAAABBBCCCDDD
ตารางที่ 2.3 Response Message Parameters
No. | Parameters Name | Data Type | Description |
---|---|---|---|
1 | status | String | รหัสสถานะการทำรายการ ภาคผนวก ข. |
2 | message | String | คำอธิบายสถานะการทำรายการ |
3 | data.id | Number | เลขที่อ้างอิงผู้รับเงิน |
4 | data.receiverType | String | ประเภทผู้รับเงิน ภาคผนวก ฉ. |
5 | data.name | String | Individual – ชื่อนามกุล (Name-Surname) Organization – ชื่อบริษัท (Company Name) |
6 | data.taxId | String | Individual – เลขบัตรประชาชน (ID Card Number) Organization – หมายเลขทะเบียนนิติบุคคล (Business Registration No.) |
7 | data.telNumber | String | เบอร์โทรศัพท์ |
8 | data.bank | String | ธนาคาร ภาคผนวก ค. |
9 | data.bankAccount | String | เลขบัญชีธนาคาร |
10 | data.email | String | อีเมล |
11 | data.dateCreated | String | วันที่สร้าง [dd/MM/yyyy HH:mm:ss] |
12 | data.dateModified | String | วันที่แก้ไชล่าสุด [dd/MM/yyyy HH:mm:ss] |
13 | data.relationship | String | ความสัมพันธ์ |
14 | data.status | String | สถานะการตรวจสอบผู้รับเงิน ภาคผนวก ก. |
ตัวอย่าง ข้อมูล JSON Response Message ที่ได้รับจากการเรียก API
{
"status": 200,
"message": "Success",
"data": {
"id": 163,
"receiverType": "Individual",
"name": "นายพระอินทร์ ฟินเทค",
"taxId": "9999999999999",
"telNumber": "0899999999",
"bank": "BAY",
"bankAccount": "1234567890",
"email": "prain.fintech@chillpay.co",
"dateCreated": "01-04-2022 09:51:27",
"dateModified": null,
"relationship": "Partner",
"status": "Pending"
}
}
Search PayOut Transaction
Service Name: | Search PayOut Transaction |
URL: | [SANDBOX] https://sandbox-api-payout.chillpay.co/api/v1/transaction/search |
[PROD] https://api-payout.chillpay.co/api/v1/transaction/search | |
Method: | POST |
Descript: | เป็นเซอร์วิสในการค้นหารายการกระจายเงินออก (PayOut Transactions) |
ตารางที่ 3.1 Request Header Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | Content-Type | String | 16 | M | application/json |
2 | CHILLPAY-MerchantCode | String | 15 | M | รหัสร้านค้าที่ออกให้โดยชิวเพย์ |
3 | CHILLPAY-ApiKey | String | 100 | M | รหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ |
ตารางที่ 3.2 Request Body Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | OrderBy | String | 20 | O | เรียงตามคอลัมน์ – TransactionId – ReceiverType – Name – Bank – BankAccount – Amount – TotalAmount – CreatedDate – ProcessDate – Status * หากไม่ได้ส่งมาค่าเริ่มต้นคือ TransactionId |
2 | OrderDir | String | 4 | O | ทิศทางการเรียง ASC : เรียงจากน้อยไปมาก DESC : เรียงจากมากไปน้อย * หากไม่ได้ส่งมาค่าเริ่มต้นคือ DESC |
3 | PageSize | Number | O | จำนวนรายการต่อหน้า (1-100) * หากไม่ได้ส่งมาค่าเริ่มต้นคือ 10 | |
4 | PageNumber | Number | O | เลขหน้า * หากไม่ได้ส่งมาค่าเริ่มต้นคือ 1 | |
5 | ReceiverType | String | 20 | O | ประเภทผู้รับเงิน ภาคผนวก ฉ. |
6 | SearchText | String | 255 | O | คำหรือข้อความที่ต้องการค้นหา |
7 | Status | String | 20 | O | สถานะรายการกระจายเงินออกภาคผนวก ง. |
8 | CreatedDateFrom | String | 19 | O | วันที่สร้างรายการ (จาก) [dd/MM/yyyy HH:mm:ss] |
9 | CreatedDateTo | String | 19 | O | วันที่สร้างรายการ (ถึง) [dd/MM/yyyy HH:mm:ss] |
10 | Checksum | String | 32 | M | ผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส |
ตัวอย่าง การเรียก Search PayOut Transaction (Code ภาษา C# .NET)
var client = new RestClient("https://api-payout.chillpay.co/api/v1/transaction/search");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("CHILLPAY-MerchantCode", "xxx");
request.AddHeader("CHILLPAY-ApiKey", "xxx");
request.AddHeader("Content-Type", "application/json");
var body = @"{""OrderBy"": ""TransactionId"", ""OrderDir"": ""DESC"", ""PageSize"": null, ""PageNumber"": null, ""ReceiverType"": null, ""SearchText"": null, ""Status"": null, ""CreatedDateFrom"": null, ""CreatedDateTo"": null, ""Checksum"": ""5d85f1096f37c540b5118a50ed399bcd""}";
request.AddParameter("application/json", body, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
หมายเหตุ
- ค่า Checksum เป็นการนำค่าจาก Parameter ตามตารางที่ 3.2 (ข้อ 1-9) มาเรียงต่อกัน แล้วต่อท้ายด้วย MD5 Secret Key (ที่ได้รับจากทางชิวเพย์) ดังนี้
- OrderBy + OrderDir + PageSize + PageNumber + ReceiverType + SearchText + Status + CreatedDateFrom + CreatedDateTo + MD5 Secret Key
- จากนั้นนำข้อมูลที่เรียงกันทั้งหมดนี้ไปเข้ารหัสด้วยฟังก์ชั่น MD5 Hashing จึงจะได้เป็นค่า Checksum
- ตัวอย่าง การนำข้อมูลมาเรียงต่อกันเพื่อเข้าฟังก์ชั่น MD5
- TransactionIdDESCAAABBBCCCDDD
ตารางที่ 3.3 Response Message Parameters
No. | Parameters Name | Data Type | Description |
---|---|---|---|
1 | totalRecord | Number | จำนวนรายการทั้งหมด |
2 | pageSize | Number | จำนวนรายการต่อหน้า |
3 | pageNumber | Number | เลขที่หน้า |
4 | filteredRecord | Number | จำนวนรายการในหน้าปัจจุบัน |
5 | status | String | รหัสสถานะการทำรายการ ภาคผนวก ข. |
6 | message | String | คำอธิบายสถานะการทำรายการ |
7 | data[].transactionId | String | เลขที่อ้างอิงรายการ |
8 | data[].receiverType | String | ประเภทผู้รับเงิน ภาคผนวก ฉ. |
9 | data[].name | String | Individual – ชื่อนามกุล (Name-Surname) Organization – ชื่อบริษัท (Company Name) |
10 | data[].bank | String | ธนาคาร ภาคผนวก ค. |
11 | data[].bankAccount | String | เลขบัญชีธนาคาร |
12 | data[].orderNo | String | หมายเลขอ้างอิงรายการของทางร้านค้า |
13 | data[].ref1 | String | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
14 | data[].ref2 | String | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
15 | data[].ref3 | String | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
16 | data[].amount | String | จำนวนเงินที่กระจายเงินออก [#,##0.00] |
17 | data[].fee | String | ค่าธรรมเนียม [#,##0.00] |
18 | data[].vat | String | ภาษีมูลค่าเพิ่ม [#,##0.00] |
19 | data[].wht | String | ภาษีหัก ณ ที่จ่าย [#,##0.00] |
20 | data[].totalAmount | String | จำนวนเงินที่หักออกจากบัญชีของร้านค้า [#,##0.00] |
21 | data[].createdDate | String | วันที่สร้างรายการ [dd/MM/yyyy HH:mm:ss] |
22 | data[].processDate | String | วันที่กระจายเงินออก [dd/MM/yyyy HH:mm:ss] |
23 | data[].status | String | สถานะรายการกระจายเงินออก ภาคผนวก ง. |
ตัวอย่าง ข้อมูล JSON Response Message ที่ได้รับจากการเรียก API
{
"totalRecord": 1,
"pageSize": 10,
"pageNumber": 1,
"filteredRecord": 1,
"status": 200,
"message": "Success",
"data": [
{
"transactionId": "PO0000000000369",
"receiverType": "Individual",
"name": "นายพระอินทร์ ฟินเทค",
"bank": "BAY",
"bankAccount": "1234567890",
"orderNo": "ORDER0001",
"ref1": "",
"ref2": "",
"ref3": "",
"amount": "1,500.00",
"fee": "48.75",
"vat": "3.41",
"wht": "1.46",
"totalAmount": "1,550.70",
"createdDate": "01-04-2022 10:10:23",
"processDate": "01-04-2022 10:15:24",
"status": "ReceiverConfirmed"
}
]
}
Request PayOut Transaction
Service Name: | Request PayOut Transaction |
URL: | [SANDBOX] https://sandbox-api-payout.chillpay.co/api/v1/transaction/request |
[PROD] https://api-payout.chillpay.co/api/v1/transaction/request | |
Method: | POST |
Descript: | เป็นเซอร์วิสในการเพิ่มรายการกระจายเงินออก (PayOut Transactions) |
ตารางที่ 4.1 Request Header Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | Content-Type | String | 16 | M | application/json |
2 | CHILLPAY-MerchantCode | String | 15 | M | รหัสร้านค้าที่ออกให้โดยชิวเพย์ |
3 | CHILLPAY-ApiKey | String | 100 | M | รหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ |
ตารางที่ 4.2 Request Body Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | ReceiverType | String | 20 | M | ประเภทผู้รับเงิน ภาคผนวก ฉ. |
2 | Name | String | 255 | M | Individual – ชื่อนามกุล (Name-Surname) Organization – ชื่อบริษัท (Company Name) * ที่ตรงกับหน้าสมุดธนาคาร |
3 | Bank | String | 20 | M | ธนาคาร ภาคผนวก ค. |
4 | BankAccount | String | 20 | M | เลขบัญชีธนาคาร |
5 | Amount | Number | M | จำนวนที่ต้องการกระจายเงินออก เช่น หากส่งข้อมูลมา 355550 ระบบจะอ่านค่าเป็น 3,555.50 * 2 หลักสุดท้ายจะเป็นค่าทศนิยม | |
6 | OrderNo | String | 50 | O | หมายเลขอ้างอิงรายการของทางร้านค้า |
7 | Ref1 | String | 100 | O | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
8 | Ref2 | String | 100 | O | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
9 | Ref3 | String | 100 | O | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
10 | Checksum | String | 32 | M | ผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส |
ตัวอย่าง การเรียก Request PayOut Transaction (Code ภาษา C# .NET)
var client = new RestClient("https://api-payout.chillpay.co/api/v1/transaction/request");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("CHILLPAY-MerchantCode", "xxx");
request.AddHeader("CHILLPAY-ApiKey", "xxx");
request.AddHeader("Content-Type", "application/json");
var body = @"{""ReceiverType"": ""Individual"", ""Name"": ""นายพระอินทร์ ฟินเทค"", ""Bank"": ""BAY"", ""BankAccount"": ""1234567890"", ""Amount"": ""150000"", ""OrderNo"": ""ORDER0001"", ""Ref1"": """", ""Ref2"": """", ""Ref3"": """", ""Checksum"": ""cb371343332a80c377f63488ab841301""}";
request.AddParameter("application/json", body, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
หมายเหตุ
- ค่า Checksum เป็นการนำค่าจาก Parameter ตามตารางที่ 4.2 (ข้อ 1-9) มาเรียงต่อกัน แล้วต่อท้ายด้วย MD5 Secret Key (ที่ได้รับจากทางชิวเพย์) ดังนี้
- ReceiverType + Name + Bank + BankAccount + Amount + OrderNo + Ref1 + Ref2 + Ref3 + MD5 Secret Key
- จากนั้นนำข้อมูลที่เรียงกันทั้งหมดนี้ไปเข้ารหัสด้วยฟังก์ชั่น MD5 Hashing จึงจะได้เป็นค่า Checksum
- ตัวอย่าง การนำข้อมูลมาเรียงต่อกันเพื่อเข้าฟังก์ชั่น MD5
- Individualนายพระอินทร์ ฟินเทคBAY1234567890150000ORDER0001AAABBBCCCDDD
ตารางที่ 4.3 Response Message Parameters
No. | Parameters Name | Data Type | Description |
---|---|---|---|
1 | status | String | รหัสสถานะการทำรายการ ภาคผนวก ข. |
2 | message | String | คำอธิบายสถานะการทำรายการ |
3 | data.transactionId | String | เลขที่อ้างอิงรายการ |
4 | data.receiverType | String | ประเภทผู้รับเงิน ภาคผนวก ฉ. |
5 | data.name | String | Individual – ชื่อนามกุล (Name-Surname) Organization – ชื่อบริษัท (Company Name) |
6 | data.bank | String | ธนาคาร ภาคผนวก ค. |
7 | data.bankAccount | String | เลขบัญชีธนาคาร |
8 | data.orderNo | String | หมายเลขอ้างอิงรายการของทางร้านค้า |
9 | data.ref1 | String | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
10 | data.ref2 | String | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
11 | data.ref3 | String | ค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ |
12 | data.amount | String | จำนวนเงินที่กระจายเงินออก [#,##0.00] |
13 | data.fee | String | ค่าธรรมเนียม [#,##0.00] |
14 | data.vat | String | ภาษีมูลค่าเพิ่ม [#,##0.00] |
15 | data.wht | String | ภาษีหัก ณ ที่จ่าย [#,##0.00] |
16 | data.totalAmount | String | จำนวนเงินที่หักออกจากบัญชีของร้านค้า [#,##0.00] |
17 | data.createdDate | String | วันที่สร้างรายการ [dd/MM/yyyy HH:mm:ss] |
18 | data.processDate | String | วันที่กระจายเงินออก [dd/MM/yyyy HH:mm:ss] |
19 | data.status | String | สถานะรายการกระจายเงินออก ภาคผนวก ง. |
ตัวอย่าง ข้อมูล JSON Response Message ที่ได้รับจากการเรียก API
{
"status": 200,
"message": "Success",
"data": {
"transactionId": "PO0000000000369",
"receiverType": "Individual",
"name": "นายพระอินทร์ ฟินเทค",
"bank": "BAY",
"bankAccount": "1234567890",
"orderNo": "ORDER0001",
"ref1": "",
"ref2": "",
"ref3": "",
"amount": "1,500.00",
"fee": "48.75",
"vat": "3.41",
"wht": "1.46",
"totalAmount": "1,550.70",
"createdDate": "01-04-2022 10:10:23",
"processDate": null,
"status": "Waiting"
}
}
Search Balance Statement
Service Name: | Search Balance Statement |
URL: | [SANDBOX] https://sandbox-api-payout.chillpay.co/api/v1/statement/search |
[PROD] https://api-payout.chillpay.co/api/v1/statement/search | |
Method: | POST |
Descript: | เป็นเซอร์วิสในการค้นหารายการเดินบัญชี (Balance Statement) |
ตารางที่ 5.1 Request Header Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | Content-Type | String | 16 | M | application/json |
2 | CHILLPAY-MerchantCode | String | 15 | M | รหัสร้านค้าที่ออกให้โดยชิวเพย์ |
3 | CHILLPAY-ApiKey | String | 100 | M | รหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ |
ตารางที่ 5.2 Request Body Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | OrderBy | String | 20 | O | เรียงตามคอลัมน์ – TransactionId * หากไม่ได้ส่งมาค่าเริ่มต้นคือ TransactionId |
2 | OrderDir | String | 4 | O | ทิศทางการเรียง ASC : เรียงจากน้อยไปมาก DESC : เรียงจากมากไปน้อย * หากไม่ได้ส่งมาค่าเริ่มต้นคือ DESC |
3 | PageSize | Number | O | จำนวนรายการต่อหน้า (1-100) * หากไม่ได้ส่งมาค่าเริ่มต้นคือ 10 | |
4 | PageNumber | Number | O | เลขหน้า * หากไม่ได้ส่งมาค่าเริ่มต้นคือ 1 | |
5 | TransactionDateFrom | String | 19 | O | วันที่ทำรายการ (จาก) [dd/MM/yyyy HH:mm:ss] |
6 | TransactionDateTo | String | 19 | O | วันที่ทำรายการ (ถึง) [dd/MM/yyyy HH:mm:ss] |
7 | Checksum | String | 32 | M | ผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส |
ตัวอย่าง การเรียก Search Balance Statement (Code ภาษา C# .NET)
var client = new RestClient("https://api-payout.chillpay.co/api/v1/statement/search");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("CHILLPAY-MerchantCode", "xxx");
request.AddHeader("CHILLPAY-ApiKey", "xxx");
request.AddHeader("Content-Type", "application/json");
var body = @"{""OrderBy"": ""TransactionId"", ""OrderDir"": ""DESC"" , ""PageSize"": null, ""PageNumber"": null, ""TransactionDateFrom"": null, ""TransactionDateTo"": null, ""Checksum"": ""73fbb66fa8dee219906e24f0eebb3043""}";
request.AddParameter("application/json", body, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
หมายเหตุ
- ค่า Checksum เป็นการนำค่าจาก Parameter ตามตารางที่ 5.2 (ข้อ 1-6) มาเรียงต่อกัน แล้วต่อท้ายด้วย MD5 Secret Key (ที่ได้รับจากทางชิวเพย์) ดังนี้
- OrderBy + OrderDir + PageSize + PageNumber + TransactionDateFrom + TransactionDateTo + MD5 Secret Key
- จากนั้นนำข้อมูลที่เรียงกันทั้งหมดนี้ไปเข้ารหัสด้วยฟังก์ชั่น MD5 Hashing จึงจะได้เป็นค่า Checksum
- ตัวอย่าง การนำข้อมูลมาเรียงต่อกันเพื่อเข้าฟังก์ชั่น MD5
- TransactionIdDESCAAABBBCCCDDD
ตารางที่ 5.3 Response Message Parameters
No. | Parameters Name | Data Type | Description |
---|---|---|---|
1 | totalRecord | Number | จำนวนรายการทั้งหมด |
2 | pageSize | Number | จำนวนรายการต่อหน้า |
3 | pageNumber | Number | เลขที่หน้า |
4 | filteredRecord | Number | จำนวนรายการในหน้าปัจจุบัน |
5 | status | String | รหัสสถานะการทำรายการ ภาคผนวก ข. |
6 | message | String | คำอธิบายสถานะการทำรายการ |
7 | data[].transactionId | String | เลขที่อ้างอิงรายการ |
8 | data[].transactionDate | String | วันที่ทำรายการ [dd/MM/yyyy HH:mm:ss] |
9 | data[].action | String | กิจกรรม ภาคผนวก จ. |
10 | data[].amount | String | จำนวนเงิน [#,##0.00] |
11 | data[].fee | String | ค่าธรรมเนียม [#,##0.00] |
12 | data[].vat | String | ภาษีมูลค่าเพิ่ม [#,##0.00] |
13 | data[].wht | String | ภาษีหัก ณ ที่จ่าย [#,##0.00] |
14 | data[].totalAmount | String | จำนวนเงินที่หักออกจากบัญชีของร้านค้า [#,##0.00] |
15 | data[].balance | String | จำนวนเงินคงเหลือ [#,##0.00] |
ตัวอย่าง ข้อมูล JSON Response Message ที่ได้รับจากการเรียก API
{
"totalRecord": 2,
"pageSize": 10,
"pageNumber": 1,
"filteredRecord": 2,
"status": 200,
"message": "Success",
"data": [
{
"transactionId": "PO0000000000369",
"transactionDate": "01-04-2022 10:15:24",
"action": "PayOut Transfer",
"amount": "1,500.00",
"fee": "48.75",
"vat": "3.41",
"wht": "1.46",
"totalAmount": "-1,550.70",
"balance": "48,157.71"
},
...
]
}
Get Balance Amount
Service Name: | Get Balance Amount |
URL: | [SANDBOX] https://sandbox-api-payout.chillpay.co/api/v1/statement/getbalance |
[PROD] https://api-payout.chillpay.co/api/v1/statement/getbalance | |
Method: | POST |
Descript: | เป็นเซอร์วิสในการเรียกดูจำนวนเงินคงเหลือในบัญชี |
ตารางที่ 6.1 Request Header Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | Content-Type | String | 16 | M | application/json |
2 | CHILLPAY-MerchantCode | String | 15 | M | รหัสร้านค้าที่ออกให้โดยชิวเพย์ |
3 | CHILLPAY-ApiKey | String | 100 | M | รหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ |
ตารางที่ 6.2 Request Body Parameters
No. | Parameters Name | Data Type | Length | Mandatory / Optional | Description |
---|---|---|---|---|---|
1 | MerchantCode | String | 15 | M | รหัสร้านค้าที่ออกให้โดยชิวเพย์ |
2 | ApiKey | String | 100 | M | รหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ |
3 | Checksum | String | 32 | M | ผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส |
ตัวอย่าง การเรียก Get Balance Amount (Code ภาษา C# .NET)
var client = new RestClient("https://api-payout.chillpay.co/api/v1/statement/getbalance");
client.Timeout = -1;
var request = new RestRequest(Method.POST);
request.AddHeader("CHILLPAY-MerchantCode", "xxx");
request.AddHeader("CHILLPAY-ApiKey", "xxx");
request.AddHeader("Content-Type", "application/json");
var body = @"{"" MerchantCode "": ""xxx"", "" ApiKey "": ""xxx"" , ""Checksum"": ""4cb8dd8bd8b09a0d085ccd560007f4e5""}";
request.AddParameter("application/json", body, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
Console.WriteLine(response.Content);
หมายเหตุ
- ค่า Checksum เป็นการนำค่าจาก Parameter ตามตารางที่ 6.2 (ข้อ 1-2) มาเรียงต่อกัน แล้วต่อท้ายด้วย MD5 Secret Key (ที่ได้รับจากทางชิวเพย์) ดังนี้
- MerchantCode + ApiKey + MD5 Secret Key
- จากนั้นนำข้อมูลที่เรียงกันทั้งหมดนี้ไปเข้ารหัสด้วยฟังก์ชั่น MD5 Hashing จึงจะได้เป็นค่า Checksum
- ตัวอย่าง การนำข้อมูลมาเรียงต่อกันเพื่อเข้าฟังก์ชั่น MD5
- xxxxxxAAABBBCCCDDD
ตารางที่ 6.3 Response Message Parameters
No. | Parameters Name | Data Type | Description |
---|---|---|---|
1 | status | String | รหัสสถานะการทำรายการ ภาคผนวก ข. |
2 | message | String | คำอธิบายสถานะการทำรายการ |
3 | data.ledgerBalance | String | จำนวนเงินคงเหลือทั้งหมด [#,##0.00] |
4 | data.availableBalance | String | จำนวนเงินคงเหลือที่สามารถใช้งานได้ [#,##0.00] |
ตัวอย่าง ข้อมูล JSON Response Message ที่ได้รับจากการเรียก API
{
"status": 200,
"message": "Success",
"data": {
"ledgerBalance": "48,157.71",
"availableBalance": "48,157.71"
}
}
ภาคผนวก
ภาคผนวก ก. สถานะการตรวจสอบผู้รับเงิน (Receiver Onboard Status)
No. | Status Message | Description |
---|---|---|
1 | Pending | รอตรวจสอบจากชิวเพย์ |
2 | Active | เพิ่มข้อมูลผู้รับเงินสำเร็จ |
3 | Failed | เพิ่มข้อมูลผู้รับเงินไม่สำเร็จ เนื่องจากข้อมูลไม่ถูกต้อง |
ภาคผนวก ข. รหัสสถานะการทำรายการ (Response Message)
No. | Status Message | Description |
---|---|---|
200 | Success | ทำรายการสำเร็จ |
1001 | InvalidParameter | พารามิเตอร์ไม่ถูกต้อง |
1002 | InvalidMerchantCode | รหัสร้านค้าไม่ถูกต้อง |
1003 | InvalidApiKey | รหัสอ้างอิงร้านค้าไม่ถูกต้อง |
1004 | InvalidReceiverType | ประเภทผู้รับเงินไม่ถูกต้อง |
1005 | InvalidName | ชื่อนามกุล/ชื่อบริษัท ไม่ถูกต้อง |
1006 | InvalidTaxId | เลขบัตรประชาชน/หมายเลขทะเบียนนิติบุคคล ไม่ถูกต้อง |
1007 | InvalidTelNumber | เบอร์โทรศัพท์ไม่ถูกต้อง |
1008 | InvalidBank | ธนาคารไม่ถูกต้อง |
1009 | InvalidBankAccount | เลขบัญชีธนาคารไม่ถูกต้อง |
1010 | InvalidRelationship | ความสัมพันธ์ไม่ถูกต้อง |
1011 | InvalidRandomToken | รหัสแบบสุ่มไม่ถูกต้อง |
1012 | InvalidChecksum | รหัส Checksum ไม่ถูกต้อง |
2001 | InvalidMerchantCodeData | ข้อมูลรหัสร้านค้าไม่ถูกต้อง |
2002 | InvalidApiKeyData | ข้อมูลรหัสอ้างอิงร้านค้าไม่ถูกต้อง |
2003 | InvalidOrderByData | ข้อมูลสำหรับเรียงตามคอลัมน์ไม่ถูกต้อง |
2004 | InvalidOrderDirData | ข้อมูลสำหรับทิศทางการเรียงไม่ถูกต้อง |
2005 | InvalidPageSizeData | ข้อมูลจำนวนรายการต่อหน้าไม่ถูดต้อง |
2006 | InvalidPageNumberData | ข้อมูลเลขหน้าไม่ถูกต้อง |
2007 | InvalidSearchTextData | ข้อมูลคำหรือข้อความที่ต้องการค้นหาไม่ถูกต้อง |
2008 | InvalidReceiverTypeData | ข้อมูลประเภทผู้รับเงินไม่ถูกต้อง |
2009 | InvalidNameData | ข้อมูล ชื่อนามกุล/ชื่อบริษัท ไม่ถูกต้อง |
2010 | InvalidTaxIdData | ข้อมูล เลขบัตรประชาชน/หมายเลขทะเบียนนิติบุคคล ไม่ถูกต้อง |
2011 | InvalidTelNumberData | ข้อมูลเบอร์โทรศัพท์ไม่ถูกต้อง |
2012 | InvalidBankData | ข้อมูลธนาคารไม่ถูกต้อง |
2013 | InvalidBankAccountData | ข้อมูลเลขบัญชีธนาคารไม่ถูกต้อง |
2014 | InvalidEmailData | ข้อมูลอีเมลไม่ถูกต้อง |
2015 | InvalidRelationshipData | ข้อมูลความสัมพันธ์ไม่ถูกต้อง |
2016 | InvalidStatusData | ข้อมูลสถานะไม่ถูกต้อง |
2017 | InvalidCreatedDateData | ข้อมูลวันที่สร้างรายการไม่ถูกต้อง |
2018 | InvalidAmountData | ข้อมูลจำนวนเงินไม่ถูกต้อง |
2019 | InvalidOrderNoData | ข้อมูลเลขที่อ้างอิงรายการของทางร้านค้าไม่ถูกต้อง |
2020 | InvalidRef1Data | ข้อมูลค่า Ref1 ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการไม่ถูกต้อง |
2021 | InvalidRef2Data | ข้อมูลค่า Ref2 ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการไม่ถูกต้อง |
2022 | InvalidRef3Data | ข้อมูลค่า Ref3 ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการไม่ถูกต้อง |
2023 | InvalidTransactionDateData | ข้อมูลวันที่ทำรายการไม่ถูกต้อง |
2024 | InvalidRandomTokenData | ข้อมูลรหัสแบบสุ่มไม่ถูกต้อง |
2025 | InvalidChecksumData | ข้อมูลรหัส Checksum ไม่ถูกต้อง |
3001 | AddReceiverFailed | ไม่สามารถเพิ่มข้อมูลผู้รับเงินได้ |
3002 | SearchReceiverFailed | ไม่สามารถค้นหารายการผู้รับเงินได้ |
3003 | RequestTransactionFailed | ไม่สามารถสร้างรายการกระจายเงินออกได้ |
3004 | SearchTransactionFailed | ไม่สามารถค้นหารายการกระจายเงินออกได้ |
3005 | SearchBalanceStatementFailed | ไม่สามารถค้นหารายการเดินบัญชีได้ |
3006 | GetMerchantBalanceFailed | ไม่สามารถเรียกดูจำนวนเงินคงเหลือในบัญชี |
3101 | PayoutServiceNotAvailable | ร้านค้าไม่สามารถใช้งานระบบกระจายเงินได้ |
3102 | ReceiverAlreadyAdded | ข้อมูลผู้รับเงินเคยเพิ่มแล้ว |
3103 | ReceiverRepeatBankAccount | ส่งข้อมูลเลขบัญชีธนาคารซ้ำกับของรายการอื่น |
3104 | ReceiverNotAvailable | ผู้รับเงินไม่พร้อมใช้งาน |
3105 | ReceiverNameIncorrect | ชื่อผู้รับเงินไม่ตรงกับรายการในระบบ |
3106 | ServiceFeeNotFound | ไม่พบข้อมูลค่าบริการ |
3107 | NotEnoughBalance | ยอดเงินคงเหลือไม่เพียงพอ |
4001 | AccountUnauthorized | บัญชีร้านค้ายังไม่ได้รับการอนุมัติ |
4002 | SystemError | ระบบเกิดข้อผิดพลาดไม่สามารถทำรายการได้ |
4003 | SystemMaintenanceTime | อยู่ในระยะเวลาปรับปรุงระบบ |
4004 | RequestExceededLimit | การร้องขอเกินจำนวนที่กำหนด |
ภาคผนวก ค. ธนาคาร (Bank)
Code | Name EN | Name TH |
---|---|---|
BBL | BANGKOK BANK PUBLIC COMPANY LTD. | ธ. กรุงเทพ จำกัด (มหาชน) |
KBANK | KASIKORNBANK PUBLIC COMPANY LTD. | ธ. กสิกรไทย จำกัด (มหาชน) |
KTB | KRUNG THAI BANK PUBLIC COMPANY LTD. | ธ. กรุงไทย จำกัด (มหาชน) |
TMB | TMB BANK PUBLIC COMPANY LIMITED | ธ. ทหารไทย จำกัด (มหาชน) |
SCB | SIAM COMMERCIAL BANK PUBLIC COMPANY LTD. | ธ. ไทยพาณิชย์ จำกัด (มหาชน) |
CITI | CITIBANK, N.A. | ธ. ซิตี้แบงก์ |
SMBC | SUMITOMO MITSUI BANKING CORPORATION | ธ. ซูมิโตโม มิตซุย แบงกิ้ง คอร์ปอเรชั่น |
SCBT | STANDARD CHARTERED BANK (THAI) PUBLIC COMPANY LIMITED | ธ. สแตนดาร์ดชาร์เตอร์ด (ไทย) จำกัด (มหาชน) |
CIMBT | CIMB THAI BANK PUPBLIC COMPANY LTD. | ธ. ซีไอเอ็มบี ไทย จำกัด (มหาชน) |
UOBT | UNITED OVERSEAS BANK (THAI) PUBLIC COMPANY LIMITED | ธ. ยูโอบี จำกัด (มหาชน) |
BAY | BANK OF AYUDHYA PUBLIC COMPANY LIMITED | ธ. กรุงศรีอยุธยา จำกัด (มหาชน) |
GSB | THE GOVERNMENT SAVINGS BANK | ธ. ออมสิน |
GHB | THE GOVERNMENT HOUSING BANK | ธ. อาคารสงเคราะห์ |
BAAC | BANK FOR AGRICULTURE AND AGRICULTURAL COOPERATIVES | ธ. เพื่อการเกษตรและสหกรณ์การเกษตร |
MHCB | MIZUHO CORPORATE BANK, LTD. | ธ. มิซูโฮ คอร์ปอเรต จำกัด |
TBANK | THANACHART BANK PUBLIC COMPANY LTD. | ธ. ธนชาต จำกัด (มหาชน) |
ISBT | ISLAMIC BANK OF THAILAND | ธ. อิสลามแห่งประเทศไทย |
TISCO | TISCO BANK PUBLIC COMPANY LIMITED | ธ. ทิสโก้ จำกัด (มหาชน) |
KK | KIATNAKIN BANK PUBLIC COMPANY LIMITED | ธ. เกียรตินาคิน จำกัด (มหาชน) |
ICBC Thai | INDUSTRIAL AND COMMERCIAL BANK OF CHINA (THAI) PUBLIC COMPANY LIMITED | ธ. ไอซีบีซี (ไทย) จำกัด (มหาชน) |
TCRB | THE THAI CREDIT RETAIL BANK PUBLIC COMPANY LIMITED | ธ. ไทยเครดิต เพื่อรายย่อย จำกัด (มหาชน) |
LH BANK | LAND AND HOUSES BANK PUBLIC COMPANY LIMITED | ธ. แลนด์ แอนด์ เฮ้าส์ จำกัด (มหาชน) |
ภาคผนวก ง. สถานะรายการกระจายเงินออก (PayOut Transaction Status)
No. | Text | Description |
---|---|---|
1 | Waiting | อยู่ระหว่างรอระบบดำเนินการ |
2 | Cancelled | การกระจายเงินถูกยกเลิก |
3 | Processing | กำลังดำเนินการกระจายเงิน |
4 | ProcessFailed | การดำเนินการกระจายเงินไม่สำเร็จ |
5 | ProcessCompleted | การดำเนินการกระจายเงินสำเร็จ |
6 | ReceiverConfirmed | การดำเนินการกระจายเงินสำเร็จ และเงินเข้าบัญชีผู้รับเงินปลายทางเรียบร้อย |
7 | ReceiverFailed | การดำเนินการกระจายเงินสำเร็จ แต่เงินไม่ถึงผู้รับเงินปลายทาง |
8 | ReverseChecked | ได้รับการตรวจสอบเงินคืนจากธนาคาร กรณีที่เงินไม่ถึงผู้รับเงินปลายทาง |
9 | ReverseCompleted | ได้รับการอนุมัติเงินคืนจากธนาคาร กรณีที่เงินไม่ถึงผู้รับเงินปลายทาง |
ภาคผนวก จ. กิจกรรม (Balance Statement Action)
No. | Text | Description |
---|---|---|
1 | PayIn by ChillPay | รายการโอนเงินเข้าโดยชิวเพย์ |
2 | PayOut Transfer | รายการกระจายเงินออกโดยร้านค้า |
3 | Adjust statement by Bank Reverse | ปรับปรุงรายการที่ธนาคารคืนเงิน เนื่องจากกระจายเงินออกถึง ผู้รับเงินไม่สำเร็จ |
4 | Manual adjust statement | ปรับปรุงรายการแบบแมนนวล |
5 | Withdrawal | รายการถอนเงิน |
ภาคผนวก ฉ. ประเภทผู้รับเงิน (ReceiverType)
No. | Text | Description |
---|---|---|
1 | Individual | บุคคลธรรมดา |
2 | Organization | นิติบุคคล |