morningtrain / penneo-api
此软件包最新版本(1.5.1)没有提供许可证信息。
Penneo SDK for PHP
1.5.1
2016-11-28 12:41 UTC
Requires
- php: >=5.3.0
- davedevelopment/guzzle-wsse-auth-plugin: 1.*
- guzzle/guzzle: 3.8.*
Requires (Dev)
- behat/behat: ^3.0
- phpunit/phpunit: ~5.0
- squizlabs/php_codesniffer: *
README
Penneo 主要关于数字化签署文档和联系人的过程。Penneo SDK for PHP 允许 PHP 开发者在 PHP 代码中使用文档的数字签署。有关如何成为客户的更多信息,请访问 penneo.com。
先决条件
Penneo SDK for PHP 要求您使用 PHP 5.3 或更高版本。此外,您必须有一个编译了 OpenSSL 和 zlib 的 cURL 的最新版本 >= 7.16.2。
入门
您可以通过克隆或下载源代码来安装 SDK,或者您可以使用 Composer。我们建议您使用 Composer
通过 Composer 安装
安装 Penneo SDK 的推荐方法是使用 Composer。
# Install Composer curl -sS https://getcomposer.org/installer | php
接下来,更新您的项目 composer.json 文件以包含 SDK
{ "require": { "penneo/penneo-sdk-php": "1.*" } }
安装后,您需要要求 Composer 的自动加载器
require 'vendor/autoload.php';
您可以在 getcomposer.org 上了解更多关于如何安装 Composer、配置自动加载以及定义依赖项的最佳实践。
文档
本节记录了 SDK 提供的不同对象以及如何使用它们。
身份验证
为了使用 SDK,您必须对 Penneo API 进行身份验证。身份验证使用一行代码完成,使用您的 Penneo API 凭据
// Initialize the connection to the API Penneo\SDK\ApiConnector::initialize('apiKeyHere', 'apiSecretHere', $endpoint);
如果您有一个经销商账户,您可以通过指定客户 ID 来代表您的客户执行操作
// Initialize the connection to the API as customer Penneo\SDK\ApiConnector::initialize('apiKeyHere','apiSecretHere', $endpoint, $customerId);
端点 URL 可以指向沙盒(用于测试)或实时系统。两个端点 URL 都可在请求时获得。
文档签署
- 文件夹 文件夹对象是案件文件对象的容器。
- 案件文件 案件文件对象是一个用于捆绑文档和签署者的容器。每个签署过程都以案件文件开始。
- 文档 文档对象表示(并包含)实际的 PDF 文档。
- 签名行 每个可签署的文档都必须至少有一个签名行。想想看,这就像人们用笔签名的虚线...
- 签署者 签署者对象表示签署人。
- 签署请求 签署请求可以视为签署者的签署指示。它可以是一份随文档附带的正式信函,是一张黄色便条,指示在哪里签名,或者两者兼而有之。
- 案件文件模板 而不是明确指定文档和签署者之间的映射,可以使用 Penneo 提供的许多预定义案件文件模板之一。
身份验证
- 验证 洗钱法规要求公司验证其客户的身份。验证对象可以使用社会安全号码和电子 ID 来完成此操作。
快速示例
签署文档(简单)
在此示例中,我们展示了如何创建一个具有单个签署者的文档。打印出用于实际签署的 Penneo 签署门户的链接。
namespace Penneo\SDK; // Create a new case file $myCaseFile = new CaseFile(); $myCaseFile->setTitle('Demo case file'); CaseFile::persist($myCaseFile); // Create a new signable document in this case file $myDocument = new Document($myCaseFile); $myDocument->setTitle('Demo document'); $myDocument->setPdfFile('/path/to/pdfFile'); $myDocument->makeSignable(); Document::persist($myDocument); // Create a new signer that can sign documents in the case file $mySigner = new Signer($myCaseFile); $mySigner->setName('John Doe'); Signer::persist($mySigner); // Create a new signature line on the document $mySignatureLine = new SignatureLine($myDocument); $mySignatureLine->setRole('MySignerRole'); SignatureLine::persist($mySignatureLine); // Link the signer to the signature line $mySignatureLine->setSigner($mySigner); // Update the signing request for the new signer $mySigningRequest = $mySigner->getSigningRequest(); $mySigningRequest->setSuccessUrl('http://go/here/on/success'); $mySigningRequest->setFailUrl('http://go/here/on/failure'); SigningRequest::persist($mySigningRequest); // "Package" the case file for "sending". $myCaseFile->send(); // And finally, print out the link leading to the signing portal. // The signer uses this link to sign the document. print('<a href="'.$mySigningRequest->getLink().'">Sign now</a>');
验证个人(反洗钱法规)
在此示例中,我们演示了如何从个人电子身份证和社保号码验证个人。结果是一个链接到 Penneo 验证页面。相关个人必须遵循链接并完成一些操作才能进行验证。
namespace Penneo\SDK; // Create a new validation $myValidation = new Validation(); $myValidation->setTitle('My new validation'); $myValidation->setName('John Doe'); Validation::persist($myValidation); // Output the validation link. print('<a href="'.$myValidation->getLink().'">Validate now</a>');
资源
- API 文档 - 关于 Penneo API、方法和响应的信息