Weave Code
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.
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle