Call or WhatsApp: +92 321 209 8738 WhatsApp: +971569803329 info@pixelsproagency.com

WooCommerce Payments

Payment Gateway in Pakistan for WooCommerce: PayFast, JazzCash, Easypaisa and Bank Gateways Compared

Choosing a payment gateway in Pakistan for WooCommerce has less to do with which logo looks nicest at checkout and more to do with paperwork, plugins and what happens after the customer taps Pay. The big international names are mostly off the table. The local options differ on NTN rules, setup fees, settlement days and whether their plugin even works with WooCommerce's newer block checkout. Below, we compare PayFast, JazzCash, Easypaisa, two bank gateways and Safepay using only what each provider publishes today, then walk through going live without a week of failed test orders.

Why Stripe, PayPal and WooPayments Aren't Options

Most WooCommerce tutorials assume you'll just install WooPayments. That doesn't work from Karachi or Lahore. Pakistan isn't on Stripe's list of supported countries, and WooPayments, which runs on Stripe, doesn't list it on its supported countries page either. WooCommerce also points out that what counts is the country where your business is registered, not where you live. PayPal's worldwide country list doesn't include Pakistan at all.

So a store registered in Pakistan and selling in rupees needs a gateway licensed locally. The good news is that several of them now cover cards, wallets and Raast in one integration.

Payment Gateway in Pakistan for WooCommerce: The Options Side by Side

Every row below comes from the provider's own website or official plugin listing. If a provider doesn't publish a figure, the table says so. We haven't filled the gap with a guess.

What each provider publishes, checked October 19, 2026. Terms change, so get current rates in writing before you sign.
ProviderCustomers can pay withWooCommercePublished chargesSettlementWho can apply
PayFast (now Premier PayFast)Visa, Mastercard, UnionPay, PayPak, bank transfer, JazzCash, Easypaisa, Raast QR and Request to PayPlugin listed alongside Shopify and Magento; sandbox available for testingOne-time setup fee of PKR 20,000 (non-refundable); no monthly or annual charge; per-transaction rates not listed in the FAQT+2 working daysValid NTN required for every merchant, individuals included; onboarding 3 to 4 working days with KYC
JazzCashJazzCash mobile account, local and international Visa/Mastercard, over-the-counter voucherWooCommerce is one of its listed plugins; free sandbox2% inclusive of taxes on each method; no setup, monthly or annual chargesNot stated on its onboarding page, so askValid CNIC and registered NTN; document set depends on business type
Easypaisaeasypaisa mobile account; OTC token paid at an easypaisa shop (no card option listed)WordPress/WooCommerce plugin listed, with an integration guide1% mobile account, 2% OTC, both inclusive of taxes; no annual or installation chargesMobile account: daily and instant. OTC: 7 working daysAny business with a live website or app; online application, documents and KYC
Alfa Payment Gateway (Bank Alfalah)Cards, JazzCash, Raast dynamic QR, Request to Pay, BNPL, Pay by LinkPlugin listed, along with Magento, OpenCart, PrestaShop and ShopifyNo setup or annual fee; rates depend on volume and exclude FEDT+1 working daysInstant account for individuals and sole proprietors; corporate account for registered entities takes a few weeks
HBLPay (HBL)Visa, Mastercard, UnionPay; HBL and partner-bank accounts and walletsFree plugin on WordPress.org; version 6.0.2 states Checkout Blocks and HPOS supportMDR per transaction, plus setup up to PKR 100,000, annual maintenance up to PKR 100,000 and up to PKR 50 per transaction (excluding tax, negotiable)Up to two working daysRegistered business in Pakistan with a company account at HBL
SafepayDomestic and international cards, wallets, RaastPricing page says its plugin supports current WordPress and WooCommerce2.9% + Rs 30 on domestic cards (+0.3% international); 1.5% wallets; 1.5% Raast; no setup or monthly feeNot stated; Instant Payouts cost 1.5%Your website must pass its published checklist first

A note on names: searching "PayFast WooCommerce" often brings up Payfast in South Africa, which is a different company. WooCommerce's own Payfast extension requires ZAR as the store currency, so it won't work for a rupee store. Pakistan's PayFast supplies its own WooCommerce plugin as part of its sign-up and integration process.

Reading the Table: Which Fits Your Store

A few patterns help narrow things down quickly:

  • You want cards, wallets and Raast through one contract. PayFast and Alfa Payment Gateway both list all three. That means one plugin, one dashboard and one settlement report to reconcile.
  • Your buyers mostly pay from their phones with a wallet. JazzCash and Easypaisa publish the clearest flat rates. Easypaisa's 1% on wallet payments is the lowest published figure in the table. It doesn't list card payments, though, so you'd still need something else for cards.
  • You already bank with HBL or Bank Alfalah. Start there. HBLPay requires an HBL company account anyway, and a bank that already has your business on file may need less new paperwork.
  • You don't have an NTN yet. Both PayFast and JazzCash say it's required. Bank Alfalah offers an instant account to individuals and sole proprietors, but ask which documents it needs before you assume it's the shortcut.

A second gateway means another dashboard, settlement cycle and plugin to update. Most small stores do fine with one aggregator plus cash on delivery.

Where Raast Fits In

Raast is the State Bank's instant payment system. Its Person to Merchant service, launched in December 2023, lets businesses take payments by QR code, Raast alias, IBAN and Request to Pay. Two parts of that circular matter for a store owner. Customers must not be charged a fee for paying a merchant. Merchant service providers may charge the merchant a reasonable fee, and Safepay, for example, lists Raast at 1.5%.

WooCommerce has no built-in Raast method. You get a proper Raast checkout, with the order updating automatically, through a gateway that supports it. The manual alternative is the built-in Direct bank transfer method, with your IBAN or Raast ID in the payment instructions. WooCommerce's BACS documentation explains that those orders sit at On hold until you check your bank account and update them yourself. That's fine at ten orders a week, not at a hundred.

Keep Cash on Delivery, but Put a Ceiling on It

Cash on delivery isn't going away, and switching it off overnight can lose customers who've never prepaid a new store. The real risk is a large COD order that gets refused at the door after you've paid for shipping. WooCommerce's COD settings already let you limit it by shipping method. They can't limit it by order value, so we use a short snippet for that:

<?php
/**
 * Hide Cash on Delivery when the cart total is above a set amount.
 * Add via a small custom plugin or a code snippets plugin, not the theme.
 */
add_filter( 'woocommerce_available_payment_gateways', 'ppa_hide_cod_above_limit' );

function ppa_hide_cod_above_limit( $gateways ) {
	// Only run on the storefront, and only when a cart exists.
	if ( is_admin() || ! function_exists( 'WC' ) || ! WC()->cart ) {
		return $gateways;
	}

	$cod_limit = 25000; // Order total in your store currency (PKR here).

	if ( isset( $gateways['cod'] ) && (float) WC()->cart->get_total( 'edit' ) > $cod_limit ) {
		unset( $gateways['cod'] );
	}

	return $gateways;
}

We tested this on a clean install running WordPress 7.1.3 and WooCommerce 11.2.1, with COD and Direct bank transfer enabled. A PKR 18,000 cart offered both methods. At PKR 27,000, COD disappeared, both in WooCommerce's available-gateways list that the classic checkout uses and in the Store API response that the block checkout reads. cod is the ID of WooCommerce's built-in COD method. Pick a limit that matches your own return rates. There's no standard number.

Going Live: The Steps in Order

Most delays happen because people do these steps in the wrong order. This is the sequence we follow:

  1. Finish the website before you apply. Easypaisa only onboards businesses with a live website or app. Safepay publishes a website checklist that's a good benchmark for any gateway: a contact page with address, email and phone; terms and conditions with your legal business name; a privacy policy; a complaints process with a response time; shipping and cancellation terms; and a refund and returns policy with a stated turnaround time. It also names stock photos, broken links and dummy testimonials as reasons for rejection.
  2. Collect the documents. JazzCash's sandbox documentation lists them by business type. A sole proprietor needs a CNIC copy, a sole-proprietorship declaration, an account opening request and an NTN. Partnerships and companies need more, from partnership deeds to incorporation papers and director lists.
  3. Get sandbox credentials and check your checkout type. Since WooCommerce 8.3, new stores use the Cart and Checkout blocks by default. Some gateway plugins only support the classic checkout. If yours doesn't appear in sandbox, WooCommerce's guide to customizing cart and checkout shows how to switch both pages back to the classic shortcode.
  4. Install the plugin the provider gives you. Don't just grab whatever turns up first in the plugin directory. Safepay's pricing page says its plugin supports current WooCommerce, yet the "Safepay for WooCommerce" listing on WordPress.org was last updated in 2020 and carries the not-tested warning. Ask the provider which one is current.
  5. Register the exact live return and notification URLs. JazzCash's integration guide says the start of your return URL has to be registered with them, and requests that don't match are rejected. Use your final domain on HTTPS. Credentials that work on a staging subdomain can fail on launch day for exactly this reason.
  6. Test every outcome, not just success. Try a paid order, a declined card, a cancelled payment, a wallet request left to expire, and a refund. After each one, check that the WooCommerce order status changed by itself.
  7. Switch to live, then make one real purchase. Buy something cheap with your own card or wallet, check that the order moves to Processing and that the confirmation email arrives, and then refund it. Our Asian Elegance By Z go-live checklist had the same line: a test order completes and the confirmation email reaches the shop owner.
  8. Reconcile the first settlement. Match the deposit against your orders, minus the fees. PayFast's FAQ says refunds take 7 to 21 working days depending on the customer's bank, so tell customers that in your refund policy.
From WooCommerce checkout to money in your bank account Flow diagram. Step 1: the customer picks a payment method at WooCommerce checkout. Step 2: they are sent to the gateway's hosted page to pay by card with OTP, wallet approval or Raast. Step 3: the gateway approves or declines. From there two things happen: the customer's browser returns to the store's return URL and sees the thank-you page, and separately the gateway sends a server-to-server notification (IPN or webhook) that changes the WooCommerce order from Pending payment to Processing. Later, step 5, the gateway settles the funds, minus its fees, into the merchant's bank account on its settlement cycle. A warning at the bottom notes that if the notification URL is wrong, the customer pays but the order stays at Pending payment. 1. Checkout Customer picks a method on your WooCommerce store 2. Gateway page Card + OTP, wallet approval, or Raast 3. Gateway decides Approved or declined by bank or wallet 4a. Browser Return URL shows the thank-you page 4b. IPN / webhook Server to server Order status Pending payment → Processing later, in a batch 5. Settlement to your bank account Order total minus the provider's fee, on its own cycle (for example T+1 or T+2 working days) If the IPN or webhook URL is wrong, the customer pays but the order stays at "Pending payment".
The thank-you page and the order update arrive by different routes. Test both.

Pre-Launch Payment Checklist

  • Store currency set to PKR, and the gateway confirmed for the currencies you actually show
  • Contact, terms, privacy, shipping, cancellation and refund pages live, linked in the footer, and written for your actual products
  • HTTPS on every page, with no mixed-content warnings at checkout (our security essentials guide covers SSL)
  • Gateway visible in whichever checkout you use, block or classic
  • Return and IPN/webhook URLs registered for the live domain
  • Success, failure, cancel, expiry and refund each tested in sandbox
  • COD limit set, and explained in your checkout notes or FAQ so customers aren't surprised
  • One real live payment made and refunded
  • Staff know where to see failed payments in the gateway's merchant portal

Common Payment Gateway Mistakes

  • Applying with a half-built site. A missing refund policy or placeholder product photos can get an application rejected, and resubmitting costs you more time than finishing the site first.
  • Marking orders paid from the thank-you page. A customer who closes the tab never sees that page. The notification from the gateway's server is what should update the order.
  • Treating every quoted fee as the total. Look at whether a rate includes tax. Easypaisa's and JazzCash's figures do, while Bank Alfalah's exclude FED. Check for setup and annual fees too.
  • Shipping Direct bank transfer orders before the money arrives. WooCommerce holds them precisely so you can check your bank first.

If your store is still on the drawing board, our WooCommerce setup guide covers products, shipping and taxes, and e-commerce website essentials covers the trust signals that make people willing to pay online in the first place.

Frequently Asked Questions

Can I use Stripe with WooCommerce in Pakistan?

Not with a business registered in Pakistan. Pakistan isn't on Stripe's supported countries list, and WooPayments, which is built on Stripe, doesn't list it either. Use a locally licensed gateway instead.

Do I need an NTN to get a payment gateway in Pakistan?

For PayFast and JazzCash, yes. Both say an NTN is required, and PayFast says this applies to individuals too. Bank Alfalah offers an instant merchant account for individuals and sole proprietors, so ask it which documents it accepts.

Is there a JazzCash WooCommerce plugin?

Yes. JazzCash lists WooCommerce among its plugins, and its sandbox is free to sign up for. Third-party plugins exist as well. Whichever you use, check whether it supports the block checkout.

How long do Pakistani gateways take to settle payments?

It depends on the provider. PayFast says T+2 working days, Bank Alfalah T+1, HBL up to two working days, and Easypaisa daily and instant for wallet payments but 7 working days for OTC. JazzCash doesn't state a timeline on its onboarding page, so ask before you sign.

Should I turn off cash on delivery once I have a gateway?

Usually not straight away. Customers who have never bought from you may not be ready to pay in advance. A better approach is to cap COD by order value or shipping method and offer online payment on larger orders.

Setting Up Payments on a WooCommerce Store?

Tell us which gateway you've applied for and what checkout your store uses. We can help you check the plugin, the return and IPN URLs, and the test orders before you switch to live.

Get in Touch