{"id":302812,"date":"2026-05-26T11:23:49","date_gmt":"2026-05-26T11:23:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/paybridgenp-for-woocommerce\/"},"modified":"2026-05-26T13:13:56","modified_gmt":"2026-05-26T13:13:56","slug":"paybridgenp-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/fa.wordpress.org\/plugins\/paybridgenp-for-woocommerce\/","author":23484806,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.1","stable_tag":"1.1.1","tested":"7.0","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"PayBridgeNP for WooCommerce","header_author":"PayBridgeNP","header_description":"Accept payments via eSewa, Khalti, and more through PayBridgeNP.","assets_banners_color":"0f172a","last_updated":"2026-05-26 13:13:56","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/paybridgenp.com\/integrations\/woocommerce","header_author_uri":"https:\/\/paybridgenp.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":93,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.1":{"tag":"1.1.1","author":"paybridgenp","date":"2026-05-26 13:13:56"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3549178,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3549178,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3549178,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3549178,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3549178,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.1"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[27582,220728,14484,6593,286],"plugin_category":[45],"plugin_contributors":[264451],"plugin_business_model":[],"class_list":["post-302812","plugin","type-plugin","status-publish","hentry","plugin_tags-esewa","plugin_tags-khalti","plugin_tags-nepal","plugin_tags-payment-gateway","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-paybridgenp","plugin_committers-paybridgenp"],"banners":{"banner":"https:\/\/ps.w.org\/paybridgenp-for-woocommerce\/assets\/banner-772x250.png?rev=3549178","banner_2x":"https:\/\/ps.w.org\/paybridgenp-for-woocommerce\/assets\/banner-1544x500.png?rev=3549178","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/paybridgenp-for-woocommerce\/assets\/icon.svg?rev=3549178","icon":"https:\/\/ps.w.org\/paybridgenp-for-woocommerce\/assets\/icon.svg?rev=3549178","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>PayBridgeNP for WooCommerce lets your store accept payments through the most popular Nepali\ndigital wallets and payment methods without writing a single line of code.<\/p>\n\n<p><strong>Supported payment methods<\/strong><\/p>\n\n<ul>\n<li>eSewa<\/li>\n<li>Khalti<\/li>\n<li>Fonepay<\/li>\n<\/ul>\n\n<p>Customers choose their preferred method on a branded, mobile-friendly checkout page hosted by\nPayBridgeNP. Your store never handles raw payment credentials.<\/p>\n\n<p><strong>Features<\/strong><\/p>\n\n<ul>\n<li>One-time setup: enter your PayBridgeNP secret key and you're live<\/li>\n<li>Sandbox mode: use test API keys for safe development and QA<\/li>\n<li>Webhook support: reliable order updates via signed server-to-server callbacks<\/li>\n<li>HMAC-SHA256 signature verification on all webhooks<\/li>\n<li>HPOS (High-Performance Order Storage) compatible<\/li>\n<li>Block checkout compatible: works with both the classic shortcode checkout and the modern WooCommerce Blocks checkout<\/li>\n<li>Works with any WordPress permalink structure<\/li>\n<\/ul>\n\n<p><strong>How it works<\/strong><\/p>\n\n<ol>\n<li>Customer places an order and selects <em>PayBridgeNP<\/em> at checkout<\/li>\n<li>They are redirected to the PayBridgeNP hosted payment page where they pick a wallet<\/li>\n<li>After payment they return to your store's order-received page; the order is set to <em>On Hold<\/em> immediately<\/li>\n<li>A signed <code>payment.succeeded<\/code> webhook from PayBridgeNP confirms the payment server-to-server and moves the order to <em>Processing<\/em><\/li>\n<\/ol>\n\n<p>The webhook is what provides authoritative confirmation. Without it, orders stay On Hold indefinitely.<\/p>\n\n<!--section=installation-->\n<p><strong>From ZIP (recommended)<\/strong><\/p>\n\n<ol>\n<li>Download the latest <code>paybridge-np-woocommerce.zip<\/code> from the releases page<\/li>\n<li>In your WordPress admin go to <em>Plugins \u2192 Add New \u2192 Upload Plugin<\/em><\/li>\n<li>Upload the ZIP and click <em>Install Now<\/em>, then <em>Activate<\/em><\/li>\n<li>Go to <em>WooCommerce \u2192 Settings \u2192 Payments<\/em> and enable <em>PayBridgeNP<\/em><\/li>\n<li>Enter your secret key and (optionally) your webhook signing secret<\/li>\n<\/ol>\n\n<p><strong>From source (developers)<\/strong><\/p>\n\n<ol>\n<li>Clone or copy the <code>packages\/woocommerce<\/code> directory into <code>wp-content\/plugins\/paybridge-np-woocommerce<\/code><\/li>\n<li>Run <code>composer install --no-dev<\/code> inside the plugin directory<\/li>\n<li>Activate the plugin in WordPress admin and follow steps 4-5 above<\/li>\n<\/ol>\n\n<p><strong>Webhook setup (required for orders to reach Processing)<\/strong><\/p>\n\n<ol>\n<li>In your PayBridgeNP dashboard go to <em>Webhooks \u2192 Add endpoint<\/em><\/li>\n<li>Set the URL to: <code>https:\/\/yourstore.com\/?wc-api=paybridge_webhook<\/code><\/li>\n<li>Subscribe to: <code>payment.succeeded<\/code>, <code>payment.failed<\/code>, <code>payment.cancelled<\/code><\/li>\n<li>Copy the signing secret and paste it into the <em>Webhook Signing Secret<\/em> field in WooCommerce settings<\/li>\n<\/ol>\n\n<p><strong>Local development webhook testing<\/strong><\/p>\n\n<p>PayBridgeNP needs a publicly reachable URL to deliver webhooks. Use a tunnel tool to expose your local server:<\/p>\n\n<pre><code>`bash\n<\/code><\/pre>\n\n<p>ngrok http 80\n    `<\/p>\n\n<p>Then use the generated <code>https:\/\/xxx.ngrok.io\/paynep\/?wc-api=paybridge_webhook<\/code> as your webhook endpoint URL in the dashboard.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20currency%20does%20this%20gateway%20support%3F\"><h3>What currency does this gateway support?<\/h3><\/dt>\n<dd><p>Your WooCommerce store currency must be set to NPR (Nepalese Rupee).<\/p><\/dd>\n<dt id=\"do%20i%20need%20a%20paybridgenp%20account%3F\"><h3>Do I need a PayBridgeNP account?<\/h3><\/dt>\n<dd><p>Yes. Sign up at paybridgenp.com to get your API keys.<\/p><\/dd>\n<dt id=\"is%20sandbox%2Ftest%20mode%20available%3F\"><h3>Is sandbox\/test mode available?<\/h3><\/dt>\n<dd><p>Yes. Create a sandbox project in your PayBridgeNP dashboard, use the <code>sk_test_<\/code> key, and all\npayments will go through the eSewa\/Khalti sandbox environments.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20webhook%20is%20not%20configured%3F\"><h3>What happens if the webhook is not configured?<\/h3><\/dt>\n<dd><p>Orders will still be created and marked <em>On Hold<\/em> when the customer returns from payment.\nWithout a webhook the order will not automatically move to <em>Processing<\/em>. Webhooks are strongly\nrecommended for a reliable store experience.<\/p><\/dd>\n<dt id=\"is%20this%20plugin%20compatible%20with%20the%20woocommerce%20block%20checkout%3F\"><h3>Is this plugin compatible with the WooCommerce block checkout?<\/h3><\/dt>\n<dd><p>Yes. PayBridgeNP works with both the classic shortcode checkout and the modern WooCommerce Blocks checkout out of the box.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Rename gateway classes and the icon filter to use a consistent <code>Paybridge_WC<\/code> \/ <code>paybridge_wc_<\/code> prefix, matching the existing <code>PAYBRIDGE_WC_*<\/code> constants (WordPress.org plugin guidelines on unique prefixes)<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Bundle the latest PayBridgeNP PHP SDK (3.0.0) with the new typed exception hierarchy and nested error envelope handling<\/li>\n<li>Errors thrown from PayBridgeNP API calls are now typed exceptions (AuthenticationException, AccountException, PermissionException, InvalidRequestException, IdempotencyException, RateLimitException) \u2014 branch with instanceof in custom integrations<\/li>\n<li>Every exception now carries getErrorType(), getErrorCode(), and getRequestId() \u2014 quote getRequestId() in support requests for fastest triage<\/li>\n<li>Backward compatible: the SDK still parses the legacy flat error shape during the API transition window<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Add <code>Requires Plugins: woocommerce<\/code> header so WordPress 6.5+ enforces the WooCommerce dependency at activation<\/li>\n<li>Bundle the latest PayBridgeNP PHP SDK (2.0.0)<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>eSewa, Khalti, and Fonepay support via PayBridgeNP hosted checkout<\/li>\n<li>Classic shortcode checkout and WooCommerce Blocks checkout support<\/li>\n<li>Webhook handler with HMAC-SHA256 signature verification (signing secret required)<\/li>\n<li>HPOS compatible<\/li>\n<\/ul>","raw_excerpt":"Accept payments from Nepali customers via eSewa, Khalti, and more, powered by PayBridgeNP.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/302812","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=302812"}],"author":[{"embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/paybridgenp"}],"wp:attachment":[{"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=302812"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=302812"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=302812"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=302812"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=302812"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fa.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=302812"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}