我对Kashflow很陌生,但我正在尝试将其集成到我一直致力于的CRM中。目前,我正在尝试创建发票,然后使用InsertInvoice调用通过API将其推送到Kashflow。
这是我用来创建测试发票的代码:
$kashflow = new Kashflow($username,$password);
// Initialise the invoice.
$invoice = new KashflowInvoice($kashflow_customer_id,$invoice_number,$invoice_date,$due_date);
// Add a line to the invoice: 1 unit, with a unit price of £10 @ 20% VAT.
$invoice->addLine(1,10,2,20,$nominal_id,"Test invoice item");
// Now insert the invoice on Kashflow.
$response = $kashflow->insertInvoice($invoice);
addLine()只是将条目添加到发票中,然后insertInvoice()方法如下:
public function insertInvoice(KashflowInvoice $invoice)
{
$lines = $this->prepareInvoiceLines($invoice->getLines());
$parameters['Inv'] = array
(
// parameters here...
);
return $this->makeRequest("InsertInvoice",$parameters);
}
所有“参数”都是Kashflow所需的参数。
当我运行脚本时,我得到以下异常输出:
未处理的异常:SOAP-ERROR:编码:对象没有 'UseCustomDeliveryAddress'属性
我的类或文件中没有任何属性名为UseCustomeDeliveryAddress,我也无法在Kashflow API文档中找到它 - 这让我想知道它是否已被弃用但某处仍被引用?
有没有其他人提出反对这个问题并设法解决它?
提前致谢 迈克尔
答案 0 :(得分:0)
好的,我明白了。基本上我使用的示例需要将UseCustomDeliveryAddress传递给API,无论它是真还是假。
引自https://securedwebapp.com/api/service.asmx?op=InsertInvoice