การรับชำระเงิน (Pay-In · อียิปต์)
API Pay-in ภูมิภาค อียิปต์ (EGP) ดู วิธีชำระเงิน
คำขอ
POST/v2.0/transaction/pay-in
URL คำขอ:
sandbox: https://sandbox-gateway.smilepayz.com/v2.0/transaction/pay-in
production: https://gateway.smilepayz.com/v2.0/transaction/pay-in
| ฟิลด์ | จำเป็น | ประเภท | คำอธิบาย |
|---|
Content-Type | M | String | Body JSON application/json |
X-TIMESTAMP | M | String | รูปแบบ: yyyy-MM-ddTHH:mm:ss±HH:mm (เช่น EET อียิปต์ +02:00) |
X-SIGNATURE | M | String | ลายเซ็นของ body JSON (ดูเอกสาร การสร้างลายเซ็น) |
X-PARTNER-ID | M | String | merchantID ของคุณ (ตัวอักษรและตัวเลข) |
พารามิเตอร์ body
| ฟิลด์ | จำเป็น | ประเภท | คำอธิบาย |
|---|
orderNo | M | String(32) | หมายเลข order ที่ไม่ซ้ำของ merchant, 6–32 ตัวอักษรและตัวเลข |
purpose | M | String(64) | ข้อความสรุปของธุรกรรม, 1–64 อักขระ UTF-8 |
merchant | M | Object | มี merchantId และ field sub-merchant ที่ไม่บังคับ |
merchantId | M | String | merchantId ของ Smilepayz สำหรับคำขอนี้ |
merchantName | O | String | ชื่อแสดงผลของ merchant แบบ UTF-8 (ไม่บังคับ) |
subMerchantId | O | String | ID ของ sub-merchant (ไม่บังคับ) |
subMerchantName | O | String | ชื่อ UTF-8 ของ subMerchantId (ไม่บังคับ) |
money | M | Object | ออบเจ็กต์ยอดเงินที่มี currency และ amount ของธุรกรรม |
currency | M | String | รหัสสกุลเงินสำหรับคำขอนี้ |
amount | M | Number | ยอดธุรกรรมสกุล EGP ต้องมากกว่า 0 |
payer | O | Object | ข้อมูลผู้ชำระเงิน หากไม่ส่ง Smilepayz จะเติมข้อมูลที่ channel ต้องใช้ |
name | O | String | ชื่อผู้ชำระเงิน (UTF-8) |
idType | O | String | ประเภทเอกสารของผู้ชำระเงิน |
idNumber | O | String | เลขเอกสารของผู้ชำระเงินตาม idType |
phone | O | String | เบอร์โทรผู้ชำระเงิน |
email | O | String | อีเมลผู้ชำระเงิน |
paymentMethod | M | String | รหัสวิธีชำระเงิน (ดูเอกสาร วิธีชำระเงิน) |
expiryPeriod | O | Number | อายุ session หน่วยวินาที ค่าเริ่มต้น 3600 และสูงสุด 86400 หากไม่ได้ระบุเป็นอย่างอื่น |
redirectUrl | O | String(256) | URL HTTPS สำหรับกลับหลังชำระเงิน สูงสุด 256 อักขระ |
callbackUrl | O | String(256) | URL HTTPS สำหรับแจ้งสถานะแบบ async สูงสุด 256 อักขระ |
ตัวอย่าง body – คำขอรับชำระเงิน:
Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+02:00
X-SIGNATURE: 7MHd9v5/m9JeqmDZVwWBZUZ5J5...7120QnFEny7Qm7uQR1G0TWCh10fsU6nVxiRoeoQ==
X-PARTNER-ID: 20001
{
"orderNo": "20011egyptegpcash563d9094aa7d4d",
"purpose": "ชำระค่าสินค้าปลีก - Cairo",
"merchant": {
"merchantId": "20011"
},
"money": {
"currency": "EGP",
"amount": 20000
},
"payer": {
"name": "Ahmed Hassan El-Masry",
"idType": "NID",
"idNumber": "29001012003652",
"phone": "201234567890",
"email": "[email protected]"
},
"paymentMethod": "FAWRY",
"redirectUrl": "https://www.example.com/success"
}
การตอบกลับ
| ฟิลด์ | จำเป็น | ประเภท | คำอธิบาย |
|---|
Content-Type | M | String | Body JSON application/json |
X-TIMESTAMP | M | String | รูปแบบ: yyyy-MM-ddTHH:mm:ss±HH:mm |
พารามิเตอร์ body
| ฟิลด์ | จำเป็น | ประเภท | คำอธิบาย |
|---|
code | M | String | 00 หมายถึงสำเร็จ ค่าอื่นหมายถึงล้มเหลว |
message | M | String | ข้อความผลลัพธ์แบบ UTF-8 ที่อ่านได้ |
orderNo | M | String | หมายเลข order ที่ไม่ซ้ำของ merchant, 6–32 ตัวอักษรและตัวเลข |
tradeNo | O | String | tradeNo ของ Smilepayz สำหรับ order นี้ |
merchant | M | Object | มี merchantId และ field sub-merchant ที่ไม่บังคับ |
merchantId | M | String | merchantId ของ Smilepayz สำหรับคำขอนี้ |
merchantName | O | String | ชื่อแสดงผลของ merchant แบบ UTF-8 (ไม่บังคับ) |
subMerchantId | O | String | ID ของ sub-merchant (ไม่บังคับ) |
subMerchantName | O | String | ชื่อ UTF-8 ของ subMerchantId (ไม่บังคับ) |
accountNo | O | String | accountNo สำหรับ settlement เมื่อ gateway ส่งกลับมา |
money | M | Object | ออบเจ็กต์ยอดเงินที่มี currency และ amount ของธุรกรรม |
currency | M | String | รหัสสกุลเงินสำหรับคำขอนี้ |
amount | M | Number | ยอดธุรกรรมสกุล EGP ต้องมากกว่า 0 |
transactionTime | M | String | yyyy-MM-ddTHH:mm:ss±HH:mm (เช่น EET +02:00) |
channel | M | Object | ข้อมูล channel เช่น paymentUrl, qrString และอื่น ๆ |
paymentMethod | M | String | รหัสวิธีชำระเงิน (ดูเอกสาร วิธีชำระเงิน) |
vaNumber | O | String | รหัสอ้างอิง Fawry เมื่อ channel ส่งกลับมา |
paymentUrl | O | String | URL cashier ของ Smilepayz หรือ checkout URL ของ channel |
status | O | String | ค่า enum ของสถานะ order หรือการชำระเงิน |
Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+02:00
{
"code": "00",
"message": "Successful",
"orderNo": "20011egyptegpcash563d9094aa7d4d",
"tradeNo": "1512001125042115424463245",
"merchant": {
"merchantId": "20011",
"merchantName": "Smilepayz Demo Store",
"accountNo": "11520011202402290943"
},
"money": {
"currency": "EGP",
"amount": 20000
},
"transactionTime": "2025-04-21T03:42:47+02:00",
"channel": {
"paymentMethod": "FAWRY",
"vaNumber": "912345678901",
"paymentUrl": "https://gateway.smilepayz.com/cashier/#/loading?tradeNo=1512001125042115424463245"
},
"status": "PROCESSING"
}
การแจ้งเตือน/Callback
| ฟิลด์ | จำเป็น | ประเภท | คำอธิบาย |
|---|
Content-Type | M | String | Body JSON application/json |
X-TIMESTAMP | M | String | รูปแบบ: yyyy-MM-ddTHH:mm:ss±HH:mm |
X-SIGNATURE | M | String | ลายเซ็นของ body callback (ดู คู่มือตรวจสอบลายเซ็น callback) |
พารามิเตอร์ body
| ฟิลด์ | จำเป็น | ประเภท | คำอธิบาย |
|---|
orderNo | M | String | หมายเลข order ที่ไม่ซ้ำของ merchant, 6–32 ตัวอักษรและตัวเลข |
tradeNo | M | String | tradeNo ของ Smilepayz สำหรับ order นี้ |
merchantId | M | String | merchantId ของ Smilepayz สำหรับคำขอนี้ |
merchantName | M | String | ชื่อแสดงผลของ merchant แบบ UTF-8 (ไม่บังคับ) |
subMerchantId | O | String | ID ของ sub-merchant (ไม่บังคับ) |
subMerchantName | O | String | ชื่อ UTF-8 ของ subMerchantId (ไม่บังคับ) |
paymentMethod | M | String | รหัสวิธีชำระเงิน (ดูเอกสาร วิธีชำระเงิน) |
transactionTime | M | String | เวลาที่เสร็จสิ้น |
status | M | String | ค่า enum ของสถานะ order หรือการชำระเงิน |
money | M | Object | ออบเจ็กต์ยอดเงินที่มี currency และ amount ของธุรกรรม |
currency | M | String | รหัสสกุลเงินสำหรับคำขอนี้ |
amount | M | Number | ยอดธุรกรรมสกุล EGP ต้องมากกว่า 0 |
payer | O | Object | ออบเจ็กต์ผู้ชำระเงินตามกฎของภูมิภาค (ดูโมเดล Payer) |
ค่าที่ต้องตอบกลับ
สำคัญ
ตอบกลับเฉพาะ string SUCCESS เท่านั้น
{
"orderNo": "20011egyptegpcash563d9094aa7d4d",
"tradeNo": "1512001125042115424463245",
"merchantId": "20011",
"merchantName": "Smilepayz Demo Store",
"subMerchantId": "",
"subMerchantName": "",
"paymentMethod": "FAWRY",
"transactionTime": "2025-04-21T03:42:47+02:00",
"status": "SUCCESS",
"money": {
"currency": "EGP",
"amount": 20000
},
"payer": {
"name": "Ahmed Hassan El-Masry",
"phone": "201234567890",
"email": "[email protected]"
}
}