[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fW0HfdhYYliQ0eRI5_4RETu4yuYO0gMRFpa0paQVMRLA":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":23,"download_link":24,"security_score":25,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":36,"analysis":134,"fingerprints":259},"purchase-orders-for-woocommerce","Purchase Orders for WooCommerce","1.12.2","mcgregormedia","https:\u002F\u002Fprofiles.wordpress.org\u002Fmcgregormedia\u002F","\u003Cp>Adds a Purchase Order payment method to WooCommerce.\u003C\u002Fp>\n\u003Cp>Select if the order is to be Pending, On Hold or Processing after checkout. The gateway will ask for the purchase order number – select whether to also display text boxes for name and address of the company to be invoiced, and whether any of those are required fields. Don’t forget to mark a field as not required if it’s not to be displayed or your customer will not be able to check out!\u003C\u002Fp>\n\u003Cp>The purchase order details will be displayed in the admin order screen, the customer order received screen and both admin and customer order emails.\u003C\u002Fp>\n\u003Ch4>WooCommerce compatibility\u003C\u002Fh4>\n\u003Cp>This plugin is compatible with WooCommerce 3.x, 4.x, 5.x, 6.x, 7.x, 8.x, 9.x and 10.x versions.\u003C\u002Fp>\n\u003Ch4>HPOS compatibility\u003C\u002Fh4>\n\u003Cp>This plugin is compatible with WooCommerce High Performance Order Storage (HPOS) and WordPress posts storage (legacy).\u003C\u002Fp>\n\u003Ch4>Checkout Blocks Compatibility\u003C\u002Fh4>\n\u003Cp>This plugin is not yet compatible with checkout blocks.\u003C\u002Fp>\n\u003Ch4>Compatibility with other plugins\u003C\u002Fh4>\n\u003Cp>Some invoicing plugins require the meta keys of purchase order data to display this data on invoices. The meta keys used in this plugin are listed below:\u003C\u002Fp>\n\u003Cp>_purchase_order_number\u003Cbr \u002F>\n_purchase_order_company_name\u003Cbr \u002F>\n_purchase_order_address1\u003Cbr \u002F>\n_purchase_order_address2\u003Cbr \u002F>\n_purchase_order_address3\u003Cbr \u002F>\n_purchase_order_town\u003Cbr \u002F>\n_purchase_order_county\u003Cbr \u002F>\n_purchase_order_postcode\u003Cbr \u002F>\n_purchase_order_email\u003C\u002Fp>\n\u003Ch4>Order status\u003C\u002Fh4>\n\u003Cp>Select the order status to apply to the order to when a customer checks out using a Purchase Order. All order statuses are available for selection including any custom statuses that may have been added. Be aware that if you set the status to Pending, neither you nor the customer will receive an order email after checkout – this is standard WooCommerce functionality. By default, order emails will be sent when a status is changed from Pending to On Hold or Processing.\u003C\u002Fp>\n\u003Ch4>Custom fields\u003C\u002Fh4>\n\u003Cp>You can add your own fields to the frontend checkout form by adding custom HTML to the action hook in the PO checkout form:\u003C\u002Fp>\n\u003Cp>pofwc_form_after_po_form\u003C\u002Fp>\n\u003Cp>To add a text input field after the PO number field, the code should look something like this:\u003C\u002Fp>\n\u003Cp>function custom_checkout_field_after_po_form() {\u003C\u002Fp>\n\u003Cpre>\u003Ccode>echo '\u003Cp class=\"form-row form-row-wide\">';\n    echo '\u003Clabel for=\"YOUR-FIELD-ID\">YOUR FIELD LABEL TEXT\u003C\u002Flabel>';\n    echo '\u003Cinput type=\"text\" id=\"YOUR-FIELD-ID\" name=\"YOUR_FIELD_NAME\" class=\"input-text\" placeholder=\"YOUR FIELD PLACEHOLDER\">';\necho '\u003C\u002Fp>';\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>}\u003Cbr \u002F>\nadd_action( ‘pofwc_form_after_po_form’, ‘custom_checkout_field_after_po_form’ );\u003C\u002Fp>\n\u003Cp>You can of course change the form HTML to output a different field type such as a \u003Ccode>select\u003C\u002Fcode> dropdown or \u003Ccode>textarea\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>To save your custom field, hook into the woocommerce_checkout_update_order_meta action as in the example below:\u003C\u002Fp>\n\u003Cp>function custom_checkout_field_update_order_meta( $order_id ) {\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$order = wc_get_order( $order_id );\n\nif ( ! empty( $_POST['YOUR_FIELD_NAME'] ) ) {\n    $order->update_meta_data( 'YOUR_FIELD_NAME', sanitize_text_field( $_POST['YOUR_FIELD_NAME'] ) );\n}\n\n$order->save();\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>}\u003Cbr \u002F>\nadd_action( ‘woocommerce_checkout_update_order_meta’, ‘custom_checkout_field_update_order_meta’, 10, 1 );\u003C\u002Fp>\n\u003Cp>There are four places the PO data can be displayed: the order thank you page, the order emails, the customer order history, and the admin Edit Order screen. To display your custom field data, use one of the following action hooks to add your data in the required place:\u003C\u002Fp>\n\u003Cp>pofwc_thankyou_display_after_po_form\u003Cbr \u002F>\npofwc_email_display_after_po_form\u003Cbr \u002F>\npofwc_account_display_after_po_form\u003Cbr \u002F>\npofwc_admin_display_after_po_form\u003C\u002Fp>\n\u003Cp>To output your example text input from above in the checkout thank you page, the Edit Order screen and customer order history, the code should look something like this:\u003C\u002Fp>\n\u003Cp>function display_custom_order_data_after_po_form( $order ) {\u003C\u002Fp>\n\u003Cpre>\u003Ccode>echo ( $order->get_meta( 'YOUR_FIELD_NAME', true ) ) ? esc_html( $order->get_meta( 'YOUR_FIELD_NAME', true ) ) . '\u003Cbr>' : '';\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>}\u003Cbr \u002F>\nadd_action( ‘pofwc_thankyou_display_after_po_form’, ‘display_custom_order_data_after_po_form’, 10, 1 );\u003Cbr \u002F>\nadd_action( ‘pofwc_account_display_after_po_form’, ‘display_custom_order_data_after_po_form’, 10, 1 );\u003Cbr \u002F>\nadd_action( ‘pofwc_admin_display_after_po_form’, ‘display_custom_order_data_after_po_form’, 10, 1 );\u003C\u002Fp>\n\u003Cp>Displaying the data in the emails is slightly different as data escaping is done later in the output process:\u003C\u002Fp>\n\u003Cp>function display_email_custom_order_data_after_po_form( $order ) {\u003C\u002Fp>\n\u003Cpre>\u003Ccode>echo $order->get_meta( 'YOUR_FIELD_NAME', true ) ? $order->get_meta( 'YOUR_FIELD_NAME', true ) : '';\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>}\u003Cbr \u002F>\nadd_action( ‘pofwc_email_display_after_po_form’, ‘display_email_custom_order_data_after_po_form’, 10, 1 );\u003C\u002Fp>\n\u003Cp>This code all goes in your functions.php file in your child theme – don’t place this code in a parent theme (unless it’s one you maintain yourself) as it will be overwritten when the theme is updated.\u003C\u002Fp>\n\u003Ch4>GDPR information\u003C\u002Fh4>\n\u003Cp>This plugin will gather and store a company’s name, address and\u002For email address. This could also be construed as an individual’s personal data. However, as the user has opted to pay by this method, it is suggested that the lawful basis for processing this data is contractual necessity. Processing is necessary in order to send the invoice to the user or user’s representative. This data is stored as standard postmeta data and will be retained until the order is permanently deleted (not trashed).\u003C\u002Fp>\n\u003Ch4>Roadmap\u003C\u002Fh4>\n\u003Cp>The ability to add and edit purchase order data in the Add\u002FEdit Order screen was introduced in version 1.12.0 but due to it causing fatal errors on some users’ sites, it was removed in version 1.12.2. It is still in the roadmap to add, as is compatibility with the Gutemnberg checkout block. No timeline exists for this as yet however.\u003C\u002Fp>\n","Adds a Purchase Order payment method to WooCommerce.",1000,29673,84,5,"2025-11-11T23:15:00.000Z","6.8.5","4.8","7.4",[20,21,22],"payment-gateway","purchase-order","woocommerce","https:\u002F\u002Fmcgregormedia.co.uk","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpurchase-orders-for-woocommerce.1.12.2.zip",100,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":32,"avg_security_score":25,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},2,5000,30,94,"2026-04-05T10:31:20.889Z",[37,54,73,93,114],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":25,"downloaded":45,"rating":26,"num_ratings":26,"last_updated":46,"tested_up_to":47,"requires_at_least":47,"requires_php":47,"tags":48,"homepage":47,"download_link":52,"security_score":53,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28},"purchase-order-woocommerce-addon","Purchase Order WooCommerce Addon","1.0","syednazrulhassan","https:\u002F\u002Fprofiles.wordpress.org\u002Fnazrulhassanmca\u002F","\u003Cp>This plugin adds a purchase order in WooCommerce for customers to complete the order.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Very Simple Clean Code plugin to add a Purchase Order payment method to woocommerce\u003C\u002Fli>\n\u003Cli>No technical skills needed.\u003C\u002Fli>\n\u003Cli>Prerequisite visualized on screenshots.\u003C\u002Fli>\n\u003Cli>Adds PO Number and PO Note to Order details\u003C\u002Fli>\n\u003C\u002Fol>\n","This plugin adds a purchase order in WooCommerce for customers to complete the order.",2181,"2017-08-20T18:53:00.000Z","",[49,50,51],"purchase-order-payment-gateway","purchase-order-woocommerce","woocommerce-purchase-order","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpurchase-order-woocommerce-addon.zip",85,{"slug":55,"name":5,"version":56,"author":57,"author_profile":58,"description":59,"short_description":60,"active_installs":33,"downloaded":61,"rating":25,"num_ratings":31,"last_updated":62,"tested_up_to":16,"requires_at_least":63,"requires_php":47,"tags":64,"homepage":68,"download_link":69,"security_score":70,"vuln_count":71,"unpatched_count":26,"last_vuln_date":72,"fetched_at":28},"wc-purchase-orders","1.0.4","Ahmad Wael","https:\u002F\u002Fprofiles.wordpress.org\u002Fbbioon\u002F","\u003Cp>Purchase Orders for WooCommerce is a plugin that seamlessly integrates with WooCommerce, empowering your store to accept purchase orders as a payment method. This plugin creates a new payment gateway that facilitates the submission of purchase orders by allowing customers to upload necessary document files.\u003C\u002Fp>\n\u003Cp>Shop managers can then review the uploaded documents and approve the order, streamlining the purchasing process. The uploaded documents are accessible on the order page in the customer profile, admin order pages, and are included in order detail emails.\u003C\u002Fp>\n\u003Cp>This plugin is compatible with WooCommerce versions greater than 3.0, ensuring a smooth and efficient integration with the latest WooCommerce features and updates.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Introduces a purchase order payment gateway in WooCommerce.\u003C\u002Fli>\n\u003Cli>Allows customers to upload document files for purchase orders.\u003C\u002Fli>\n\u003Cli>Securily storing files.\u003C\u002Fli>\n\u003Cli>Enables shop managers to review and approve orders.\u003C\u002Fli>\n\u003Cli>Select users that will be able to use the purchase orders.\u003C\u002Fli>\n\u003Cli>Documents are accessible on order pages, customer profiles, and in order detail emails.\u003C\u002Fli>\n\u003Cli>Compatibility with WooCommerce versions greater than 3.0.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Development\u003C\u002Fh3>\n\u003Cp>This plugin is open source, and you can contribute to its development on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FBbioon\u002Fwc-purchase-orders\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GNU General Public License v2 or later.\u003C\u002Fp>\n\u003Ch3>Contact\u003C\u002Fh3>\n\u003Cp>For any inquiries, issues, or suggestions, please contact Ahmad Wael:\u003Cbr \u002F>\n– Twitter: \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fdevwael\" rel=\"nofollow ugc\">@devwael\u003C\u002Fa>\u003Cbr \u002F>\n– Hire me on Codeable: \u003Ca href=\"https:\u002F\u002Fwww.codeable.io\u002Fdevelopers\u002Fahmad-wael?ref=MzT5A\" rel=\"nofollow ugc\">Ahmad Wael on Codeable\u003C\u002Fa>\u003Cbr \u002F>\n– Get to know Ahmad Wael: \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=sBlZoJ9apTw\" rel=\"nofollow ugc\">YouTube – Meet Ahmad Wael\u003C\u002Fa>\u003Cbr \u002F>\n– Website: \u003Ca href=\"https:\u002F\u002Fwww.bbioon.com\" rel=\"nofollow ugc\">bbioon.com\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cp>This plugin was created by Ahmad Wael, inspired by the needs of WooCommerce stores requiring purchase order functionalities.\u003C\u002Fp>\n","Enable purchase orders! WooCommerce plugin lets you accept Purchase Orders at checkout, streamlining B2B orders.",1278,"2025-09-16T16:47:00.000Z","4.7",[65,66,20,67,22],"documents","orders","purchase-orders","https:\u002F\u002Fgithub.com\u002FBbioon\u002Fwc-purchase-orders","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwc-purchase-orders.1.0.4.zip",98,1,"2025-08-11 13:49:35",{"slug":74,"name":75,"version":76,"author":77,"author_profile":78,"description":79,"short_description":80,"active_installs":81,"downloaded":82,"rating":83,"num_ratings":84,"last_updated":85,"tested_up_to":16,"requires_at_least":86,"requires_php":18,"tags":87,"homepage":91,"download_link":92,"security_score":25,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28},"woo-paystack","Paystack WooCommerce Payment Gateway","5.8.2","Tunbosun Ayinla","https:\u002F\u002Fprofiles.wordpress.org\u002Ftubiz\u002F","\u003Cp>Paystack makes it easy for businesses in Nigeria, Ghana, Kenya and South Africa to accept secure payments from multiple local and global payment channels. Integrate Paystack with your store today, and let your customers pay you with their choice of methods.\u003C\u002Fp>\n\u003Cp>With Paystack for WooCommerce, you can accept payments via:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Credit\u002FDebit Cards — Visa, Mastercard, Verve (NG, GH, KE), American Express (SA only)\u003C\u002Fli>\n\u003Cli>Bank transfer (Nigeria)\u003C\u002Fli>\n\u003Cli>Mobile money (Ghana)\u003C\u002Fli>\n\u003Cli>Masterpass (South Africa)\u003C\u002Fli>\n\u003Cli>EFT (South Africa)\u003C\u002Fli>\n\u003Cli>USSD (Nigeria)\u003C\u002Fli>\n\u003Cli>Visa QR (Nigeria)\u003C\u002Fli>\n\u003Cli>Many more coming soon\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Why Paystack?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Start receiving payments instantly—go from sign-up to your first real transaction in as little as 15 minutes\u003C\u002Fli>\n\u003Cli>Simple, transparent pricing—no hidden charges or fees\u003C\u002Fli>\n\u003Cli>Modern, seamless payment experience via the Paystack Checkout — \u003Ca href=\"https:\u002F\u002Fpaystack.com\u002Fdemo\u002Fcheckout\" rel=\"nofollow ugc\">Try the demo!\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Advanced fraud detection\u003C\u002Fli>\n\u003Cli>Understand your customers better through a simple and elegant dashboard\u003C\u002Fli>\n\u003Cli>Access to attentive, empathetic customer support 24\u002F7\u003C\u002Fli>\n\u003Cli>Free updates as we launch new features and payment options\u003C\u002Fli>\n\u003Cli>Clearly documented APIs to build your custom payment experiences\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Over 60,000 businesses of all sizes in Nigeria, Ghana, Kenya, and South Africa rely on Paystack’s suite of products to receive payments and make payouts seamlessly. Sign up on \u003Ca href=\"https:\u002F\u002Fpaystack.com\u002Fsignup\" rel=\"nofollow ugc\">Paystack.com\u002Fsignup\u003C\u002Fa> to get started.\u003C\u002Fp>\n\u003Ch4>Note\u003C\u002Fh4>\n\u003Cp>This plugin is meant to be used by merchants in Ghana, Kenya, Nigeria and South Africa.\u003C\u002Fp>\n\u003Ch4>Plugin Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Accept payment\u003C\u002Fstrong> via Mastercard, Visa, Verve, USSD, Mobile Money, Bank Transfer, EFT, Bank Accounts, GTB 737 & Visa QR.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Seamless integration\u003C\u002Fstrong> into the WooCommerce checkout page. Accept payment directly on your site\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Refunds\u003C\u002Fstrong> from the WooCommerce order details page. Refund an order directly from the order details page\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Recurring payment\u003C\u002Fstrong> using \u003Ca href=\"https:\u002F\u002Fwoocommerce.com\u002Fproducts\u002Fwoocommerce-subscriptions\u002F\" rel=\"nofollow ugc\">WooCommerce Subscriptions\u003C\u002Fa> plugin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>WooCommerce Subscriptions Integration\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n\u003Cp>The \u003Ca href=\"https:\u002F\u002Fwoocommerce.com\u002Fproducts\u002Fwoocommerce-subscriptions\u002F\" rel=\"nofollow ugc\">WooCommerce Subscriptions\u003C\u002Fa> integration only works with \u003Cstrong>WooCommerce v2.6 and above\u003C\u002Fstrong> and \u003Cstrong>WooCommerce Subscriptions v2.0 and above\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>No subscription plans is created on Paystack. The \u003Ca href=\"https:\u002F\u002Fwoocommerce.com\u002Fproducts\u002Fwoocommerce-subscriptions\u002F\" rel=\"nofollow ugc\">WooCommerce Subscriptions\u003C\u002Fa> plugin handles all the subscription functionality.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>If a customer pays for a subscription using a Mastercard or Visa card, their subscription will renew automatically throughout the duration of the subscription. If an automatic renewal fail their subscription will be put on-hold and they will have to login to their account to renew the subscription.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>For customers paying with a Verve card, their subscription can’t be renewed automatically, once a payment is due their subscription will be on-hold. The customer will have to login to his account to manually renew his subscription.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>If a subscription has a free trial and no signup-fee, automatic renewal is not possible for the first payment because the initial order total will be 0, after the free trial the subscription will be put on-hold. The customer will have to login to his account to renew his subscription. If a Mastercard or Visa card is used to renew the subscription subsequent renewals will be automatic throughout the duration of the subscription, if a Verve card is used automatic renewal isn’t possible.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Suggestions \u002F Feature Request\u003C\u002Fh4>\n\u003Cp>If you have suggestions or a new feature request, feel free to get in touch with me via the contact form on my website \u003Ca href=\"http:\u002F\u002Fbosun.me\u002Fget-in-touch\u002F\" rel=\"nofollow ugc\">here\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>You can also follow me on Twitter! \u003Cstrong>\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Ftubiz\" rel=\"nofollow ugc\">@tubiz\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n","Paystack for WooCommerce allows your WooCommerce store to accept secure payments from multiple local and global payment channels.",30000,432109,90,24,"2025-04-17T08:26:00.000Z","6.2",[88,20,89,90,22],"mastercard","paystack","visa","https:\u002F\u002Fpaystack.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwoo-paystack.5.8.2.zip",{"slug":94,"name":95,"version":96,"author":97,"author_profile":98,"description":99,"short_description":100,"active_installs":101,"downloaded":102,"rating":34,"num_ratings":103,"last_updated":104,"tested_up_to":105,"requires_at_least":106,"requires_php":18,"tags":107,"homepage":112,"download_link":113,"security_score":25,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28},"atum-stock-manager-for-woocommerce","ATUM WooCommerce Inventory Management and Stock Tracking","1.9.54.1","Stock Management Labs","https:\u002F\u002Fprofiles.wordpress.org\u002Fstockmanagementlabs\u002F","\u003Cp>\u003Cstrong>✨ NEW IMPROVED ATUM v1.9 ✨\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FuAUXj4vUYRs?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>\u003Cstrong>💻 NEW \u003Ca href=\"https:\u002F\u002Fstockmanagementlabs.github.io\u002Fatum-rest-api-docs\u002F\" rel=\"nofollow ugc\">ATUM REST API\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>📖 NEW \u003Ca href=\"https:\u002F\u002Fstockmanagementlabs.crunch.help\u002F\" rel=\"nofollow ugc\">ATUM’s KNOWLEDGE BASE\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>💬 \u003Ca href=\"https:\u002F\u002Fforum.stockmanagementlabs.com\" title=\"Visit the official ATUM forum\" rel=\"nofollow ugc\">FOR ANY QUESTIONS, VISIT OUR OFFICIAL FORUMS\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>DESCRIPTION\u003C\u002Fh4>\n\u003Cp>If you have an online store, you need ATUM, the most \u003Cstrong>powerful stock management solution\u003C\u002Fstrong> for Woocommerce.\u003C\u002Fp>\n\u003Cp>ATUM is now the most advanced FREE WooCommerce inventory management tool in the WordPress plugins repository. Good WooCommerce inventory solution is an absolute must for every serious shop owner. The Dashboard Statistics or the breath-taking Stock Central, the heart of ATUM, gives you the full control of your WooCommerce stock. Get the ability to quickly edit every aspect of your WooCommerce inventory, suppliers, SKUs, locations, weight, or even prices. Beautifully carved into the WordPress interface, the system feels very familiar and \u003Cstrong>user-friendly\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>ATUM Dashboard creates an entirely new, and we felt a necessary connection between the creators and users. The dashboard aims to become an everyday screen with a quick link to support, documentation, and most importantly, business stats. We have developed a brand-new widget section that can be personalized from every corner.\u003C\u002Fp>\n\u003Cp>Each section of ATUM has an \u003Cstrong>intuitive layout\u003C\u002Fstrong> to favor the experience of store owners, facilitating stock management, and contributing to the optimization of time and resources. We understand that shop owners need to focus their efforts on growing their online business, so our aim is to help our clients through our add-ons to \u003Cstrong>get to the top\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Stock Management Labs™\u003C\u002Fstrong>, creators that have combined over 25 years of experience in inventory management, working very closely with a bunch of professional WordPress developers since October 2016. The aim is to create the complete WooCommerce solution that will take care of all your business needs.\u003C\u002Fp>\n\u003Cp>In addition, in the preparation process for the development stage, we have tested and tried the most popular WooCommerce inventory management and cloud inventory management plugins in the world. With full confidence, we believe that ATUM will become unrivalled in every category.\u003C\u002Fp>\n\u003Ch4>AVAILABLE FEATURES\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwpml.org\u002Fplugin\u002Fatum-inventory-management-for-woocommerce\u002F\" title=\"Visit the WPML compatibility page\" rel=\"nofollow ugc\">WPML FULLY COMPATIBLE\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Most Advanced FREE WooCommerce Inventory Management – Inventory Statistics (Periodical Sales, Inventory Levels, Lost Sales, Promo Sales), Stock Central with Data Export, Inventory Logs (Reserved Stock, Lost In Post, Customer Returns, Inbound Stock, Warehouse Damages), One Page Updating, Quick Price Changes, Stock Levels Indicators, Suppliers, Purchase Orders, and Premium Add-ons.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>ATUM ground-breaking Stock Control system.\u003C\u002Fli>\n\u003Cli>All WooCommerce products on one screen with a smooth mouse wheel or touchpad scrolling.\u003C\u002Fli>\n\u003Cli>Image thumbnails for easier identification of your WooCommerce Inventory.\u003C\u002Fli>\n\u003Cli>Short product names overview including the products’ ID and SKU. Change SKUs on the fly from one screen. Now with direct edit links.\u003C\u002Fli>\n\u003Cli>Purchase prices are now included with direct edit from the Stock Central page. WooCommerce inventory management was never easier.\u003C\u002Fli>\n\u003Cli>Suppliers column and fully filtered product list by Suppliers name.\u003C\u002Fli>\n\u003Cli>Quickly edit the Product Price and Product Sale Price, including the date ranges of your sales. Now bulk editing is available.\u003C\u002Fli>\n\u003Cli>Change, edit, or update the inventory of every WooCommerce product in your database. Changes immediately reflect the front-end of your site.\u003C\u002Fli>\n\u003Cli>Weekly and Fortnightly Sales, Lost Sales, and Inventory Level Indicators to help you with re-ordering plan.\u003C\u002Fli>\n\u003Cli>Customise the visual appearance of Stock Central with the ability to add or remove any columns according to your business needs.\u003C\u002Fli>\n\u003Cli>Complete “HELP” sections with the detailed explanation of every feature.\u003C\u002Fli>\n\u003Cli>Advanced search with an autofill feature and fine-tuned performance.\u003C\u002Fli>\n\u003Cli>Inventory \u002F Stock filters, new product category filters, extra drop-down filters and new column sorting.\u003C\u002Fli>\n\u003Cli>Intelligent settings for easy inventory\u002Fstock management.\u003C\u002Fli>\n\u003Cli>Advanced WooCommerce inventory controlling and monitoring features.\u003C\u002Fli>\n\u003Cli>Faultless approach to all product types, including WooCommerce subscriptions.\u003C\u002Fli>\n\u003Cli>Full support for WooCommerce variable products.\u003C\u002Fli>\n\u003Cli>Bulk product Actions to activate or deactivate WooCommerce stock management at product level.\u003C\u002Fli>\n\u003Cli>Bulk Actions within Stock Central to Control\u002FUncontrol products in bulk.\u003C\u002Fli>\n\u003Cli>Full inventory PDF export directly from Stock Central.\u003C\u002Fli>\n\u003Cli>Complete WPML compatibility for all WooCommerce inventory.\u003C\u002Fli>\n\u003Cli>Clear, effective, and branded ATUM fields.\u003C\u002Fli>\n\u003Cli>See inventory count totals for selected products.\u003C\u002Fli>\n\u003Cli>Complete location hierarchy tracking.\u003C\u002Fli>\n\u003Cli>URL hash navigation for filters in Stock Central.\u003C\u002Fli>\n\u003Cli>Navigating through filters history with the browser’s back\u002Fforward buttons.\u003C\u002Fli>\n\u003Cli>Easy page reload without losing filters.\u003C\u002Fli>\n\u003Cli>Sticky header in Stock Central to stay always in control even when scrolling through hundreds of WooCommerce products.\u003C\u002Fli>\n\u003Cli>WooCommerce business statistics of revenue and product sales. The user can filter the performance per period and choose from three graphical views.\u003C\u002Fli>\n\u003Cli>Widgets for Sales, Lost Sales, Orders, and Promo Sales.\u003C\u002Fli>\n\u003Cli>Stock Control Widget for a better WooCommerce summary of In Stock, Low Stock, and Out of Stock Products.\u003C\u002Fli>\n\u003Cli>Latest News – direct link to our new blog where we discuss functions and new features coming to ATUM.\u003C\u002Fli>\n\u003Cli>Full feed of our YouTube channel and video Tutorials that can be viewed directly in your WP admin.\u003C\u002Fli>\n\u003Cli>Build for unlimited widget additions. Our team will develop widgets for every feature, so the user has the full freedom.\u003C\u002Fli>\n\u003Cli>Inventory logs now allow you to increase or reduce WooCommerce stock.\u003C\u002Fli>\n\u003Cli>Product Locations feature lets you create several storage locations per item.\u003C\u002Fli>\n\u003Cli>Location hierarchy available too – create custom storage places within a location.\u003C\u002Fli>\n\u003Cli>Add Suppliers feature – add new suppliers and save their data for more natural inventory management and ordering.\u003C\u002Fli>\n\u003Cli>Set default and assign users or locations to individual suppliers.\u003C\u002Fli>\n\u003Cli>Pair products with suppliers for quick selling stock re-ordering.\u003C\u002Fli>\n\u003Cli>Set different suppliers to each variation.\u003C\u002Fli>\n\u003Cli>Add decimals to your WooCommerce stock quantities.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Purchase orders with PDF export\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Add Purchase Orders – create purchase orders for your sellable WooCommerce inventory.\u003C\u002Fli>\n\u003Cli>Easy Supplier locking feature – a quick search for products has never been easier.\u003C\u002Fli>\n\u003Cli>Add products to stock when you receive them at storage locations. Be notified if another user has already stocked selected WooCommerce products.\u003C\u002Fli>\n\u003Cli>Purchase Order notes to control the change log of each PO.\u003C\u002Fli>\n\u003Cli>Add Purchase Prices – add individual purchase prices and prepare your shop for monitoring of your gross profits.\u003C\u002Fli>\n\u003Cli>Purchase prices can be attached to the Purchase Orders directly. No need to jump back to product edit.\u003C\u002Fli>\n\u003Cli>Inbound Stock overview – keep an eye on all your inbound WooCommerce products.\u003C\u002Fli>\n\u003Cli>Pending incoming stock reflects in Stock Central.\u003C\u002Fli>\n\u003Cli>Direct Purchase Order editing from the inbound stock page.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Every user may create an account on our website \u003Ca href=\"https:\u002F\u002Fstockmanagementlabs.com\" title=\"Stock Management Labs\" rel=\"nofollow ugc\">stockmanagementlabs.com\u003C\u002Fa>. To get the most out of ATUM\u003C\u002Fstrong>\u003C\u002Fp>\n","WooCommerce Full Inventory Management, Purchase Orders, Suppliers, Inbound Stock, Inventory Logs, WooCommerce Sales Statistics, and More.",10000,1132704,127,"2026-02-03T09:11:00.000Z","6.9.0","5.9",[108,109,67,110,111],"inbound-stock","inventory-logs","suppliers","woocommerce-stock-management","https:\u002F\u002Fstockmanagementlabs.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fatum-stock-manager-for-woocommerce.1.9.54.1.zip",{"slug":115,"name":116,"version":117,"author":118,"author_profile":119,"description":120,"short_description":121,"active_installs":101,"downloaded":122,"rating":25,"num_ratings":123,"last_updated":124,"tested_up_to":125,"requires_at_least":126,"requires_php":127,"tags":128,"homepage":132,"download_link":133,"security_score":25,"vuln_count":26,"unpatched_count":26,"last_vuln_date":27,"fetched_at":28},"montonio-for-woocommerce","Montonio for WooCommerce","9.4.1","Montonio","https:\u002F\u002Fprofiles.wordpress.org\u002Fmontonio\u002F","\u003Cp>Montonio is a complete checkout solution for online stores that includes all popular payment methods (local banks, card payments, Apple Pay, Google Pay) plus financing and shipping. Montonio offers you everything you need in your online store checkout.\u003C\u002Fp>\n\u003Ch4>Payments\u003C\u002Fh4>\n\u003Cp>The easiest way to collect payments in your online store. Montonio payment initiation service offers integrations with all major banks in Estonia, Finland, Latvia, Lithuania and Poland, additionally Apple Pay, Google Pay, Revolut (available everywhere) and Blik in Poland.\u003C\u002Fp>\n\u003Cp>All funds are immediately deposited to your bank account and an overview of the transactions can be found in our \u003Ca href=\"https:\u002F\u002Fpartner.montonio.com\" rel=\"nofollow ugc\">partner system\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Card Payments\u003C\u002Fh4>\n\u003Cp>Give your customers more ways to pay. In addition to payment links, Montonio lets your users pay by credit card.\u003C\u002Fp>\n\u003Ch4>Apple Pay, Google Pay\u003C\u002Fh4>\n\u003Cp>Want to offer an even easier way of paying? We also have Apple Pay and Google Pay! You can add these popular mobile wallets to your online store’s checkout. Your customers can pay faster since their credit card info is stored in the digital wallet and they don’t need to enter card details with each purchase.\u003C\u002Fp>\n\u003Ch4>Refunds\u003C\u002Fh4>\n\u003Cp>You can do a partial or full refund with a couple of clicks in the Montonio Partner System. Just open the order, check what items your customer returned and refund the amount needed.\u003C\u002Fp>\n\u003Ch4>Financing (Hire purchase)\u003C\u002Fh4>\n\u003Cp>Montonio Financing is just the right solution for financing larger purchases. You customers can choose a payment schedule that exactly suits their needs. Shoppers pay in equal instalments but you will get the full payment amount upfront. Plus, there’s no service fee for the merchant.\u003C\u002Fp>\n\u003Ch4>Pay Later\u003C\u002Fh4>\n\u003Cp>Give your visitors the most convenient ways to pay – with Montonio ‘Pay later’ your customers can pay later or split purchase into two or three payments. All this without any additional interest or contract fees for them. Shoppers pay in equal instalments but you will get the full payment amount upfront.\u003C\u002Fp>\n\u003Ch4>Shipping\u003C\u002Fh4>\n\u003Cp>Handle everything from one system: automatically generate, edit and print shipping labels without having to ever leave the Montonio dashboard. Labels are automatically retrieved from providers after order creation. You can start printing with just 2 clicks. With Montonio you can add order tracking codes with a link to the providers’ tracking page.\u003C\u002Fp>\n\u003Ch4>How to get started\u003C\u002Fh4>\n\u003Cp>Adding Montonio to your store is only a matter of minutes.\u003Cbr \u002F>\n1. Sign up at \u003Ca href=\"https:\u002F\u002Fmontonio.com\" rel=\"nofollow ugc\">montonio.com\u003C\u002Fa>\u003Cbr \u002F>\n2. Verify your identity and confirm your account with Montonio\u003Cbr \u002F>\n3. Set up the plugin, insert API keys and start using Montonio. More details on how to install and set up the plugin can be found in the Installation tab.\u003C\u002Fp>\n\u003Ch4>Availability\u003C\u002Fh4>\n\u003Cp>Montonio currently offers services in these countries:\u003Cbr \u002F>\n* Payments: Estonia, Finland, Latvia, Lithuania, Poland\u003Cbr \u002F>\n* Card payments: Estonia, Finland, Latvia, Lithuania, Poland\u003Cbr \u002F>\n* Financing: Estonia\u003Cbr \u002F>\n* Pay Later: Estonia\u003Cbr \u002F>\n* Shipping: Estonia, Latvia, Lithuania\u003Cbr \u002F>\nWe are also working on adding new countries.\u003C\u002Fp>\n\u003Ch4>Support\u003C\u002Fh4>\n\u003Cp>Any questions? Just drop us an email at support@montonio.com.\u003C\u002Fp>\n\u003Ch4>WANT TO KNOW MORE?\u003C\u002Fh4>\n\u003Cp>More information about our solutions can be found on our \u003Ca href=\"https:\u002F\u002Fmontonio.com\" rel=\"nofollow ugc\">website\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to multiple Montonio services to provide payment processing, shipping management, and service improvements:\u003C\u002Fp>\n\u003Ch4>Montonio Payment Gateway (Stargate)\u003C\u002Fh4>\n\u003Cp>What it does: Processes various payment methods including bank payments, card payments, BLIK payments, hire purchase and pay later options.\u003C\u002Fp>\n\u003Cp>Data transmitted: Order information (total amount, currency, order items), customer details (name, email, billing\u002Fshipping addresses), payment method selection, and merchant identification.\u003C\u002Fp>\n\u003Cp>When transmitted: During checkout when a payment is initiated, when checking payment status, and when processing refunds.\u003C\u002Fp>\n\u003Cp>Service URLs:\u003Cbr \u002F>\n* Production: https:\u002F\u002Fstargate.montonio.com\u002Fapi\u003Cbr \u002F>\n* Sandbox: https:\u002F\u002Fsandbox-stargate.montonio.com\u002Fapi\u003C\u002Fp>\n\u003Cp>Service information: \u003Ca href=\"https:\u002F\u002Fs3.eu-central-1.amazonaws.com\u002Fpublic.montonio.com\u002Fterms_and_conditions\u002Fmontonio_general\u002Fv3.0\u002Fmontonio_general_ee.pdf\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fmontonio.com\u002Flegal\u002Fprivacy-policy\u002F\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Montonio Shipping API\u003C\u002Fh4>\n\u003Cp>What it does: Manages shipping methods, pickup points, courier services, label generation and shipment tracking.\u003C\u002Fp>\n\u003Cp>Data transmitted: Shipping addresses, order details, selected shipping methods, parcel information (weight, dimensions), and shipment tracking information.\u003C\u002Fp>\n\u003Cp>When transmitted: When retrieving available shipping methods, displaying pickup points, creating shipments, and generating shipping labels.\u003C\u002Fp>\n\u003Cp>Service URLs:\u003Cbr \u002F>\n* Production: https:\u002F\u002Fshipping.montonio.com\u002Fapi\u003Cbr \u002F>\n* Sandbox: https:\u002F\u002Fsandbox-shipping.montonio.com\u002Fapi\u003C\u002Fp>\n\u003Cp>Service information: \u003Ca href=\"https:\u002F\u002Fs3.eu-central-1.amazonaws.com\u002Fpublic.montonio.com\u002Fterms_and_conditions\u002Fshipping\u002Fv3.0\u002Fshipping_international.pdf\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fmontonio.com\u002Flegal\u002Fprivacy-policy\u002F\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Montonio JavaScript SDK\u003C\u002Fh4>\n\u003Cp>What it does: Client-side library that renders payment forms, handles payment method selection and processes transactions.\u003C\u002Fp>\n\u003Cp>Data transmitted: Payment form inputs, selected payment method details, transaction authentication data.\u003C\u002Fp>\n\u003Cp>When transmitted: During checkout when payment forms are displayed and when customers interact with payment elements.\u003C\u002Fp>\n\u003Cp>Service URLs:\u003Cbr \u002F>\n* Montonio JS: https:\u002F\u002Fjs.montonio.com\u002F1.x.x\u002Fmontonio.umd.js\u003Cbr \u002F>\n* Montonio JS (Legacy): https:\u002F\u002Fpublic.montonio.com\u002Fassets\u002Fmontonio-js\u002F3.x\u002Fmontonio.bundle.js\u003Cbr \u002F>\n* Card payments API (Production): https:\u002F\u002Fapi.card-payments.montonio.com\u002Fpayment-intents\u003Cbr \u002F>\n* Card payments API (Sandbox): https:\u002F\u002Fapi.sandbox-card-payments.montonio.com\u002Fpayment-intents\u003Cbr \u002F>\n* Payment intents API (Production): https:\u002F\u002Fstargate.montonio.com\u002Fapi\u002Fpayment-intents\u003Cbr \u002F>\n* Payment intents API (Sandbox): https:\u002F\u002Fsandbox-stargate.montonio.com\u002Fapi\u002Fpayment-intents\u003C\u002Fp>\n\u003Cp>Service information: \u003Ca href=\"https:\u002F\u002Fs3.eu-central-1.amazonaws.com\u002Fpublic.montonio.com\u002Fterms_and_conditions\u002Fpayment_initiation\u002Fv3.0\u002Fpayment_initiation_international.pdf\" rel=\"nofollow ugc\">Bank Payment Terms of Service\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fs3.eu-central-1.amazonaws.com\u002Fpublic.montonio.com\u002Fterms_and_conditions\u002Fcard_payments\u002Fv3.0\u002Fcard_payments_international.pdf\" rel=\"nofollow ugc\">Card Payment Terms of Service\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fmontonio.com\u002Flegal\u002Fprivacy-policy\u002F\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Montonio Telemetry Service\u003C\u002Fh4>\n\u003Cp>What it does: Sends Store URL, WordPress\u002FWooCommerce version information and plugin configuration settings to offer better customer support when troubleshooting issues. No sensitive or private data is collected.\u003C\u002Fp>\n\u003Cp>Data transmitted: Store URL, WordPress\u002FWooCommerce version information, plugin configuration settings (with sensitive data removed).\u003C\u002Fp>\n\u003Cp>When transmitted: Upon plugin activation, deactivation, settings changes, and periodically (once per day).\u003C\u002Fp>\n\u003Cp>Service URL: https:\u002F\u002Fplugin-telemetry.montonio.com\u002Fapi\u003C\u002Fp>\n\u003Cp>Service information: \u003Ca href=\"https:\u002F\u002Fs3.eu-central-1.amazonaws.com\u002Fpublic.montonio.com\u002Fterms_and_conditions\u002Fmontonio_general\u002Fv3.0\u002Fmontonio_general_ee.pdf\" rel=\"nofollow ugc\">Terms of Service\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fmontonio.com\u002Flegal\u002Fprivacy-policy\u002F\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fp>\n","Montonio is a complete checkout solution for online stores that includes all popular payment methods (local banks, card payments, Apple Pay, Google Pa &hellip;",346076,8,"2026-03-10T08:35:00.000Z","6.9.4","5.0","7.0",[129,20,130,131,22],"montonio","payments","shipping","https:\u002F\u002Fwww.montonio.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmontonio-for-woocommerce.9.4.1.zip",{"attackSurface":135,"codeSignals":187,"taintFlows":247,"riskAssessment":248,"analyzedAt":258},{"hooks":136,"ajaxHandlers":183,"restRoutes":184,"shortcodes":185,"cronEvents":186,"entryPointCount":26,"unprotectedCount":26},[137,144,149,154,158,162,166,171,174,178],{"type":138,"name":139,"callback":140,"priority":141,"file":142,"line":143},"action","plugins_loaded","pofwc_purchase_order_gateway_init",11,"class-purchase-order-gateway.php",16,{"type":138,"name":145,"callback":146,"priority":147,"file":142,"line":148},"woocommerce_email_after_order_table","pofwc_email_instructions",10,115,{"type":150,"name":151,"callback":152,"priority":147,"file":142,"line":153},"filter","woocommerce_email_order_meta_fields","pofwc_email_order_meta_fields",116,{"type":138,"name":155,"callback":156,"priority":147,"file":142,"line":157},"woocommerce_admin_order_data_after_billing_address","pofwc_display_purchase_order_meta",119,{"type":138,"name":159,"callback":160,"priority":71,"file":142,"line":161},"woocommerce_thankyou","pofwc_add_po_number_to_order_received_page",120,{"type":150,"name":163,"callback":164,"file":142,"line":165},"wc_stripe_validate_checkout_required_fields","pofwc_stripe_validate_checkout_unset_gateways_required_fields",123,{"type":138,"name":167,"callback":168,"file":169,"line":170},"before_woocommerce_init","closure","purchase-orders-for-woocommerce.php",43,{"type":138,"name":139,"callback":172,"file":169,"line":173},"pofwc_load_textdomain",64,{"type":150,"name":175,"callback":176,"file":169,"line":177},"woocommerce_payment_gateways","pofwc_add_to_gateways",99,{"type":138,"name":179,"callback":180,"priority":181,"file":169,"line":182},"woocommerce_view_order","pofwc_show_invoice_address",20,167,[],[],[],[],{"dangerousFunctions":188,"sqlUsage":189,"outputEscaping":191,"fileOperations":26,"externalRequests":26,"nonceChecks":26,"capabilityChecks":26,"bundledLibraries":246},[],{"prepared":26,"raw":26,"locations":190},[],{"escaped":192,"rawEcho":193,"locations":194},53,25,[195,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244],{"file":142,"line":196,"context":197},471,"raw output",{"file":142,"line":199,"context":197},480,{"file":142,"line":201,"context":197},481,{"file":142,"line":203,"context":197},492,{"file":142,"line":205,"context":197},493,{"file":142,"line":207,"context":197},506,{"file":142,"line":209,"context":197},507,{"file":142,"line":211,"context":197},520,{"file":142,"line":213,"context":197},521,{"file":142,"line":215,"context":197},534,{"file":142,"line":217,"context":197},535,{"file":142,"line":219,"context":197},548,{"file":142,"line":221,"context":197},549,{"file":142,"line":223,"context":197},562,{"file":142,"line":225,"context":197},576,{"file":142,"line":227,"context":197},577,{"file":142,"line":229,"context":197},590,{"file":142,"line":231,"context":197},591,{"file":142,"line":233,"context":197},760,{"file":142,"line":235,"context":197},763,{"file":142,"line":237,"context":197},765,{"file":142,"line":239,"context":197},818,{"file":169,"line":241,"context":197},139,{"file":169,"line":243,"context":197},143,{"file":169,"line":245,"context":197},145,[],[],{"summary":249,"deductions":250},"The \"purchase-orders-for-woocommerce\" plugin v1.12.2 demonstrates a strong security posture based on the provided static analysis.  The absence of any identified AJAX handlers, REST API routes, shortcodes, or cron events significantly limits its attack surface.  Furthermore, the code signals indicate no dangerous functions were used, all SQL queries are properly prepared, and no file operations or external HTTP requests were detected. The fact that 68% of output is properly escaped suggests a good practice, though a portion remains unescaped.\n\nWhile the lack of known CVEs and vulnerability history is positive, the static analysis does reveal a few areas for improvement. The 0 nonce checks and 0 capability checks are concerning, especially since there are no identified entry points *currently* that would necessitate them. However, this could represent a future risk if entry points are added without proper security measures. The 32% of unescaped output, while not critical based on the limited attack surface, represents a potential weakness that could be exploited if an attacker finds a way to inject malicious data into these outputs.\n\nOverall, the plugin is in good health with no critical or high-risk issues identified in the static analysis or historical data. The strengths lie in its limited attack surface, secure SQL handling, and avoidance of dangerous functions. The main weakness is the absence of nonce and capability checks, which is a general security best practice to implement proactively, and the portion of unescaped output.",[251,254,256],{"reason":252,"points":253},"Unescaped output (32%)",6,{"reason":255,"points":14},"No nonce checks",{"reason":257,"points":14},"No capability checks","2026-03-16T18:53:55.547Z",{"wat":260,"direct":269},{"assetPaths":261,"generatorPatterns":264,"scriptPaths":265,"versionParams":266},[262,263],"\u002Fwp-content\u002Fplugins\u002Fpurchase-orders-for-woocommerce\u002Fassets\u002Fcss\u002Fpurchase-order-gateway.css","\u002Fwp-content\u002Fplugins\u002Fpurchase-orders-for-woocommerce\u002Fassets\u002Fjs\u002Fpurchase-order-gateway.js",[],[263],[267,268],"purchase-orders-for-woocommerce\u002Fassets\u002Fcss\u002Fpurchase-order-gateway.css?ver=","purchase-orders-for-woocommerce\u002Fassets\u002Fjs\u002Fpurchase-order-gateway.js?ver=",{"cssClasses":270,"htmlComments":272,"htmlAttributes":289,"restEndpoints":299,"jsGlobals":300,"shortcodeOutput":301},[271],"woocommerce-purchase-order-gateway",[273,274,275,275,276,277,278,279,280,281,282,283,284,285,286,287,286,288],"Came directly here? Vamoose.","Added compatibility","Added function","all available WC gateways","all WC gateways + offline gateway","all plugin links","all plugin links + our custom links","The order ID","The formatted html","Added action hooks","Purchase order information","Purchase order number","Invoice address","Added field settings","Constructor for the gateway","Allows purchase order payments.",[290,291,292,293,294,295,296,297,298],"data-po_number_required","data-company_name_required","data-address_1_required","data-address_2_required","data-address_3_required","data-town_required","data-county_required","data-postcode_required","data-email_required",[],[],[302,303,304,305],"\u003Ch2>Purchase order information\u003C\u002Fh2>","\u003Cp>\u003Cstrong>Purchase order number:\u003C\u002Fstrong>","\u003Cstrong>Invoice address:\u003C\u002Fstrong>","\u003C\u002Fp>"]