SiamCafe · Blog
swift code ธนาคารกรุงไทย
บทความ

swift code ธนาคารกรุงไทย

เผยแพร่ 28 พฤษภาคม 2569

Swift Code ธนาคารกรุงไทย คืออะไร

swift code ธนาคารกรุงไทย

Swift Code (หรือ BIC Code) ของธนาคารกรุงไทย คือ KRTHTHBK ใช้สำหรับการโอนเงินระหว่างประเทศผ่านระบบ SWIFT (Society for Worldwide Interbank Financial Telecommunication) ซึ่งเป็นเครือข่ายการสื่อสารทางการเงินระหว่างธนาคารทั่วโลก ทุกครั้งที่โอนเงินจากต่างประเทศเข้าบัญชีกรุงไทย หรือโอนจากกรุงไทยไปต่างประเทศ จะต้องใช้ Swift Code นี้ บทความนี้อธิบายรายละเอียด Swift Code กรุงไทย วิธีใช้ ค่าธรรมเนียม และ Python tools สำหรับตรวจสอบ

Swift Code กรุงไทย — รายละเอียด

# ktb_swift.py — Krungthai Bank Swift Code details
import json

class KrungthaiSwiftCode:
    SWIFT_CODE = {
        "code": "KRTHTHBK",
        "breakdown": {
            "KRTH": "Bank Code — Krungthai Bank (กรุงไทย)",
            "TH": "Country Code — Thailand (ไทย)",
            "BK": "Location Code — Bangkok (กรุงเทพ)",
        },
        "full_name": "Krungthai Bank Public Company Limited",
        "thai_name": "ธนาคารกรุงไทย จำกัด (มหาชน)",
        "head_office": "35 ถนนสุขุมวิท แขวงคลองเตยเหนือ เขตวัฒนา กรุงเทพ 10110",
        "website": "www.krungthai.com",
    }

    BRANCH_CODES = {
        "head_office": {"code": "KRTHTHBK", "branch": "สำนักงานใหญ่"},
        "branch_xxx": {"code": "KRTHTHBKXXX", "branch": "สำนักงานใหญ่ (full format)"},
        "note": "ธนาคารกรุงไทยใช้ Swift Code เดียว (KRTHTHBK) สำหรับทุกสาขา — ไม่มี branch-specific code",
    }

    SWIFT_FORMAT = {
        "structure": "AAAA BB CC DDD",
        "parts": {
            "AAAA": "Bank Code (4 ตัวอักษร) — ระบุธนาคาร",
            "BB": "Country Code (2 ตัวอักษร) — ISO 3166-1 alpha-2",
            "CC": "Location Code (2 ตัวอักษร/ตัวเลข) — ระบุเมือง",
            "DDD": "Branch Code (3 ตัวอักษร) — optional, XXX = สำนักงานใหญ่",
        },
        "total_length": "8 หรือ 11 ตัวอักษร",
    }

    def show_swift(self):
        print("=== Swift Code ธนาคารกรุงไทย ===\n")
        print(f"  Swift Code: {self.SWIFT_CODE['code']}")
        print(f"  ชื่อ: {self.SWIFT_CODE['thai_name']}")
        print(f"\n  การอ่าน:")
        for part, meaning in self.SWIFT_CODE["breakdown"].items():
            print(f"    {part} = {meaning}")

    def show_format(self):
        print(f"\n=== รูปแบบ Swift Code ===")
        print(f"  โครงสร้าง: {self.SWIFT_FORMAT['structure']}")
        for part, desc in self.SWIFT_FORMAT["parts"].items():
            print(f"    {part}: {desc}")

ktb = KrungthaiSwiftCode()
ktb.show_swift()
ktb.show_format()

วิธีใช้ Swift Code โอนเงินระหว่างประเทศ

# transfer_guide.py — International transfer guide
import json

class InternationalTransfer:
    RECEIVE_FROM_ABROAD = {
        "name": "รับเงินจากต่างประเทศเข้ากรุงไทย",
        "info_needed": {
            "swift_code": "KRTHTHBK",
            "bank_name": "Krungthai Bank Public Company Limited",
            "bank_address": "35 Sukhumvit Road, Klongtoey Nua, Wattana, Bangkok 10110, Thailand",
            "account_number": "เลขบัญชีกรุงไทย (10 หลัก)",
            "account_name": "ชื่อบัญชีภาษาอังกฤษ (ตรงกับหน้า passbook)",
        },
        "steps": [
            "1. แจ้งผู้โอน: Swift Code KRTHTHBK + เลขบัญชี + ชื่อบัญชี (อังกฤษ)",
            "2. ผู้โอนไปธนาคารต้นทาง → กรอกแบบฟอร์ม Wire Transfer",
            "3. รอ 1-5 วันทำการ (ขึ้นกับ correspondent banks)",
            "4. กรุงไทยแจ้งเตือน SMS/แอป เมื่อเงินเข้า",
            "5. นำเอกสารไปรับเงินที่สาขา (ถ้าเกิน $50,000 ต้องแจ้ง ธปท.)",
        ],
    }

    SEND_ABROAD = {
        "name": "โอนเงินจากกรุงไทยไปต่างประเทศ",
        "info_needed": {
            "recipient_swift": "Swift Code ของธนาคารปลายทาง",
            "recipient_account": "เลขบัญชีผู้รับ (IBAN สำหรับยุโรป)",
            "recipient_name": "ชื่อผู้รับ (ภาษาอังกฤษ)",
            "recipient_address": "ที่อยู่ผู้รับ",
            "purpose": "วัตถุประสงค์การโอน",
        },
        "channels": [
            "สาขาธนาคาร (ทุกวงเงิน)",
            "Krungthai NEXT app (วงเงินจำกัด)",
            "Krungthai Corporate Online (สำหรับนิติบุคคล)",
        ],
    }

    FEES = {
        "receive": {
            "fee": "0.25% ของยอดโอน (ขั้นต่ำ 200 บาท, สูงสุด 500 บาท)",
            "exchange": "อัตราแลกเปลี่ยนของกรุงไทย ณ วันที่เงินเข้า",
            "correspondent": "ธนาคาร correspondent อาจหักค่าธรรมเนียมเพิ่ม ($10-25)",
        },
        "send": {
            "fee": "ค่าโอน 400-500 บาท + ค่า SWIFT 400 บาท",
            "exchange": "อัตราขาย (selling rate) ของกรุงไทย",
            "option_our": "OUR: ผู้โอนจ่ายค่าธรรมเนียมทั้งหมด (แพงกว่า)",
            "option_sha": "SHA: แบ่งจ่าย — ต้นทางจ่ายส่วนหนึ่ง, ปลายทางจ่ายส่วนหนึ่ง",
            "option_ben": "BEN: ผู้รับจ่ายค่าธรรมเนียมทั้งหมด (ถูกกว่าสำหรับผู้โอน)",
        },
    }

    def show_receive(self):
        print("=== รับเงินจากต่างประเทศ ===\n")
        for key, val in self.RECEIVE_FROM_ABROAD["info_needed"].items():
            print(f"  {key}: {val}")
        print(f"\n  ขั้นตอน:")
        for step in self.RECEIVE_FROM_ABROAD["steps"][:4]:
            print(f"  {step}")

    def show_fees(self):
        print(f"\n=== ค่าธรรมเนียม ===")
        print(f"  [รับเงิน] {self.FEES['receive']['fee']}")
        print(f"  [ส่งเงิน] {self.FEES['send']['fee']}")

transfer = InternationalTransfer()
transfer.show_receive()
transfer.show_fees()

Swift Code ธนาคารไทยทั้งหมด

swift code ธนาคารกรุงไทย
# thai_banks.py — All Thai bank Swift Codes
import json

class ThaiBankSwiftCodes:
    BANKS = {
        "กรุงไทย": {"swift": "KRTHTHBK", "abbr": "KTB"},
        "กรุงเทพ": {"swift": "BKKBTHBK", "abbr": "BBL"},
        "กสิกรไทย": {"swift": "KASITHBK", "abbr": "KBANK"},
        "ไทยพาณิชย์": {"swift": "SICOTHBK", "abbr": "SCB"},
        "ทหารไทยธนชาต": {"swift": "TMBKTHBK", "abbr": "TTB"},
        "กรุงศรีอยุธยา": {"swift": "AYUDTHBK", "abbr": "BAY"},
        "ออมสิน": {"swift": "GSBATHBK", "abbr": "GSB"},
        "ธ. ก. ส.": {"swift": "BAABORC0", "abbr": "BAAC"},
        "ธอส.": {"swift": "GABORC0", "abbr": "GHB"},
        "เกียรตินาคินภัทร": {"swift": "ABORC0", "abbr": "KKP"},
        "ซีไอเอ็มบี": {"swift": "UBOBTHBK", "abbr": "CIMBT"},
        "ทิสโก้": {"swift": "TFPCTHB1", "abbr": "TISCO"},
        "ยูโอบี": {"swift": "UABORC0", "abbr": "UOB"},
    }

    def show_all(self):
        print("=== Swift Code ธนาคารไทย ===\n")
        print(f"  {'ธนาคาร':<20} {'Swift Code':<15} {'ย่อ':<8}")
        print(f"  {'-'*43}")
        for name, info in self.BANKS.items():
            print(f"  {name:<20} {info['swift']:<15} {info['abbr']:<8}")

    def search(self, keyword):
        print(f"\n  ค้นหา: '{keyword}'")
        for name, info in self.BANKS.items():
            if keyword.lower() in name.lower() or keyword.upper() in info['swift']:
                print(f"  → {name}: {info['swift']}")

banks = ThaiBankSwiftCodes()
banks.show_all()
banks.search("กรุงไทย")

Python Swift Code Validator

# validator.py — Swift Code validator
import json
import re

class SwiftCodeValidator:
    def validate(self, code):
        code = code.upper().strip()
        
        if len(code) not in (8, 11):
            return {"valid": False, "error": f"ความยาวต้อง 8 หรือ 11 ตัวอักษร (ได้ {len(code)})"}
        
        bank_code = code[:4]
        country_code = code[4:6]
        location_code = code[6:8]
        branch_code = code[8:] if len(code) == 11 else "XXX"
        
        if not re.match(r'^[A-Z]{4}$', bank_code):
            return {"valid": False, "error": "Bank code ต้องเป็นตัวอักษร 4 ตัว"}
        
        if not re.match(r'^[A-Z]{2}$', country_code):
            return {"valid": False, "error": "Country code ต้องเป็นตัวอักษร 2 ตัว"}
        
        if not re.match(r'^[A-Z0-9]{2}$', location_code):
            return {"valid": False, "error": "Location code ต้องเป็นตัวอักษร/ตัวเลข 2 ตัว"}
        
        return {
            "valid": True,
            "code": code,
            "bank_code": bank_code,
            "country_code": country_code,
            "location_code": location_code,
            "branch_code": branch_code,
            "is_head_office": branch_code == "XXX",
        }

    def demo(self):
        print("=== Swift Code Validator ===\n")
        test_codes = [
            "KRTHTHBK",
            "BKKBTHBK",
            "KASITHBK",
            "INVALID",
            "KRTHTHBKXXX",
            "AB",
        ]
        for code in test_codes:
            result = self.validate(code)
            if result["valid"]:
                print(f"  [{code:>11}] Valid — Bank: {result['bank_code']}, Country: {result['country_code']}, Location: {result['location_code']}")
            else:
                print(f"  [{code:>11}] Invalid — {result['error']}")

    def transfer_calculator(self):
        print(f"\n=== Transfer Fee Calculator ===")
        amounts = [10000, 50000, 100000, 500000]
        for amount in amounts:
            fee_pct = amount * 0.0025
            fee = max(200, min(500, fee_pct))
            swift_fee = 400
            total = fee + swift_fee
            print(f"  ยอดโอน {amount:>10,} บาท → ค่าธรรมเนียม {fee:.0f} + SWIFT {swift_fee} = {total:.0f} บาท")

validator = SwiftCodeValidator()
validator.demo()
validator.transfer_calculator()

ทางเลือกอื่นนอกจาก SWIFT

# alternatives.py — Alternatives to SWIFT transfer
import json

class TransferAlternatives:
    OPTIONS = {
        "swift": {
            "name": "SWIFT Wire Transfer",
            "speed": "1-5 วันทำการ",
            "fee": "400-1,500 บาท + ค่า correspondent",
            "best_for": "โอนวงเงินสูง, ธุรกิจ, ต้องการความน่าเชื่อถือ",
        },
        "wise": {
            "name": "Wise (TransferWise)",
            "speed": "1-2 วันทำการ",
            "fee": "0.5-1.5% (ถูกกว่า SWIFT มาก)",
            "best_for": "โอนส่วนบุคคล, วงเงินไม่สูงมาก, อัตราแลกเปลี่ยนดี",
        },
        "deemoney": {
            "name": "DeeMoney",
            "speed": "ภายในวัน (บางประเทศ)",
            "fee": "99-299 บาท",
            "best_for": "โอนจากไทยไปต่างประเทศ, ค่าธรรมเนียมถูก",
        },
        "western_union": {
            "name": "Western Union",
            "speed": "ภายในนาที (cash pickup)",
            "fee": "สูง (3-10%)",
            "best_for": "รับเงินสดปลายทาง, ไม่มีบัญชีธนาคาร",
        },
        "paypal": {
            "name": "PayPal",
            "speed": "ทันที (ในระบบ PayPal)",
            "fee": "4.4% + fixed fee",
            "best_for": "ซื้อขายออนไลน์, freelancer",
        },
        "crypto": {
            "name": "Cryptocurrency",
            "speed": "10 นาที - 1 ชั่วโมง",
            "fee": "ต่ำมาก (network fee)",
            "best_for": "โอนเร็ว ค่าธรรมเนียมต่ำ (แต่ต้องยอมรับความเสี่ยงราคาผันผวน)",
        },
    }

    def show_options(self):
        print("=== ทางเลือกโอนเงินระหว่างประเทศ ===\n")
        for key, opt in self.OPTIONS.items():
            print(f"[{opt['name']}]")
            print(f"  Speed: {opt['speed']} | Fee: {opt['fee']}")
            print(f"  Best: {opt['best_for']}")
            print()

    def comparison(self):
        print("=== เปรียบเทียบค่าโอน 100,000 บาท ===")
        comparisons = [
            {"method": "SWIFT (กรุงไทย)", "fee": "~1,300 บาท", "rate": "ธนาคาร (spread 1-2%)"},
            {"method": "Wise", "fee": "~700 บาท", "rate": "mid-market rate"},
            {"method": "DeeMoney", "fee": "~299 บาท", "rate": "competitive rate"},
            {"method": "Western Union", "fee": "~3,000 บาท", "rate": "poor rate"},
        ]
        for c in comparisons:
            print(f"  {c['method']:<25} Fee: {c['fee']:<15} Rate: {c['rate']}")

alt = TransferAlternatives()
alt.show_options()
alt.comparison()

FAQ - คำถามที่พบบ่อย

Q: Swift Code กรุงไทยคืออะไร?

A: KRTHTHBK — ใช้สำหรับโอนเงินระหว่างประเทศทุกสาขา KRTH = Krungthai Bank, TH = Thailand, BK = Bangkok ใช้ได้ทั้งรับและส่งเงินระหว่างประเทศ

Q: โอนเงินจากต่างประเทศเข้ากรุงไทยใช้เวลานานเท่าไหร่?

A: ปกติ 1-3 วันทำการ ขึ้นกับ: ประเทศต้นทาง, จำนวน correspondent banks, วันหยุดธนาคาร สหรัฐฯ/ยุโรป: 1-2 วัน ประเทศอื่น: 2-5 วัน ถ้าเกิน 5 วัน → ติดต่อธนาคารต้นทาง + กรุงไทย call center 02-111-1111

Q: ค่าธรรมเนียมเท่าไหร่?

A: รับเงิน: 0.25% (ขั้นต่ำ 200 สูงสุด 500 บาท) + ค่า correspondent ส่งเงิน: ค่าโอน 400-500 + SWIFT 400 = รวม ~800-900 บาท อัตราแลกเปลี่ยน: ใช้อัตราธนาคาร (มี spread 1-2% จาก mid-market) ทางเลือกถูกกว่า: Wise, DeeMoney (ค่าธรรมเนียมต่ำกว่า + อัตราดีกว่า)

Q: Swift Code กับ IBAN ต่างกันอย่างไร?

A: Swift Code (BIC): ระบุธนาคาร — 8 หรือ 11 ตัวอักษร (ใช้ทั่วโลก) IBAN: ระบุบัญชี — 15-34 ตัวอักษร (ใช้ในยุโรป + บางประเทศ) ไทยไม่ใช้ IBAN — ใช้ Swift Code + เลขบัญชี 10 หลัก โอนไปยุโรป: ต้องใช้ทั้ง Swift Code + IBAN ของผู้รับ