PayOut

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 NameData TypeLengthMandatory / OptionalDescription
1Content-TypeString16Mapplication/json
2CHILLPAY-MerchantCodeString15Mรหัสร้านค้าที่ออกให้โดยชิวเพย์
3CHILLPAY-ApiKeyString100Mรหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ

ตารางที่ 1.2 Request Body Parameters

No.Parameters NameData TypeLengthMandatory / OptionalDescription
1OrderByString20Oเรียงตามคอลัมน์
– Id
– ReceiverType
– Name
– TaxId
– TelNumber
– Bank
– BankAccount
– Email
– DateCreated
– DateModified
– Relationship
– Status
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ Id
2OrderDirString4Oทิศทางการเรียง
ASC : เรียงจากน้อยไปมาก
DESC : เรียงจากมากไปน้อย
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ DESC
3PageSizeNumberOจำนวนรายการต่อหน้า (1-100)
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ 10
4PageNumberNumberOเลขหน้า
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ 1
5ReceiverTypeString20Oประเภทผู้รับเงิน
ภาคผนวก ฉ.
6SearchTextString255Oคำหรือข้อความที่ต้องการค้นหา
7StatusString20Oสถานะการตรวจสอบผู้รับเงิน ภาคผนวก ก.
8CreatedDateFromString19Oวันที่สร้างรายการ (จาก)
[dd/MM/yyyy HH:mm:ss]
9CreatedDateToString19Oวันที่สร้างรายการ (ถึง)
[dd/MM/yyyy HH:mm:ss]
10ChecksumString32Mผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส

ตัวอย่าง การเรียก 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 NameData TypeDescription
1totalRecordNumberจำนวนรายการทั้งหมด
2pageSizeNumberจำนวนรายการต่อหน้า
3pageNumberNumberเลขที่หน้า
4filteredRecordNumberจำนวนรายการในหน้าปัจจุบัน
5statusStringรหัสสถานะการทำรายการ ภาคผนวก ข.
6messageStringคำอธิบายสถานะการทำรายการ
7data[].idNumberเลขที่อ้างอิงผู้รับเงิน
8data[].receiverTypeStringประเภทผู้รับเงิน ภาคผนวก ฉ.
9data[].nameStringIndividual – ชื่อนามกุล (Name-Surname)
Organization – ชื่อบริษัท (Company Name)
10data[].taxIdStringIndividual – เลขบัตรประชาชน (ID Card Number)
Organization – หมายเลขทะเบียนนิติบุคคล (Business Registration No.)
11data[].telNumberStringเบอร์โทรศัพท์
12data[].bankStringธนาคาร ภาคผนวก ค.
13data[].bankAccountStringเลขบัญชีธนาคาร
14data[].emailStringอีเมล
15data[].dateCreatedStringวันที่สร้าง [dd/MM/yyyy HH:mm:ss]
16data[].dateModifiedStringวันที่แก้ไชล่าสุด [dd/MM/yyyy HH:mm:ss]
17data[].relationshipStringความสัมพันธ์
18data[].statusStringสถานะการตรวจสอบผู้รับเงิน ภาคผนวก ก.

ตัวอย่าง ข้อมูล 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 NameData TypeLengthMandatory / OptionalDescription
1Content-TypeString16Mapplication/json
2CHILLPAY-MerchantCodeString15Mรหัสร้านค้าที่ออกให้โดยชิวเพย์
3CHILLPAY-ApiKeyString100Mรหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ

ตารางที่ 2.2 Request Body Parameters

No.Parameters NameData TypeLengthMandatory / OptionalDescription
1ReceiverTypeString20Mประเภทผู้รับเงิน ภาคผนวก ฉ.
2NameString255MIndividual – ชื่อนามกุล (Name-Surname)
Organization – ชื่อบริษัท (Company Name)
* ที่ตรงกับหน้าสมุดธนาคาร
3TaxIdString13MIndividual – เลขบัตรประชาชน (ID Card Number)
Organization – หมายเลขทะเบียนนิติบุคคล (Business Registration No.)
4TelNumberString20Mเบอร์โทรศัพท์ 
5BankString20Mธนาคาร ภาคผนวก ค.
6BankAccountString20Mเลขบัญชีธนาคาร
7EmailString255Oอีเมล 
8RelationshipString100Mความสัมพันธ์
9ChecksumString32Mผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส

ตัวอย่าง การเรียก 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 NameData TypeDescription
1statusStringรหัสสถานะการทำรายการ ภาคผนวก ข.
2messageStringคำอธิบายสถานะการทำรายการ
3data.idNumberเลขที่อ้างอิงผู้รับเงิน
4data.receiverTypeStringประเภทผู้รับเงิน ภาคผนวก ฉ.
5data.nameStringIndividual – ชื่อนามกุล (Name-Surname)
Organization – ชื่อบริษัท (Company Name)
6data.taxIdStringIndividual – เลขบัตรประชาชน (ID Card Number)
Organization – หมายเลขทะเบียนนิติบุคคล (Business Registration No.)
7data.telNumberStringเบอร์โทรศัพท์
8data.bankStringธนาคาร ภาคผนวก ค.
9data.bankAccountStringเลขบัญชีธนาคาร
10data.emailStringอีเมล
11data.dateCreatedStringวันที่สร้าง [dd/MM/yyyy HH:mm:ss]
12data.dateModifiedStringวันที่แก้ไชล่าสุด [dd/MM/yyyy HH:mm:ss]
13data.relationshipStringความสัมพันธ์
14data.statusStringสถานะการตรวจสอบผู้รับเงิน ภาคผนวก ก.

ตัวอย่าง ข้อมูล 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 NameData TypeLengthMandatory / OptionalDescription
1Content-TypeString16Mapplication/json
2CHILLPAY-MerchantCodeString15Mรหัสร้านค้าที่ออกให้โดยชิวเพย์
3CHILLPAY-ApiKeyString100Mรหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ

ตารางที่ 3.2 Request Body Parameters

No.Parameters NameData TypeLengthMandatory / OptionalDescription
1OrderByString20Oเรียงตามคอลัมน์
– TransactionId
– ReceiverType
– Name
– Bank
– BankAccount
– Amount
– TotalAmount
– CreatedDate
– ProcessDate
– Status
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ TransactionId
2OrderDirString4Oทิศทางการเรียง
ASC : เรียงจากน้อยไปมาก
DESC : เรียงจากมากไปน้อย
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ DESC
3PageSizeNumberOจำนวนรายการต่อหน้า (1-100)
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ 10
4PageNumberNumberOเลขหน้า
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ 1
5ReceiverTypeString20Oประเภทผู้รับเงิน ภาคผนวก ฉ.
6SearchTextString255Oคำหรือข้อความที่ต้องการค้นหา
7StatusString20Oสถานะรายการกระจายเงินออกภาคผนวก ง.
8CreatedDateFromString19Oวันที่สร้างรายการ (จาก)
[dd/MM/yyyy HH:mm:ss]
9CreatedDateToString19Oวันที่สร้างรายการ (ถึง)
[dd/MM/yyyy HH:mm:ss]
10ChecksumString32Mผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส

ตัวอย่าง การเรียก 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 NameData TypeDescription
1totalRecordNumberจำนวนรายการทั้งหมด
2pageSizeNumberจำนวนรายการต่อหน้า
3pageNumberNumberเลขที่หน้า
4filteredRecordNumberจำนวนรายการในหน้าปัจจุบัน
5statusStringรหัสสถานะการทำรายการ ภาคผนวก ข.
6messageStringคำอธิบายสถานะการทำรายการ
7data[].transactionIdStringเลขที่อ้างอิงรายการ
8data[].receiverTypeStringประเภทผู้รับเงิน ภาคผนวก ฉ.
9data[].nameStringIndividual – ชื่อนามกุล (Name-Surname)
Organization – ชื่อบริษัท (Company Name)
10data[].bankStringธนาคาร ภาคผนวก ค.
11data[].bankAccountStringเลขบัญชีธนาคาร
12data[].orderNoStringหมายเลขอ้างอิงรายการของทางร้านค้า
13data[].ref1Stringค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
14data[].ref2Stringค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
15data[].ref3Stringค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
16data[].amountStringจำนวนเงินที่กระจายเงินออก [#,##0.00]
17data[].feeStringค่าธรรมเนียม [#,##0.00]
18data[].vatStringภาษีมูลค่าเพิ่ม [#,##0.00]
19data[].whtStringภาษีหัก ณ ที่จ่าย [#,##0.00]
20data[].totalAmountStringจำนวนเงินที่หักออกจากบัญชีของร้านค้า [#,##0.00]
21data[].createdDateStringวันที่สร้างรายการ [dd/MM/yyyy HH:mm:ss]
22data[].processDateStringวันที่กระจายเงินออก [dd/MM/yyyy HH:mm:ss]
23data[].statusStringสถานะรายการกระจายเงินออก ภาคผนวก ง.

ตัวอย่าง ข้อมูล 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 NameData TypeLengthMandatory / OptionalDescription
1Content-TypeString16Mapplication/json
2CHILLPAY-MerchantCodeString15Mรหัสร้านค้าที่ออกให้โดยชิวเพย์
3CHILLPAY-ApiKeyString100Mรหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ

ตารางที่ 4.2 Request Body Parameters

No.Parameters NameData TypeLengthMandatory / OptionalDescription
1ReceiverTypeString20Mประเภทผู้รับเงิน ภาคผนวก ฉ.
2NameString255MIndividual – ชื่อนามกุล (Name-Surname)
Organization – ชื่อบริษัท (Company Name)
* ที่ตรงกับหน้าสมุดธนาคาร
3BankString20Mธนาคาร ภาคผนวก ค.
4BankAccountString20Mเลขบัญชีธนาคาร
5AmountNumberMจำนวนที่ต้องการกระจายเงินออก เช่น หากส่งข้อมูลมา 355550 ระบบจะอ่านค่าเป็น 3,555.50
* 2 หลักสุดท้ายจะเป็นค่าทศนิยม
6OrderNoString50Oหมายเลขอ้างอิงรายการของทางร้านค้า
7Ref1String100Oค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
8Ref2String100Oค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
9Ref3String100Oค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
10ChecksumString32Mผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส

ตัวอย่าง การเรียก 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 NameData TypeDescription
1statusStringรหัสสถานะการทำรายการ ภาคผนวก ข.
2messageStringคำอธิบายสถานะการทำรายการ
3data.transactionIdStringเลขที่อ้างอิงรายการ
4data.receiverTypeStringประเภทผู้รับเงิน ภาคผนวก ฉ.
5data.nameStringIndividual – ชื่อนามกุล (Name-Surname)
Organization – ชื่อบริษัท (Company Name)
6data.bankStringธนาคาร ภาคผนวก ค.
7data.bankAccountStringเลขบัญชีธนาคาร
8data.orderNoStringหมายเลขอ้างอิงรายการของทางร้านค้า
9data.ref1Stringค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
10data.ref2Stringค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
11data.ref3Stringค่า ref ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการ
12data.amountStringจำนวนเงินที่กระจายเงินออก [#,##0.00]
13data.feeStringค่าธรรมเนียม [#,##0.00]
14data.vatStringภาษีมูลค่าเพิ่ม [#,##0.00]
15data.whtStringภาษีหัก ณ ที่จ่าย [#,##0.00]
16data.totalAmountStringจำนวนเงินที่หักออกจากบัญชีของร้านค้า [#,##0.00]
17data.createdDateStringวันที่สร้างรายการ [dd/MM/yyyy HH:mm:ss]
18data.processDateStringวันที่กระจายเงินออก [dd/MM/yyyy HH:mm:ss]
19data.statusStringสถานะรายการกระจายเงินออก ภาคผนวก ง.

ตัวอย่าง ข้อมูล 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 NameData TypeLengthMandatory / OptionalDescription
1Content-TypeString16Mapplication/json
2CHILLPAY-MerchantCodeString15Mรหัสร้านค้าที่ออกให้โดยชิวเพย์
3CHILLPAY-ApiKeyString100Mรหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ

ตารางที่ 5.2 Request Body Parameters

No.Parameters NameData TypeLengthMandatory / OptionalDescription
1OrderByString20Oเรียงตามคอลัมน์
– TransactionId
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ TransactionId
2OrderDirString4Oทิศทางการเรียง
ASC : เรียงจากน้อยไปมาก
DESC : เรียงจากมากไปน้อย
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ DESC
3PageSizeNumberOจำนวนรายการต่อหน้า (1-100)
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ 10
4PageNumberNumberOเลขหน้า
* หากไม่ได้ส่งมาค่าเริ่มต้นคือ 1
5TransactionDateFromString19Oวันที่ทำรายการ (จาก) [dd/MM/yyyy HH:mm:ss]
6TransactionDateToString19Oวันที่ทำรายการ (ถึง) [dd/MM/yyyy HH:mm:ss]
7ChecksumString32Mผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส

ตัวอย่าง การเรียก 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 NameData TypeDescription
1totalRecordNumberจำนวนรายการทั้งหมด
2pageSizeNumberจำนวนรายการต่อหน้า
3pageNumberNumberเลขที่หน้า
4filteredRecordNumberจำนวนรายการในหน้าปัจจุบัน
5statusStringรหัสสถานะการทำรายการ ภาคผนวก ข.
6messageStringคำอธิบายสถานะการทำรายการ
7data[].transactionIdStringเลขที่อ้างอิงรายการ
8data[].transactionDateStringวันที่ทำรายการ [dd/MM/yyyy HH:mm:ss]
9data[].actionStringกิจกรรม ภาคผนวก จ.
10data[].amountStringจำนวนเงิน [#,##0.00]
11data[].feeStringค่าธรรมเนียม [#,##0.00]
12data[].vatStringภาษีมูลค่าเพิ่ม [#,##0.00]
13data[].whtStringภาษีหัก ณ ที่จ่าย [#,##0.00]
14data[].totalAmountStringจำนวนเงินที่หักออกจากบัญชีของร้านค้า [#,##0.00]
15data[].balanceStringจำนวนเงินคงเหลือ [#,##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 NameData TypeLengthMandatory / OptionalDescription
1Content-TypeString16Mapplication/json
2CHILLPAY-MerchantCodeString15Mรหัสร้านค้าที่ออกให้โดยชิวเพย์
3CHILLPAY-ApiKeyString100Mรหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ

ตารางที่ 6.2 Request Body Parameters

No.Parameters NameData TypeLengthMandatory / OptionalDescription
1MerchantCodeString15Mรหัสร้านค้าที่ออกให้โดยชิวเพย์
2ApiKeyString100Mรหัสอ้างอิงที่ออกให้โดยชิวเพย์ใช้ในการเชื่อมต่อระบบ
3ChecksumString32Mผลลัพธ์ที่ได้จากการนำค่าทั้งหมดไปเข้ารหัส

ตัวอย่าง การเรียก 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 NameData TypeDescription
1statusStringรหัสสถานะการทำรายการ ภาคผนวก ข.
2messageStringคำอธิบายสถานะการทำรายการ
3data.ledgerBalanceStringจำนวนเงินคงเหลือทั้งหมด [#,##0.00]
4data.availableBalanceStringจำนวนเงินคงเหลือที่สามารถใช้งานได้ [#,##0.00]

ตัวอย่าง ข้อมูล JSON Response Message ที่ได้รับจากการเรียก API

{
    "status": 200,
    "message": "Success",
    "data": {
        "ledgerBalance": "48,157.71",
        "availableBalance": "48,157.71"
    }
}

ภาคผนวก

ภาคผนวก ก. สถานะการตรวจสอบผู้รับเงิน  (Receiver Onboard Status)

No.Status MessageDescription
1Pendingรอตรวจสอบจากชิวเพย์
2Activeเพิ่มข้อมูลผู้รับเงินสำเร็จ
3Failedเพิ่มข้อมูลผู้รับเงินไม่สำเร็จ เนื่องจากข้อมูลไม่ถูกต้อง

ภาคผนวก ข. รหัสสถานะการทำรายการ (Response Message)

No.Status MessageDescription
200Successทำรายการสำเร็จ
1001InvalidParameterพารามิเตอร์ไม่ถูกต้อง
1002InvalidMerchantCodeรหัสร้านค้าไม่ถูกต้อง
1003InvalidApiKeyรหัสอ้างอิงร้านค้าไม่ถูกต้อง
1004InvalidReceiverTypeประเภทผู้รับเงินไม่ถูกต้อง
1005InvalidNameชื่อนามกุล/ชื่อบริษัท ไม่ถูกต้อง
1006InvalidTaxIdเลขบัตรประชาชน/หมายเลขทะเบียนนิติบุคคล ไม่ถูกต้อง
1007InvalidTelNumberเบอร์โทรศัพท์ไม่ถูกต้อง
1008InvalidBankธนาคารไม่ถูกต้อง
1009InvalidBankAccountเลขบัญชีธนาคารไม่ถูกต้อง
1010InvalidRelationshipความสัมพันธ์ไม่ถูกต้อง
1011InvalidRandomTokenรหัสแบบสุ่มไม่ถูกต้อง
1012InvalidChecksumรหัส Checksum ไม่ถูกต้อง
2001InvalidMerchantCodeDataข้อมูลรหัสร้านค้าไม่ถูกต้อง
2002InvalidApiKeyDataข้อมูลรหัสอ้างอิงร้านค้าไม่ถูกต้อง
2003InvalidOrderByDataข้อมูลสำหรับเรียงตามคอลัมน์ไม่ถูกต้อง
2004InvalidOrderDirDataข้อมูลสำหรับทิศทางการเรียงไม่ถูกต้อง
2005InvalidPageSizeDataข้อมูลจำนวนรายการต่อหน้าไม่ถูดต้อง
2006InvalidPageNumberDataข้อมูลเลขหน้าไม่ถูกต้อง
2007InvalidSearchTextDataข้อมูลคำหรือข้อความที่ต้องการค้นหาไม่ถูกต้อง
2008InvalidReceiverTypeDataข้อมูลประเภทผู้รับเงินไม่ถูกต้อง
2009InvalidNameDataข้อมูล ชื่อนามกุล/ชื่อบริษัท ไม่ถูกต้อง
2010InvalidTaxIdDataข้อมูล เลขบัตรประชาชน/หมายเลขทะเบียนนิติบุคคล ไม่ถูกต้อง
2011InvalidTelNumberDataข้อมูลเบอร์โทรศัพท์ไม่ถูกต้อง
2012InvalidBankDataข้อมูลธนาคารไม่ถูกต้อง
2013InvalidBankAccountDataข้อมูลเลขบัญชีธนาคารไม่ถูกต้อง
2014InvalidEmailDataข้อมูลอีเมลไม่ถูกต้อง
2015InvalidRelationshipDataข้อมูลความสัมพันธ์ไม่ถูกต้อง
2016InvalidStatusDataข้อมูลสถานะไม่ถูกต้อง
2017InvalidCreatedDateDataข้อมูลวันที่สร้างรายการไม่ถูกต้อง
2018InvalidAmountDataข้อมูลจำนวนเงินไม่ถูกต้อง
2019InvalidOrderNoDataข้อมูลเลขที่อ้างอิงรายการของทางร้านค้าไม่ถูกต้อง
2020InvalidRef1Dataข้อมูลค่า Ref1 ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการไม่ถูกต้อง
2021InvalidRef2Dataข้อมูลค่า Ref2 ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการไม่ถูกต้อง
2022InvalidRef3Dataข้อมูลค่า Ref3 ที่ร้านค้าต้องการเก็บเพื่ออ้างอิงรายการไม่ถูกต้อง
2023InvalidTransactionDateDataข้อมูลวันที่ทำรายการไม่ถูกต้อง
2024InvalidRandomTokenDataข้อมูลรหัสแบบสุ่มไม่ถูกต้อง
2025InvalidChecksumDataข้อมูลรหัส Checksum ไม่ถูกต้อง
3001AddReceiverFailedไม่สามารถเพิ่มข้อมูลผู้รับเงินได้
3002SearchReceiverFailedไม่สามารถค้นหารายการผู้รับเงินได้
3003RequestTransactionFailedไม่สามารถสร้างรายการกระจายเงินออกได้
3004SearchTransactionFailedไม่สามารถค้นหารายการกระจายเงินออกได้
3005SearchBalanceStatementFailedไม่สามารถค้นหารายการเดินบัญชีได้
3006GetMerchantBalanceFailedไม่สามารถเรียกดูจำนวนเงินคงเหลือในบัญชี
3101PayoutServiceNotAvailableร้านค้าไม่สามารถใช้งานระบบกระจายเงินได้
3102ReceiverAlreadyAddedข้อมูลผู้รับเงินเคยเพิ่มแล้ว
3103ReceiverRepeatBankAccountส่งข้อมูลเลขบัญชีธนาคารซ้ำกับของรายการอื่น
3104ReceiverNotAvailableผู้รับเงินไม่พร้อมใช้งาน
3105ReceiverNameIncorrectชื่อผู้รับเงินไม่ตรงกับรายการในระบบ
3106ServiceFeeNotFoundไม่พบข้อมูลค่าบริการ
3107NotEnoughBalanceยอดเงินคงเหลือไม่เพียงพอ
4001AccountUnauthorizedบัญชีร้านค้ายังไม่ได้รับการอนุมัติ
4002SystemErrorระบบเกิดข้อผิดพลาดไม่สามารถทำรายการได้
4003SystemMaintenanceTimeอยู่ในระยะเวลาปรับปรุงระบบ
4004RequestExceededLimitการร้องขอเกินจำนวนที่กำหนด

ภาคผนวก ค. ธนาคาร (Bank)

CodeName ENName TH
BBLBANGKOK BANK PUBLIC COMPANY LTD.ธ. กรุงเทพ จำกัด (มหาชน)
KBANKKASIKORNBANK PUBLIC COMPANY LTD.ธ. กสิกรไทย จำกัด (มหาชน)
KTBKRUNG THAI BANK PUBLIC COMPANY LTD.ธ. กรุงไทย จำกัด (มหาชน)
TMBTMB BANK PUBLIC COMPANY LIMITEDธ. ทหารไทย จำกัด (มหาชน)
SCBSIAM COMMERCIAL BANK PUBLIC COMPANY LTD.ธ. ไทยพาณิชย์ จำกัด (มหาชน)
CITICITIBANK, N.A.ธ. ซิตี้แบงก์
SMBCSUMITOMO MITSUI BANKING CORPORATIONธ. ซูมิโตโม มิตซุย แบงกิ้ง คอร์ปอเรชั่น
SCBTSTANDARD CHARTERED BANK (THAI) PUBLIC COMPANY LIMITEDธ. สแตนดาร์ดชาร์เตอร์ด (ไทย) จำกัด (มหาชน)
CIMBTCIMB THAI BANK PUPBLIC COMPANY LTD.ธ. ซีไอเอ็มบี ไทย จำกัด (มหาชน)
UOBTUNITED OVERSEAS BANK (THAI) PUBLIC COMPANY LIMITEDธ. ยูโอบี จำกัด (มหาชน)
BAYBANK OF AYUDHYA PUBLIC COMPANY LIMITEDธ. กรุงศรีอยุธยา จำกัด (มหาชน)
GSBTHE GOVERNMENT SAVINGS BANKธ. ออมสิน
GHBTHE GOVERNMENT HOUSING BANKธ. อาคารสงเคราะห์
BAACBANK FOR AGRICULTURE AND AGRICULTURAL COOPERATIVESธ. เพื่อการเกษตรและสหกรณ์การเกษตร
MHCBMIZUHO CORPORATE BANK, LTD.ธ. มิซูโฮ คอร์ปอเรต จำกัด
TBANKTHANACHART BANK PUBLIC COMPANY LTD.ธ. ธนชาต จำกัด (มหาชน)
ISBTISLAMIC BANK OF THAILANDธ. อิสลามแห่งประเทศไทย
TISCOTISCO BANK PUBLIC COMPANY LIMITEDธ. ทิสโก้ จำกัด (มหาชน)
KKKIATNAKIN BANK PUBLIC COMPANY LIMITEDธ. เกียรตินาคิน จำกัด (มหาชน)
ICBC ThaiINDUSTRIAL AND COMMERCIAL BANK OF CHINA (THAI) PUBLIC COMPANY LIMITEDธ. ไอซีบีซี (ไทย) จำกัด (มหาชน)
TCRBTHE THAI CREDIT RETAIL BANK PUBLIC COMPANY LIMITEDธ. ไทยเครดิต เพื่อรายย่อย จำกัด (มหาชน)
LH BANKLAND AND HOUSES BANK PUBLIC COMPANY LIMITEDธ. แลนด์ แอนด์ เฮ้าส์ จำกัด (มหาชน)

ภาคผนวก ง. สถานะรายการกระจายเงินออก (PayOut Transaction Status)

No.TextDescription
1Waitingอยู่ระหว่างรอระบบดำเนินการ
2Cancelledการกระจายเงินถูกยกเลิก
3Processingกำลังดำเนินการกระจายเงิน
4ProcessFailedการดำเนินการกระจายเงินไม่สำเร็จ
5ProcessCompletedการดำเนินการกระจายเงินสำเร็จ
6ReceiverConfirmedการดำเนินการกระจายเงินสำเร็จ และเงินเข้าบัญชีผู้รับเงินปลายทางเรียบร้อย
7ReceiverFailedการดำเนินการกระจายเงินสำเร็จ แต่เงินไม่ถึงผู้รับเงินปลายทาง
8ReverseCheckedได้รับการตรวจสอบเงินคืนจากธนาคาร กรณีที่เงินไม่ถึงผู้รับเงินปลายทาง
9ReverseCompletedได้รับการอนุมัติเงินคืนจากธนาคาร กรณีที่เงินไม่ถึงผู้รับเงินปลายทาง

ภาคผนวก จ. กิจกรรม (Balance Statement Action)

No.TextDescription
1PayIn by ChillPayรายการโอนเงินเข้าโดยชิวเพย์
2PayOut Transferรายการกระจายเงินออกโดยร้านค้า
3Adjust statement by Bank Reverseปรับปรุงรายการที่ธนาคารคืนเงิน เนื่องจากกระจายเงินออกถึง
ผู้รับเงินไม่สำเร็จ
4Manual adjust statementปรับปรุงรายการแบบแมนนวล
5Withdrawalรายการถอนเงิน

ภาคผนวก ฉ. ประเภทผู้รับเงิน (ReceiverType)

No.TextDescription
1Individualบุคคลธรรมดา
2Organizationนิติบุคคล
Updated on January 30, 2024

Was this article helpful?

Related Articles

Leave a Comment