Skip to content
New The trip builder: day-by-day itineraries with maps, checks and a branded PDF
Tourtify

Payment providers

Flutterwave

Accept cards, mobile money (M-Pesa, MTN, Airtel), bank transfer and USSD from travellers across Africa, paid into your own Flutterwave account.

Start free trial Included on All plans

Who it's for

Why operators use Flutterwave

Operators whose travellers are anywhere in Africa. Offering the payment methods people already use at home is one of the simplest ways to stop them abandoning checkout.

Highlights

  • Travellers pay with cards, M-Pesa, MTN and Airtel mobile money, bank transfer and USSD
  • Money is paid into your own merchant account, never held by Tourtify
  • Payments are matched to the booking automatically, so balances and receipts stay correct
  • Works alongside Stripe and your other payment options

Good to know

  • Prices are charged in 15 African and international currencies.
  • You connect your own merchant account from Payments in your console.
  • Add a webhook so payments confirm instantly and refunds made in Flutterwave show up on your bookings.

One gateway across many African markets

If you sell to travellers in several African countries, Flutterwave covers cards, mobile money (M-Pesa, MTN and Airtel), bank transfer and USSD from one account. Tourtify records how each payment was made, so you can see which methods your travellers use.

Flutterwave appears at checkout for tours priced in NGN, GHS, KES, ZAR, UGX, TZS, RWF, ZMW, MWK, XOF, XAF, EGP, USD, EUR or GBP.

A payment page timed to the seat hold

The traveller pays on Flutterwave's hosted page. Tourtify sets the page's session to last as long as the seats are held, between 10 minutes and a day, so nobody can pay after their seats have been released.

A booking confirms only when Flutterwave's verify API reports a successful transaction with the same reference as the checkout. Failed attempts don't close the checkout, so the traveller can try again. Pending payments are checked every five minutes.

Webhooks with a secret hash

For instant confirmation, add the plugin's URL under Webhooks in Flutterwave and choose a secret hash: any long random text. Enter the same hash in Tourtify. Each webhook is checked against it, and webhooks that don't match are rejected.

Refund webhooks are not taken at face value. Tourtify reads the refund back from Flutterwave and records it on the booking only once Flutterwave reports it completed.

Refunds

Refunds from a booking go to Flutterwave against the original transaction, in full or in part. Flutterwave's refund API has no idempotency keys, so Tourtify remembers each refund for 30 days and a retry never refunds twice.

Setting up Flutterwave

  1. 1Copy your test secret key. In the Flutterwave Dashboard › Settings › API keys, copy the key that starts with FLWSECK_TEST-.
  2. 2Connect on the Payments page. Paste it and choose Test. Tourtify checks the key with Flutterwave.
  3. 3Add the webhook. In Flutterwave › Settings › Webhooks, paste the URL shown in the plugin and choose a secret hash.
  4. 4Enter the same secret hash. Paste the hash into the plugin's Webhooks section, then make a test booking.
  5. 5Go live. Replace the key with your live key (FLWSECK-…), choose Live, and set the webhook for live mode in Flutterwave.

Payment providers

How payment providers plugins fit in

Payment provider plugins add the gateways travellers use at home, from PayPal to Mercado Pago, Paystack, Razorpay, KOMOJU or eSewa. Each connects your own merchant account, so money is paid to you directly and Tourtify takes no commission. Stripe is built in; travellers only see gateways that support the booking's currency.

  1. 1

    Switch it on

    Open Plugins in your console and turn it on. No code and nothing to install.

  2. 2

    Make your choices

    Adjust the settings to match how your business works, or keep the defaults.

  3. 3

    It works everywhere it should

    Your website, checkout, emails and console pick it up straight away.

FAQ

Flutterwave: questions

Can travellers pay with M-Pesa?

Yes, when the tour is priced in a currency where Flutterwave offers it, such as KES, and the method is active on your Flutterwave account.

Do payments work without the webhook?

Yes. Each payment is verified with Flutterwave and checked every five minutes. The webhook makes confirmation instant and brings in refunds made in Flutterwave.

What does Flutterwave charge?

Check Flutterwave's pricing for your country. Tourtify takes no commission.

Why doesn't Flutterwave show at checkout?

The tour is priced in a currency Flutterwave doesn't take. The status panel warns you; add a supported currency with the Currency switcher.

Which plans include Flutterwave?

Flutterwave is available on All plans, at no extra cost.

How do I switch on Flutterwave?

In your Tourtify console, open Plugins, find it in the list and switch it on. Its settings open straight away, and you can switch it off again at any time.

Do I need a developer?

No. Plugins are built into Tourtify and set up from the console. Where an outside account is involved, such as a payment provider, you connect it by entering your account details.

Does Flutterwave work with my other plugins?

Yes. Every plugin is built and maintained by Tourtify, so they work together: discounts, deposits, vouchers and fees all add up correctly at checkout.

Start selling tours direct

Try Tourtify free for 30 days. Add your tours, pick a theme and take your first booking today.