$client = new \YousignAPI\YsApi($configFile); // Chemin des fichiers à signer $pathFile1 = dirname(__FILE__) . '/documents/document1.pdf'; $pathFile2 = dirname(__FILE__) . '/documents/document2.pdf'; // Création de la liste des fichiers à signer $listFiles = array(array('name' => basename($pathFile1), 'content' => base64_encode(file_get_contents($pathFile1)), 'idFile' => $pathFile1), array('name' => basename($pathFile2), 'content' => base64_encode(file_get_contents($pathFile2)), 'idFile' => $pathFile2)); // Création de la liste des signataires $listPerson = array(array('firstName' => 'Jean', 'lastName' => 'Dupont', 'mail' => '*****@*****.**', 'phone' => '+33623456789', 'proofLevel' => 'LOW', 'authenticationMode' => 'sms'), array('firstName' => 'Hervé', 'lastName' => 'Martin', 'mail' => '*****@*****.**', 'phone' => '+33632654987', 'proofLevel' => 'LOW', 'authenticationMode' => 'sms')); // Placement des signatures sur le document $visibleOptions = array($listFiles[0]['idFile'] => array(array('visibleSignaturePage' => '1', 'isVisibleSignature' => true, 'visibleRectangleSignature' => '351,32,551,132', 'mail' => '*****@*****.**'), array('visibleSignaturePage' => '1', 'isVisibleSignature' => true, 'visibleRectangleSignature' => '48,32,248,132', 'mail' => '*****@*****.**')), $listFiles[1]['idFile'] => array(array('visibleSignaturePage' => '2', 'isVisibleSignature' => true, 'visibleRectangleSignature' => '351,32,551,132', 'mail' => '*****@*****.**'), array('visibleSignaturePage' => '2', 'isVisibleSignature' => true, 'visibleRectangleSignature' => '48,32,248,132', 'mail' => '*****@*****.**'))); // Message vide car on est en mode Iframe $message = ''; // Autres options $options = array('mode' => 'IFRAME', 'archive' => false); // Appel du client et récupération du résultat $result = $client->initCoSign($listFiles, $listPerson, $visibleOptions, $message, $options); if ($result === false) { echo 'Une erreur est survenue :'; var_dump($client->getErrors()); } else { // Récupération des "tokens" et création des liens d'accès aux documents à signer // S'il n'y a qu'un seul token, on met la variable sous forme de tableau if (isset($result['tokens']['token'])) { $result['tokens'] = array($result['tokens']); } // Remarque : // ---------- // L'url d'accès aux documents ci-dessous est https://demo.yousign.fr/public/ext/cosignature/<token> // En production, l'url d'accès est https://yousign.fr/public/ext/cosignature/<token> // $links = array();