Billingo
Billingo connects yStore orders to Billingo, the Hungarian online invoicing service. It registers as an invoice provider on yStore's shared invoicing system, authenticates with a single API key, and adds a Billingo section to the Craft control panel with a dashboard, settings, and a license page.
What it does
- Registers a
Yui\Billingo\providers\BillingoInvoiceProvideron yStore's shared invoicing system, so Billingo can act alongside any other invoice provider the store has configured. - Creates the invoice either together with the order (Trigger: Order) or once the order reaches a configured status (Trigger: Status).
- API Key and Invoice block ID are site-overridable on a multi-site install, alongside Invoice language.
- Generates invoices as draft, proforma, or invoice, in a fixed language or the language implied by the order's billing address.
- Can override the tax rate applied to invoice items -- globally, only for items that would otherwise be 0%, or based on whether the billing country is inside the EU -- with the matching NAV entitlement code attached when required.
- Maps each store payment method to a Billingo payment method and payment deadline through an editable table (Payment Mapping).
- Can email the invoice to the customer, and can trigger Billingo's own send action so drafts don't need to be sent manually.
- Reports invoice creation outcomes (
invoice.created,invoice.failed,invoice.error) throughyui/craft-core's shared notification system. - Exposes invoice listing, creation, and sending as MCP tools for AI-agent-driven operations when
yui/craft-mcpis installed. - Activates the plugin license from Billingo → License.
Use Cases
Admin / Craft CP
- Enter your API Key and Invoice block ID on the Credentials tab to connect the store to your Billingo account.
- Choose Trigger -- Order to invoice immediately, or Status plus a Trigger status list to invoice once the order reaches one of those statuses.
- Pick the Invoice type (draft, proforma, or invoice) and the Invoice language, or leave the language on Számlázási cím alapján to derive it from the order's billing address.
- Turn on Add SKU to include the product SKU in the product comment sent to Billingo.
- Use Tax override, Tax override if 0%, and Tax override EU/EUK (with Tax override for shipping to extend the EU/EUK override to the shipping line) to control invoice tax rates for cases NAV requires, attaching the matching entitlement code where required.
- Build the Payment Mapping table to align each store payment method with a Billingo payment method and payment deadline.
- Turn on Send email and/or Send via Billingo to have the invoice emailed to the customer and/or sent through Billingo automatically once issued.
- Turn on Electronic invoice to mark generated invoices as electronic.
- Review Billingo → Dashboard for invoice activity.
- Activate the plugin license from Billingo → License.
Developer / Integrator
- Read the plugin's settings and services from
Yui\Billingo\Plugin::getInstance()to build custom invoicing or reporting logic on top of the same API credentials and trigger configuration. - Listen for
invoice.created,invoice.failed, andinvoice.errornotifications (registered viaNotificationService::EVENT_REGISTER_NOTIFICATION_TYPES) to surface Billingo invoicing outcomes elsewhere in the CP. - Call the Billingo MCP tools (get/create/send invoices) from an AI agent or automation when
yui/craft-mcpis installed.
Installation & Requirements
Requirements
- Craft CMS 5 (
craftcms/cms^5.0.0) yui/craft-core^1 andyui/craft-plugin^2, provided by every yStore installation- A Billingo account with an API key
- Optional:
yui/craft-mcp, for the MCP invoice tools
Installation
composer require yui/craft-billingo
After installing, enable the plugin in Settings → Plugins, then open Billingo → Settings and configure at minimum:
- API Key and Invoice block ID on the Credentials tab.
- Trigger (and Trigger status, if using Status) on the Invoice tab.
See Settings for the full field reference.
Documentation
- Settings -- full settings reference, organized by CP tab
- Release Notes -- notable changes between releases