2017-02-07 21 views
1

Мой код выглядит следующим образом ...Отправить счет по электронной почте через Zoho Books API

// сообщения электронной почты функции

public function zoho_email($array){ 
$data = json_decode($array,true);  
       $url = '/invoices/'.$data['invoice']['invoice_id'].'/email'; 
       $recivers[] = array($data['invoice']['contact_persons_details'][0]['email']); 
       $data = array(
        'to_mail_ids'    => $recivers, 
        'subject'     => 'Invoice from MSL (Invoice#: '.$data['invoice']['invoice_number'].')', 
        'body'      => 'Dear Customer,<br><br><br><br>Thanks for your business, 
        'send_from_org_email_id' => true 
       );  
       $result = $this->zoho_create($url, $data); 

      } 

// локонов Функция для создания счетов-фактур, контактов, и отправить электронную почту

 public function zoho_create($url,$array){ 
       $json = json_encode($array); 
       $data = array('authtoken' => ZOHOAUTHTOKEN,'JSONString' => $json,'organization_id' => ZOHOORGNISATIONID); 
       $curl = curl_init($this->apiUrl.$url); 
       if($url=='contacts/'){ 
        curl_setopt_array($curl, array(
         CURLOPT_POST => 1, 
         CURLOPT_POSTFIELDS => $data, 
         CURLOPT_RETURNTRANSFER => true 
        )); 
       } 
       else{ 
        curl_setopt($curl, CURLOPT_VERBOSE, 1); 
        curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE); 
        curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE); 
        curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data)); 
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE); 
        curl_setopt($curl, CURLOPT_POST, TRUE); 
        curl_setopt($curl, CURLOPT_HTTPHEADER, array("Content-Type: application/x-www-form-urlencoded"));   
       } 
       $response = curl_exec($curl); 
       curl_close($curl); 
       return $response; 
      } 

Я хочу отправить счет по электронной почте через API клиенту, но эта ошибка возникает в моем коде. { "код": 5, "сообщение": "Неверный URL Зачет"} Пожалуйста, помогите мне там .... Спасибо заранее ...

ответ

2

Ваш код работает корректно. Попробуйте распечатать URL-адрес ($url) и подтвердить один раз, если он находится в необходимом формате (/invoices/invoice_id/email). Например, если ваш invoice_id равен 1234, то $url должен быть «/invoices/1234/email». Также убедитесь, что $this->apiUrl является https://books.zoho.com/api/v3

Если возникает проблема еще и можно использовать справочные документы, указанные ниже:

https://www.zoho.com/books/api/v3/.