Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Vat Bundle Laravel Package

sparkling/vat-bundle

sparkling/vat-bundle is a Symfony bundle for validating EU VAT numbers through the VIES service, with ready-to-use validators and services that make it easy to add VAT checks to checkout, onboarding, or other PHP application workflows.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Feature gating for B2B/EU commerce. VAT-number validation underpins a cluster of high-value features: reverse-charge tax exemption at checkout, VAT-exempt invoicing, B2B account verification, marketplace seller onboarding, and "validated business" pricing or trial extensions. Any of these being on the near-term roadmap makes the capability relevant.
  • Build vs. buy for a compliance-adjacent service. The decision is not "adopt this package" but "how do we get EU VAT validation with an auditable result." That choice drives whether you buy an SLA-backed API, wrap the public EU VIES service in-house, or take a maintained library.
  • Market expansion sequencing. Whether you can sell into DE/FR/NL/IT B2B without manual finance review depends on having automated validation plus stored evidence. This influences which countries you enable self-serve versus sales-assisted.
  • Invoice and audit posture. EU VAT rules require you to be able to show when a number was validated and what the response was. That is a data-model decision (validation attempts table, timestamps, raw responses), not a library detail — worth settling early because retrofitting evidence trails is expensive.
  • A useful negative signal in dependency review. An archived bundle with a single-digit-teen opportunity score is a concrete example for your dependency policy: capability demand is real, artifact viability is not. It supports writing down a "validation services must be maintained and actively supported" rule.
  • Vendor-risk precedent. Zero dependents and no release since 2018 means no community tripwire — if it breaks, you are the only one who notices.

When to Consider This Package

Adoption criteria (all would have to hold):

  • You are maintaining an existing Symfony 2.x application that already depends on this bundle and is pinned to a matching PHP version.
  • The work is removal or stabilization, not new feature development — e.g., you need to read existing validation records before migrating off.
  • You have a compensating control for the fact that VIES member-state participation and responses change over time, and an archived bundle will never be updated to match.

Where to look elsewhere (which is nearly always):

  • Laravel — always. This is a Symfony2 bundle, not a Laravel package. Its service container wiring, configuration tree, and dependency-injection extension do not map onto Laravel service providers; you would be writing an adapter around an unmaintained library, which is more work than the integration it saves.
  • Any PHP 8.x runtime. A 2018 release predates current PHP support windows; verify constraints before assuming installability, and expect abandoned transitive dependencies.
  • Any requirement for uptime handling. VIES has real outages and member states that intermittently return unavailable. You need retry, queueing, caching, and a defined business policy for "cannot validate right now" — typically: allow checkout, flag order for later revalidation, do not silently grant exemption.
  • Any requirement for security review or CI. No maintained test matrix, no advisory monitoring, no release cadence.
  • Alternatives worth evaluating: a maintained VAT package with a first-party Laravel provider; a thin in-house service around the EU VIES REST API; or a commercial validation API where invoice-level SLAs and rate lookups justify the cost. Compare on latency, cacheability, evidence retention, and failure semantics — not on lines of code saved.

How to Pitch It (Stakeholders)

For executives: The problem is real and probably on our roadmap — validating EU business VAT numbers is a prerequisite for charging tax correctly on cross-border B2B sales and for defending our invoices in an audit. The package in front of us is not a solution: it is a Symfony2 bundle, last released in 2018, archived upstream, with no dependents and no ongoing maintenance. Adopting it in a Laravel codebase would cost more in adapter code and risk than writing the integration ourselves. Recommendation: do not adopt; fund a small, scoped validation service instead, roughly one to two sprints including persistence of validation evidence.

For engineering: Treat this as a reference for the shape of the domain (validate, normalize, record) rather than a dependency. It is architecturally foreign to Laravel, pinned to an end-of-life framework generation, and carries no security or compatibility support. The preferred path is a narrow internal service: call the EU VIES endpoint, cache successful validations with a TTL, queue and retry failures, persist every attempt with timestamp and raw response for audit, and expose a single isValidForReverseCharge()-style method to the checkout domain. That keeps the compliance evidence under our control and the vendor surface at zero.

The ask: approve the capability work; decline the dependency.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect