Patna to Rourkela Taxi Booking

Online Taxi Booking Form

Patna to Rourkela Taxi Service | Patna to Rourkela Taxi Fare | Ertiga & Innova Crysta Cab Booking | Contact Number

Book Patna to Rourkela Taxi Service with Saarthi Cabs at affordable price. Patna to Rourkela taxi fare start from ₹4900 for one-way sedan cab . Patna to Rourkela taxi rates per km Sedan ₹10/km, Ertiga ₹12/km, Patna to Rourkela Innova Crysta ₹20/km, and Tempo Traveller ₹22/km for Patna to Rourkela round trip. We offer one-way cabs, round trips, airport transfers, Force Urbania, and Tempo Traveller rentals. Enjoy professional drivers, clean vehicles, transparent pricing, doorstep pickup, and 24×7 customer support. Call or WhatsApp Saarthi Cabs at 09548976265 for Patna to Rourkela Taxi booking. We also offer Patna to Rourkela taxi packages all inclusive price at Sedan ₹3500, Ertiga ₹4500/day, Innova Crysta 6900/Day, Tempo Traveller ₹8500/Day for tour trip multicity or place visit.

Patna to Rourkela Taxi Service: Book One Way & Round Trip Cabs

Book a reliable Patna to Rourkela cab with our professional Patna to Rourkela cab Service. Saarthi Cabs offer One-way taxi Patna to Rourkela , easy cab booking, and affordable Patna to Rourkela taxi fare. Choose from premium Patna to Rourkela car rental, Patna airport to Rourkela taxi, and Patna to Rourkela outstation cab through seamless Patna to Rourkela online taxi booking. Travel comfortably in Patna to Rourkela Innova taxi or Patna to Rourkela tempo traveller. We also provide Patna to Rourkela round trip cab, trusted Patna to Rourkela taxi service, budget-friendly Patna to Rourkela cheap cab, and convenient Patna to Rourkela same-day taxi.

Patna to Rourkela Taxi Fare

Saarthi Cabs provides clear and affordable Patna to Rourkela taxi fare with complete transparency and no hidden charges. We offer budget-friendly Patna to Rourkela one-way cab fare, cost-effective Patna to Rourkela round trip taxi fare, and competitive Patna to Rourkela cab price for all vehicle types. Travelers can also check Patna Airport to Rourkela taxi fare with reliable pickup and drop service. Our Patna to Rourkela per km taxi rate is among the best in the market, ensuring safe, comfortable, and hassle-free travel for families, pilgrims, and tourists.

Taxi Fare Price - Cab Rate List 2026

Cab TypeTaxi Fare
Sedan Cab₹12/km
SUV Cab₹14/km
Innova Crysta Cab₹20/km
Tempo Traveller₹30/km
Note:
• All Fare is Approx Please call us for final price.
• For One Way Trip – Fare is All Inclusive ( Driver DA & Night Charges, Cab Rent, Fuel Charges)
• For Round Trip – Fare is All Exclusive ( All Extra – Driver DA & Night Charges, Toll Taxi, State Tax, Parking, Per Day Minimum Pay of 300 km in Plain Area.
• Tour trip in Hill Areas: Per Day Packages with 200 km in Hill Area Fare is All Inclusive ( Driver DA & Night Charges, Cab Rent, Fuel Charges) for extra Kilometer ₹2/km additional Charges on regular per km Rates
• Assured luggage space (either carrier or boot space) for Rs. 300
• Confirmed Car Model 2022 or above for Rs. 400
• Pet Allowed for Rs. 550
• Parking is Extra in all conditions.
• Upgrade to Refundable booking (100% refund for cancellation before 6 hours of departure time) Pay Extra 10% of Total Booking Amount.

Patna to Rourkela Cab Service

  • What is the Patna to Rourkela taxi fare?
  • Saarthi Cabs provides Patna to Rourkela taxi fare range ₹4900–₹16,560. Pricing is fully transparent with no hidden charges. Customers receive advance fare details ensuring affordable and reliable long-distance travel. For Patna to Rourkela taxi Booking Call
  • Do you provide Patna to Rourkela one-way cab service?
  • Yes, Saarthi Cabs offers one-way taxi service from Patna to Rourkela with doorstep pickup and professional drivers. Our Patna to Rourkela one-way cab fare ₹4900 (Starting Price). We provide clean, comfortable vehicles for long-distance travel at affordable rates, ensuring a smooth and hassle-free journey.
  • What are the round-trip taxi rates from Patna to Rourkela?
  • Saarthi Cabs round-trip rates are Patna to Rourkela taxi fare per km Sedan ₹10/km, Ertiga ₹12/km, Innova Crysta ₹20/km, and Tempo Traveller ₹22/km. All fares are fixed and transparent. Customers enjoy safe, comfortable, and economical travel with experienced drivers and well-maintained vehicles for long routes.
  • Do you offer airport transfer service on this route?
  • Yes, Saarthi Cabs provides airport pickup and drop services for Patna to Rourkela routes. We ensure timely service with comfortable vehicles for stress-free transfers. Our drivers maintain punctuality and smooth coordination for both arrival and departure journeys.
  • Which vehicles are available for Patna to Rourkela cab booking?
  • Saarthi Cabs offers Sedan, Ertiga, Innova Crysta, Tempo Traveller, and Force Urbania Traveller. Customers can select vehicles based on group size and comfort needs. All vehicles are well-maintained, clean, and driven by professional drivers ensuring safe long-distance travel.
  • What is the SUV Ertiga fare for Patna to Rourkela?
  • The Patna to Rourkela Ertiga fare is ₹12/km for round-trip travel. You can book Patna to Rourkela Ertiga taxi package fare per day 4500/Day for tour trip multicity or place visit. Saarthi Cabs provides a family-friendly, spacious vehicle suitable for medium-sized groups. The calculated fare ensures affordability with comfort, making it ideal for long-distance journeys.
  • What is the Innova Crysta fare for Patna to Rourkela?
  • Patna to Rourkela Innova Crysta fare is ₹20/km for round-trip booking. Saarthi Cabs offers premium comfort, spacious seating, and luxury travel experience. The calculated fare provides value for money while ensuring a smooth and comfortable long-distance journey. You can book Patna to Rourkela Innova Crysta package fare per day 6900/Day for tour trip multicity or place visit
  • What is the Tempo Traveller fare for Patna to Rourkela?
  • Patna to Rourkela Tempo Traveller fare is ₹22/km for round-trip service. Saarthi Cabs provides spacious group travel options ideal for large families or groups. The calculated fare ensures economical travel with comfort, safety, and convenience throughout the journey. You can book Patna to Rourkela tempo traveller package fare per day 8500/Day(Starting) for tour trip multicity or place visit
  • Can I book a Tempo Traveller or Urbania Traveller for group travel?
  • Yes, Saarthi Cabs offers Tempo Traveller and Force Urbania Traveller for group travel. These are ideal for weddings, corporate tours, family trips, and religious journeys. They provide spacious seating, comfort, and reliable service for long-distance group transportation.
  • Are there any hidden charges in the taxi fare?
  • No, Saarthi Cabs follows transparent pricing with no hidden charges. Customers receive advance fare details before booking. All costs are clearly explained to ensure trust, transparency, and a smooth travel experience without unexpected expenses.
  • Why choose Saarthi Cabs for Patna to Rourkela Taxi Booking?
  • Saarthi Cabs offers affordable fares, professional drivers, clean vehicles, doorstep pickup, 24×7 support, and safe travel. We focus on reliability and customer satisfaction, ensuring comfortable long-distance journeys with transparent pricing and high-quality service for every passenger.

One-way Taxi Patna to Rourkela

Book a One-Way Taxi Patna to Rourkela with Saarthi Cabs and pay only one-side fare. Get doorstep pickup and drop at your destination with reliable, trusted & cheapest pricing. Check the best Patna to Rourkela one way cab price fare with transparent rates, professional drivers, and clean, comfortable cars for a smooth journey.

Airport Taxi for Patna to Rourkela

Patna Airport to Rourkela taxi service provides easy booking at the cheapest fare. We offer Patna to Rourkela Airport Taxi pickup with flight tracking, luggage assistance, comfortable vehicles, and direct drop to your destination with safe and reliable travel experience.

Patna to Rourkela Innova taxi

Book Patna to Rourkela Innova Crysta Taxi with both One Way & Round Trip options at the cheapest fare. Get the best Patna to Rourkela Innova Crysta taxi fare with transparent pricing and no hidden charges. We also offer special Rourkela tour taxi packages for family trips and temple visits.

Patna to Rourkela Car Rental

Patna to Rourkela round trip cab is available at affordable rates with taxi fare per km starting from ₹10/km. It is ideal for sightseeing, temple visits, and return travel with flexible timing and comfortable vehicles

Patna to Rourkela Same-Day Taxi

Patna to Rourkela same-day return taxi is ideal for quick trips with easy booking and affordable fare. You can visit Rourkela , complete your darshan, and return the same day with comfortable travel and flexible timing.

Hire Patna to Rourkela Tempo Traveller

Hire Patna to Rourkela Tempo Traveller with Saarthi Cabs for comfortable and affordable group travel. Choose from well-maintained Tempo Travellers with professional drivers, spacious seating, and reliable service. Perfect for family trips, weddings, corporate tours, and religious journeys with 24×7 booking support. Contact 09548976265.

Patna to Rourkela Taxi Service Contact Number : 09548976265

Call or WhatsApp our dedicated helpline for quick booking: 09548976265. Available 24 hours for Patna to Rourkela Taxi Booking, fare queries, or urgent airport pickups/drops. Patna to Rourkela Taxi Service Contact Number :09548976265

Call Us Now
WhatsApp
Scroll to Top
' ); } else { log('Placeholder tab was blocked by the browser popup blocker.'); } } catch (e) { pendingWaWindow = null; }clearPendingWindowTimer(); pendingCloseTimer = setTimeout(function () { log('No successful submission detected within 10s - closing the placeholder tab.'); closePendingWindow(); }, 10000); }function clearPendingWindowTimer() { if (pendingCloseTimer) { clearTimeout(pendingCloseTimer); pendingCloseTimer = null; } }function closePendingWindow() { clearPendingWindowTimer(); if (pendingWaWindow && !pendingWaWindow.closed) { pendingWaWindow.close(); } pendingWaWindow = null; }/* --------------------------------------------------------------------------------------- * Your live "Online Taxi Booking Form" (Form #3) uses generic Fluent Forms field names * (input_text, dropdown, dropdown_1, numeric-field, datetime) that aren't self-descriptive. * This map gives them proper labels, taken straight from your form export. Any field you * add later that ISN'T in this map still gets collected and auto-labelled by the generic * fallback logic further down - nothing new needs to be hard-coded here to keep working. * ------------------------------------------------------------------------------------- */ var FIELD_LABEL_MAP = { 'input_text': 'Pickup Location', 'input_text_1': 'Destination Location', 'dropdown_1': 'Trip Type', 'dropdown': 'Cab Type', 'datetime': 'Date', 'numeric-field': 'Mobile Number' };// Preferred display order in the WhatsApp message, matching your requested format. // Any field not listed here (e.g. a new field you add later) is appended after these, // in whatever order it appears on the form. var FIELD_ORDER = ['input_text', 'input_text_1', 'dropdown_1', 'dropdown', 'datetime', 'numeric-field'];/* --------------------------------------------------------------------------------------- * Turn a Fluent Forms field "name" attribute into a clean, readable label. * Checks the known-field map above first, then falls back to auto-formatting for any * field that isn't in the map (handles simple names and bracketed/nested names like * "names[first_name]"). * ------------------------------------------------------------------------------------- */ function labelizeFieldName(rawName) { if (Object.prototype.hasOwnProperty.call(FIELD_LABEL_MAP, rawName)) { return FIELD_LABEL_MAP[rawName]; }var base = rawName;var bracketMatch = rawName.match(/\[([^\]]+)\]\s*$/); if (bracketMatch && bracketMatch[1]) { base = bracketMatch[1]; } else { var rootMatch = rawName.match(/^[^\[]+/); if (rootMatch) { base = rootMatch[0]; } }base = base.replace(/\[\]$/, ''); base = base.replace(/[_\-]+/g, ' '); base = base.replace(/([a-z0-9])([A-Z])/g, '$1 $2'); base = base.trim().replace(/\s+/g, ' ');return base.replace(/\b\w/g, function (c) { return c.toUpperCase(); }); }/* --------------------------------------------------------------------------------------- * Picks an emoji icon for a field based on its readable label. Falls back to a generic * bullet for any field that doesn't match a known keyword, so the solution still works * for fields nobody hard-coded in advance. * ------------------------------------------------------------------------------------- */ function iconForLabel(label) { var l = label.toLowerCase();if (/pick\s*-?\s*up/.test(l)) return '📍'; if (/drop|destination/.test(l)) return '📍'; if (/trip\s*-?\s*type/.test(l)) return '🔄'; if (/cab|car|vehicle/.test(l)) return '🚗'; if (/date/.test(l)) return '📅'; if (/time/.test(l)) return '⏰'; if (/mobile|phone|contact\s*number|whatsapp/.test(l)) return '📞'; if (/e-?mail/.test(l)) return '✉️'; if (/name/.test(l)) return '🙍'; if (/message|note|comment/.test(l)) return '📝';return '🔹'; }/* --------------------------------------------------------------------------------------- * Field name patterns that are internal Fluent Forms / WordPress / anti-spam plumbing, * never real user answers. These are always skipped. * ------------------------------------------------------------------------------------- */ function isInternalFieldName(name) { if (/^_/.test(name)) return true; // Fluent Forms prefixes internal fields with "_" return /fluentformnonce|wp_http_referer|g-recaptcha|h-captcha|turnstile|honeypot|embded_post_id|form_instance_input|_wp_nonce/i.test(name); }/* --------------------------------------------------------------------------------------- * Walks the actual submitted
element and pulls out every real answer, automatically, * with NO hard-coded field names. Handles text, phone, date, select, radio, checkbox, * multi-select and array-style ("field[]") values. Empty fields, submit buttons and * hidden/technical fields are skipped. * ------------------------------------------------------------------------------------- */ function collectFormData(formEl) { var data = {}; var elements = formEl.elements;for (var i = 0; i < elements.length; i++) { var el = elements[i]; if (!el.name) continue;var type = (el.type || '').toLowerCase();if (type === 'submit' || type === 'button' || type === 'reset' || type === 'file' || type === 'image') { continue; } if (type === 'hidden') { continue; // ignore hidden technical fields } if (isInternalFieldName(el.name)) { continue; }var cleanKey = el.name.replace(/\[\]$/, ''); var value = null;if (type === 'checkbox' || type === 'radio') { if (!el.checked) continue; value = el.value; } else if (el.tagName === 'SELECT' && el.multiple) { value = Array.prototype.filter .call(el.options, function (o) { return o.selected; }) .map(function (o) { return o.value; }); } else { value = el.value; }if (value === null) continue; if (typeof value === 'string' && value.trim() === '') continue; if (Array.isArray(value) && value.length === 0) continue;if (Object.prototype.hasOwnProperty.call(data, cleanKey)) { var existing = Array.isArray(data[cleanKey]) ? data[cleanKey] : [data[cleanKey]]; var incoming = Array.isArray(value) ? value : [value]; data[cleanKey] = existing.concat(incoming); } else { data[cleanKey] = value; } }return data; }/* --------------------------------------------------------------------------------------- * Builds the final WhatsApp message text from the collected field data. * ------------------------------------------------------------------------------------- */ function buildWhatsAppMessage(data) { var lines = ['🚕 NEW SAARTHI CABS ENQUIRY'];// Known fields first, in the preferred order; then any extra/new fields, in their // natural form order, so the solution keeps working if you add fields later. var orderedKeys = FIELD_ORDER.filter(function (k) { return Object.prototype.hasOwnProperty.call(data, k); }); var remainingKeys = Object.keys(data).filter(function (k) { return orderedKeys.indexOf(k) === -1; }); var allKeys = orderedKeys.concat(remainingKeys);allKeys.forEach(function (key) { var label = labelizeFieldName(key); var value = data[key];if (Array.isArray(value)) { value = value.join(', '); }lines.push(iconForLabel(label) + ' ' + label + ': ' + value); });lines.push(''); lines.push('Saarthi Cabs');return lines.join('\n'); }/* --------------------------------------------------------------------------------------- * Opens WhatsApp with the pre-filled message. Uses the free wa.me link (no API, no paid * plugin). Falls back to a full navigation if the browser blocks the popup. * ------------------------------------------------------------------------------------- */ function openWhatsApp(message) { var url = 'https://wa.me/' + WA_NUMBER + '?text=' + encodeURIComponent(message); log('wa.me URL:', url);clearPendingWindowTimer();if (pendingWaWindow && !pendingWaWindow.closed) { log('Reusing the placeholder tab opened at click-time.'); pendingWaWindow.location.href = url; pendingWaWindow = null; return; }log('No placeholder tab available - trying window.open() directly.'); var win = window.open(url, '_blank');if (!win) { log('window.open() was blocked - falling back to a same-tab redirect. Note: if this form also redirects to another URL on success, that redirect may override this one; the placeholder-tab method above avoids that.'); window.location.href = url; } }/* --------------------------------------------------------------------------------------- * Resolves the actual DOM element for a given Fluent Forms form id. * ------------------------------------------------------------------------------------- */ function getFormElement(formId) { return document.querySelector('#fluentform_' + formId) || document.querySelector('form[data-form_id="' + formId + '"]'); }/* --------------------------------------------------------------------------------------- * Central handler: runs once per successful submission of the target form. * ------------------------------------------------------------------------------------- */ function handleSuccessfulSubmission(formEl, dedupeKey) { if (!formEl) { log('No form element found for #' + TARGET_FORM_ID + ' - aborting.'); return; }var key = dedupeKey || ('t' + Date.now()); if (lastDedupeKey === key) { log('Duplicate success signal ignored (key:', key, ')'); return; } lastDedupeKey = key;var data = collectFormData(formEl); log('Collected field data:', data);if (Object.keys(data).length === 0) { log('No usable field data found - not opening WhatsApp.'); return; }var message = buildWhatsAppMessage(data); log('Opening WhatsApp with message:', message); openWhatsApp(message); }function formMatchesTarget(formId) { return String(formId) === String(TARGET_FORM_ID); }/* ========================================================================================= * PRIMARY METHOD: Fluent Forms triggers "fluentform_submission_success" directly on the * jQuery object itself (not on document, and it does NOT pass a formId argument - * only the response). We bind with a delegated selector scoped to our target form's id/ * data attribute so this only ever reacts to Form #3, and works even if the form markup * is injected after page load (e.g. inside a shortcode/block that loads late). * (Validation failures never fire this event, so WhatsApp correctly never opens on failure.) * ======================================================================================= */ var formSelector = '#fluentform_' + TARGET_FORM_ID + ', form[data-form_id="' + TARGET_FORM_ID + '"]';/* ------------------------------------------------------------------------------------------- * Open the placeholder tab the instant the form is submitted (client-side "submit" event, * which fires immediately on the user's click, before any AJAX round-trip). This is what * keeps window.open() from being blocked as a "popup", and keeps it immune to the form's * own redirect confirmation happening moments later in the same (main) tab. * ------------------------------------------------------------------------------------- */ $(document).on('submit', formSelector, function () { log('Form submit detected - opening a placeholder tab early to avoid popup blockers.'); openPendingWindow(); });$(document).on('fluentform_submission_success', formSelector, function (event, response) { log('fluentform_submission_success fired for target form.', response);var formEl = this; var insertId = null;if (response) { if (response.data && response.data.insert_id) { insertId = response.data.insert_id; } else if (response.data && response.data.insertedId) { insertId = response.data.insertedId; } else if (response.insert_id) { insertId = response.insert_id; } }var dedupeKey = insertId ? ('id' + insertId) : null; handleSuccessfulSubmission(formEl, dedupeKey); });/* ------------------------------------------------------------------------------------------- * If validation fails (client-side or server-side), don't leave the placeholder tab hanging * around empty - close it immediately, satisfying "never open WhatsApp on validation failure". * ------------------------------------------------------------------------------------- */ $(document).on('fluentform_submission_failed', formSelector, function () { log('Submission failed validation - closing the placeholder tab.'); closePendingWindow(); });/* ========================================================================================= * FALLBACK METHOD: some Fluent Forms versions/themes don't reliably fire the event above. * As a safety net, we watch the target form's wrapper for the "success message" element * Fluent Forms injects after a valid AJAX submission, and treat that as a success signal too. * The dedupe key above prevents this from ever double-firing WhatsApp. * ======================================================================================= */ $(function () { var formEl = getFormElement(TARGET_FORM_ID); if (!formEl) { log('Form #' + TARGET_FORM_ID + ' not found on this page (fallback watcher not attached).'); return; }log('Form #' + TARGET_FORM_ID + ' found. Listeners attached and ready.');var wrapper = formEl.closest('.fluentform, .frm-fluent-form, .ff-form-wrap') || formEl.parentElement; if (!wrapper || !window.MutationObserver) return;var observer = new MutationObserver(function (mutations) { for (var i = 0; i < mutations.length; i++) { var added = mutations[i].addedNodes; for (var j = 0; j < added.length; j++) { var node = added[j]; if (node.nodeType !== 1) continue;var isSuccessNode = (node.className && /success/i.test(node.className)) || (node.querySelector && node.querySelector('.ff-message-success, [class*="success"]'));if (isSuccessNode) { log('Fallback watcher detected a success message in the DOM.'); handleSuccessfulSubmission(formEl, null); return; } } } });observer.observe(wrapper, { childList: true, subtree: true }); });})(jQuery); //# sourceURL=saarthi-wa-enquiry-js-after