ภาพรวม
เครื่องมือนี้แปลงรายการจ่ายเงินจากไฟล์ Excel หรือ CSV (เช่น ไฟล์ Export Payments (account.payment) จาก Odoo) ให้เป็นไฟล์ .txt แบบความยาวคงที่ ตามรูปแบบที่ธนาคารกสิกรไทยกำหนดสำหรับการนำเข้า (Import Payment File) ใน K-Cash Connect Plus
- แยกไฟล์ให้อัตโนมัติ ผู้รับบัญชีกสิกรไทยไปอยู่ไฟล์หนึ่ง ผู้รับธนาคารอื่นไปอยู่อีกไฟล์หนึ่ง เพราะธนาคารใช้รูปแบบไฟล์ต่างกัน
- ตรวจข้อมูลก่อนสร้างไฟล์ แถวที่ข้อมูลไม่ครบจะถูกแจ้งเตือนและไม่ถูกใส่ในไฟล์
- ข้อมูลไม่ออกจากเครื่อง การอ่านไฟล์และแปลงทำในเบราว์เซอร์ทั้งหมด ไม่มีการส่งข้อมูลไปยังเซิร์ฟเวอร์
เริ่มใช้งานใน 5 ขั้นตอน
- Export ไฟล์รายการจ่าย จาก Odoo (หรือเตรียมไฟล์ Excel/CSV ตามหัวข้อ เตรียมไฟล์)
- เปิดเครื่องมือแปลงไฟล์ แล้วลากไฟล์มาวาง หรือคลิกเพื่อเลือกไฟล์ (ตอนเปิดหน้าครั้งแรกจะเห็นข้อมูลตัวอย่างสมมติ ซึ่งจะถูกแทนที่เมื่อเลือกไฟล์จริง)
- กรอกชื่อบริษัทผู้สั่งจ่าย และตรวจ วันที่มีผล — ระบบจะจำค่าที่ตั้งไว้ในเบราว์เซอร์นั้นสำหรับครั้งถัดไป
- ตรวจตารางรายการ ว่าทุกแถวเป็นสถานะ พร้อม ถ้ามี ผิดพลาด ให้แก้ในไฟล์ต้นทางแล้วเลือกไฟล์ใหม่
- กดดาวน์โหลด ไฟล์แต่ละไฟล์ แล้วนำไปอัปโหลดใน K-Cash Connect Plus
เตรียมไฟล์ Excel / CSV
รองรับไฟล์ .xlsx .xls และ .csv โดยอ่านจากชีตแรก และใช้แถวแรกเป็นหัวคอลัมน์ ระบบจะจับคู่คอลัมน์ให้อัตโนมัติจากชื่อหัวคอลัมน์ ถ้าชื่อไม่ตรงสามารถเลือกเองได้ในส่วน จับคู่คอลัมน์
| ข้อมูล | หัวคอลัมน์ Odoo | ชื่ออื่นที่รู้จัก | ใช้ทำอะไรในไฟล์ |
|---|---|---|---|
| เลขบัญชีผู้รับ จำเป็น | Recipient Bank Account/Account Number | Account Number, เลขที่บัญชี | Payee A/C No. — ตัดขีด/ช่องว่างออกให้อัตโนมัติ |
| จำนวนเงิน จำเป็น | Amount | จำนวนเงิน, ยอดเงิน | Amount — รับได้ทั้งตัวเลขและข้อความที่มีจุลภาค |
| ชื่อผู้รับ | Recipient Bank Account/Account Holderหรือ Customer/Vendor | Account Name, Payee Name | Payee Name — ใช้ชื่อบัญชีก่อน ถ้าว่างจึงใช้ชื่อคู่ค้า |
| ธนาคารผู้รับ | Recipient Bank Account/Bank | Bank, ธนาคาร | ใช้แยกไฟล์ และแปลงเป็นรหัสธนาคาร 3 หลัก |
| บัญชีต้นทาง | Journal/Bank Account/Account Number | Debit Account | Debit A/C No. (หรือกรอกทับในหน้าตั้งค่า) |
| เลขที่เอกสาร | Number | Reference, เลขที่ | Bene. Ref # (ถ้าว่างจะใช้ Memo แทน) |
| เลขผู้เสียภาษี | Customer/Vendor/Tax ID | Tax ID | Tax ID — ใส่เฉพาะเมื่อครบ 13 หลัก |
| วันที่ | Date | Payment Date, วันที่ | ใช้เสนอวันที่มีผล |
| รายละเอียด / Memo | Payment Remark, Memo | Remark, Invoice | Details — รวมเป็น “รายละเอียด / Memo” |
| รหัสสาขาผู้รับ | Recipient Bank Account/สาขา | Branch Code | Branch Code (เฉพาะโอนต่างธนาคาร) |
| Email ผู้รับ | — | Email, อีเมล | ถ้ามี จะตั้ง Advice Mode = E เพื่อแจ้งผู้รับทางอีเมล |
สิ่งที่ระบบจัดการให้อัตโนมัติ
- แถวสรุปของ Odoo (เช่น
04 Sep 2026 (9)ที่มีแต่ยอดรวม) จะถูกข้าม - เลขบัญชีที่มีขีด เช่น
017-1-58190-7จะถูกแปลงเป็น0171581907 - ชื่อธนาคาร รับได้ทั้งชื่อไทย (ธนาคารไทยพาณิชย์) ตัวย่อ (SCB, KBANK, BBL, KTB, TTB, BAY, GSB …) รหัส 3 หลัก หรือ BIC/SWIFT
- วันที่ใน CSV รับรูปแบบ
2026-09-04และ04/09/2026รวมถึงปี พ.ศ.04/09/2569 - CSV ภาษาไทย รับทั้ง UTF-8 และ Windows-874 (ไฟล์ที่ Save จาก Excel ภาษาไทยบน Windows)
ข้อควรระวังสำหรับ CSV: ถ้าเปิด CSV ใน Excel แล้ว Save ใหม่ เลขบัญชีที่ขึ้นต้นด้วย 0 อาจหายไป ให้ตั้งคอลัมน์เลขบัญชีเป็นข้อความ (Text) ก่อน หรือใช้ไฟล์ .xlsx แทน
การตั้งค่า
- ชื่อบริษัทผู้สั่งจ่าย
- จำเป็นสำหรับไฟล์ DCT / FTL / PCT (ช่อง “On Behalf Of” ในบรรทัด Header ยาวไม่เกิน 50 ตัวอักษร) ถ้าไม่กรอก ปุ่มดาวน์โหลดไฟล์เหล่านี้จะกดไม่ได้
- บัญชีต้นทาง KBank
- เลือกบัญชีที่ต้องการจ่ายจากรายการบัญชีของบริษัท (XYZ 155-3-38726-0 · Pet All 202-3-60522-0 · Gift Hos. 706-2-47407-0) ระบบจะเติม “ชื่อบริษัทผู้สั่งจ่าย” ให้ตามบัญชีที่เลือก (แก้ไขได้) หรือเลือก ใช้เลขบัญชีจากไฟล์ / กรอกเลขบัญชีเอง ถ้าใช้จากไฟล์และในไฟล์มีหลายบัญชีต้นทาง ระบบจะแยกไฟล์ตามบัญชีและต่อท้ายชื่อไฟล์ด้วยเลขบัญชี ต้องเลือกบัญชีก่อนจึงจะดาวน์โหลดได้
- ผู้รับบัญชีกสิกรไทย / ผู้รับบัญชีธนาคารอื่น
- เลือกประเภทบริการที่บริษัทสมัครไว้กับธนาคาร ค่าเริ่มต้นคือ DCT และ MCL ดูความหมายในหัวข้อ ประเภทบริการ
- วันที่มีผล (Effective Date)
- ระบบเสนอวันที่ล่าสุดในไฟล์ แต่ถ้าวันนั้นผ่านมาแล้วจะใช้วันนี้แทน เพราะธนาคารไม่รับวันที่ย้อนหลัง เปลี่ยนเป็นวันในอนาคตได้ถ้าต้องการตั้งจ่ายล่วงหน้า
- ค่าธรรมเนียม
Nผู้สั่งจ่าย (บริษัท) เป็นผู้จ่าย ·Yหักจากผู้รับเงิน- รหัสสาขาผู้รับ (ถ้าไฟล์ไม่มี)
- ใช้กับการโอนต่างธนาคารเท่านั้น ค่าเริ่มต้นคือ 3 หลักแรกของเลขบัญชี ตามไฟล์ตัวอย่างของธนาคาร หรือเลือก
9999(ไม่ทราบสาขา) ซึ่งคู่มือธนาคารกำหนดไว้สำหรับบริการ IPP ควรสอบถามธนาคารว่าบริการที่ใช้ยอมรับค่าใด - ใส่รายละเอียดการจ่าย (Payment Details)
- สำหรับไฟล์ DCT / FTL / PCT เท่านั้น เปิดเพื่อใช้รูปแบบบรรทัด Detail ยาว 742 ตัวอักษร ซึ่งมีช่องรายละเอียด 255 ตัวอักษรต่อท้าย ปิดไว้ (ค่าเริ่มต้น) จะได้บรรทัดยาว 487 ตามไฟล์ตัวอย่าง ไฟล์โอนต่างธนาคารมีช่องรายละเอียดอยู่แล้วเสมอ
ประเภทบริการ
รหัสบริการจะอยู่ในบรรทัดแรกของไฟล์ และต้องตรงกับบริการที่บริษัทสมัครใช้กับธนาคาร
ผู้รับบัญชีกสิกรไทย
รูปแบบ KBank Account Funds Transfer
- DCT
- Direct Credit — โอนเข้าบัญชีคู่ค้าอัตโนมัติ
- FTL
- Third Party Funds Transfer — โอนไปยังบุคคลที่ 3
- PCT
- KBank Payroll — จ่ายเงินเดือน
ผู้รับธนาคารอื่น
รูปแบบ Other Bank Import Format (EWHT-IPP)
- MCL
- SMART Credit Next Day — เงินเข้าวันทำการถัดไป
- MCS
- SMART Credit Same Day — เงินเข้าภายในวัน
- BNL
- BAHTNET — โอนบาทเนต
- IPP
- Interbank Transfer — มีผลทันที
- PCL
- SMART Payroll — จ่ายเงินเดือนต่างธนาคาร
ตรวจสอบผลลัพธ์
ทุกแถวในไฟล์จะแสดงในตารางพร้อมสถานะ ยอดรวมของการ์ดไฟล์ทุกใบรวมกันควรเท่ากับยอดจ่ายทั้งหมดที่ตั้งใจ ลบยอดของแถวที่ผิดพลาด
| สถานะ | ความหมาย |
|---|---|
| พร้อม | อยู่ในไฟล์ที่ระบุในคอลัมน์ “ไฟล์” |
| ผิดพลาด | ไม่อยู่ในไฟล์ใดเลย ต้องแก้ข้อมูลต้นทางแล้วเลือกไฟล์ใหม่ หรือทำรายการนี้แยกต่างหาก |
| ข้าม | แถวสรุป/แถวว่างที่ไม่มีข้อมูลผู้รับ ไม่ต้องทำอะไร |
ข้อความผิดพลาดและวิธีแก้
| ข้อความ | วิธีแก้ |
|---|---|
| ไม่มีเลขบัญชีผู้รับ | เพิ่มบัญชีธนาคารให้คู่ค้าใน Odoo แล้ว Export ใหม่ หรือจ่ายรายการนี้ด้วยวิธีอื่น |
| ไม่รู้จักธนาคาร "…" | ใช้ชื่อธนาคารเต็ม ตัวย่อ (เช่น SCB) หรือรหัส 3 หลัก (เช่น 014) ในคอลัมน์ธนาคาร |
| เลขบัญชีกสิกรไทยต้องมี 10 หลัก | ตรวจเลขบัญชี หรือเลขศูนย์ด้านหน้าที่หายไปจากการเปิดด้วย Excel |
| บัญชีต้นทางต้องเป็นเลข 10 หลัก | กรอก “บัญชีต้นทาง KBank” ในหน้าตั้งค่า |
| ไม่มีชื่อผู้รับ | ใส่ชื่อบัญชีหรือชื่อคู่ค้า |
| จำนวนเงินไม่ถูกต้อง | จำนวนเงินต้องเป็นตัวเลขมากกว่า 0 |
| เลขบัญชีเกิน 20 หลัก | ตรวจว่าไม่ได้ใส่ข้อมูลอื่นปนในช่องเลขบัญชี |
| WHT: … | ดูหัวข้อ ภาษีหัก ณ ที่จ่าย |
คำเตือน (ยังสร้างไฟล์ได้)
- เลขผู้เสียภาษีไม่ครบ 13 หลัก — ไม่ใส่ในไฟล์ รายการยังโอนได้ แต่ไม่มีเลขผู้เสียภาษีในไฟล์
- ไม่มีเลขอ้างอิงผู้รับ (Bene Ref) บางบริการ (MCL, MCS, IPP, DCT) ธนาคารกำหนดให้ต้องมี ควรใส่เลขที่เอกสาร
- ชื่อผู้รับยาวเกินช่อง จะถูกตัด ช่องชื่อยาว 50 ตัวอักษร (KBank) หรือ 80 ตัวอักษร (ต่างธนาคาร)
กด ดูตัวอย่าง บนการ์ดไฟล์เพื่อดูเนื้อหา .txt ก่อนดาวน์โหลด
อัปโหลดเข้าธนาคาร
- เข้าสู่ระบบ K-Cash Connect Plus แล้วไปที่เมนูนำเข้าไฟล์รายการจ่าย (Import Payment File)
- เลือกประเภทบริการให้ตรงกับรหัสในชื่อไฟล์ เช่น
KBANK-DCT260917.txtใช้กับบริการ DCT - อัปโหลดไฟล์ทีละไฟล์ และตรวจจำนวนรายการ/ยอดรวมที่ระบบธนาคารแสดงให้ตรงกับการ์ดไฟล์ในเครื่องมือนี้
- ส่งอนุมัติตามขั้นตอนของบริษัท
ห้ามเปิดไฟล์ .txt แล้ว Save ด้วยโปรแกรมอื่น เช่น Notepad หรือ Excel เพราะอาจเปลี่ยนการเข้ารหัสภาษาไทยหรือความยาวบรรทัด ทำให้ธนาคารปฏิเสธไฟล์ ถ้าต้องแก้ ให้แก้ไฟล์ Excel ต้นทางแล้วแปลงใหม่
ชื่อไฟล์มีรูปแบบ KBANK-ประเภทบริการปีเดือนวันที่มีผล.txt เช่น KBANK-MCL260917.txt คือไฟล์ MCL มีผลวันที่ 17 ก.ย. 2026
ภาษีหัก ณ ที่จ่าย (ไม่บังคับ)
ถ้าต้องการให้ธนาคารออกหนังสือรับรองการหักภาษี ณ ที่จ่ายอิเล็กทรอนิกส์ (e-WHT) ให้เพิ่มคอลัมน์ต่อไปนี้ในไฟล์ ระบบจะสร้างบรรทัดภาษี (T) ต่อจากรายการนั้น เมื่อ WHT Amount มากกว่า 0
| หัวคอลัมน์ | ตัวอย่าง | คำอธิบาย |
|---|---|---|
WHT Form | 07 | แบบ ภ.ง.ด.: 01 ภ.ง.ด.1ก · 02 ภ.ง.ด.1ก พิเศษ · 03 ภ.ง.ด.2 · 04 ภ.ง.ด.2ก · 05 ภ.ง.ด.3 · 06 ภ.ง.ด.3ก · 07 ภ.ง.ด.53 |
WHT Rate | 3 | อัตราภาษี (%) |
WHT Income Type | 015 | รหัสประเภทเงินได้ตามตารางของธนาคาร (ไม่เกิน 40 ตัวอักษร) |
WHT Base | 10000 | ยอดเงินได้ก่อน VAT ที่ใช้คำนวณภาษี |
WHT Amount | 300 | จำนวนภาษีที่หัก |
WHT Condition | 1 | 1 หัก ณ ที่จ่าย · 2 ออกให้ตลอดไป · 3 ออกให้ครั้งเดียว (ว่าง = 1) |
รายการที่มีภาษีต้องมีเลขผู้เสียภาษี 13 หลัก ใส่ WHT Form เป็น 7 ก็ได้ ระบบจะเติม 0 ด้านหน้าให้ครบ 2 หลัก ยอดโอน (Amount) ใช้ตามที่อยู่ในไฟล์ ระบบไม่หักภาษีออกให้ ควรยืนยันกับธนาคารว่าต้องใส่ยอดก่อนหรือหลังหักภาษี
รูปแบบไฟล์ .txt
ไฟล์เป็นข้อความความยาวคงที่ แต่ละบรรทัดขึ้นต้นด้วยตัวอักษรบอกชนิดบรรทัด เข้ารหัสภาษาไทยแบบ TIS-620 (1 ตัวอักษร = 1 byte) และขึ้นบรรทัดใหม่ด้วย CRLF
| บรรทัด | ความหมาย | ยาว (KBank) | ยาว (ต่างธนาคาร) |
|---|---|---|---|
H | Header — บัญชีต้นทาง วันที่มีผล จำนวนรายการ ยอดรวม (1 บรรทัดต่อไฟล์) | 178 | 82 |
D | Detail — รายการจ่าย 1 บรรทัดต่อผู้รับ 1 ราย | 487 / 742 | 738 |
T | Tax — ภาษีหัก ณ ที่จ่าย ต่อท้ายรายการที่มีภาษี | 99 | 99 |
ตัวอย่าง: บรรทัด Header ของไฟล์ MCL
- 1 ชนิดบรรทัด
- 2–4 ประเภทบริการ
- 5–14 บัญชีต้นทาง
- 15–30, 41–45 เว้นว่าง (Batch Ref, สาขาบริษัท)
- 31–40 วันที่มีผล วว-ดด-ปปปป
- 46–63 จำนวนรายการ
- 64–81 ยอดรวม (บาท)
- 82 ค่าธรรมเนียม
จุด ( · ) แทนช่องว่าง · ไฟล์ KBank (DCT/FTL/PCT) เขียนจำนวนเงินแบบไม่มีจุดทศนิยม เช่น 000000011056500 = 110,565.00 บาท และวันที่แบบ ปปดดวว เช่น 260917
รายละเอียดทุกช่องอ้างอิงคู่มือของธนาคาร: KBank Account Funds Transfer, KCC+ Format – KBank Account (add Payment detail) และ K-Cash Connect Plus Other Bank Import Format (EWHT-IPP) 15-Jul-2024
คำถามที่พบบ่อย
ทำไมได้ 2 ไฟล์?
ธนาคารใช้รูปแบบไฟล์และบริการคนละแบบสำหรับการโอนเข้าบัญชีกสิกรไทยกับบัญชีธนาคารอื่น จึงต้องอัปโหลดแยกกัน ถ้าในไฟล์มีผู้รับเพียงกลุ่มเดียวจะได้ไฟล์เดียว
ยอดรวมในการ์ดไม่เท่ากับยอดใน Excel
ตรวจว่ามีแถวสถานะ ผิดพลาด หรือไม่ แถวเหล่านั้นไม่ถูกรวมในไฟล์ ยอดในการ์ดทุกใบ + ยอดแถวผิดพลาด ควรเท่ากับยอดใน Excel
ธนาคารแจ้งว่าวันที่มีผลไม่ถูกต้อง
วันที่มีผลต้องไม่น้อยกว่าวันที่อัปโหลด ถ้าเตรียมไฟล์ไว้ข้ามวัน ให้แปลงไฟล์ใหม่ในวันที่จะอัปโหลด หรือตั้งวันที่มีผลล่วงหน้า
ชื่อบริษัทต้องกรอกทุกครั้งไหม?
ไม่ต้อง ค่าที่ตั้งไว้จะถูกจำไว้ในเบราว์เซอร์เครื่องนั้น (ถ้าเปิดแบบไม่ระบุตัวตนหรือล้างข้อมูลเบราว์เซอร์จะต้องกรอกใหม่)
ข้อมูลการจ่ายเงินถูกส่งไปที่ไหนบ้าง?
ไม่ถูกส่งไปที่ไหน ไฟล์ถูกอ่านและแปลงในเบราว์เซอร์ของคุณเท่านั้น เว็บไซต์เป็นไฟล์ static ไม่มีเซิร์ฟเวอร์รับข้อมูล
ใช้กับไฟล์ที่ไม่ได้มาจาก Odoo ได้ไหม?
ได้ ขอให้มีหัวคอลัมน์ในแถวแรก อย่างน้อยต้องมีเลขบัญชีผู้รับ ชื่อผู้รับ จำนวนเงิน และธนาคาร แล้วจับคู่คอลัมน์ในส่วน จับคู่คอลัมน์ ถ้าระบบจับให้ไม่ครบ
ธนาคารกรุงเทพ (BBL)
หน้า BBL ใช้ไฟล์ Export เดียวกันจาก Odoo แล้วสร้างไฟล์ .txt สำหรับอัปโหลด Bangkok Bank Corporate iCash ในรูปแบบเดียวกับไฟล์ Excel Key-in ของธนาคาร (SMART_*.xls / DirectCredit_List_*.xls)
- ผู้รับบัญชีกรุงเทพ → ไฟล์ Direct Credit (
DCB02Online หรือDCB01IT Cyclic) เลขบัญชี 10 หลัก รหัสสาขา = 0 + 3 หลักแรกของเลขบัญชี - ผู้รับธนาคารอื่น → ไฟล์ SMART (
SMC06Next Day หรือSMC04Same Day) ระบบแปลงเลขบัญชีเป็น 11 หลักและหารหัสสาขา 4 หลักให้อัตโนมัติตาม “Bank Branch Code Guideline” ของธนาคาร (เช่น กสิกร 123-1-67351-9 → 01231673519 สาขา 0123) โอนได้ไม่เกิน 2,000,000 บาทต่อรายการ - บัญชีต้นทาง เลือกจาก XYZ 121-0-54881-2 · Gift Hos. 154-0-63600-6 · Pet All 154-0-63601-4 แต่ละบัญชีต้องมี Company Code และ Company Tax ID ตามที่ลงทะเบียนกับธนาคาร (ดูได้จากชีต CompanyProfile ในไฟล์ Excel ของธนาคาร) — ตั้งค่าไว้แล้วสำหรับ Pet All (NGIFT / 0105560218081) บัญชีอื่นกรอกครั้งแรกแล้วระบบจำไว้ในเบราว์เซอร์
- Reference ใช้คอลัมน์ Number ของ Odoo (จำเป็น) · Customer Batch Reference อัตโนมัติ:
DC+วันที่ สำหรับ Direct Credit และ Company Code+วันที่ สำหรับ SMART - Cut-off Direct Credit Online 20:00 ของวันโอน · SMART Same Day 11:00 ของวันโอน · SMART Next Day 11:30 ของวันก่อนวันโอน
รูปแบบไฟล์: ฟิลด์คั่นด้วย ~ เข้ารหัส UTF-8 (มี BOM) ขึ้นบรรทัดด้วย CRLF — บรรทัด 001 Header, 003 รายการละบรรทัด (จำนวนเงินเป็นสตางค์ ไม่มีจุด), 100 Trailer (จำนวนรายการ~ยอดรวมสตางค์) ชื่อไฟล์ COMPANYCODE_SERVICE_DDMMYYYY_HHMM.txt
ไฟล์ Excel ของธนาคารจะเข้ารหัสไฟล์ .txt เป็น .enc ต่อ ถ้ามีโปรแกรมเข้ารหัสของธนาคาร (โฟลเดอร์ ext) ติดตั้งอยู่ ถ้าระบบ iCash ของบริษัทรับเฉพาะไฟล์ .enc ให้นำไฟล์ .txt จากหน้านี้ไปเข้ารหัสด้วยโปรแกรมของธนาคารก่อนอัปโหลด