PHPackages                             memocashweb/d4sign-php - 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. memocashweb/d4sign-php

ActivePackage

memocashweb/d4sign-php
======================

02PHP

Since Sep 21Pushed 2y agoCompare

[ Source](https://github.com/memocashweb/d4sign-php)[ Packagist](https://packagist.org/packages/memocashweb/d4sign-php)[ RSS](/packages/memocashweb-d4sign-php/feed)WikiDiscussions master Synced today

READMEChangelogDependenciesVersions (1)Used By (0)

D4Sign PHP Client - SDK
=======================

[](#d4sign-php-client---sdk)

Documentação [D4Sign REST API](http://docapi.d4sign.com.br/).

Instalação
==========

[](#instalação)

Via composer, encaixe os itens abaixo no seu composer.json: (Talvez seja necessário criar tags novas no json, como o repositories)

```
{
  "require": {
      "d4sign/d4sign-php": "dev-master"
  },
  "minimum-stability": "dev",
  "repositories": [
      {
          "type": "git",
          "url": "https://github.com/d4sign/d4sign-php"
      }
  ]
}
```

Sem gerenciador de dependências:

```
// inclua antes do código que utilizará o SDK
require_once(__DIR__ . '/vendor/autoload.php');
```

Configuração mínima
-------------------

[](#configuração-mínima)

PHP 5 &gt;= 5.5.0

Passo a Passo
-------------

[](#passo-a-passo)

### 1º - Realizar o upload do documento

[](#1º---realizar-o-upload-do-documento)

### 2º - Cadastrar o webhook(POSTBack)

[](#2º---cadastrar-o-webhookpostback)

### 3º - Cadastrar os signatários

[](#3º---cadastrar-os-signatários)

### 4º - Enviar o documento para assinatura

[](#4º---enviar-o-documento-para-assinatura)

### 5º - Utilizar o EMBED D4Sign para exibir o documento em seu website

[](#5º---utilizar-o-embed-d4sign-para-exibir-o-documento-em-seu-website)

Documentos
----------

[](#documentos)

### Listar TODOS os documentos

[](#listar-todos-os-documentos)

Este objeto retornará TODOS os documentos da sua conta.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$docs = $client->documents->find();

	//print_r($docs);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Listar um documento específico

[](#listar-um-documento-específico)

Esse objeto retornará apenas o documento solicitado.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$docs = $client->documents->find("{UUID-DOCUMENT}");

	//print_r($docs);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Listar TODOS os documentos de um cofre

[](#listar-todos-os-documentos-de-um-cofre)

Esse objeto retornará todos os documentos que estiverem associados ao cofre informado.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$docs = $client->documents->safe("{UUID-SAFE}");

	//print_r($docs);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Listar TODOS os documentos de uma fase

[](#listar-todos-os-documentos-de-uma-fase)

Esse objeto retornará todos os documentos que estiverem na fase informada.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$docs = $client->documents->status("{ID-FASE}");

	//print_r($docs);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

ID 1 - Processando ID 2 - Aguardando Signatários ID 3 - Aguardando Assinaturas ID 4 - Finalizado ID 5 - Arquivado ID 6 - Cancelado

### Realizar o UPLOAD de um documento

[](#realizar-o-upload-de-um-documento)

Esse objeto realizará o UPLOAD do seu documento para os servidores da D4Sign.

Após o UPLOAD, o documento será criptografado em nossos cofres e carimbado com um número de série.

Após o processamento um preview será gerado. O processamento será realizado em background, ou seja, a requisição não ficará bloqueada.

Todos os documentos ficam armazenados em COFRES criptografados, ou seja, o parâmetro UUID-SAFE é obrigatório e determina em qual cofre o documento ficará armazenado.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$path_file = '/pasta/arquivo.pdf';
	$id_doc = $client->documents->upload('{UUID-SAFE}', $path_file);

	//print_r($id_doc);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Cadastrar signatários

[](#cadastrar-signatários)

Esse objeto realizará o cadastro dos signatários do documento, ou seja, quais pessoas precisam assinar esse documento.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$signers = array(
		array("email" => "email1@dominio.com", "act" => '1', "foreign" => '0', "certificadoicpbr" => '0', "assinatura_presencial" => '0', "embed_methodauth" => 'email', "embed_smsnumber" => ''),
		array("email" => "email2@dominio.com", "act" => '1', "foreign" => '0', "certificadoicpbr" => '0',"assinatura_presencial" => '0', "embed_methodauth" => 'sms', "embed_smsnumber" => '+5511953020202')
	);

	$return = $client->documents->createList("{UUID-DOCUMENT}", $signers);

	//print_r($return);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Listar signatários de um documento

[](#listar-signatários-de-um-documento)

Esse objeto retornará todos os signatários de um documento.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$docs = $client->documents->listsignatures("{UUID-DOCUMENT}");

	//print_r($docs);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Enviar um documento para assinatura

[](#enviar-um-documento-para-assinatura)

Esse objeto enviará o documento para assinatura, ou seja, o documento entrará na fase 'Aguardando assinaturas', onde, a partir dessa fase, os signatários poderão assinar os documentos.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$message = 'Prezados, segue o contrato eletrônico para assinatura.';
	$workflow = 0 //Todos podem assinar ao mesmo tempo;
	$skip_email = 1 //Não disparar email com link de assinatura (usando EMBED ou Assinatura Presencial);

	$doc = $client->documents->sendToSigner("{UUID-DOCUMENT}",$message, $skip_email, $workflow);

	//print_r($doc);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Cancelar um documento

[](#cancelar-um-documento)

Esse objeto irá cancelar o documento.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$docs = $client->documents->cancel("{UUID-DOCUMENT}");

	//print_r($docs);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Reenviar link de assinatura

[](#reenviar-link-de-assinatura)

Esse objeto irá reenviar o link de assinatura para o signatário.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$email = 'email@dominio.com';
	$return = $client->documents->resend('{UUID-DOCUMENT}', $email);

	//print_r($return);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Realizar o DOWNLOAD de um documento

[](#realizar-o-download-de-um-documento)

Esse objeto irá disponibilizar um link para download do documento.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	//Você poderá fazer download do ZIP ou apenas do PDF setando o último parametro.
	$url_final = $client->documents->getfileurl('{UUID-DOCUMENT}','zip');
	//print_r($url_final);

	$arquivo = file_get_contents($url_final->url);

	//CASO VOCÊ ESTEJA FAZENDO O DOWNLOAD APENAS DO PDF, NÃO ESQUEÇA DE ALTERAR O CONTENT-TYPE PARA application/pdf E O NOME DO ARQUIVO PARA .PDF
	header("Content-type: application/octet-stream");
	header("Content-Disposition: attachment; filename=\"".$url_final->name.".zip"."\"");
	echo $arquivo;
} catch (Exception $e) {
	echo $e->getMessage();
}
```

WebHooks Services (POSTBack)
----------------------------

[](#webhooks-services-postback)

### Listar Webhook de um documento

[](#listar-webhook-de-um-documento)

Esse objeto irá retornar o webhook cadastrado no documento.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$webhook = $client->documents->webhooklist("{UUID-DOCUMENT}");

	//print_r($webhook);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

### Cadastrar Webhook em um documento

[](#cadastrar-webhook-em-um-documento)

Esse objeto irá cadastrar o webhook no documento.

```
// inclua aqui o autoloader caso necessário
// require_once(__DIR__ . '/vendor/autoload.php');

use D4sign\Client;

try{
	$client = new Client();
	$client->setAccessToken("{TOKEN-USER}");

	$url = 'http://seudominio.com.br/post.php';
	$webhook = $client->documents->webhookadd("{UUID-DOCUMENT}",$url);

	//print_r($webhook);
} catch (Exception $e) {
	echo $e->getMessage();
}
```

Documentação completa da API
----------------------------

[](#documentação-completa-da-api)

Dúvidas?
--------

[](#dúvidas)

Entre em contato com nossos desenvolvedores pelo e-mail

###  Health Score

13

—

LowBetter than 2% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity2

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity20

Early-stage or recently created project

 Bus Factor1

Top contributor holds 50% 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/f53aa45b6c675398d78b11697e1e8f7d252c7ae7afbc8b358b603a6c8af3c483?d=identicon)[memocassiano](/maintainers/memocassiano)

---

Top Contributors

[![CassianoRafael](https://avatars.githubusercontent.com/u/110979114?v=4)](https://github.com/CassianoRafael "CassianoRafael (2 commits)")[![d4sign](https://avatars.githubusercontent.com/u/18538699?v=4)](https://github.com/d4sign "d4sign (1 commits)")[![rafaelfigueiredo83](https://avatars.githubusercontent.com/u/5509029?v=4)](https://github.com/rafaelfigueiredo83 "rafaelfigueiredo83 (1 commits)")

### Embed Badge

![Health badge](/badges/memocashweb-d4sign-php/health.svg)

```
[![Health](https://phpackages.com/badges/memocashweb-d4sign-php/health.svg)](https://phpackages.com/packages/memocashweb-d4sign-php)
```

PHPackages © 2026

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