You open the booking page for a Jakarta to Yogyakarta train, and the Executive seats you saw last week now cost much more, or they are gone. In 2026, KAI uses more dynamic pricing than ever, so fares move with demand, booking date, and season. The good news is that the system is easy once you know the steps. This guide covers how to book, check in, board, and connect to the rest of your trip on Java’s Rail network.
Why Take the Train in Java
Java’s roads are crowded, and a bus trip can turn into hours of stop-and-go traffic. KAI (Kereta Api Indonesia) trains skip that problem. They run on a reliable schedule, and they are generally safer and more comfortable than buses, especially over long distances. Intercity trains connect Jakarta, Bandung, Yogyakarta, Surabaya, and Malang.
The best reason is the view. Somewhere past the big cities, the window fills with rice fields in every shade of green, volcano silhouettes in the haze, and small villages where people pause to watch the train pass. The scenery through central and eastern Java can be spectacular. If you sit on the left or right side at the right time, you will understand why many travellers prefer this to flying.
KAI Train Classes Explained
KAI intercity trains have three main classes. Pick based on journey length and how much you value space.
- Ekonomi (Economy): Basic seating, often in a 3-2 layout, with non-reclining or slightly reclining seats. It is air-conditioned and usually the cheapest option.
- Bisnis (Business): More spacious seating in a 2-2 layout, with reclining seats and air-conditioning. It often gives the best balance of comfort and price.
- Eksekutif (Executive): The most comfortable class. It has a 2-2 layout, wide reclining seats, ample legroom, power outlets, and often individual reading lights. Some executive services include meal service or other extras.
For a short trip of three hours or so, Economy or Business is fine. For the longer Jakarta to Yogyakarta ride, many people find Executive worth the extra money.
How to Book KAI Tickets in 2026
Book early, especially for Executive class and during busy periods such as public holidays and Eid al-Fitr. Tickets typically go on sale 90 days before departure. You have four ways to buy.
Option 1: The Access by KAI App
This is the official app. It was called KAI Access until it was renamed Access by KAI in late 2023. You can download it from Google Play Store or the Apple App Store.
- Download and install “Access by KAI”.
- Register with your email and phone number.
- Choose “Intercity Train” (Antar Kota).
- Enter your departure station, arrival station, date, and number of passengers.
- Tap “Search Train”.
- Compare trains, classes, and fares.
- Select your train and class.
- Enter passenger details. Indonesians use their KTP, and foreigners use their passport number. The details must match your ID exactly.
- Choose your seats on the seat map.
- Go to payment.
- Pay with KAI Pay (the in-app wallet), QRIS, Virtual Account (bank transfer), credit card (Visa, Mastercard, JCB), LinkAja, OVO, GoPay, or ShopeePay.
- Once payment goes through, your e-ticket appears in the app and arrives by email.
Option 2: The Website
The official site is www.kai.id. The process mirrors the app: go to the Intercity Train section, enter your details, pick a train, add passenger information, choose seats, and pay. Payment options are similar, including QRIS, Virtual Account, credit card, LinkAja, OVO, GoPay, and ShopeePay.
Option 3: Online Travel Agencies
Traveloka and Tiket.com both sell KAI tickets. You search, select, enter passenger details, and pay. These platforms often support a wider range of payment methods, which helps if your card does not work on the official channels.
Option 4: Station Counters and Minimarkets
You can buy directly at KAI station counters. Some Indomaret and Alfamart branches also sell train tickets for a small fee, typically 7,500 IDR per transaction. The app and website avoid that fee, and fares there are the same for everyone, so booking early is the best way to save.
Check-In and Boarding, Step by Step
Your e-ticket from the app or website is enough, and you do not need to print it at home. You do need a physical boarding pass, which you print at the station.
- Arrive at the station and find the self-service Cek In Mandiri (CIM) kiosks.
- Scan the barcode on your e-ticket, or type in your booking code.
- Collect the printed boarding pass. CIM check-in works from 24 hours before departure until 10 minutes before.
- Go to the boarding gate and show your boarding pass with your original ID (KTP or passport) to the officer.
- Make sure your name and ID number match exactly.
Arrive earlier than you think you need to. Stations are busy in the morning, with the smell of fried snacks and sweet tea in the air and families dragging suitcases toward the platforms. A queue at the kiosk will not delay the train, so give yourself a buffer.
Popular Routes and Example Fares
These are indicative 2026 fares. Dynamic pricing means the real price on your date may differ.
Jakarta (Gambir/Pasar Senen) to Bandung
- Executive: 180,000 to 350,000 IDR. This is the regular train, not Whoosh.
- Journey time: about 3 hours.
Jakarta (Gambir) to Yogyakarta (Tugu)
- Executive: 400,000 to 750,000 IDR
- Business: 300,000 to 550,000 IDR
- Economy: 200,000 to 400,000 IDR
- Journey time: about 6 to 8 hours
Yogyakarta (Tugu) to Surabaya (Gubeng)
- Executive: 350,000 to 600,000 IDR
- Journey time: about 4 to 5 hours
Jakarta (Halim) to Bandung (Padalarang/Tegalluar) on Whoosh
- Executive: 250,000 to 350,000 IDR
- Journey time: about 30 to 45 minutes from Halim to Padalarang or Tegalluar
- Feeder trains connect these stations to Bandung city centre.
Note that Whoosh stops at Padalarang or Tegalluar, not in central Bandung, so plan the feeder train into your journey. Whoosh is fully operational and integrated with Access by KAI, so you can book the feeder train in the same app.
Getting Around at Your Destination
Your train ride is only part of the trip. Here is how to cover the first and last kilometres in Jakarta and beyond.
KRL Commuterline
The KRL covers Jakarta and its satellite cities: Bogor, Depok, Tangerang, and Bekasi. Trains run every 5 to 15 minutes during peak hours. Buy a KMT (Kartu Multi Trip) at any KRL station for 30,000 IDR, with a minimum 10,000 IDR balance. You can also tap Mandiri e-Money, BCA Flazz, BRI Brizzi, BNI TapCash, or Bank DKI JakCard, or scan a QRIS code. Tap in at the entry gate and tap out at the exit. The fare is 3,000 IDR for the first 25 km, then 1,000 IDR for every further 10 km. Jakarta Kota to Bogor, around 60 km, costs 6,000 IDR.
Jakarta MRT and LRT
The MRT has one north-south line from Lebak Bulus Grab to Bundaran HI, with trains every 5 to 10 minutes. Fares run from 3,000 to 15,000 IDR for the full length. You can use the MRT-J app, e-money cards, QRIS, or single trip cards from station machines. Line 2 (Bundaran HI to Kota) is under construction.
The Jabodebek LRT connects Jakarta (Dukuh Atas, Kuningan) with Bekasi and Cibubur, with distance-based fares starting at 5,000 IDR. The separate Jakarta LRT (Velodrome to Pegangsaan Dua) charges a flat 5,000 IDR. Trains come every 10 to 15 minutes.
TransJakarta
TransJakarta buses use dedicated lanes and cover most of the city for a flat 3,500 IDR per trip. There is no cash payment, so bring a card. Bank DKI JakCard is recommended. Transfers are usually free if you do not exit the terminal.
Gojek, Grab, Ojek, Becak and Bajaj
Gojek and Grab are the easiest way to cover short distances. Choose a bike for one person and light luggage, or a car for groups and bigger bags. Before you get in, check that the driver’s name, photo, and licence plate match the app. You can pay with cash, GoPay, OVO/GrabPay, or a card.
Traditional ojek (motorcycle taxis) wait at street corners. Agree the fare before you start, as prices are usually a little higher than the apps. Becak (pedicabs) appear in smaller towns and tourist areas, and bajaj (three-wheeled motorised rickshaws) in older parts of Jakarta such as Kota Tua. Both are slow, fun for short rides, and require bargaining first.
What Has Changed Since 2024
- New app name and look: KAI Access became Access by KAI in late 2023, with a refreshed interface and more features.
- Whoosh booking: Feeder trains for Whoosh high-speed rail can be booked through Access by KAI.
- More payment choices: QRIS, GoPay, OVO, ShopeePay, and LinkAja now work for direct in-app payments.
- Dynamic pricing: Fares now vary more with demand, time of booking, and season.
- Urban links: KRL has more capacity on popular lines and wider QRIS use. MRT, LRT, and TransJakarta are better integrated through JakLingko. The Jabodebek LRT became fully operational in late 2023.
Common Mistakes to Avoid
- Mismatched ID details: The name and number on your ticket must match your passport exactly. Check before paying.
- Forgetting your original ID: A photo on your phone is not enough at the gate. Carry your passport.
- Skipping CIM check-in: The e-ticket alone will not get you through. Print your boarding pass at the kiosk, and do it before the 10 minute cut-off.
- Booking too late: Executive seats and holiday dates go first, and prices climb. Tickets open 90 days ahead.
- Mixing up stations: Jakarta has several, including Gambir, Pasar Senen, and Halim. Whoosh stops at Padalarang or Tegalluar, not in central Bandung. Check the station name before you pay.
- Bringing cash to TransJakarta: Buses accept cards only. Buy a card before you go.
- Skipping the fare talk: For ojek, becak, and bajaj, always agree the price before you get in.
Frequently Asked Questions
Can foreigners book KAI train tickets online?
Yes. Use the Access by KAI app, kai.id, Traveloka, or Tiket.com. Enter your passport number as ID, matching your passport exactly. You can pay with QRIS, virtual account, credit card, or wallets such as GoPay, OVO, and ShopeePay. Your e-ticket arrives in the app and by email.
How far in advance should I book a KAI train?
Tickets typically go on sale 90 days before departure. Book early for Executive class and for busy periods like public holidays and Eid al-Fitr. Dynamic pricing means fares change with demand and season, so booking well in advance usually gives you better prices and more seat choice.
Do I need to print my train ticket?
You do not need to print the e-ticket at home, but you must print a boarding pass at a Cek In Mandiri kiosk. Scan your barcode or enter your booking code. Check-in opens 24 hours before departure and closes 10 minutes before. Bring your original passport to the gate.
Is Whoosh the same as a regular train to Bandung?
No. Whoosh runs from Halim in Jakarta to Padalarang or Tegalluar in about 30 to 45 minutes, with Executive fares of 250,000 to 350,000 IDR. Feeder trains reach Bandung city centre. A regular KAI train from Gambir or Pasar Senen takes about 3 hours.
How do I pay for the KRL Commuterline in Jakarta?
Tap a KMT card (30,000 IDR, minimum 10,000 IDR balance) or an e-money card like Mandiri e-Money or BCA Flazz. You can also scan QRIS. Tap at entry and exit. Fares are 3,000 IDR for the first 25 km, then 1,000 IDR for every further 10 km.
📷 Featured image by muhammad arief on Unsplash.