Skip to content

Payments & gateways

ProStripe and 6 other gateways are Yatra Pro. The free plugin ships PayPal & Pay Later. Activate a license under Yatra → License to unlock the rest.View pricing →

Yatra's free plugin includes PayPal and Pay Later as fully-working gateways. The other seven gateways — Stripe, Razorpay, Mollie, Paystack, Square, Authorize.Net, Bank Transfer — are part of Yatra Pro.

What's included

GatewayFreeProNotes
PayPalSimple (email + IPN) and REST modes.
Pay LaterCustomer pays on a deposit + balance flow, manually managed.
StripePROOne-time + scheduled balance payments.
RazorpayPROIndia: cards, UPI, netbanking, wallets.
MolliePROEurope: iDEAL, Bancontact, SEPA, cards.
PaystackPROAfrica-first; cards, transfers, mobile money.
SquarePRONorth America / UK / AU / JP cards.
Authorize.NetPROUS-centric cards.
Bank TransferPROManual settlement, with bank details on the booking.

Where to configure

Open Yatra → Settings → Payment.

The screen has three sections:

  1. Currency & test mode — currency, decimals, test mode master switch.
  2. Gateway list — every gateway as a row you can toggle on / off and reorder by drag.
  3. Gateway details — expand the row to see fields specific to that gateway.

Pro-gated gateways display a PRO badge until you have an active license.

Currency

Set under Settings → Currency:

  • Currency — code (USD, EUR, INR, NPR, AUD, …).
  • Currency position$199, 199$, $ 199, or 199 $.
  • Thousand separator, or . or space.
  • Decimal separator. or ,.
  • Number of decimals — usually 2 (or 0 for JPY).

PayPal (free)

Two modes:

Simple mode

Easy setup — just an email address.

  1. Tick Enable PayPal.
  2. Set Mode to Simple (email + IPN).
  3. Paste your PayPal email.
  4. Tick Test mode (sandbox) until you've tested.
  5. Save.

Advanced (REST) mode

Full webhook support, scheduled payments. Requires PayPal developer credentials.

  1. In your PayPal developer dashboard, create an app and copy Client ID and Secret.
  2. Set up a webhook on the PayPal app pointing to https://yoursite.com/wp-json/yatra/v1/webhooks/paypal.
  3. Copy the Webhook ID.
  4. In Yatra, set Mode to Advanced (REST), paste the three values.
  5. Save.

Pay Later (free)

For travel agents who confirm with a deposit + remainder workflow, or who collect cash / wire / cheque outside the site.

  1. Tick Enable Pay Later.
  2. Type the Instructions customers see at checkout.
  3. Optionally tick Auto-confirm booking on Pay Later selection.

When customers pick Pay Later at checkout, Yatra creates a Pending booking. Once you've received the money, mark the payment Completed in Yatra → Payments.

Stripe PRO

PROStripe — cards, wallets, and scheduled balance payments

Yatra Pro includes Stripe with first-class checkout integration plus support for the Scheduled Payments module — auto-charge the balance on a future date.

Unlock Stripe →

Setup (after activating Pro):

  1. Tick Enable Stripe.
  2. Paste Publishable key and Secret key from your Stripe dashboard.
  3. Create a webhook in Stripe pointing to https://yoursite.com/wp-json/yatra/v1/webhooks/stripe.
  4. Copy the webhook signing secret (whsec_...) into Webhook secret.
  5. Tick Test mode, save, run a test booking with card 4242 4242 4242 4242.
  6. Switch to live keys and run one tiny live transaction, then refund it via the Stripe dashboard to verify the full loop.

Razorpay PRO

Popular in India.

  • Key ID + Key Secret from the Razorpay dashboard.
  • Webhook URL: https://yoursite.com/wp-json/yatra/v1/webhooks/razorpay.
  • Optional Webhook secret.

Mollie PRO

Strong in Europe (Netherlands, Belgium, Germany, France).

  • API key (one key for live or test, prefixed live_ / test_).
  • Optional list of Payment methods (iDEAL, Bancontact, etc.).
  • Optional Webhook secret.

Paystack PRO

Africa-first.

  • Public key + Secret key.
  • Optional Payment channels.
  • Optional Webhook secret.

Square PRO

US, UK, Canada, Australia, Japan.

  • Application ID, Access token, Location ID, Webhook signature key.
  • Sandbox has its own credentials.

Authorize.Net PRO

US-centric; popular with established merchants.

  • API Login ID, Public client key, Transaction key, Signature key.
  • Sandbox URL: https://sandbox.authorize.net.

Bank Transfer PRO

Fields:

  • Bank name, Account name, Account number, Routing / SWIFT, Instructions.

These details show on the booking confirmation page. The booking is Pending until you mark it paid.

PROSeven premium gateways — one license

Stripe, Razorpay, Mollie, Paystack, Square, Authorize.Net, and Bank Transfer all unlock with a single Yatra Pro license.

Compare Yatra Pro plans →

Deposits & flexible payments PRO

PROTake 30% deposits, charge balance later

The Flexible Payments module lets you collect a deposit at booking time. Combine with Scheduled Payments to auto-charge the balance on a future date (e.g. 30 days before travel).

Unlock deposits →

To configure:

  1. Open Yatra → Settings → Payment.
  2. Find the Partial / Deposit Payment section.
  3. Set the Deposit type (percentage or fixed) and the Default balance due (e.g. 30 days before travel).

Per-trip overrides are available in the trip's Pricing section.

The Payments admin

Open Yatra → Payments.

You'll see every payment record across all bookings, with:

  • Search by payment number, customer, or transaction ID.
  • Status filter — Completed, Pending, Partial, Failed, Refunded, Cancelled.
  • Method filter — by gateway.
  • Sort — by Date, Number, Customer, Amount, Method, Status.

Default columns: Payment, Customer, Booking, Amount, Method, Status, Date.

Add a payment manually

Click + Add New Payment to record an offline payment (cash, wire, cheque):

  • Booking — searchable dropdown (search by booking code, customer name, or email).
  • Payment Amount.
  • Payment Method — Credit Card, Debit Card, PayPal, Bank Transfer, Cash, Check, Other.
  • Payment Date — picker (can't be future).
  • Transaction ID (optional).
  • Notes (internal).
  • Sidebar: Payment Status — Pending, Completed, Partial, Failed, Refunded.

Click Save Payment. The booking's Due Now updates instantly.

Refunds

Three patterns depending on the gateway:

GatewayRecommended refund flow
PayPal / StripeRefund in the gateway dashboard first, then mark refunded in Yatra.
Razorpay / Mollie / Paystack / Square / Authorize.NetSame — gateway dashboard first, then mark refunded.
Pay Later / Bank TransferRefund manually via your bank, then mark refunded.

To mark refunded:

  • Single payment — open Payments, click the row → Edit → set Status to Refunded.
  • Bulk — tick rows in the Payments list → bulk action Mark as Refunded.

When you mark refunded:

  • The payment status changes.
  • The booking's payment status updates accordingly.
  • An invoice download is still available (now marked refunded).
  • The yatra_payment_refunded action fires for downstream automations.

Test mode workflow

A safe way to test any gateway:

  1. Toggle Test mode on.
  2. Paste sandbox / test keys.
  3. Set up the gateway webhook in sandbox mode pointing to your staging URL.
  4. Book a trip as a fresh test customer with the gateway's test card or sandbox account.
  5. Verify: booking shows Confirmed, payment shows Completed, and the receipt email arrives.
  6. Switch to Live mode, paste live keys, change the webhook to live mode, and run one small live transaction with a real card. Refund it via the gateway dashboard.

Webhook URLs (cheat sheet)

https://yoursite.com/wp-json/yatra/v1/webhooks/paypal
https://yoursite.com/wp-json/yatra/v1/webhooks/paypal-ipn
https://yoursite.com/wp-json/yatra/v1/webhooks/stripe
https://yoursite.com/wp-json/yatra/v1/webhooks/razorpay
https://yoursite.com/wp-json/yatra/v1/webhooks/mollie
https://yoursite.com/wp-json/yatra/v1/webhooks/paystack
https://yoursite.com/wp-json/yatra/v1/webhooks/square
https://yoursite.com/wp-json/yatra/v1/webhooks/authorize-net

What's next