2015-01-06 5 views
1

Я работаю над проектом, в котором мне нужно использовать DocuSign API (php). Это мой первый опыт работы с DocuSign, и я успешно сделал шаблон в DocuSign Console с именем roleName = signer. Там я также создал пользовательские текстовые теги: «адрес», «город», «состояние» и «телефон» и перетащить их в нужное место в моем шаблоне. Я хочу, чтобы информация моего клиента (подписчика) была передана из базы данных проекта.Docusign REST API (php) - заполнение пользовательских тегов

Из моего проекта я успешно установил соединение с DocuSign через php API и получил Embedded Singing View url, который открывает мой шаблон, где пользователь может подписать документ без проблем.

Но ... все мои пользовательские текстовые теги пусты, и подписавший может ввести в них. Мне нужно предварительно заполнить их личными данными подписчика, которые поступают из базы данных. Я трижды проверяю орфографию ярлыков пользовательских тегов, верхний/нижний регистр в моей консоли DocuSign и мой код, а также отношение roleName-> tagLabel. Мой php-код приведен ниже. Может кто-нибудь, пожалуйста, скажите мне, что я делаю неправильно. Я потерял два дня.

$data = array(
"accountId" => $accountId, 
"emailSubject" => $this->_emailSubject, 
"templateId" => $templateId, 
"templateRoles" => array(
       array(
        "email" => $email, 
        "name" => $recipientName, 
        "clientUserId" => $clientUserId, 
        "roleName" => "signer", 
        "customFields" => array(
           "textCustomFields" => array (
                 array (
                  "name" => "address", 
                  "value" => "Address from DB", 
                  "show" => "true", 
                 ), 
                 array (
                  "name" => "city", 
                  "value" => "City from DB", 
                  "show" => "true", 
                 ), 
                 array (
                  "name" => "state", 
                  "value" => "State from DB", 
                  "show" => "true", 
                 ), 
                 array (
                  "name" => "phone", 
                  "value" => "Phone from DB", 
                  "show" => "true", 
                 ), 

               ), 
            ), 
       ), 
       ), 
"status" => "sent" 
); 

ответ

1

Вы должны использовать textTabs тип в вашем JSON, не customFields, который используется для чего-то еще. Например, если перетащить поле данных из пользовательского интерфейса на документ и дать ему имя address, предварительно заполнить это поле вам нужно будет ссылаться на это tabLabel и значение поля, как это:

"roleName" => "signer", 
"tabs" => array(
    "textTabs" => array(
     array(
      "tabLabel"=> "address", 
      "value" => "123 Main St." 
     ) 
    ) 
) 
+0

Тпх Ергин. оно работает. ты спасаешь мои нервы – nermingk

Смежные вопросы