pain.001 คือข้อความ ISO 20022 ที่บริษัทส่งถึงธนาคารของตนเพื่อสั่งโอนเงินหนึ่งรายการหรือมากกว่า ชื่อเต็มคือ Customer Credit Transfer Initiation (การเริ่มต้นการโอนเงินของลูกค้า): "pain" คือกลุ่มข้อความเริ่มต้นการชำระเงิน .001 คือหมายเลขข้อความ และส่วนต่อท้าย เช่น pain.001.001.09 คือเวอร์ชัน เป็นรูปแบบ XML ที่ตรวจสอบกับสคีมาทางการ (XSD) และใช้แทนรูปแบบ CSV เฉพาะของแต่ละธนาคารและข้อความตัวอักษร SWIFT MT101
pain.001 ในหนึ่งนาที#
- ใครเป็นผู้ส่ง: บริษัท (ผู้จ่ายเงิน หรือตัวแทนที่ดำเนินการแทน) ส่งข้อความนี้ถึงธนาคารของตนเอง (ธนาคารของผู้จ่ายเงิน)
- บรรจุอะไร: ชุดการโอนเงินหนึ่งชุดหรือมากกว่า แต่ละชุดมีบัญชีผู้จ่ายเงิน วันที่ขอให้ดำเนินการ และรายการจ่ายเงินให้ผู้รับได้ไม่จำกัดจำนวน
- ได้อะไรกลับมา: ธนาคารตอบกลับด้วย pain.002 ซึ่งเป็นรายงานสถานะการชำระเงินของลูกค้า เพื่อยอมรับหรือปฏิเสธทั้งไฟล์หรือรายการแต่ละรายการพร้อมรหัสเหตุผลตาม ISO
- ขั้นตอนต่อไป: เมื่อยอมรับแล้ว ธนาคารจะแปลงคำสั่งแต่ละรายการเป็นข้อความระหว่างธนาคาร เช่น pacs.008 ซึ่งบริษัทจะไม่เห็น
- ใช้ที่ไหน: การโอนเงิน SEPA ตามคู่มือกฎของ EPC การชำระเงินข้ามพรมแดนบน Swift ภายใต้ CBPR+ (
pain.001.001.09) และระบบการชำระเงินในประเทศอีกจำนวนมาก คลังตัวอย่างของ Pain001 ครอบคลุม 42 สถานการณ์ใน 17 ตลาด
โครงสร้างของข้อความ pain.001#
ทุกเวอร์ชันใช้โครงสามระดับเดียวกันภายในองค์ประกอบ <CstmrCdtTrfInitn>
| ระดับ | องค์ประกอบ | ข้อมูลที่บรรจุ |
|---|---|---|
| 1 | <GrpHdr> ส่วนหัวกลุ่ม | รหัสข้อความ เวลาที่สร้าง จำนวนรายการ (NbOfTxs) ยอดรวมควบคุม (CtrlSum) ฝ่ายผู้เริ่มต้น |
| 2 | <PmtInf> ข้อมูลการชำระเงิน | หนึ่งชุด: วิธีการชำระเงิน วันที่ขอให้ดำเนินการ ผู้จ่ายเงิน บัญชีและธนาคารของผู้จ่ายเงิน ผู้รับภาระค่าธรรมเนียม |
| 3 | <CdtTrfTxInf> รายการโอนเงิน | หนึ่งรายการ: เลขอ้างอิงแบบต้นทางถึงปลายทาง จำนวนเงินและสกุลเงิน ผู้รับเงิน บัญชีและธนาคารของผู้รับเงิน ข้อมูลการโอน |
ไฟล์หนึ่งไฟล์บรรจุชุด <PmtInf> ได้หลายชุด และแต่ละชุดบรรจุรายการ <CdtTrfTxInf> ได้หลายรายการ NbOfTxs และ CtrlSum ปรากฏทั้งในระดับไฟล์และระดับชุด และต้องตรงกับรายการที่นับ ซึ่งเป็นหนึ่งในเหตุผลที่พบบ่อยที่สุดที่ธนาคารปฏิเสธไฟล์
ตัวอย่าง pain.001 ฉบับสมบูรณ์#
นี่คือการโอนเงิน SEPA หนึ่งรายการในรูปแบบ pain.001.001.09 ที่นำมาจากคลังตัวอย่างของ Pain001 โดยไม่มีการแก้ไข ผ่านการตรวจสอบกับ XSD ทางการของ ISO 20022 คู่สัญญา IBAN และ BIC ทั้งหมดเป็นข้อมูลสมมติ
OML-SCT-20260921
2026-09-21T12:00:00
1
2200.00
Officine Meccaniche Lombarde SpA
20123
Milano
IT
Via Torino 15
SCT-20260921-IT-01
TRF
false
1
2200.00
SEPA
2026-09-22
Officine Meccaniche Lombarde SpA
20123
Milano
IT
Via Torino 15
IT48T78971134594OGDKY5VXE41
TLAOIT60
SLEV
OML-2026-0921-01
2200.00
MHXHITI0
Fonderia Bresciana Srl
25121
Brescia
IT
IT23J14887404856NF3794IGWXN
Fattura 117/2026
ลองใช้ข้อมูลของคุณเองในเดโมบนเบราว์เซอร์: เครื่องมือจะสร้างไฟล์ pain.001 จาก CSV และตรวจสอบกับสคีมาทางการโดยข้อมูลไม่ออกจากเครื่องของคุณ
เวอร์ชันของ pain.001#
ISO เผยแพร่เวอร์ชันใหม่เมื่อแบบจำลองข้อความเปลี่ยนแปลง ธนาคารและระบบการชำระเงินแต่ละแห่งยอมรับเฉพาะบางเวอร์ชัน ดังนั้นเวอร์ชันที่คุณส่งควรเป็นเวอร์ชันที่ระบุในเอกสารช่องทางของธนาคาร
| เวอร์ชัน | หมายเหตุ |
|---|---|
| pain.001.001.03 | เวอร์ชันหลักที่ใช้มายาวนานสำหรับ SEPA และ CGI ระบุธนาคารด้วย <BIC> |
| .04, .05, .06, .07, .08 | เวอร์ชันบำรุงรักษาที่ใช้ในบางช่องทาง |
| pain.001.001.09 | เวอร์ชันปี 2019 ที่ CBPR+ เลือกใช้สำหรับ Swift ระบุธนาคารด้วย <BICFI> และเพิ่มการส่ง LEI และ UETR |
| .10, .11, .12 | การปรับปรุงหลังปี 2019 |
| pain.001.001.13 | ISO เผยแพร่เมื่อ 19 มีนาคม 2026 เพิ่มตัวระบุรายการที่ไม่ซ้ำกันแบบเลือกได้ (UnqTxIdr) |
ตารางความเข้ากันได้แสดงว่า Pain001 สร้าง ตรวจสอบ และย้ายข้อมูลระหว่างเวอร์ชันใดได้บ้าง
เปรียบเทียบ pain.001 กับข้อความที่เกี่ยวข้อง#
| ข้อความ | ทิศทาง | วัตถุประสงค์ |
|---|---|---|
| pain.001 | บริษัทถึงธนาคารของตน | สั่งโอนเงิน (ส่งเงินออก) |
| pain.002 | ธนาคารถึงบริษัท | รายงานสถานะของ pain.001 หรือ pain.008: ยอมรับ ยอมรับบางส่วน หรือปฏิเสธ พร้อมรหัสเหตุผล |
| pain.008 | บริษัทถึงธนาคารของตน | สั่งหักบัญชีอัตโนมัติ (เรียกเก็บเงินตามหนังสือยินยอม) |
| pacs.008 | ธนาคารถึงธนาคาร | การโอนเงินระหว่างธนาคารที่คำสั่ง pain.001 ถูกแปลงเป็น |
| MT101 | บริษัทหรือธนาคาร ผ่าน Swift | ข้อความตัวอักษรแบบเดิม "Request for Transfer" ที่ pain.001 นำมาใช้แทน Swift เลื่อนการยกเลิกการส่งต่อ MT101 ระหว่างธนาคารออกไปเมื่อเดือนสิงหาคม 2026 (Swift) ดูจาก MT101 เป็น pain.001 |
อภิธานศัพท์อธิบายคำศัพท์ ISO 20022 ส่วนที่เหลือด้วยภาษาที่เข้าใจง่าย
เหตุใดธนาคารจึงปฏิเสธไฟล์ pain.001#
ไฟล์อาจเป็น XML ที่ถูกต้องตามรูปแบบแต่ยังถูกปฏิเสธได้ การตรวจสอบซ้อนกันเป็นชั้น ๆ:
- สคีมา: ไฟล์ต้องผ่านการตรวจสอบกับ XSD ทางการของเวอร์ชันนั้น
- คุณภาพข้อมูล: IBAN ผ่านการตรวจสอบเลขตรวจสอบ BIC มีรูปแบบถูกต้อง วันที่และจำนวนเงินถูกต้อง และ
NbOfTxsกับCtrlSumตรงกับรายการชำระเงิน - กฎของระบบการชำระเงิน: SEPA, CBPR+ และระบบในประเทศเพิ่มข้อจำกัดของตนเอง เช่น ชุดอักขระที่อนุญาตหรือที่อยู่ไปรษณีย์แบบมีโครงสร้าง
- โปรไฟล์และช่องทางของธนาคารคุณ: ธนาคารแต่ละแห่งเผยแพร่แนวทางการใช้งานของตนเพิ่มเติมจากกฎของระบบ
Pain001 ตรวจสอบสามชั้นแรกก่อนที่ไฟล์จะถึงธนาคาร และระบุชัดเจนว่าชั้นที่สี่ต้องให้ธนาคารยืนยัน
วิธีสร้างไฟล์ pain.001#
- จากสเปรดชีต: จาก Excel เป็น pain.001 แปลงรายการชำระเงินใน Excel หรือ CSV เป็นไฟล์ที่ผ่านการตรวจสอบ
- บนเบราว์เซอร์: เดโมสร้างและตรวจสอบไฟล์บนเครื่อง โดยไม่ต้องอัปโหลด
- จากโค้ดหรือบรรทัดคำสั่ง: ติดตั้งไลบรารี pain001 แบบโอเพนซอร์ส แล้วเรียกใช้:
เอกสารอ้างอิงทางเทคนิคครอบคลุมทุกตัวเลือก และคำถามที่พบบ่อยตอบคำถามที่ทีมบริหารเงิน ปฏิบัติการ และวิศวกรรมถามบ่อยที่สุด
แหล่งที่มา#
- นิยามและคลังข้อความ ISO 20022: iso20022.org
- คู่มือกฎการโอนเงิน SEPA: European Payments Council
- CBPR+ และการส่งต่อ MT101: Swift