这可能有一个非常明显的答案,但是我一直在寻找它几个小时。
我正在尝试弄清楚如何使用sdk api创建销售收据,以便将客户的付款与其发票相链接。据我所知,如果不这样做,付款将存入帐户,但发票将永远不会更新。
我能够读取发票,进行信用卡或电子支票付款,以及阅读客户记录。
但是我正在尝试创建销售收据,但我不确定如何去做。
我可以阅读客户记录,但是如何将其添加到销售收据中?
这只是给我一个语法错误:
Customer customer = readCustomerUsingEmail(email);
SalesReceipt salesReceipt = new SalesReceipt();
salesReceipt.CustomerRef = Customer;
当我将鼠标悬停在客户上方时,它指出“无法将类型'Intuit.Ipp.Data.Customer'隐式转换为'Intuit.Ipp.Data.ReferenceType'”。
编辑:好的。我现在使用的是Payment对象,而不是SalesReceipt对象。
我认为我已经找到答案了,但是还没有运行。它只是没有显示语法错误。
ReferenceType customerRef = new ReferenceType()
{
Value = customerData.Customer.Id,
name = customerData.Customer.DisplayName
};
payment.CustomerRef = customerRef;
答案 0 :(得分:0)
您正在尝试在这里做一些非常错误的事情:create the sales receipt using the sdk api, for linking a payment made by a customer to his invoice
那不是销售收据做什么。
发票-表示客户欠您钱。
付款-表示客户已向您付款-这本质上是发票的“另一面”。您创建一张发票以表明他们欠钱,然后创建一笔付款来还清发票。
销售收据-表示客户同时欠您和已付款的款项。例如这本质上是将发票和付款组合成一个对象,以便在发票和付款同时发生时使用。
S ...
您应该做的只是创建付款,然后将付款直接链接到发票。要创建付款,您需要至少提供:
CustomerRef
字段)TotalAmt
字段)Line
对象(用于链接到发票)Amount
行(如果是单张发票的付款,则通常等于TotalAmt
字段LinkedTxn
节点,链接到要付款的发票(TxnId
字段)在此处查看创建付款和其他文档的示例:https://developer.intuit.com/docs/api/accounting/payment
示例:
{
"CustomerRef":
{
"value": "20",
"name": "Red Rock Diner"
},
"TotalAmt": 55.00,
"Line": [
{
"Amount": 55.00,
"LinkedTxn": [
{
"TxnId": "69",
"TxnType": "Invoice"
}]
}]
}
这里有大量示例代码:
还有一个专门针对Payment
的用户: