DocuSign REST API - 不会发送包含生成的PDF的电子邮件

时间:2017-12-07 14:40:32

标签: docusignapi

我正在尝试使用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,而非生产。

1 个答案:

答案 0 :(得分:2)

是的,我在评论中提到的问题是你设置clientUserId

'client_user_id' => 1,

设置clientUserId意味着您通知DocuSign您将进行嵌入式签名,并且您要求DocuSign不向客户发送任何电子邮件通知。您将为签名者创建嵌入式签名URL,您将举办签约仪式。