General Terms and Conditions:

1.    Kindly note that any further changes are not permitted.
2.    This receipt will be accept as a proof ticket without any changes to the computerized boarding pass ticket at KL Sentral only.
3.    Seat numbers may change without prior notice due to unavoidable circumstances.
4.    Please redeem this receipt with the computerized boarding pass to the bus ticketing counter at KLIA1 or KLIA2.at least 30 minutes before departure time 
5.    Passenger will just need to show the boarding pass as proof to the checker before entering the bus.
6.    Passengers are strongly advised not to bring any item(s) which are fragile and perishable goods.
7.    No foods, drinks & pets are allowed on board.

 

Cancellation Policy:

With in 24 hours from the station departure time 50% Cancellation Charges
Between 1 to 2 days before station departure time 25% Cancellation Charges
Between 2 to 30 days before station departure time 0% Cancellation Charges
booking-confirm booking-cancel search-results ticket-details thank-you phone-blocking-to-ebooking> 404> 410>

Please Enter Your Details

Success

Thank you, Message has been sent successfully

<script> $('footer .footer-contact h3').html ("<img src='https://ticket-simply-mly-cms.s3.amazonaws.com/uploads/bcc/cms/asset/avatar/165/logo.jpg'>"); $( "#extra_115" ).insertAfter( $( "#extra_21" ) ); $( "#extra_276" ).insertAfter( $( "#react-app" ) ); </script> <script> $(".main-menu li:nth-child(5)").html("<div class='signinf'><h3><a href='#' ><img src='https://gst-contracts.s3.amazonaws.com/uploads/bcc/cms/asset/avatar/127813/cust1.png'>Sign in</a></h3></div>"); </script> <script> $('footer .footer-contact h3').html ("<img src='https://ticket-simply-mly-cms.s3.amazonaws.com/uploads/bcc/cms/asset/avatar/170/logo.jpg'>"); </script> <script> if(! $(".wrapper").hasClass("inner-page")){ $(".wrapper").addClass("emdedded_new"); } </script> <script> $('#extra_21 .count').each(function() { $(this).prop('Counter', 0).animate({ Counter: $(this).text() }, { duration: 10000, easing: 'swing', step: function(now) { if($(this).is(".rating")){ $(this).text(now.toFixed(1)); } else{ $(this).text(parseInt(now)); } } }); }); </script> <script> containerWidth = document.getElementById("container").clientWidth; nextButton = document.getElementById("next-button"); previousButton = document.getElementById("previous-button"); slide = document.getElementById("slide"); firstCardLeftMargin = 10; cardWidthAndRightMargin = 120 + 10; totalWidth = slide.clientWidth; const transformSlide = (val) => { slide.style.transform = `translate(${val}px,0px)`; }; const getCurrentPosition = () => { const stringValue = slide.style.transform; const transformValue = stringValue.substring( stringValue.indexOf("(") + 1, stringValue.lastIndexOf("p") ); return transformValue ? parseInt(transformValue) : 0; }; const getNextPosition = () => { //take current position of the slide const currentPosition = getCurrentPosition(); //last visibile pixel const lastVisiblePixel = containerWidth + -1 * currentPosition; //use the last visible pixel to calculate which card was fully-visible. //This will return a float whose floor will indicate the last fully-visible card. //We will show the next card as the first card after sliding const lastFullyVisibleCard = Math.floor( (lastVisiblePixel - firstCardLeftMargin) / cardWidthAndRightMargin ); //Calculate the distance from slideStart to the lastVisibleCard's end const distanceToNextCard = lastFullyVisibleCard * cardWidthAndRightMargin + firstCardLeftMargin; if (distanceToNextCard + containerWidth > totalWidth) { return totalWidth - containerWidth + firstCardLeftMargin; } return distanceToNextCard - 10; }; const getPreviousPosition = () => { const currentPosition = getCurrentPosition(); //take current position //getting first partially visible card. This will be the last card shown when the button is clicked. const firstPartiallyVisibleCard = Math.floor( (-1 * currentPosition - firstCardLeftMargin) / cardWidthAndRightMargin ); //get distance to card end from slide start const distanceToCardEndFromSlideStart = firstPartiallyVisibleCard * cardWidthAndRightMargin + firstCardLeftMargin; //translateX distance would be total distance - containerwidth const distanceNeeded = distanceToCardEndFromSlideStart - containerWidth; //return calculateDistance only if it is positive if (distanceNeeded > 0) { return -distanceNeeded; } //if needed distance < 0 i.e. card end is closer to start than container width means that this scroll would overshoot the left edge. //return 0 and return the slide to it's initial position return 0; }; nextButton.addEventListener("click", (event) => { transformSlide(-getNextPosition()); }); previousButton.addEventListener("click", (event) => { transformSlide(getPreviousPosition()); }); </script> <script> $("<p class='booking-text'>Book with us</p>").insertBefore(".booking-widget"); $(".main-menu li:nth-child(3)").text("Help Center") ); </script> <script> $('#customers-testimonials').owlCarousel({ loop: true, center: true, items: 3, margin: 0, autoplay: true, dots:false, autoplayTimeout: 8500, smartSpeed: 450, responsive: { 0: { items: 1 }, 768: { items: 2 }, 1170: { items: 3 } } }); </script>