morningtrain/penneo-api

此软件包最新版本(1.5.1)没有提供许可证信息。

Penneo SDK for PHP

1.5.1 2016-11-28 12:41 UTC

This package is auto-updated.

Last update: 2024-08-29 04:14:37 UTC


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、方法和响应的信息