picoss/yousign-bundle
Symfony bundle that integrates Yousign electronic signature services into PHP applications. It provides configuration and service wrappers for creating, managing, and tracking signature requests through the Yousign API, with support for common e-signature workflows and easy setup.
composer require picoss/yousign-bundle). This is a Symfony 2.x-era bundle, so expect an old dependency tree (likely an older Guzzle and no PHP 7.4+/8.x type hints).app/AppKernel.php) add new Picoss\YouSignBundle\PicossYouSignBundle() to the $bundles array; in Symfony 4+ add it to config/bundles.php (Flex won't auto-register it).config.yml / config/packages/picoss_yousign.yaml. The extension typically exposes an API key plus a sandbox/production switch, e.g.:
picoss_yousign:
api_key: "%yousign_api_key%"
mode: sandbox # or production
Keep api_key in parameters.yml / env vars, never in committed YAML.bin/console debug:container yousign --show-private (or php app/console container:debug) to see the actual service ID, class, and constructor arguments. The bundle's Resources/config/services.yml is the authoritative source — read it first.SignatureService that depends on the bundle client, normalizes YouSign response arrays into your domain objects, and centralizes retry/logging. This isolates you from the bundle's low maintenance and non-strict return types.SignatureService::requestSignature($document, $signers) → persist the returned signature_request ID on your entity → a webhook controller (or polling command) reconciles status changes back to your entity.sandbox in dev/test and production in prod via environment-specific YAML. Because the only real difference is the base URL, this keeps local testing cheap.SignatureService with an alias and override it in config/services_test.yaml with a fake that records calls. This avoids hitting the real API in test suites; the bundle itself ships no mocking layer.id field — so handle both success and errors keys explicitly.picoss_yousign.client. Grep the bundle's Resources/config/services.yml, or run debug:container to confirm. Aliasing the ID in your own services.yaml protects you against renames.id or status is missing.errors key, and log the full body (redact api_key) — silent failures look like empty arrays.composer.json, review the source for the handful of methods you actually use, and keep your SignatureService thin enough that moving off the bundle (e.g., to the official YouSign SDK or direct HTTP calls) is a one-day change rather than a rewrite.How can I help you explore Laravel packages today?