SiamCafe.net Blog
Technology

swift code kasikorn

swift code kasikorn
swift code kasikorn | SiamCafe Blog
2025-09-15· อ. บอม — SiamCafe.net· 8,813 คำ

SWIFT Code ธนาคารกสิกรไทย

SWIFT Code ของธนาคารกสิกรไทย (Kasikornbank) คือ KASITHBK ใช้สำหรับการโอนเงินระหว่างประเทศทั้งขาเข้าและขาออก SWIFT Code ประกอบด้วย 8-11 ตัวอักษร โดยแต่ละส่วนมีความหมายดังนี้

ส่วนรหัสความหมาย
Bank CodeKASIธนาคารกสิกรไทย
Country CodeTHประเทศไทย (Thailand)
Location CodeBKกรุงเทพมหานคร (Bangkok)
Branch CodeXXX (optional)สำนักงานใหญ่

SWIFT Code ธนาคารในไทย

# swift_codes_thailand.py — รวม SWIFT Code ธนาคารในไทย

swift_codes = {
    "ธนาคารกสิกรไทย (KBank)": "KASITHBK",
    "ธนาคารกรุงเทพ (BBL)": "BKKBTHBK",
    "ธนาคารไทยพาณิชย์ (SCB)": "SICOTHBK",
    "ธนาคารกรุงไทย (KTB)": "KRTHTHBK",
    "ธนาคารกรุงศรีอยุธยา (BAY)": "AYUDTHBK",
    "ธนาคารทหารไทยธนชาต (TTB)": "TMBKTHBK",
    "ธนาคารซีไอเอ็มบี (CIMB)": "UBOBTHBK",
    "ธนาคารยูโอบี (UOB)": "UABORHBK",
    "ธนาคารแลนด์ แอนด์ เฮ้าส์ (LH Bank)": "LAABORHBK",
    "ธนาคารเกียรตินาคินภัทร (KKP)": "ABORHBK",
    "ธนาคารออมสิน (GSB)": "GABORHBK",
    "ธ. ก. ส. (BAAC)": "BAABORHBK",
}

print("SWIFT Code ธนาคารในประเทศไทย")
print("=" * 55)
print(f"{'ธนาคาร':<35} {'SWIFT Code'}")
print("-" * 55)

for bank, code in swift_codes.items():
    print(f"{bank:<35} {code}")

# ค้นหา SWIFT Code
def find_swift(keyword):
    """ค้นหา SWIFT Code จากชื่อธนาคาร"""
    results = []
    for bank, code in swift_codes.items():
        if keyword.lower() in bank.lower() or keyword.upper() in code:
            results.append((bank, code))
    return results

# ตัวอย่าง
search = "กสิกร"
found = find_swift(search)
print(f"\nค้นหา '{search}':")
for bank, code in found:
    print(f"  {bank}: {code}")

# Validate SWIFT Code Format
import re

def validate_swift(code):
    """ตรวจสอบรูปแบบ SWIFT Code"""
    pattern = r'^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$'
    if re.match(pattern, code.upper()):
        bank = code[:4]
        country = code[4:6]
        location = code[6:8]
        branch = code[8:11] if len(code) > 8 else "XXX (Head Office)"
        return {
            "valid": True, "code": code.upper(),
            "bank": bank, "country": country,
            "location": location, "branch": branch,
        }
    return {"valid": False, "code": code}

# ตรวจสอบ
result = validate_swift("KASITHBK")
print(f"\nValidate KASITHBK:")
for k, v in result.items():
    print(f"  {k}: {v}")

ขั้นตอนโอนเงินระหว่างประเทศ

# international_transfer.py — ขั้นตอนและค่าธรรมเนียมการโอนระหว่างประเทศ

class InternationalTransfer:
    """คำนวณค่าใช้จ่ายการโอนเงินระหว่างประเทศ"""

    # ค่าธรรมเนียมโดยประมาณ (ตรวจสอบล่าสุดจากธนาคาร)
    FEES = {
        "KBank": {
            "tt_fee": 400,       # Telegraphic Transfer Fee
            "swift_fee": 200,    # SWIFT Charge
            "commission": 0.25,  # Commission % (min 200, max 5000)
            "comm_min": 200,
            "comm_max": 5000,
        },
        "BBL": {
            "tt_fee": 400,
            "swift_fee": 200,
            "commission": 0.25,
            "comm_min": 200,
            "comm_max": 5000,
        },
        "SCB": {
            "tt_fee": 400,
            "swift_fee": 200,
            "commission": 0.25,
            "comm_min": 200,
            "comm_max": 5000,
        },
    }

    # อัตราแลกเปลี่ยน (ตัวอย่าง — ใช้อัตราจริงจากธนาคาร)
    EXCHANGE_RATES = {
        "USD": {"buy": 34.50, "sell": 35.20},
        "EUR": {"buy": 37.00, "sell": 38.00},
        "GBP": {"buy": 43.00, "sell": 44.50},
        "JPY": {"buy": 0.230, "sell": 0.245},
        "AUD": {"buy": 22.50, "sell": 23.50},
        "SGD": {"buy": 25.50, "sell": 26.50},
    }

    def __init__(self, bank="KBank"):
        self.bank = bank
        self.fees = self.FEES.get(bank, self.FEES["KBank"])

    def calculate_outward(self, amount_thb, currency="USD"):
        """คำนวณโอนขาออก (THB -> Foreign Currency)"""
        rate = self.EXCHANGE_RATES.get(currency, {}).get("sell", 0)
        if rate == 0:
            return None

        # จำนวนเงินต่างประเทศ
        foreign_amount = amount_thb / rate

        # ค่าธรรมเนียม
        commission = max(
            self.fees["comm_min"],
            min(self.fees["comm_max"], amount_thb * self.fees["commission"] / 100),
        )
        total_fees = self.fees["tt_fee"] + self.fees["swift_fee"] + commission
        total_cost = amount_thb + total_fees

        return {
            "direction": "Outward (THB -> Foreign)",
            "bank": self.bank,
            "amount_thb": amount_thb,
            "currency": currency,
            "exchange_rate": rate,
            "foreign_amount": round(foreign_amount, 2),
            "tt_fee": self.fees["tt_fee"],
            "swift_fee": self.fees["swift_fee"],
            "commission": round(commission, 2),
            "total_fees": round(total_fees, 2),
            "total_cost": round(total_cost, 2),
        }

    def calculate_inward(self, foreign_amount, currency="USD"):
        """คำนวณรับเงินขาเข้า (Foreign Currency -> THB)"""
        rate = self.EXCHANGE_RATES.get(currency, {}).get("buy", 0)
        if rate == 0:
            return None

        amount_thb = foreign_amount * rate

        return {
            "direction": "Inward (Foreign -> THB)",
            "bank": self.bank,
            "foreign_amount": foreign_amount,
            "currency": currency,
            "exchange_rate": rate,
            "amount_thb": round(amount_thb, 2),
            "note": "ค่าธรรมเนียมขาเข้าอาจถูกหักจากธนาคารต้นทาง",
        }

    def print_result(self, result):
        """แสดงผล"""
        print(f"\n{'='*50}")
        print(f"การโอนเงินระหว่างประเทศ — {result['bank']}")
        print(f"{'='*50}")
        for k, v in result.items():
            if k in ["bank"]:
                continue
            label = k.replace("_", " ").title()
            if isinstance(v, float):
                print(f"  {label:<20} {v:>15,.2f}")
            else:
                print(f"  {label:<20} {str(v):>15}")

# ตัวอย่าง: โอน 100,000 บาทไป USD
calc = InternationalTransfer("KBank")

# โอนออก
outward = calc.calculate_outward(100000, "USD")
calc.print_result(outward)

# รับเข้า
inward = calc.calculate_inward(1000, "USD")
calc.print_result(inward)

# เปรียบเทียบ 3 ธนาคาร
print(f"\nเปรียบเทียบค่าธรรมเนียมโอน 100,000 บาท -> USD:")
for bank in ["KBank", "BBL", "SCB"]:
    calc = InternationalTransfer(bank)
    r = calc.calculate_outward(100000, "USD")
    print(f"  {bank}: ค่าธรรมเนียม {r['total_fees']:,.0f} บาท "
          f"| ได้รับ {r['foreign_amount']:,.2f} USD")

ช่องทางโอนเงินทางเลือก

# === เปรียบเทียบช่องทางโอนเงินระหว่างประเทศ ===

channels = [
    {
        "name": "ธนาคาร (Wire Transfer)",
        "speed": "1-3 วันทำการ",
        "fee": "600-1,200 บาท",
        "rate": "อัตราธนาคาร (Spread 1-2%)",
        "limit": "ตามวงเงิน",
        "pros": "น่าเชื่อถือ รับทุกสกุลเงิน",
        "cons": "ค่าธรรมเนียมสูง ช้า",
    },
    {
        "name": "Wise (TransferWise)",
        "speed": "1-2 วันทำการ",
        "fee": "0.5-1.5% ของยอดโอน",
        "rate": "Mid-market Rate",
        "limit": "1,000,000 บาท/ครั้ง",
        "pros": "อัตราแลกเปลี่ยนดี โปร่งใส",
        "cons": "ต้องสมัครสมาชิก",
    },
    {
        "name": "Western Union",
        "speed": "ทันที - 1 วัน",
        "fee": "300-500 บาท",
        "rate": "อัตรา WU (Spread 2-4%)",
        "limit": "ตามช่องทาง",
        "pros": "เร็ว รับเงินสดได้",
        "cons": "อัตราแลกเปลี่ยนไม่ดี",
    },
    {
        "name": "PayPal",
        "speed": "ทันที",
        "fee": "2.9% + 11 บาท",
        "rate": "อัตรา PayPal (Spread 3-4%)",
        "limit": "ตาม Account",
        "pros": "สะดวก ใช้ได้ทั่วโลก",
        "cons": "ค่าธรรมเนียมและ Spread สูง",
    },
]

print("เปรียบเทียบช่องทางโอนเงินระหว่างประเทศ")
print("=" * 60)

for ch in channels:
    print(f"\n--- {ch['name']} ---")
    print(f"  ความเร็ว:     {ch['speed']}")
    print(f"  ค่าธรรมเนียม: {ch['fee']}")
    print(f"  อัตราแลกเปลี่ยน: {ch['rate']}")
    print(f"  ข้อดี:        {ch['pros']}")
    print(f"  ข้อเสีย:      {ch['cons']}")

ข้อควรรู้

Best Practices สำหรับนักพัฒนา

การเขียนโค้ดที่ดีไม่ใช่แค่ทำให้โปรแกรมทำงานได้ แต่ต้องเขียนให้อ่านง่าย ดูแลรักษาง่าย และ Scale ได้ หลัก SOLID Principles เป็นพื้นฐานสำคัญที่นักพัฒนาทุกู้คืนควรเข้าใจ ได้แก่ Single Responsibility ที่แต่ละ Class ทำหน้าที่เดียว Open-Closed ที่เปิดให้ขยายแต่ปิดการแก้ไข Liskov Substitution ที่ Subclass ต้องใช้แทน Parent ได้ Interface Segregation ที่แยก Interface ให้เล็ก และ Dependency Inversion ที่พึ่งพา Abstraction ไม่ใช่ Implementation

เรื่อง Testing ก็ขาดไม่ได้ ควรเขียน Unit Test ครอบคลุมอย่างน้อย 80% ของ Code Base ใช้ Integration Test ทดสอบการทำงานร่วมกันของ Module ต่างๆ และ E2E Test สำหรับ Critical User Flow เครื่องมือยอดนิยมเช่น Jest, Pytest, JUnit ช่วยให้การเขียน Test เป็นเรื่องง่าย

เรื่อง Version Control ด้วย Git ใช้ Branch Strategy ที่เหมาะกับทีม เช่น Git Flow สำหรับโปรเจคใหญ่ หรือ Trunk-Based Development สำหรับทีมที่ Deploy บ่อย ทำ Code Review ทุก Pull Request และใช้ CI/CD Pipeline ทำ Automated Testing และ Deployment

เปรียบเทียบข้อดีและข้อเสีย

ข้อดีข้อเสีย
ประสิทธิภาพสูง ทำงานได้เร็วและแม่นยำ ลดเวลาทำงานซ้ำซ้อนต้องใช้เวลาเรียนรู้เบื้องต้นพอสมควร มี Learning Curve สูง
มี Community ขนาดใหญ่ มีคนช่วยเหลือและแหล่งเรียนรู้มากมายบางฟีเจอร์อาจยังไม่เสถียร หรือมีการเปลี่ยนแปลงบ่อยในเวอร์ชันใหม่
รองรับ Integration กับเครื่องมือและบริการอื่นได้หลากหลายต้นทุนอาจสูงสำหรับ Enterprise License หรือ Cloud Service
เป็น Open Source หรือมีเวอร์ชันฟรีให้เริ่มต้นใช้งานต้องการ Hardware หรือ Infrastructure ที่เพียงพอ

จากตารางเปรียบเทียบจะเห็นว่าข้อดีมีมากกว่าข้อเสียอย่างชัดเจน โดยเฉพาะในแง่ของประสิทธิภาพและความสามารถในการ Scale สำหรับข้อเสียส่วนใหญ่สามารถแก้ไขได้ด้วยการเรียนรู้อย่างเป็นระบบและวางแผนทรัพยากรให้เหมาะสม

SWIFT Code ธนาคารกสิกรไทยคืออะไร

KASITHBK ใช้รับและส่งเงินระหว่างประเทศ KASI = รหัสธนาคาร TH = ไทย BK = กรุงเทพ อาจเห็นเป็น KASITHBKXXX สำหรับสำนักงานใหญ่

SWIFT Code ใช้ทำอะไร

ระบุธนาคารสำหรับโอนเงินระหว่างประเทศ (Wire Transfer) ทุกครั้งที่โอนหรือรับเงินจากต่างประเทศต้องระบุ SWIFT Code ของธนาคารผู้รับ

ค่าธรรมเนียมโอนเงินระหว่างประเทศเท่าไร

KBank โอนขาออก TT Fee 400-500 บาท SWIFT Fee 200-400 บาท Commission 0.25% อัตราแลกเปลี่ยนมี Spread 0.5-2% ตรวจสอบค่าธรรมเนียมล่าสุดจากธนาคาร

โอนเงินไปต่างประเทศผ่าน KBank ทำอย่างไร

ผ่าน K PLUS App เลือกโอนเงินระหว่างประเทศ กรอกข้อมูลผู้รับ ชื่อ เลขบัญชี SWIFT Code จำนวนเงิน วัตถุประสงค์ ยืนยัน PIN หรือไปสาขาพร้อมบัตรประชาชน ใช้เวลา 1-3 วันทำการ

สรุป

SWIFT Code ของธนาคารกสิกรไทยคือ KASITHBK ใช้สำหรับโอนเงินระหว่างประเทศ สามารถโอนผ่าน K PLUS App หรือไปสาขา ค่าธรรมเนียมรวม 600-1,200 บาทต่อรายการ เปรียบเทียบอัตราแลกเปลี่ยนจากหลายแหล่ง พิจารณาใช้ Wise สำหรับอัตราแลกเปลี่ยนที่ดีกว่า ตรวจสอบ SWIFT Code ให้ถูกต้องก่อนโอนทุกครั้ง

📖 บทความที่เกี่ยวข้อง

swift code kasikorn bankอ่านบทความ → Cloudflare Low Code No Codeอ่านบทความ → swift code scbอ่านบทความ → swift code ของธนาคารออมสินอ่านบทความ → SASE Framework Code Review Best Practiceอ่านบทความ →

📚 ดูบทความทั้งหมด →