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

Soap Client Laravel Package

besimple/soap-client

Extends PHP’s native SoapClient with support for SOAP with Attachments (SwA), MTOM optimization, WS-Security (incl. UsernameToken), and WS-Addressing. Useful when integrating SOAP services that require attachments and message-level security.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Legacy System Integration: Enables seamless integration with enterprise SOAP-based systems (e.g., ERP, legacy APIs, or government services) where modern REST/gRPC alternatives are unavailable.
  • WS-Security Compliance: Critical for projects requiring authentication/authorization via WS-Security (e.g., healthcare, finance, or B2B applications).
  • Performance Optimization: MTOM/SwA support reduces payload size and improves throughput for large file transfers (e.g., document processing, media APIs).
  • Roadmap for SOAP Migration: Acts as a temporary bridge while phasing out SOAP dependencies, allowing incremental adoption of REST/gRPC.
  • Build vs. Buy: Avoids reinventing SOAP client logic, reducing dev time and maintenance overhead compared to custom solutions.
  • Use Cases:
    • B2B/B2G: Connecting to partner or government SOAP endpoints (e.g., tax filings, logistics).
    • Legacy Modernization: Wrapping SOAP services behind a Laravel API for internal teams.
    • Hybrid Architectures: Combining SOAP with modern microservices (e.g., exposing SOAP endpoints via Laravel while building new REST APIs).

When to Consider This Package

  • Adopt When:

    • Your project must interact with SOAP services (no REST/gRPC alternatives exist).
    • You need WS-Security, MTOM, or SwA (native PHP SoapClient lacks these).
    • Your team lacks SOAP expertise but needs a maintainable, feature-rich solution.
    • You’re using Laravel and want to avoid vendor-locked SOAP libraries (e.g., NuSOAP).
    • The package’s maturity (active maintenance, Laravel integration) aligns with your timeline.
  • Look Elsewhere If:

    • SOAP is not a requirement (prioritize REST/gRPC/GraphQL for new projects).
    • You need advanced SOAP features (e.g., WS-Policy, WS-ReliableMessaging) beyond this package’s scope.
    • Your team prefers type safety (consider PHP 8.1+ attributes or a custom wrapper).
    • The 0.2.x dev version is a blocker (evaluate stability for production use).
    • You’re in a high-security environment (audit the package’s WS-Security implementation thoroughly).

How to Pitch It (Stakeholders)

For Executives: "This Laravel package lets us securely and efficiently integrate with critical SOAP-based systems—like [Partner X’s ERP] or [Government Y’s API]—without building a custom solution. It handles complex requirements like WS-Security (for authentication) and MTOM (for fast file transfers), which would take months to develop in-house. By using this, we reduce risk, cut dev costs, and future-proof our integrations while we migrate to modern APIs. The package is actively maintained and aligns with our Laravel stack, making it a low-effort, high-reward choice."

For Engineering: *"BeSimpleSoapClient extends PHP’s native SoapClient with must-have features like:

  • WS-Security: Username tokens for auth (no more manual XML signing).
  • MTOM/SwA: Optimized binary data handling (critical for attachments).
  • WS-Addressing: Standardized endpoint routing. It’s a drop-in replacement for Laravel projects, with clear docs and a simple Composer install. Tradeoffs: It’s a dev dependency (not a framework), so we’ll need to wrap it in a service layer for consistency. Alternatives: Native SoapClient lacks these features, and other SOAP libraries (e.g., NuSOAP) are heavier or abandoned. Recommendation: Use this for SOAP integrations; pair with a migration plan to REST/gRPC where possible."*
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.
gmostafa/php-graphql-client
xeviant/paystack
snowsoft/faker
meditationsteps/blogetc
animalyoung/laravel-influxdb
onix-solutions/sms-telera
lonely-lights/prosetta
oxygen/data
oxygen/core
jengo/base
xiloryx/log-collector
a21ns1g4ts/filament-stripe
la-php/laravel-admin
artisan-build/community-prompts
vleroy/smart
ayles-software/laravel-australian-public-holidays
cboxdk/laravel-id-spatie
cboxdk/laravel-id-billing
cboxdk/laravel-id-billing-bridge
simple-as-fuck/php-performance-log