PHPackages                             laulamanapps/document-signer-sdk - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [PDF &amp; Document Generation](/categories/documents)
4. /
5. laulamanapps/document-signer-sdk

ActiveLibrary[PDF &amp; Document Generation](/categories/documents)

laulamanapps/document-signer-sdk
================================

Provider-agnostic e-signature SDK for PHP: build envelopes from HTML templates with {{type:signer:name}} placeholders, render them to PDF, and send them through any SignatureProvider implementation (ValidSign, DocuSign, or your own).

001PHPCI passing

Since Jun 30Pushed todayCompare

[ Source](https://github.com/LauLamanApps/document-signer-sdk)[ Packagist](https://packagist.org/packages/laulamanapps/document-signer-sdk)[ RSS](/packages/laulamanapps-document-signer-sdk/feed)WikiDiscussions main Synced today

READMEChangelogDependenciesVersions (1)Used By (1)

Document Signer SDK
===================

[](#document-signer-sdk)

A provider-agnostic PHP SDK for sending HTML documents through e-signature providers. You author contracts as HTML with `{[type:signer:name]}` placeholders; the SDK translates them to the provider's native anchor format, renders the HTML to PDF, and creates the envelope.

```
+-------------------+        +--------------------+        +----------------------+
|  HTML + signers   |  -->   |  documentsigner    |  -->   |  ValidSign /         |
|  (your code)      |        |  sdk + provider    |        |  DocuSign API        |
+-------------------+        +--------------------+        +----------------------+

```

Packages
--------

[](#packages)

PackagePathPurpose`laulamanapps/document-signer-sdk``sdk/`Domain model, placeholder parser, anchor-replacer base, Browsershot PDF renderer, `SignatureProvider` contract.`laulamanapps/document-signer-validsign``validsign/`ValidSign (OneSpan Sign) implementation.`laulamanapps/document-signer-docusign``docusign/`DocuSign eSignature implementation.All three are installed together for local development through the root `composer.json`, which exposes them as `path` repositories.

End-to-end example
------------------

[](#end-to-end-example)

```
use LauLamanApps\DocumentSigner\Sdk\Document\Document;
use LauLamanApps\DocumentSigner\Sdk\Envelope\Envelope;
use LauLamanApps\DocumentSigner\Sdk\Signer\Signer;
use LauLamanApps\DocumentSigner\Sdk\Signer\SigningOrder;
use LauLamanApps\DocumentSigner\ValidSign\ValidSignConfig;
use LauLamanApps\DocumentSigner\ValidSign\ValidSignProvider;

$envelope = new Envelope(
    name:         'NDA 2026-06',
    documents:    [
        new Document(
            id:   'nda',
            name: 'Non-disclosure agreement',
            html: 'NDASigned by {[text:counterparty:fullname]}'
                . '{[signature:counterparty:sig]} on {[date:counterparty:signdate]}',
        ),
    ],
    signers:      [
        new Signer(key: 'counterparty', name: 'Jane Doe', email: 'jane@example.com'),
    ],
    emailSubject: 'Please sign the NDA',
    emailMessage: 'Hi Jane, please sign at your convenience.',
    signingOrder: SigningOrder::Parallel,
);

$provider = new ValidSignProvider(
    new ValidSignConfig(apiKey: getenv('VALIDSIGN_API_KEY')),
);

$receipt = $provider->send($envelope);
// $receipt->providerEnvelopeId is now the ValidSign package id.
```

Swapping providers is a one-line change: instantiate `DocuSignProvider` with a `DocuSignConfig` instead — the `Envelope` is untouched.

Documentation
-------------

[](#documentation)

Start with [Getting started](docs/getting-started.md), then dive into the relevant guide:

- [Getting started](docs/getting-started.md)
- [Architecture](docs/architecture.md)
- [Placeholder syntax](docs/placeholders.md)
- [PDF rendering](docs/pdf-rendering.md)
- [ValidSign provider](docs/providers/validsign.md)
- [DocuSign provider](docs/providers/docusign.md)
- [Extending the SDK](docs/extending.md)
- [Writing a custom provider](docs/custom-provider.md)

Requirements
------------

[](#requirements)

- PHP 8.5
- Node.js + Puppeteer (required by `spatie/browsershot` for HTML→PDF)
- A ValidSign or DocuSign account with API credentials

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance65

Regular maintenance activity

Popularity0

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity11

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/930ca3b1756d00a63c8ff3363e81f16f961cf3ef79ff0c9d362670c36d97e456?d=identicon)[LauLaman](/maintainers/LauLaman)

---

Top Contributors

[![LauLaman](https://avatars.githubusercontent.com/u/8283992?v=4)](https://github.com/LauLaman "LauLaman (3 commits)")

### Embed Badge

![Health badge](/badges/laulamanapps-document-signer-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/laulamanapps-document-signer-sdk/health.svg)](https://phpackages.com/packages/laulamanapps-document-signer-sdk)
```

###  Alternatives

[qipsius/tcpdf-bundle

A bundle to easily integrate TCPDF into Symfony

23749.5k](/packages/qipsius-tcpdf-bundle)[macopedia/magmi2

Magento Mass Importer 'Magmi' for Magento 2

11615.7k](/packages/macopedia-magmi2)[tarfin-labs/easy-pdf

Makes pdf processing easy.

1719.4k](/packages/tarfin-labs-easy-pdf)[akeneo-labs/excel-connector-bundle

Akeneo PIM Excel connector bundle

166.4k](/packages/akeneo-labs-excel-connector-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
