ข้ามไปยังเนื้อหาหลัก
เวอร์ชัน: ล่าสุด

สร้างกำหนดการเรียกเก็บเงินแบบกลุ่ม

อัปโหลดไฟล์ CSV เพื่อสร้างกำหนดการเรียกเก็บเงินหลายรายการในการดำเนินการครั้งเดียว Endpoint นี้เริ่มต้นงานสร้างแบบกลุ่มแบบอะซิงโครนัสและส่งคืน recurring_id ที่คุณสามารถใช้ตรวจสอบความคืบหน้าและดาวน์โหลดรายงานสถานะ


🔑ข้อมูลยืนยันตัวตน API

พารามิเตอร์คำขอ

จำเป็น - 1 ฟิลด์พารามิเตอร์ที่จำเป็น
`file`FILE(required)
ไฟล์ CSV ที่มีข้อมูลกำหนดการเรียกเก็บเงิน แต่ละแถวแทนหนึ่งกำหนดการที่จะสร้าง
Example:"schedules.csv"
Constraints:ขนาดไฟล์สูงสุด: 10MB, รูปแบบ: CSV, แถวสูงสุด: 10,000
โครงสร้าง CSVคอลัมน์ CSV
`customer_key`STRING(required)
ตัวระบุเฉพาะสำหรับติดตามแถวนี้ในรายงานสถานะ สามารถเป็นสตริงใดก็ได้ที่มีความหมายต่อระบบของคุณ
Example:"sub_001"
`customer`STRING(required)
Customer ID (cust_*) ที่จะถูกเรียกเก็บเงิน ลูกค้าต้องมีบัตรแนบอยู่อย่างน้อยหนึ่งใบ
Example:"cust_test_5xuy4w91xqz7d1w9u0t"
`card`STRING(optional)
Card ID เฉพาะที่จะเรียกเก็บเงิน หากไม่ระบุ จะใช้บัตรเริ่มต้นของลูกค้า
Example:"card_test_5xuy4w91xqz7d1w9u0t"
`amount`INTEGER(required)
จำนวนเงินที่เรียกเก็บในหน่วยสกุลเงินที่เล็กที่สุด (เช่น สตางค์สำหรับ THB, cents สำหรับ USD)
Example:100000
`description`STRING(optional)
คำอธิบายที่จะปรากฏในแต่ละการเรียกเก็บเงินที่สร้างโดยกำหนดการนี้
Example:"Monthly subscription fee"
`every`INTEGER(required)
ตัวคูณความถี่ ตัวอย่างเช่น every=2 กับ period=month หมายถึงทุก 2 เดือน
Example:1
`period`STRING(required)
หน่วยเวลาสำหรับความถี่ของกำหนดการ
Example:"month"
Values:day, week, month
`days_of_month`STRING(optional)
สำหรับกำหนดการรายเดือน: วันที่เฉพาะที่จะเรียกเก็บเงิน (1-28) ใช้เซมิโคลอนเพื่อระบุหลายวัน
Example:"1;15"
`start_date`STRING(optional)
วันที่เริ่มต้นกำหนดการในรูปแบบ YYYY-MM-DD ค่าเริ่มต้นเป็นวันนี้หากไม่ระบุ
Example:"2025-02-01"
`end_date`STRING(optional)
วันที่สิ้นสุดกำหนดการในรูปแบบ YYYY-MM-DD กำหนดการจะหมดอายุหลังจากวันที่นี้
Example:"2025-12-31"

การตอบกลับ

200

ยอมรับการอัปโหลด

ไฟล์ CSV ได้รับการยอมรับและงานสร้างแบบกลุ่มได้เข้าคิวแล้ว ใช้ recurring_id ที่ส่งคืนเพื่อตรวจสอบความคืบหน้า

การตอบกลับประกอบด้วย:
  • object - เป็น "recurring_export" เสมอ
  • id - Recurring export ID (recr_*) สำหรับติดตามงาน
  • livemode - ว่าเป็นการดำเนินการในโหมด live หรือไม่
  • location - พาธ API เพื่อตรวจสอบงาน
  • state - สถานะเริ่มต้น (โดยทั่วไปเป็น "pending")
  • total_rows - จำนวนแถวที่ตรวจพบใน CSV
  • processed_rows - จำนวนแถวที่ประมวลผลแล้ว (0 ในตอนแรก)
  • successful_rows - จำนวนการสร้างที่สำเร็จ (0 ในตอนแรก)
  • failed_rows - จำนวนการสร้างที่ล้มเหลว (0 ในตอนแรก)
  • created_at - เวลาที่สร้างงาน

400

คำขอไม่ถูกต้อง

การตรวจสอบคำขอล้มเหลว ตรวจสอบข้อความข้อผิดพลาดสำหรับรายละเอียด

สาเหตุทั่วไป:
  • ไฟล์หายไปหรือว่างเปล่า
  • รูปแบบหรือโครงสร้าง CSV ไม่ถูกต้อง
  • คอลัมน์ที่จำเป็นหายไปในหัว CSV
  • ไฟล์เกินขีดจำกัดขนาด 10MB
  • CSV มีมากกว่า 10,000 แถว

401

ไม่ได้รับอนุญาต

การยืนยันตัวตนล้มเหลว API key ไม่ถูกต้องหรือหายไป

สาเหตุทั่วไป:
  • ไม่มี Authorization header
  • Secret key ไม่ถูกต้อง
  • ใช้ public key แทน secret key
  • รูปแบบ HTTP Basic Auth ไม่ถูกต้อง

404

ไม่พบ

ไม่พบ endpoint หรือฟีเจอร์ไม่ได้เปิดใช้งาน

สาเหตุทั่วไป:
  • ฟีเจอร์การดำเนินการแบบกลุ่มไม่ได้เปิดใช้งานสำหรับบัญชี
  • URL ของ API endpoint ไม่ถูกต้อง

5xx

ข้อผิดพลาดเซิร์ฟเวอร์

เกิดข้อผิดพลาดฝั่งเซิร์ฟเวอร์ เหตุการณ์เหล่านี้หายากแต่ควรจัดการอย่างเหมาะสม

วิธีจัดการ:

ตัวอย่างโค้ด

# อัปโหลดไฟล์ CSV เพื่อสร้างกำหนดการเรียกเก็บเงินหลายรายการ
curl https://api.omise.co/schedules/upload \
-X POST \
-u skey_test_5xuy4w91xqz7d1w9u0t: \
-F "file=@/path/to/schedules.csv"

ตัวอย่างไฟล์ CSV

customer_key,customer,card,amount,description,every,period,days_of_month,start_date,end_date
sub_001,cust_test_5xuy4w91xqz7d1w9u0t,,100000,Monthly premium plan,1,month,1,2025-02-01,2026-01-31
sub_002,cust_test_5xuy4w91xqz7d1w9u0t,card_test_5xuy4w91xqz7d1w9u0t,50000,Basic subscription,1,month,15,2025-02-01,
sub_003,cust_test_5xuy4w91xqz7d1w9u0t,,200000,Enterprise plan,1,month,1;15,2025-02-01,2025-12-31

รหัสข้อผิดพลาดและผลลัพธ์

รหัสข้อผิดพลาดทั่วไป

รหัสคำอธิบายการแก้ไข
authentication_failureAPI key ไม่ถูกต้องตรวจสอบว่า secret key ของคุณถูกต้อง
invalid_fileไฟล์หายไปหรือไม่ถูกต้องตรวจสอบว่าไฟล์เป็น CSV ที่ถูกต้อง
file_too_largeไฟล์เกินขีดจำกัด 10MBแบ่งเป็นไฟล์ขนาดเล็กลง
invalid_csv_structureคอลัมน์ที่จำเป็นหายไปตรวจสอบแถวหัว CSV
too_many_rowsCSV เกิน 10,000 แถวแบ่งเป็นหลายไฟล์

รหัสข้อผิดพลาดแถว CSV

รหัสคำอธิบายการแก้ไข
invalid_customerไม่พบ Customer IDตรวจสอบว่าลูกค้ามีอยู่
no_card_attachedลูกค้าไม่มีบัตรแนบบัตรให้ลูกค้าก่อน
invalid_cardไม่พบ Card ID หรือหมดอายุใช้ Card ID ที่ถูกต้อง
invalid_amountจำนวนเงินไม่ถูกต้องใช้จำนวนเต็มบวก
invalid_periodค่า period ไม่ถูกต้องใช้ day, week, หรือ month
invalid_date_formatรูปแบบวันที่ไม่ถูกต้องใช้รูปแบบ YYYY-MM-DD

ลองใช้งาน

จำเป็น - 1 ฟิลด์
IP ของคุณ: ...กำลังโหลด...