我正在尝试使用PHP / Composer库构建项目。
当我尝试使用模板ID发送时(我创建并检索了ID)一切正常:
-> Email is sent
-> Document is signed
-> Done.
如果我生成PDF并向DocuSign REST服务发送请求,它将以与发送电子邮件相同的状态进行响应,但它永远不会发送。
代码:
Route::get('docusign-test', function () {
$client = DocuSign::create();
$pdf = PDF::loadView('pdfs.signature-test');
try {
return $client->envelopes->createEnvelope($client->envelopeDefinition([
'status' => 'sent',
'email_subject' => '[DocuSign PHP SDK] - Signature Request Sample',
'recipients' => $client->recipients([
'signers' => [
$client->signer([
'name' => 'John Doe',
'email' => 'mytestemail@gmail.com',
'client_user_id' => 1,
'role_name' => 1,
'recipient_id' => 1,
'tabs' => $client->tabs([
'sign_here_tabs' => [
$client->signHere([
'anchor_string' => 'Sign Here:',
'anchor_x_offset' => '116',
'anchor_y_offset' => '-9',
'anchor_ignore_if_not_present' => false,
'anchor_units' => 'pixels',
'recipient_id' => 1,
]),
],
]),
]),
],
]),
'documents' => [
$client->document([
'document_base64' => base64_encode($pdf->stream()),
'name' => 'test',
'document_id' => 1,
'file_extension' => 'pdf',
]),
],
]));
} catch (Exception $e) {
dd($e->getResponseBody());
}
});
我已经尝试了几次模板ID和生成的PDF,并且始终没有生成PDF。
示例回复:
{
"envelopeId": "fbced4a8-db72-4ffb-b39d-88f260c5eeee",
"status": "sent",
"statusDateTime": "2017-12-06T21:29:52.7670000Z",
"uri": "/envelopes/fbced4a8-db72-4ffb-b39d-88f260c5eeee"
}
注意:我正在使用demo.docusign.com,而非生产。
答案 0 :(得分:2)
是的,我在评论中提到的问题是你设置clientUserId
'client_user_id' => 1,
设置clientUserId意味着您通知DocuSign您将进行嵌入式签名,并且您要求DocuSign不向客户发送任何电子邮件通知。您将为签名者创建嵌入式签名URL,您将举办签约仪式。