{"id":270611,"date":"2026-01-08T15:36:30","date_gmt":"2026-01-08T15:36:30","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/victoriabank-mia-gateway-for-woocommerce\/"},"modified":"2026-09-24T13:17:46","modified_gmt":"2026-09-24T13:17:46","slug":"mia-payment-gateway-for-victoriabank","status":"publish","type":"plugin","link":"https:\/\/en-gb.wordpress.org\/plugins\/mia-payment-gateway-for-victoriabank\/","author":23395273,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"3.0.1","stable_tag":"3.0.1","tested":"7.1.2","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"MIA, Bank Card & StarCard Payment Gateway for VictoriaBank (Community Edition)","header_author":"Programator Independent","header_description":"Accept payments via VictoriaBank MIA instant payment system for WooCommerce","assets_banners_color":"","last_updated":"2026-09-24 13:17:46","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/inginerit\/MIA-Payment-Gateway-for-VictoriaBank","header_author_uri":"https:\/\/github.com\/inginerit","rating":0,"author_block_rating":0,"active_installs":10,"downloads":487,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.1.3":{"tag":"2.1.3","author":"inginerit","date":"2026-01-09 16:11:52","revision":3436078},"2.1.4":{"tag":"2.1.4","author":"inginerit","date":"2026-01-09 17:05:29","revision":3436154},"2.2.0":{"tag":"2.2.0","author":"inginerit","date":"2026-09-24 12:20:39","revision":3711260},"3.0.0":{"tag":"3.0.0","author":"inginerit","date":"2026-09-24 12:59:26","revision":3711327},"3.0.1":{"tag":"3.0.1","author":"inginerit","date":"2026-09-24 13:17:46","revision":3711362}},"upgrade_notice":{"3.0.1":"<p>Fixes MIA payment notifications from the bank and shows the callback URLs to register with VictoriaBank. Recommended for all users.<\/p>","3.0.0":"<p>Major update: adds Visa\/Mastercard, StarCard Installments and StarCard Points. Existing MIA settings and orders are preserved. Requires PHP 8.0+ - sites on older PHP stay on 2.2.0.<\/p>","2.2.0":"<p>Adds MIA partial refunds and WooCommerce Checkout Blocks support.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3435369,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3435369,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.1.3","2.1.4","2.2.0","3.0.0","3.0.1"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Payment methods list in WooCommerce settings","2":"Visa\/Mastercard gateway configuration","3":"MIA payment QR code on thank-you page","4":"StarCard Installments checkout option"}},"plugin_section":[],"plugin_tags":[11475,251900,147984,6593,286],"plugin_category":[45],"plugin_contributors":[253587],"plugin_business_model":[],"class_list":["post-270611","plugin","type-plugin","status-publish","hentry","plugin_tags-credit-card","plugin_tags-mia","plugin_tags-moldova","plugin_tags-payment-gateway","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-inginerit","plugin_committers-inginerit"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/mia-payment-gateway-for-victoriabank\/assets\/icon-128x128.png?rev=3435369","icon_2x":"https:\/\/ps.w.org\/mia-payment-gateway-for-victoriabank\/assets\/icon-256x256.png?rev=3435369","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>MIA, Bank Card &amp; StarCard Payment Gateway for VictoriaBank (Community Edition) is a comprehensive WooCommerce plugin that enables Moldovan merchants to accept all VictoriaBank payment methods through a single plugin.<\/p>\n\n<p><strong>This is a community-developed plugin and is not officially affiliated with or endorsed by VictoriaBank.<\/strong><\/p>\n\n<h4>Supported Payment Methods<\/h4>\n\n<ul>\n<li><strong>MIA Instant Payment<\/strong> - QR-code based instant payments via Moldova's MIA system<\/li>\n<li><strong>Visa \/ Mastercard<\/strong> - International card payments via VictoriaBank e-Gateway with RSA SHA-256 digital signatures<\/li>\n<li><strong>StarCard Installments<\/strong> - Pay in installments (3, 6, 12, or 24 months) with VictoriaBank StarCard<\/li>\n<li><strong>StarCard Loyalty Points<\/strong> - Pay with accumulated StarCard loyalty points<\/li>\n<\/ul>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li><strong>4 payment methods<\/strong> in a single plugin - one installation, complete coverage<\/li>\n<li><strong>RSA SHA-256 digital signatures<\/strong> (P_SIGN) for secure e-Gateway communication<\/li>\n<li><strong>Two-phase transaction flow<\/strong> (TRTYPE=0 authorization + TRTYPE=21 completion) for card payments<\/li>\n<li><strong>Dynamic QR codes<\/strong> with configurable TTL for MIA payments<\/li>\n<li><strong>Mobile deeplink<\/strong> support (<code>mia:\/\/pay<\/code>) for seamless mobile MIA payments<\/li>\n<li><strong>Automatic status polling<\/strong> (TRTYPE=90) every 3 minutes as callback fallback<\/li>\n<li><strong>Full and partial refunds<\/strong> - TRTYPE=24 for card payments; full or partial refund for MIA (MIA API 2.1)<\/li>\n<li><strong>WooCommerce Cart &amp; Checkout Blocks<\/strong> - all four methods work in both the block-based and the classic checkout<\/li>\n<li><strong>JWT webhook verification<\/strong> (RS256) for MIA payment notifications<\/li>\n<li><strong>Token caching<\/strong> for MIA API calls (reduces API calls by 98%)<\/li>\n<li><strong>HPOS compatible<\/strong> - Full support for WooCommerce High-Performance Order Storage<\/li>\n<li><strong>WooCommerce Action Scheduler<\/strong> support for reliable background polling<\/li>\n<li><strong>WC_Logger integration<\/strong> - card payment logs at WooCommerce &gt; Status &gt; Logs<\/li>\n<\/ul>\n\n<h4>Payment Flows<\/h4>\n\n<p><strong>Card Payments (Visa\/MC, StarCard):<\/strong><\/p>\n\n<ol>\n<li>Customer selects payment method at checkout<\/li>\n<li>Plugin generates TRTYPE=0 parameters with P_SIGN digital signature<\/li>\n<li>Customer is redirected to VictoriaBank secure payment page<\/li>\n<li>Bank sends callback with authorization result<\/li>\n<li>Plugin automatically executes TRTYPE=21 (Sales Completion)<\/li>\n<li>Order is marked as paid<\/li>\n<\/ol>\n\n<p><strong>MIA Instant Payment:<\/strong><\/p>\n\n<ol>\n<li>Customer selects MIA at checkout<\/li>\n<li>Dynamic QR code is generated via VictoriaBank API<\/li>\n<li>Customer scans QR code or uses mobile deeplink<\/li>\n<li>Payment is confirmed via JWT webhook or AJAX polling<\/li>\n<li>Order status updates automatically<\/li>\n<\/ol>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>WordPress 6.0 or higher<\/li>\n<li>WooCommerce 7.0 or higher<\/li>\n<li>PHP 8.0 or higher (required for RSA cryptographic operations)<\/li>\n<li>PHP OpenSSL extension<\/li>\n<li>Active VictoriaBank merchant account with API credentials<\/li>\n<li>HTTPS enabled on your website<\/li>\n<\/ul>\n\n<h4>Configuration<\/h4>\n\n<p>After installation, configure each payment method at <strong>WooCommerce &gt; Settings &gt; Payments<\/strong>:<\/p>\n\n<p><strong>For MIA Instant Payment:<\/strong>\n* API credentials (username, password)\n* Merchant IBAN\n* VictoriaBank public key (VBCA.crt) for JWT verification\n* QR code expiry time<\/p>\n\n<p><strong>For Visa\/Mastercard, StarCard methods:<\/strong>\n* Terminal ID (8 digits) and Merchant ID (15 digits) from VictoriaBank\n* RSA private key (.pem) for request signing\n* VictoriaBank public key (.pem) for callback verification\n* Register callback URL with VictoriaBank: <code>https:\/\/yoursite.com\/?wc-api=vb_callback<\/code><\/p>\n\n<h3>Technical Details<\/h3>\n\n<h4>MIA API Endpoints<\/h4>\n\n<ul>\n<li>Authentication: <code>POST \/identity\/token<\/code><\/li>\n<li>QR Creation: <code>POST \/api\/v1\/qr<\/code><\/li>\n<li>Full refund: <code>DELETE \/api\/v1\/transaction\/{id}<\/code><\/li>\n<li>Partial refund: <code>DELETE \/api\/v1\/transaction\/{id}\/partial-refund<\/code> (body: <code>{\"amount\": &lt;number&gt;}<\/code>)<\/li>\n<\/ul>\n\n<h4>Base URLs<\/h4>\n\n<ul>\n<li>Test Environment: <code>https:\/\/test-ipspj.victoriabank.md<\/code><\/li>\n<li>Production: <code>https:\/\/ips-api-pj.vb.md<\/code><\/li>\n<\/ul>\n\n<h4>Security<\/h4>\n\n<ul>\n<li>JWT token authentication<\/li>\n<li>Token caching with automatic expiry<\/li>\n<li>HTTPS required (enforced by API)<\/li>\n<li>Nonce verification for AJAX requests<\/li>\n<li>Input sanitization and validation<\/li>\n<li>No sensitive data logged (passwords masked)<\/li>\n<\/ul>\n\n<h4>Compatibility<\/h4>\n\n<ul>\n<li>WordPress 6.0+<\/li>\n<li>WooCommerce 7.0 - 11.1<\/li>\n<li>PHP 8.0+<\/li>\n<li>Tested with latest WordPress and WooCommerce versions<\/li>\n<\/ul>\n\n<h3>Third-Party Services<\/h3>\n\n<p>This plugin connects to VictoriaBank's payment APIs:<\/p>\n\n<ul>\n<li><strong>e-Gateway<\/strong> (card payments): https:\/\/ecomt.victoriabank.md (test) \/ https:\/\/vb059.vb.md (production)<\/li>\n<li><strong>MIA IPS API<\/strong> (instant payments): https:\/\/test-ipspj.victoriabank.md (test) \/ https:\/\/ips-api-pj.vb.md (production)<\/li>\n<\/ul>\n\n<p>By using this plugin, you agree to VictoriaBank's terms of service and privacy policy: https:\/\/victoriabank.md<\/p>\n\n<h3>Privacy Policy<\/h3>\n\n<p>This plugin does not collect, store, or transmit any personal data outside of what is necessary for payment processing through VictoriaBank's APIs. All payment data is transmitted securely via HTTPS.<\/p>\n\n<h3>Credits<\/h3>\n\n<p>Developed and maintained by an independent developer for the WooCommerce and Moldovan e-commerce community.<\/p>\n\n<p>Source code: https:\/\/github.com\/inginerit\/MIA-Payment-Gateway-for-VictoriaBank<\/p>\n\n<!--section=installation-->\n<h4>Automatic Installation<\/h4>\n\n<ol>\n<li>Go to <strong>Plugins &gt; Add New<\/strong> in your WordPress admin<\/li>\n<li>Search for \"MIA Payment Gateway for VictoriaBank\"<\/li>\n<li>Click <strong>Install Now<\/strong> and then <strong>Activate<\/strong><\/li>\n<\/ol>\n\n<h4>Manual Installation<\/h4>\n\n<ol>\n<li>Download the plugin ZIP file<\/li>\n<li>Go to <strong>Plugins &gt; Add New &gt; Upload Plugin<\/strong><\/li>\n<li>Choose the ZIP file and click <strong>Install Now<\/strong><\/li>\n<li>Click <strong>Activate Plugin<\/strong><\/li>\n<\/ol>\n\n<h4>Upgrading from MIA-only version (2.x)<\/h4>\n\n<p>If you are upgrading from the MIA-only version (2.x), the MIA payment method will continue to work exactly as before (including partial refunds added in 2.2.0). The new card payment methods (Visa\/Mastercard, StarCard) are added as separate gateways and can be enabled independently.<\/p>\n\n<p>No database migration is needed. Your existing MIA settings and transaction history are preserved.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"is%20this%20an%20official%20victoriabank%20plugin%3F\"><h3>Is this an official VictoriaBank plugin?<\/h3><\/dt>\n<dd><p>No, this is a community-developed plugin. It integrates with VictoriaBank's official APIs but is not officially affiliated with or endorsed by VictoriaBank.<\/p><\/dd>\n<dt id=\"do%20i%20need%20separate%20terminal%20ids%20for%20each%20card%20payment%20method%3F\"><h3>Do I need separate terminal IDs for each card payment method?<\/h3><\/dt>\n<dd><p>Yes. VictoriaBank assigns separate Terminal IDs for Visa\/Mastercard, StarCard Installments, and StarCard Points. Each method has its own settings page.<\/p><\/dd>\n<dt id=\"can%20i%20enable%20only%20some%20payment%20methods%3F\"><h3>Can I enable only some payment methods?<\/h3><\/dt>\n<dd><p>Yes. Each payment method (MIA, Visa\/MC, StarCard Rate, StarCard Points) can be enabled or disabled independently.<\/p><\/dd>\n<dt id=\"what%20is%20the%20callback%20url%20i%20need%20to%20register%20with%20victoriabank%3F\"><h3>What is the callback URL I need to register with VictoriaBank?<\/h3><\/dt>\n<dd><p>For card payments: <code>https:\/\/yoursite.com\/?wc-api=vb_callback<\/code>\nFor MIA webhooks: <code>https:\/\/yoursite.com\/wp-json\/miapg\/v1\/webhook<\/code><\/p><\/dd>\n<dt id=\"how%20do%20refunds%20work%3F\"><h3>How do refunds work?<\/h3><\/dt>\n<dd><p>For card payments, use the standard WooCommerce refund button. The plugin sends TRTYPE=24 to VictoriaBank automatically.\nFor MIA payments, both full and partial refunds are supported from the same WooCommerce refund button. Important: MIA allows only ONE refund per payment (either the full amount or a single partial amount) - after a partial refund, the remaining amount cannot be refunded through MIA. A MIA payment can be refunded a few minutes after it was made, once the bank has settled it.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20work%20with%20the%20woocommerce%20checkout%20block%3F\"><h3>Does the plugin work with the WooCommerce Checkout block?<\/h3><\/dt>\n<dd><p>Yes. All payment methods are available both in the block-based Cart &amp; Checkout (default in new WooCommerce stores) and in the classic shortcode checkout.<\/p><\/dd>\n<dt id=\"is%20hpos%20%28high-performance%20order%20storage%29%20supported%3F\"><h3>Is HPOS (High-Performance Order Storage) supported?<\/h3><\/dt>\n<dd><p>Yes, the plugin is fully compatible with WooCommerce HPOS.<\/p><\/dd>\n<dt id=\"how%20do%20i%20enable%20debug%20logging%3F\"><h3>How do I enable debug logging?<\/h3><\/dt>\n<dd><p>Add the following to your <code>wp-config.php<\/code> file:\n    define('WP_DEBUG', true);\n    define('WP_DEBUG_LOG', true);\n    define('WP_DEBUG_DISPLAY', false);\nThen enable \"Debug Logging\" in the MIA gateway settings. Card payment logs are available at WooCommerce &gt; Status &gt; Logs (source: mia-payment-gateway-for-victoriabank).<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>3.0.1<\/h4>\n\n<ul>\n<li>Added: The MIA callback (signals) URL to send to VictoriaBank is now shown in the MIA settings page (the card callback URL is shown in each card gateway settings page).<\/li>\n<li>Fixed: The MIA signals endpoint (<code>\/wp-json\/miapg\/v1\/webhook<\/code>) was not registered on REST requests (gateways are loaded lazily by WooCommerce), so bank notifications were answered with 404 and payments were confirmed only by polling.<\/li>\n<li>Security: MIA signals are accepted only with a valid RS256 signature. The current VictoriaBank signal certificates are bundled; additional certificates can be pasted in the settings (certificate rotation).<\/li>\n<\/ul>\n\n<h4>3.0.0<\/h4>\n\n<ul>\n<li><strong>Major update<\/strong>: added Visa\/Mastercard, StarCard Installments and StarCard Points (VictoriaBank e-Gateway) next to MIA - one plugin for all VictoriaBank payment methods<\/li>\n<li>Added: RSA SHA-256 digital signature (P_SIGN) generation and verification, with MD5 fallback for legacy terminals<\/li>\n<li>Added: Two-phase card flow - TRTYPE=0 authorization, TRTYPE=21 sales completion, confirmation by bank push<\/li>\n<li>Added: TRTYPE=24 refunds for card payments<\/li>\n<li>Added: TRTYPE=90 status polling every 3 minutes (Action Scheduler \/ WP-Cron) as callback fallback, including TRTYPE=21 retry<\/li>\n<li>Added: WooCommerce Cart &amp; Checkout Blocks support for all four payment methods<\/li>\n<li>Added: Admin test mode notices with one-click switch between test and production<\/li>\n<li>Added: PEM key validation on settings save<\/li>\n<li>Requires PHP 8.0+ and WooCommerce 7.0+<\/li>\n<li>Tested with WordPress 7.1 and WooCommerce 11.1<\/li>\n<\/ul>\n\n<h4>2.2.0<\/h4>\n\n<ul>\n<li>Added: MIA partial refunds (MIA API 2.1)<\/li>\n<li>Added: WooCommerce Cart &amp; Checkout Blocks support for MIA<\/li>\n<li>Fixed: Payment reference not saved when payment was confirmed by polling; refunds recover a missing reference from the API<\/li>\n<li>Fixed: Text domain now matches the plugin slug<\/li>\n<\/ul>\n\n<h4>2.1.4<\/h4>\n\n<ul>\n<li>Fixed: Polling expiry - use absolute time instead of attempt counter<\/li>\n<\/ul>\n\n<h4>2.1.3<\/h4>\n\n<ul>\n<li>Fixed: Authentication endpoint updated to <code>\/api\/identity\/token<\/code><\/li>\n<li>Enhanced: Comprehensive logging throughout the plugin<\/li>\n<li>Improved: Error handling for API communications<\/li>\n<li>Optimized: Token caching reduces API calls by 98%<\/li>\n<li>Added: Mobile deeplink support for direct app payments<\/li>\n<li>Added: AJAX payment status checking with automatic updates<\/li>\n<li>Added: Full refund support via VictoriaBank API<\/li>\n<li>Added: HPOS (High-Performance Order Storage) compatibility<\/li>\n<\/ul>\n\n<h4>2.1.2<\/h4>\n\n<ul>\n<li>Fixed authentication issues<\/li>\n<li>Improved QR code generation reliability<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>Initial release with MIA payment support<\/li>\n<\/ul>","raw_excerpt":"Complete WooCommerce payment gateway for VictoriaBank: MIA Instant Payments, Visa\/Mastercard, StarCard Installments, and StarCard Points.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/270611","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=270611"}],"author":[{"embeddable":true,"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/inginerit"}],"wp:attachment":[{"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=270611"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=270611"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=270611"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=270611"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=270611"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/en-gb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=270611"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}