[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fOoA49pXqmCk8n8KgqGaGAYpCm4nfvJhvEmZQs1AgUQM":3,"$fgDKGF8gMXo8pWnGUplwvTE_20HwvjtFMdcC1FauRj8c":432,"$fvdxrTEAPr69d9O_iyyPUeS_6bQML8F2uucrvL2H_D8U":436},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27,"discovery_status":28,"vulnerabilities":29,"developer":30,"crawl_stats":26,"alternatives":35,"analysis":136,"fingerprints":413},"swiss-business-suite","Swiss Business Suite","1.0.0","suryayousufzai","https:\u002F\u002Fprofiles.wordpress.org\u002Fsuryayousufzai\u002F","\u003Cp>\u003Cstrong>Swiss Business Suite\u003C\u002Fstrong> is a WordPress plugin built specifically for Swiss small and medium-sized enterprises (SMEs). It solves three problems that every Swiss business faces:\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Swiss QR-Bill Invoicing\u003C\u002Fstrong> — Generate legally compliant Swiss QR-Bill invoices automatically. Customers can pay instantly by scanning the QR code with any Swiss banking app (PostFinance, TWINT, UBS, Raiffeisen, ZKB). QR codes are generated entirely in the user’s browser — no payment data is ever sent to any external server.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Booking System\u003C\u002Fstrong> — Let customers book your services directly from your website. Manage all bookings from a clean admin dashboard.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Multilingual (DE\u002FFR\u002FIT\u002FEN)\u003C\u002Fstrong> — Switzerland has 4 official languages. Your website can now serve customers in German, French, Italian, and English — all from one plugin.\u003C\u002Fp>\n\u003Ch4>Who is this for?\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Coiffeur salons, physiotherapy clinics, beauty studios\u003C\u002Fli>\n\u003Cli>Treuhänder (fiduciaries) and accounting firms\u003C\u002Fli>\n\u003Cli>Consulting businesses and coaches\u003C\u002Fli>\n\u003Cli>Any Swiss SME that takes bookings and sends invoices\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Swiss QR-Bill Invoice Generator\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Generates legally compliant Swiss QR-Bill payment slips\u003C\u002Fli>\n\u003Cli>Supports both QR-IBAN and regular IBAN (auto-detected)\u003C\u002Fli>\n\u003Cli>QR codes generated 100% client-side — no data sent to external servers\u003C\u002Fli>\n\u003Cli>Correct error correction level M as required by Swiss banking standard\u003C\u002Fli>\n\u003Cli>Dynamic VAT rate (default 8.1% — Swiss standard since January 2024)\u003C\u002Fli>\n\u003Cli>One-click print \u002F save as PDF\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Booking Management System\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Beautiful booking form via shortcode: [swisbs_booking]\u003C\u002Fli>\n\u003Cli>Service management with duration and price\u003C\u002Fli>\n\u003Cli>Admin dashboard to view, confirm, and manage all bookings\u003C\u002Fli>\n\u003Cli>Email notifications to customer and business owner\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Multilingual Support\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Full support for all 4 Swiss official languages: Deutsch, Français, Italiano, English\u003C\u002Fli>\n\u003Cli>Language switcher via shortcode: [swisbs_language_switcher]\u003C\u002Fli>\n\u003Cli>Translation management in admin panel\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Installation\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Upload the plugin files to \u003Ccode>\u002Fwp-content\u002Fplugins\u002Fswiss-business-suite\u003C\u002Fcode>, or install through the WordPress plugins screen.\u003C\u002Fli>\n\u003Cli>Activate the plugin through the Plugins screen in WordPress.\u003C\u002Fli>\n\u003Cli>Go to \u003Cstrong>Swiss Business \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Settings\u003C\u002Fstrong> and enter your IBAN, company name, and address.\u003C\u002Fli>\n\u003Cli>Add the booking form to any page using the shortcode \u003Ccode>[swisbs_booking]\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>Go to \u003Cstrong>Swiss Business \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Services\u003C\u002Fstrong> to add your bookable services.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Frequently Asked Questions\u003C\u002Fh4>\n\u003Ch4>What is a Swiss QR-Bill?\u003C\u002Fh4>\n\u003Cp>The Swiss QR-Bill is the official electronic payment standard in Switzerland, replacing the old orange and red payment slips since October 2022.\u003C\u002Fp>\n\u003Ch4>Do I need a QR-IBAN or a regular IBAN?\u003C\u002Fh4>\n\u003Cp>Both work. The plugin automatically detects which type you have and uses the correct reference format.\u003C\u002Fp>\n\u003Ch4>Which banking apps can scan the QR code?\u003C\u002Fh4>\n\u003Cp>PostFinance App, TWINT, UBS Mobile Banking, Raiffeisen E-Banking, ZKB Mobile Banking, and all Swiss banking apps that support the Swiss QR-Bill standard.\u003C\u002Fp>\n\u003Ch4>Screenshots\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Admin dashboard with booking and invoice overview\u003C\u002Fli>\n\u003Cli>Booking management — view and manage all customer bookings\u003C\u002Fli>\n\u003Cli>Booking form — what customers see on the front end\u003C\u002Fli>\n\u003Cli>Swiss QR-Bill invoice with scannable QR code\u003C\u002Fli>\n\u003Cli>Invoice management in the admin panel\u003C\u002Fli>\n\u003Cli>Settings page — configure IBAN, company details, VAT rate\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Ch4>QR Code Generation (Optional — Disabled by Default)\u003C\u002Fh4>\n\u003Cp>QR codes for Swiss QR-Bill invoices can optionally be generated using the QR Server API (api.qrserver.com). This feature is \u003Cstrong>disabled by default\u003C\u002Fstrong> and must be explicitly enabled by the administrator in Swiss Business \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Settings \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> “Enable QR Code Generation”.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>What it does:\u003C\u002Fstrong> Converts Swiss QR-Bill payment data into a QR code image\u003C\u002Fli>\n\u003Cli>\u003Cstrong>What data is sent:\u003C\u002Fstrong> The Swiss QR-Bill payment string containing: creditor IBAN, company name, address, invoice amount, currency, and debtor name. No WordPress user data or passwords are ever sent.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>When it is sent:\u003C\u002Fstrong> Only when an admin generates or downloads an invoice from the WordPress admin panel. It is never triggered by front-end visitors.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Who can see it:\u003C\u002Fstrong> Only the site administrator who clicks “Download QR-Bill”\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Caching:\u003C\u002Fstrong> Generated QR codes are cached on your server for 30 days — the API is only called once per invoice\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Service provider:\u003C\u002Fstrong> GoQR.me \u002F QR Server (free, no account needed)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Terms of Service:\u003C\u002Fstrong> https:\u002F\u002Fgoqr.me\u002Fterms\u002F\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Privacy Policy:\u003C\u002Fstrong> https:\u002F\u002Fgoqr.me\u002Fprivacy\u002F\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> Your server needs outbound internet access to generate QR codes. If your server blocks outbound connections, a clear error message will be shown instead of the QR code.\u003C\u002Fp>\n\u003Ch4>Google Translate (Optional)\u003C\u002Fh4>\n\u003Cp>This plugin includes an optional Google Translate widget for page translation. This feature is \u003Cstrong>disabled by default\u003C\u002Fstrong> and only activates if explicitly enabled in Settings.\u003C\u002Fp>\n\u003Cp>When enabled, the Google Translate service is loaded from translate.google.com. By enabling this feature, page content may be sent to Google’s servers for translation.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Service:\u003C\u002Fstrong> Google Translate\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Data sent:\u003C\u002Fstrong> Page text content (only when translation feature is enabled by admin)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>When:\u003C\u002Fstrong> Only when a visitor uses the language switcher and Google Translate is enabled\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Terms of Service:\u003C\u002Fstrong> https:\u002F\u002Fpolicies.google.com\u002Fterms\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Privacy Policy:\u003C\u002Fstrong> https:\u002F\u002Fpolicies.google.com\u002Fprivacy\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This is a third-party service. Please review Google’s terms and privacy policy before enabling this feature.\u003C\u002Fp>\n","All-in-One WordPress solution for Swiss SMEs: Multilingual (DE\u002FFR\u002FIT\u002FEN) + Booking System + Swiss QR-Bill Invoice Generator.",0,105,"2026-03-25T09:58:00.000Z","6.9.4","5.8","7.4",[18,19,20,21,22],"booking","invoice","multilingual","qr-bill","swiss","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fswiss-business-suite.1.0.0.zip",100,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":25,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},1,30,94,"2026-07-15T08:43:41.824Z",[36,56,75,91,115],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":25,"downloaded":44,"rating":25,"num_ratings":45,"last_updated":46,"tested_up_to":47,"requires_at_least":48,"requires_php":49,"tags":50,"homepage":23,"download_link":54,"security_score":55,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"swiss-qr-bill","Swiss QR Bill","1.2.4","swissplugins","https:\u002F\u002Fprofiles.wordpress.org\u002Fswissplugins\u002F","\u003Cp>\u003Cstrong>Swiss QR Bill for WooCommerce\u003C\u002Fstrong> introduces a new payment method for shops located in Switzerland or Liechtenstein, following the harmonization of Swiss payments based on the ISO 20022 standard in the implementation of the new Swiss QR Bill (see \u003Ca href=\"https:\u002F\u002Fwww.paymentstandards.ch\u002Fen\u002F\" rel=\"nofollow ugc\">paymentstandards.ch\u003C\u002Fa>).\u003C\u002Fp>\n\u003Cp>The Swiss QR bill can be used since 30 June 2020, it replaces the old Swiss “ESR” payment slips.\u003C\u002Fp>\n\u003Cp>As a shop owner you can either use a new QR-IBAN number for your bank account, or a normal IBAN number, to send your clients valid Swiss QR bills, depending on what your bank provides you with.\u003C\u002Fp>\n\u003Cp>You may consult this page for further information: \u003Ca href=\"https:\u002F\u002Fwww.paymentstandards.ch\u002Fen\u002Fhome\u002Fcompanies.html\" rel=\"nofollow ugc\">The Swiss QR-bill\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>REQUIREMENTS\u003C\u002Fh3>\n\u003Cp>This plugin requires a working installation of \u003Cstrong>WordPress\u003C\u002Fstrong> with everybody’s favorite shop plugin \u003Cstrong>WooCommerce\u003C\u002Fstrong>. It also requires you to enter a correct QR-IBAN or IBAN, depending on the version you activate. Furthermore, the PHP extension “intl” must be activated in your web hosting account. Please ask your host for yassistance if it is not activated.\u003C\u002Fp>\n\u003Ch3>LIMITATIONS\u003C\u002Fh3>\n\u003Cp>The plugin only works for shop owners in \u003Cstrong>Switzerland and Liechtenstein\u003C\u002Fstrong>. If your shop country is not set to one of these two countries then the plugin cannot be activated.\u003C\u002Fp>\n\u003Cp>Your clients must also reside in Switzerland and Liechtenstein to issue Swiss QR bill payments to you. The payment method will not be displayed in the checkout to users from any other countries.\u003C\u002Fp>\n\u003Cp>The only currencies supported by Swiss QR bill payments are \u003Cstrong>CHF and EUR\u003C\u002Fstrong>. If the plugin is activated, the Swiss QR bill payment method will only be displayed in the checkout for orders with these two currencies.\u003C\u002Fp>\n\u003Ch3>FUNCTIONALITY\u003C\u002Fh3>\n\u003Col>\n\u003Cli>New “Swiss QR bill” \u003Cstrong>payment method\u003C\u002Fstrong>, which you can enable and disable like any other payment method. You can either activate the version with QR-IBAN (replacing the old orange ESR), or the version with a normal IBAN (old red ESR). When activated, the payment method offers you several options (see below).\u003C\u002Fli>\n\u003Cli>The plugin automatically generates a valid Swiss QR bill \u003Cstrong>PDF document\u003C\u002Fstrong> for every order that uses the Swiss QR bill payment method. The QR code section is always displayed on the bottom of the first page of the invoice PDF. If there are many order items the plugin will automatically add a second and further pages to the invoice PDF as required.\u003C\u002Fli>\n\u003Cli>The PDF invoice document is automatically \u003Cstrong>attached to the order confirmation email\u003C\u002Fstrong> which is sent by WooCommerce to the user immediately upon order completion.\u003C\u002Fli>\n\u003Cli>As a shop owner you can \u003Cstrong>review and download\u003C\u002Fstrong> the PDF invoice document anytime in the WooCommerce order screen.\u003C\u002Fli>\n\u003Cli>If you use the QR IBAN then it will automatically be \u003Cstrong>validated for correctness\u003C\u002Fstrong> after you enter it.\u003C\u002Fli>\n\u003Cli>You may optionally choose to \u003Cstrong>restrict\u003C\u002Fstrong> the Swiss QR bill payment method to registered users or to registered users who have completed at least one order previously.\u003C\u002Fli>\n\u003Cli>You may also restrict the Swiss QR bill payment method by \u003Cstrong>product category\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>We have various features in mind for the next versions. We are open to your suggestions.\u003C\u002Fp>\n\u003Ch3>PLUGIN SETTINGS\u003C\u002Fh3>\n\u003Cp>The Swiss QR bill payment method offers the following custom settings:\u003C\u002Fp>\n\u003Ch4>Main settings\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>QR-IBAN\u003C\u002Fstrong> or \u003Cstrong>IBAN\u003C\u002Fstrong> (enter the QR-IBAN or the IBAN provided by your bank, depending on the version of the payment method you have activated)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Reference number\u003C\u002Fstrong> (enter the reference number provided by your bank)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Invoice data\u003C\u002Fh4>\n\u003Cp>You can customize the following data on your Swiss QR bills:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Shop Logo\u003C\u002Fli>\n\u003Cli>Shop Name\u003C\u002Fli>\n\u003Cli>Shop Street & Number\u003C\u002Fli>\n\u003Cli>Shop Address Line 2\u003C\u002Fli>\n\u003Cli>Shop Zip Code\u003C\u002Fli>\n\u003Cli>Shop City\u003C\u002Fli>\n\u003Cli>Shop telephone\u003C\u002Fli>\n\u003Cli>Shop VAT number\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>When the plugin is activated for the first time, most of these fields will be filled in automatically from your WooCommerce settings. You are free to edit them as you prefer.\u003C\u002Fp>\n\u003Ch4>Optional Restrictions\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Customer Account Restriction\u003C\u002Fstrong>: If activated, the Swiss QR bill payment method will only be displayed to registered and logged in users.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Customer Order Restriction\u003C\u002Fstrong>: If activated, the Swiss QR bill payment method will only be displayed to logged in users who have completed at least one previous order.\u003C\u002Fli>\n\u003Cli>The \u003Cstrong>product category restriction\u003C\u002Fstrong> can be activated in the settings of each product category. If you disable the checkbox “Activate Swiss QR bill payments” for a category then the Swiss QR bill payment method will not be displayed if the cart contains at least one product from that category.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Translations\u003C\u002Fh4>\n\u003Cp>The plugin is available in English and completely translated into German and French. An Italian translation will follow.\u003C\u002Fp>\n\u003Cp>The usage of this plugin is totally free, and the basic version will always remain free. Currently there is no limitation on the amount of Swiss QR bills to be generated and sent to your clients every month.\u003C\u002Fp>\n","Swiss QR Bill extends WooCommerce with a new payment method, allowing you to easily send automated and standardized Swiss QR bills to your clients.",6043,4,"2022-05-31T11:00:00.000Z","5.8.13","4.6","7.0",[51,21,22,52,53],"qr","switzerland","woocommerce","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fswiss-qr-bill.1.2.4.zip",85,{"slug":57,"name":58,"version":59,"author":60,"author_profile":61,"description":62,"short_description":63,"active_installs":11,"downloaded":64,"rating":11,"num_ratings":11,"last_updated":65,"tested_up_to":66,"requires_at_least":67,"requires_php":16,"tags":68,"homepage":73,"download_link":74,"security_score":25,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"ifthenpay-payments-for-latepoint","ifthenpay | Payments for LatePoint","2.0.3","Ifthenpay","https:\u002F\u002Fprofiles.wordpress.org\u002Fifthenpay\u002F","\u003Cp>This plugin integrates the ifthenpay payment gateway with LatePoint to enable seamless payment processing for appointment bookings. It supports multiple payment methods, including local options like Multibanco and MB WAY, as well as international ones like PIX. Payments are handled via secure pay-by-link, ensuring no sensitive card data is stored on your site. When a customer books an appointment, they can select their preferred payment method, and a secure payment page opens for completion.\u003C\u002Fp>\n\u003Cp>In plain terms you get:\u003Cbr \u002F>\n* One-time payments for bookings\u003Cbr \u002F>\n* Support for invoices and orders\u003Cbr \u002F>\n* Merchant backoffice (basic sales) on web + mobile\u003Cbr \u002F>\n* Secure automatic payment confirmations (no card numbers stored)\u003C\u002Fp>\n\u003Cp>All settings are made in LatePoint. The plugin is built so store owners can manage payments without needing deep technical knowledge.\u003C\u002Fp>\n\u003Ch3>Key Features\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Easy integration with LatePoint booking flow\u003C\u002Fli>\n\u003Cli>Invoice payments (Orders & Invoices support)\u003C\u002Fli>\n\u003Cli>Secure pay-by-link transactions\u003C\u002Fli>\n\u003Cli>Automatic payment confirmation (fast access)\u003C\u002Fli>\n\u003Cli>Multiple local payment types (cards, wallets, transfers, vouchers)\u003C\u002Fli>\n\u003Cli>Merchant backoffice (basic sales & refund reports)\u003C\u002Fli>\n\u003Cli>Security first (signed callbacks, no card data stored)\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Requirements\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>An active ifthenpay merchant account — \u003Ca href=\"https:\u002F\u002Fifthenpay.com\u002Faderir\u002F\" rel=\"nofollow ugc\">subscribe here\u003C\u002Fa> to obtain your credentials.\u003C\u002Fli>\n\u003Cli>A Dynamic Gateway Key (request this from ifthenpay support\u002Fhelpdesk).\u003C\u002Fli>\n\u003Cli>The payment methods you want enabled on that Gateway Key (our helpdesk team will guide you).\u003C\u002Fli>\n\u003Cli>WordPress 6.5+ and PHP 7.4+, and LatePoint installed and activated.\u003C\u002Fli>\n\u003Cli>HTTPS (SSL) enabled on your site.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin integrates with the ifthenpay payment platform to process payments for LatePoint bookings. ifthenpay is a third-party service that provides secure payment processing for various methods including cards, wallets, and local bank transfers.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>LatePoint\u003C\u002Fstrong> (appointment-booking plugin): we extend its framework classes (\u003Ccode>OsFormHelper\u003C\u002Fcode>, \u003Ccode>OsSettingsHelper\u003C\u002Fcode>, etc.).  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>ifthenpay Backoffice & Integrations\u003C\u002Fstrong>\n\u003Cul>\n\u003Cli>\u003Cstrong>What it is and what it is used for\u003C\u002Fstrong>: The ifthenpay Backoffice is the merchant dashboard for managing payment integrations. The plugin uses the ifthenpay API to retrieve account configuration, generate payment links, and process payments.  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>What data is sent and when\u003C\u002Fstrong>:  \u003C\u002Fli>\n\u003Cli>During setup: Backoffice Key and Gateway Key (stored securely in site settings) to authenticate and retrieve available payment methods.  \u003C\u002Fli>\n\u003Cli>During payment processing: Minimal transaction details including transaction ID, amount, and booking details to generate payment references.  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>End-User License Agreement (EULA)\u003C\u002Fstrong>: \u003Ca href=\"https:\u002F\u002Fifthenpay.com\u002Feula\u002F\" rel=\"nofollow ugc\">EULA\u003C\u002Fa>  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Privacy Policy\u003C\u002Fstrong>: \u003Ca href=\"https:\u002F\u002Fifthenpay.com\u002Fpolitica-de-privacidade\u002F\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>All network requests are performed server-side over HTTPS. Sensitive credentials are stored in site options and are not publicly exposed. The plugin does not store raw card numbers or full bank account details.\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GPLv3.\u003C\u002Fp>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>For assistance use the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fifthenpay-payments-for-latepoint\u002F\" rel=\"ugc\">WordPress.org support forum\u003C\u002Fa>:\u003C\u002Fp>\n\u003Cp>Please include:\u003Cbr \u002F>\n* Backoffice account\u003Cbr \u002F>\n* Site URL + plugin version\u003Cbr \u002F>\n* Exact error message + relevant log excerpts\u002Fscreenshots\u003C\u002Fp>\n\u003Cp>Pre-checks before posting:\u003Cbr \u002F>\n* Payment method enabled on Gateway Key AND mapped to Integration\u003Cbr \u002F>\n* Running current recommended versions of WordPress, PHP & LatePoint\u003C\u002Fp>\n\u003Cp>Commercial helpdesk available (no direct email required): \u003Ca href=\"https:\u002F\u002Fhelpdesk.ifthenpay.com\u002F\" rel=\"nofollow ugc\">helpdesk.ifthenpay.com\u003C\u002Fa>\u003Cbr \u002F>\n* ifthenpay support: \u003Ca href=\"mailto:suporte@ifthenpay.com\" rel=\"nofollow ugc\">suporte@ifthenpay.com\u003C\u002Fa>\u003Cbr \u002F>\n* LatePoint docs: \u003Ca href=\"https:\u002F\u002Fwpdocs.latepoint.com\u002F\" rel=\"nofollow ugc\">LatePoint docs\u003C\u002Fa>\u003C\u002Fp>\n","Adds ifthenpay payment methods to LatePoint: cards, wallets, local bank transfers; supports orders and invoices for appointment bookings.",315,"2025-11-27T16:20:00.000Z","6.8.5","6.5",[18,69,70,71,72],"ifthenpay","invoices","latepoint","payments","https:\u002F\u002Fgithub.com\u002Fifthenpay\u002Fifthenpay-payments-for-latepoint","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fifthenpay-payments-for-latepoint.2.0.3.zip",{"slug":76,"name":77,"version":6,"author":78,"author_profile":79,"description":80,"short_description":81,"active_installs":11,"downloaded":82,"rating":11,"num_ratings":11,"last_updated":83,"tested_up_to":84,"requires_at_least":85,"requires_php":16,"tags":86,"homepage":23,"download_link":89,"security_score":90,"vuln_count":11,"unpatched_count":11,"last_vuln_date":26,"fetched_at":27},"voodux-bookings","Voodux Bookings","voodux","https:\u002F\u002Fprofiles.wordpress.org\u002Fvoodux\u002F","\u003Cp>The Bookings Calendar Plugin allows users to create and manage bookings seamlessly through an intuitive calendar interface. Each booking generates a WooCommerce order, making it easy to handle payments and reservations. The plugin is translated into English, Dutch, German, Spanish, French, Portuguese, Italian, Russian, Chinese, and Japanese, catering to a diverse audience.\u003C\u002Fp>\n\u003Cp>Key Features:\u003Cbr \u002F>\n– Easy-to-use bookings calendar\u003Cbr \u002F>\n– Automatic WooCommerce order creation for each booking\u003Cbr \u002F>\n– Multilingual support for a global user base\u003Cbr \u002F>\n– Documentation available in the plugin settings menu\u003C\u002Fp>\n","Create bookings via a flexible bookings calendar that integrates with WooCommerce.",2160,"2024-11-24T10:35:00.000Z","6.6.5","6.0",[87,88,20,53],"bookings","calendar","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fvoodux-bookings.1.0.zip",92,{"slug":92,"name":93,"version":94,"author":95,"author_profile":96,"description":97,"short_description":98,"active_installs":99,"downloaded":100,"rating":101,"num_ratings":102,"last_updated":103,"tested_up_to":14,"requires_at_least":104,"requires_php":16,"tags":105,"homepage":110,"download_link":111,"security_score":112,"vuln_count":113,"unpatched_count":11,"last_vuln_date":114,"fetched_at":27},"loco-translate","Loco Translate","2.8.3","Tim W","https:\u002F\u002Fprofiles.wordpress.org\u002Ftimwhitlock\u002F","\u003Cp>Loco Translate provides in-browser editing of WordPress translation files and integration with automatic translation services.\u003C\u002Fp>\n\u003Cp>It also provides Gettext\u002Flocalization tools for developers, such as extracting strings and generating templates.\u003C\u002Fp>\n\u003Cp>Features include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Built-in translation editor within WordPress admin\u003C\u002Fli>\n\u003Cli>Integration with translation APIs including DeepL, Google, Lecto, Microsoft and OpenAI.\u003C\u002Fli>\n\u003Cli>Create and update language files directly in your theme or plugin\u003C\u002Fli>\n\u003Cli>Extraction of translatable strings from your source code\u003C\u002Fli>\n\u003Cli>Native MO file compilation without the need for Gettext on your system\u003C\u002Fli>\n\u003Cli>JSON (Jed) file compilation compatible with WordPress script localization\u003C\u002Fli>\n\u003Cli>Support for standard PO features including comments, references and plural forms\u003C\u002Fli>\n\u003Cli>PO source view with clickable source code references\u003C\u002Fli>\n\u003Cli>Protected language directory for saving custom translations\u003C\u002Fli>\n\u003Cli>Configurable PO file backups with diff and restore capability\u003C\u002Fli>\n\u003Cli>Built-in WordPress locale codes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Official \u003Ca href=\"https:\u002F\u002Flocalise.biz\u002F\" rel=\"nofollow ugc\">Loco\u003C\u002Fa> WordPress plugin by Tim Whitlock.\u003Cbr \u002F>\nFor more information please visit our \u003Ca href=\"https:\u002F\u002Flocalise.biz\u002Fwordpress\u002Fplugin\" rel=\"nofollow ugc\">plugin page\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Keyboard shortcuts\u003C\u002Fh3>\n\u003Cp>The PO file editor supports the following keyboard shortcuts for faster translating:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Done and Next: \u003Ccode>Ctrl ↵\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Next string: \u003Ccode>Ctrl \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↓\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Previous string: \u003Ccode>Ctrl \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↑\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Next untranslated: \u003Ccode>Shift Ctrl \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↓\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Previous untranslated: \u003Ccode>Shift Ctrl \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">↑\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Copy from source text: \u003Ccode>Ctrl B\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Clear translation: \u003Ccode>Ctrl K\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Toggle Fuzzy: \u003Ccode>Ctrl U\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Save PO \u002F compile MO: \u003Ccode>Ctrl S\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Toggle invisibles: \u003Ccode>Shift Ctrl I\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Suggest translation: \u003Ccode>Ctrl J\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Mac users can use ⌘ Cmd instead of Ctrl.\u003C\u002Fp>\n","Translate WordPress plugins and themes directly in your browser. Versatile PO file editor with integrated AI translation providers.",1000000,34755486,96,449,"2026-03-14T11:53:00.000Z","6.6",[106,107,108,20,109],"i18n","l10n","language","translation","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Floco-translate\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Floco-translate.2.8.3.zip",95,5,"2026-05-04 13:32:17",{"slug":116,"name":117,"version":118,"author":119,"author_profile":120,"description":121,"short_description":122,"active_installs":123,"downloaded":124,"rating":125,"num_ratings":126,"last_updated":127,"tested_up_to":14,"requires_at_least":128,"requires_php":23,"tags":129,"homepage":132,"download_link":133,"security_score":134,"vuln_count":113,"unpatched_count":11,"last_vuln_date":135,"fetched_at":27},"gtranslate","Translate WordPress with GTranslate","3.0.9","edo888","https:\u002F\u002Fprofiles.wordpress.org\u002Fedo888\u002F","\u003Cp>Translate WordPress with GTranslate plugin uses Google Translate automatic translation service to \u003Cstrong>translate wordpress\u003C\u002Fstrong> site with Google power and make it \u003Cstrong>multilingual\u003C\u002Fstrong>. With 103 available languages your site will be available to more than 99% of internet users. Our paid versions are \u003Cstrong>fully SEO compatible\u003C\u002Fstrong> which will \u003Cstrong>increase your international traffic and sales\u003C\u002Fstrong>. This translate plugin is a budget multilingual WordPress solution which combines automatic and human translations to save money and is easy to implement.\u003C\u002Fp>\n\u003Cp>GTranslate is a leading website translation services provider since 2008, it moves away the language barriers.\u003C\u002Fp>\n\u003Cp>Compared to other translation plugins for WordPress, we use cloud based approach which does not slow down your website. In addition to that, we can offer complete SEO features based on sub-domains with our paid options, which can make your website appear in search engines in different languages which will increase your international traffic and sales. In our paid versions we DO NOT limit the number of words or the number of translated pageviews. You DO NOT pay additionally for automatic translations.\u003C\u002Fp>\n\u003Cp>Please use \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fgtranslate\" rel=\"ugc\">GTranslate Support\u003C\u002Fa> for your questions and support requests! We are multilingual!\u003C\u002Fp>\n\u003Cp>Please check our \u003Ca href=\"https:\u002F\u002Fgtranslate.io\u002F?xyz=998#faq\" rel=\"nofollow ugc\">FAQ\u003C\u002Fa> to get quick answers.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Free Google automatic machine translation\u003C\u002Fli>\n\u003Cli>Hides Google top frame after translation\u003C\u002Fli>\n\u003Cli>Translate website on the fly\u003C\u002Fli>\n\u003Cli>Translate posts and pages\u003C\u002Fli>\n\u003Cli>Translate categories and tags\u003C\u002Fli>\n\u003Cli>Menus and widgets translation\u003C\u002Fli>\n\u003Cli>Themes and plugins translation\u003C\u002Fli>\n\u003Cli>Right to left language support\u003C\u002Fli>\n\u003Cli>Google language translator widget\u003C\u002Fli>\n\u003Cli>Auto-switch language based on browser defined language\u003C\u002Fli>\n\u003Cli>Available styles Float, Dropdown, Flags, Flags with dropdown, Nice dropdown with flags, Flags with language names, Flags with language codes, Language names, Language codes, Globe, Popup\u003C\u002Fli>\n\u003Cli>Floating language selector\u003C\u002Fli>\n\u003Cli>WooCommerce shop translation\u003C\u002Fli>\n\u003Cli>Multilingual language names in native alphabet\u003C\u002Fli>\n\u003Cli>Alternative flags for Quebec, Canada, USA, Brazil, Mexico, Argentina, Colombia\u003C\u002Fli>\n\u003Cli>Lazy loading for language flags and js libraries to boost performance\u003C\u002Fli>\n\u003Cli>Lightweight vanilla javascript without dependencies\u003C\u002Fli>\n\u003Cli>Forum Support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Paid Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Multilingual SEO – Enable search engine indexing\u003C\u002Fli>\n\u003Cli>Neural machine translations with human level translation quality\u003C\u002Fli>\n\u003Cli>Increase traffic and AdSense revenue\u003C\u002Fli>\n\u003Cli>Search engine friendly (SEF) URLs\u003C\u002Fli>\n\u003Cli>Yoast SEO compatible – translate meta keywords, meta description, schema.org data structures, translate sitemaps\u003C\u002Fli>\n\u003Cli>WooCommerce compatible – translate products, schema.org data structures\u003C\u002Fli>\n\u003Cli>You can have sub-directory (example.com\u002F\u003Cstrong>es\u003C\u002Fstrong>\u002F) or sub-domain (\u003Cstrong>es.\u003C\u002Fstrong>example.com) URL structure\u003C\u002Fli>\n\u003Cli>URL Translation aka slug translation is possible (example.com\u002Fabout-us &rarr; example.es\u002Fsobre-nosotros)\u003C\u002Fli>\n\u003Cli>Add hreflang tags for translated alternatives\u003C\u002Fli>\n\u003Cli>You can manually correct translations\u003C\u002Fli>\n\u003Cli>In context translation interface (make corrections without losing the context)\u003C\u002Fli>\n\u003Cli>Meta data translation (meta keywords, meta description)\u003C\u002Fli>\n\u003Cli>Translating schema.org microdata for better search engine appearance\u003C\u002Fli>\n\u003Cli>Seamless updates (cloud service updated on our side – SaaS, you do not need to worry about backups on your side)\u003C\u002Fli>\n\u003Cli>JSON format translation\u003C\u002Fli>\n\u003Cli>Translate WooCommerce emails\u003C\u002Fli>\n\u003Cli>AMP translation (Accelerated Mobile Pages translation)\u003C\u002Fli>\n\u003Cli>Image localization – Media translation\u003C\u002Fli>\n\u003Cli>Translation Proxy (aka Translation Delivery Network)\u003C\u002Fli>\n\u003Cli>Centralized Translation Cache – We revise and improve translations over time\u003C\u002Fli>\n\u003Cli>Language Hosting (\u003Cstrong>example.fr\u003C\u002Fstrong>)\u003C\u002Fli>\n\u003Cli>User Dashboard with Analytics\u003C\u002Fli>\n\u003Cli>Live Chat Support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>See also\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>If you are looking for unlimited, high-quality automatic translations, check out \u003Ca href=\"https:\u002F\u002Ftranslatex.com\" rel=\"nofollow ugc\">TranslateX\u003C\u002Fa> – an automatic translation API offering unlimited translation for your website or application.\u003C\u002Fp>\n\u003Cp>We also offer integration plugins:\u003Cbr \u002F>\n\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftranslatex-for-loco-translate\u002F\" rel=\"ugc\">TranslateX for Loco Translate\u003C\u002Fa>\u003C\u002Fstrong> – integrate TranslateX API directly into Loco Translate for seamless, unlimited automatic translations.\u003Cbr \u002F>\n\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftranslatex-for-translatepress\u002F\" rel=\"ugc\">TranslateX for TranslatePress\u003C\u002Fa>\u003C\u002Fstrong> – bring unlimited automatic translation to TranslatePress using TranslateX API.\u003C\u002Fp>\n\u003Cp>These solutions make it easy to supercharge your WordPress multilingual setup with TranslateX’s secure and affordable API.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>GTranslate WordPress Demo\u003C\u002Fstrong>\u003Cbr \u002F>\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\u002F9mtC3LFBErY?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>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Watch GTranslate Tour\u003C\u002Fstrong>\u003Cbr \u002F>\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\u002FR4mfiKGZh_g?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>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Edit Translations Demo (paid)\u003C\u002Fstrong>\u003Cbr \u002F>\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\u002FYwSy3VtQx3I?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>\u003C\u002Fp>\n","Translate WordPress with Google Translate multilanguage plugin to make your website multilingual. Complete multilingual SEO solution for WordPress.",900000,13714633,98,4868,"2026-01-11T14:35:00.000Z","2.8.1",[108,20,130,109,131],"translate","translator","https:\u002F\u002Fgtranslate.io\u002F?xyz=998","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgtranslate.3.0.9.zip",99,"2023-08-25 00:00:00",{"attackSurface":137,"codeSignals":225,"taintFlows":245,"riskAssessment":404,"analyzedAt":412},{"hooks":138,"ajaxHandlers":198,"restRoutes":213,"shortcodes":214,"cronEvents":223,"entryPointCount":224,"unprotectedCount":11},[139,145,150,155,157,160,162,164,165,168,170,172,176,182,186,190,194],{"type":140,"name":141,"callback":142,"file":143,"line":144},"action","init","register_shortcodes","includes\u002Fbooking\u002Fclass-booking-manager.php",17,{"type":140,"name":146,"callback":147,"file":148,"line":149},"admin_init","handle_downloads","includes\u002Fbooking\u002Fclass-download-handler.php",15,{"type":140,"name":151,"callback":152,"file":153,"line":154},"admin_enqueue_scripts","anonymous","includes\u002Fcore\u002Fclass-plugin.php",81,{"type":140,"name":151,"callback":152,"file":153,"line":156},82,{"type":140,"name":158,"callback":152,"file":153,"line":159},"admin_menu",83,{"type":140,"name":161,"callback":152,"file":153,"line":90},"wp_enqueue_scripts",{"type":140,"name":161,"callback":152,"file":153,"line":163},93,{"type":140,"name":161,"callback":152,"file":153,"line":101},{"type":166,"name":167,"callback":152,"file":153,"line":134},"filter","wp_nav_menu_items",{"type":140,"name":141,"callback":152,"file":153,"line":169},102,{"type":140,"name":171,"callback":152,"file":153,"line":12},"widgets_init",{"type":140,"name":141,"callback":173,"file":174,"line":175},"set_language_cookie","includes\u002Fmultilang\u002Fclass-language-manager.php",34,{"type":166,"name":177,"callback":178,"priority":179,"file":180,"line":181},"the_title","translate_title",10,"includes\u002Fmultilang\u002Fclass-translator.php",27,{"type":166,"name":183,"callback":184,"file":180,"line":185},"the_content","translate_content",28,{"type":166,"name":187,"callback":188,"file":180,"line":189},"the_excerpt","translate_excerpt",29,{"type":140,"name":191,"callback":192,"file":180,"line":193},"add_meta_boxes","add_translation_meta_box",32,{"type":140,"name":195,"callback":196,"file":180,"line":197},"save_post","save_translations",33,[199,205,207,211],{"action":200,"nopriv":201,"callback":202,"hasNonce":203,"hasCapCheck":201,"file":143,"line":204},"swisbs_submit_booking",false,"handle_booking_submission",true,20,{"action":200,"nopriv":203,"callback":202,"hasNonce":203,"hasCapCheck":201,"file":143,"line":206},21,{"action":208,"nopriv":201,"callback":209,"hasNonce":203,"hasCapCheck":201,"file":143,"line":210},"swisbs_get_available_slots","get_available_time_slots",22,{"action":208,"nopriv":203,"callback":209,"hasNonce":203,"hasCapCheck":201,"file":143,"line":212},23,[],[215,218],{"tag":216,"callback":217,"file":143,"line":32},"swisbs_booking","render_booking_form",{"tag":219,"callback":220,"file":221,"line":222},"swisbs_language_switcher","language_switcher_shortcode","public\u002Fclass-public.php",66,[],6,{"dangerousFunctions":226,"sqlUsage":227,"outputEscaping":230,"fileOperations":242,"externalRequests":31,"nonceChecks":243,"capabilityChecks":224,"bundledLibraries":244},[],{"prepared":228,"raw":11,"locations":229},67,[],{"escaped":231,"rawEcho":45,"locations":232},503,[233,236,237,239],{"file":148,"line":234,"context":235},58,"raw output",{"file":148,"line":159,"context":235},{"file":148,"line":238,"context":235},140,{"file":240,"line":241,"context":235},"includes\u002Finvoice\u002Fclass-swiss-qr-bill-generator.php",132,2,12,[],[246,290,306,321,333,352,366,389],{"entryPoint":247,"graph":248,"unsanitizedCount":11,"severity":289},"\u003Cbookings> (admin\u002Fviews\u002Fbookings.php:0)",{"nodes":249,"edges":284},[250,256,262,265,270,274,277,280],{"id":251,"type":252,"label":253,"file":254,"line":255},"n0","source","$_GET (x3)","admin\u002Fviews\u002Fbookings.php",13,{"id":257,"type":258,"label":259,"file":254,"line":260,"wp_function":261},"n1","sink","get_row() [SQLi]",14,"get_row",{"id":263,"type":252,"label":264,"file":254,"line":255},"n2","$_GET (x17)",{"id":266,"type":258,"label":267,"file":254,"line":268,"wp_function":269},"n3","echo() [XSS]",37,"echo",{"id":271,"type":252,"label":272,"file":254,"line":273},"n4","$_POST",46,{"id":275,"type":258,"label":259,"file":254,"line":276,"wp_function":261},"n5",54,{"id":278,"type":252,"label":279,"file":254,"line":112},"n6","$_GET",{"id":281,"type":258,"label":282,"file":254,"line":169,"wp_function":283},"n7","get_var() [SQLi]","get_var",[285,286,287,288],{"from":251,"to":257,"sanitized":203},{"from":263,"to":266,"sanitized":203},{"from":271,"to":275,"sanitized":203},{"from":278,"to":281,"sanitized":203},"low",{"entryPoint":291,"graph":292,"unsanitizedCount":11,"severity":289},"\u003Cinvoices> (admin\u002Fviews\u002Finvoices.php:0)",{"nodes":293,"edges":303},[294,297,299,301],{"id":251,"type":252,"label":279,"file":295,"line":296},"admin\u002Fviews\u002Finvoices.php",39,{"id":257,"type":258,"label":259,"file":295,"line":298,"wp_function":261},40,{"id":263,"type":252,"label":300,"file":295,"line":296},"$_GET (x13)",{"id":266,"type":258,"label":267,"file":295,"line":302,"wp_function":269},62,[304,305],{"from":251,"to":257,"sanitized":203},{"from":263,"to":266,"sanitized":203},{"entryPoint":307,"graph":308,"unsanitizedCount":11,"severity":289},"\u003Cservices> (admin\u002Fviews\u002Fservices.php:0)",{"nodes":309,"edges":318},[310,314,315,316],{"id":251,"type":252,"label":311,"file":312,"line":313},"$_GET['edit']","admin\u002Fviews\u002Fservices.php",44,{"id":257,"type":258,"label":259,"file":312,"line":313,"wp_function":261},{"id":263,"type":252,"label":279,"file":312,"line":313},{"id":266,"type":258,"label":267,"file":312,"line":317,"wp_function":269},61,[319,320],{"from":251,"to":257,"sanitized":203},{"from":263,"to":266,"sanitized":203},{"entryPoint":322,"graph":323,"unsanitizedCount":11,"severity":289},"\u003Csettings> (admin\u002Fviews\u002Fsettings.php:0)",{"nodes":324,"edges":331},[325,328],{"id":251,"type":252,"label":272,"file":326,"line":327},"admin\u002Fviews\u002Fsettings.php",19,{"id":257,"type":258,"label":329,"file":326,"line":204,"wp_function":330},"update_option() [Settings Manipulation]","update_option",[332],{"from":251,"to":257,"sanitized":203},{"entryPoint":334,"graph":335,"unsanitizedCount":11,"severity":289},"handle_downloads (includes\u002Fbooking\u002Fclass-download-handler.php:18)",{"nodes":336,"edges":348},[337,340,341,342,346,347],{"id":251,"type":252,"label":338,"file":148,"line":339},"$_GET (x2)",38,{"id":257,"type":258,"label":259,"file":148,"line":296,"wp_function":261},{"id":263,"type":252,"label":338,"file":148,"line":339},{"id":266,"type":258,"label":343,"file":148,"line":344,"wp_function":345},"header() [Header Injection]",56,"header",{"id":271,"type":252,"label":338,"file":148,"line":339},{"id":275,"type":258,"label":267,"file":148,"line":234,"wp_function":269},[349,350,351],{"from":251,"to":257,"sanitized":203},{"from":263,"to":266,"sanitized":203},{"from":271,"to":275,"sanitized":203},{"entryPoint":353,"graph":354,"unsanitizedCount":11,"severity":289},"\u003Cclass-download-handler> (includes\u002Fbooking\u002Fclass-download-handler.php:0)",{"nodes":355,"edges":362},[356,357,358,359,360,361],{"id":251,"type":252,"label":338,"file":148,"line":339},{"id":257,"type":258,"label":259,"file":148,"line":296,"wp_function":261},{"id":263,"type":252,"label":338,"file":148,"line":339},{"id":266,"type":258,"label":343,"file":148,"line":344,"wp_function":345},{"id":271,"type":252,"label":300,"file":148,"line":339},{"id":275,"type":258,"label":267,"file":148,"line":234,"wp_function":269},[363,364,365],{"from":251,"to":257,"sanitized":203},{"from":263,"to":266,"sanitized":203},{"from":271,"to":275,"sanitized":203},{"entryPoint":367,"graph":368,"unsanitizedCount":242,"severity":388},"handle_booking_submission (includes\u002Fbooking\u002Fclass-booking-manager.php:207)",{"nodes":369,"edges":383},[370,372,375,377,379,381],{"id":251,"type":252,"label":272,"file":143,"line":371},227,{"id":257,"type":373,"label":374,"file":143,"line":371},"transform","→ is_time_slot_available()",{"id":263,"type":258,"label":282,"file":143,"line":376,"wp_function":283},175,{"id":266,"type":252,"label":272,"file":143,"line":378},246,{"id":271,"type":373,"label":380,"file":143,"line":378},"→ get_booking()",{"id":275,"type":258,"label":259,"file":143,"line":382,"wp_function":261},153,[384,385,386,387],{"from":251,"to":257,"sanitized":201},{"from":257,"to":263,"sanitized":201},{"from":266,"to":271,"sanitized":201},{"from":271,"to":275,"sanitized":201},"high",{"entryPoint":390,"graph":391,"unsanitizedCount":242,"severity":388},"\u003Cclass-booking-manager> (includes\u002Fbooking\u002Fclass-booking-manager.php:0)",{"nodes":392,"edges":399},[393,394,395,396,397,398],{"id":251,"type":252,"label":272,"file":143,"line":371},{"id":257,"type":373,"label":374,"file":143,"line":371},{"id":263,"type":258,"label":282,"file":143,"line":376,"wp_function":283},{"id":266,"type":252,"label":272,"file":143,"line":378},{"id":271,"type":373,"label":380,"file":143,"line":378},{"id":275,"type":258,"label":259,"file":143,"line":382,"wp_function":261},[400,401,402,403],{"from":251,"to":257,"sanitized":201},{"from":257,"to":263,"sanitized":201},{"from":266,"to":271,"sanitized":201},{"from":271,"to":275,"sanitized":201},{"summary":405,"deductions":406},"The \"swiss-business-suite\" v1.0.0 plugin exhibits a generally strong security posture based on the provided static analysis. The complete absence of unprotected entry points (AJAX handlers, REST API routes) and the consistent use of prepared statements for SQL queries are significant strengths. Furthermore, the high percentage of properly escaped output and the presence of nonce and capability checks suggest good development practices aimed at preventing common web vulnerabilities. The plugin also has no recorded vulnerability history, which is a positive indicator.\n\nHowever, the taint analysis reveals two flows with unsanitized paths, flagged as high severity. While the plugin has no dangerous functions or raw SQL queries, these unsanitized paths represent a potential risk if they handle user-supplied input that is then used in a sensitive operation or leads to information disclosure. The small number of file operations and external HTTP requests are also worth noting as they represent potential, albeit limited, attack vectors.\n\nIn conclusion, the plugin demonstrates good foundational security practices. The primary concern lies with the identified high-severity taint flows, which require further investigation to confirm and mitigate any actual vulnerabilities. The lack of historical vulnerabilities is reassuring, but the taint analysis highlights the need for vigilance and thorough code review of these specific paths.",[407,409],{"reason":408,"points":243},"High severity taint flows found",{"reason":410,"points":411},"Flows with unsanitized paths identified",8,"2026-04-16T14:38:14.221Z",{"wat":414,"direct":423},{"assetPaths":415,"generatorPatterns":418,"scriptPaths":419,"versionParams":420},[416,417],"\u002Fwp-content\u002Fplugins\u002Fswiss-business-suite\u002Fadmin\u002Fcss\u002Fadmin.css","\u002Fwp-content\u002Fplugins\u002Fswiss-business-suite\u002Fadmin\u002Fjs\u002Fadmin.js",[],[],[421,422],"swiss-business-suite\u002Fadmin\u002Fcss\u002Fadmin.css?ver=","swiss-business-suite\u002Fadmin\u002Fjs\u002Fadmin.js?ver=",{"cssClasses":424,"htmlComments":425,"htmlAttributes":426,"restEndpoints":428,"jsGlobals":429,"shortcodeOutput":431},[],[],[427],"data-nonce=\"swisbs-admin\"",[],[430],"swisbsAdmin",[],{"error":203,"url":433,"statusCode":434,"statusMessage":435,"message":435},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fswiss-business-suite\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":31,"versions":437},[438],{"version":6,"download_url":24,"svn_tag_url":439,"released_at":26,"has_diff":201,"diff_files_changed":440,"diff_lines":26,"trac_diff_url":26,"vulnerabilities":441,"is_current":203},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fswiss-business-suite\u002Ftags\u002F1.0.0\u002F",[],[]]