如何使用 Quickbooks Online v3 Java SDK 向客户发送发票电子邮件?

How to send an invoice email to customer using Quickbooks Online v3 Java SDK?

我想使用 Java SDK for QuickBooks Online 以编程方式向客户发送一封关于新创建发票的电子邮件。成功创建发票后,例如

com.intuit.ipp.data.Customer customer = getCustomer();
com.intuit.ipp.data.Invoice invoice = createInvoice(customer);
// what do I do now ??

Invoice 对象似乎没有任何发送电子邮件的功能。我查看了 QBO v3 JavaDoc,但看不到任何相关的 class 可以帮助我做到这一点(也许需要 Invoice 作为参数)。

Invoice class 的序言 JavaDoc 说 ...Invoice can be printed and emailed to a customer... 这就是为什么我假设可以使用 SDK,但我不知道肯定知道。

我也试过在创建发票时设置 EmailStatus 字段,例如

invoice.setBillEmail( customer.getPrimaryEmailAddr() );
invoice.setEmailStatus( EmailStatusEnum.NEED_TO_SEND );

该 ENUM 的唯一其他可能值是 NOT_SET 和 EMAIL_SENT。我已经创建了一张测试发票,但没有收到任何电子邮件。

我知道 Restful 端点位于:

https://quickbooks.api.intuit.com/v3/company/[companyID]/invoice/[invoiceId]/send

...可用于通过电子邮件发送发票,但我的问题是是否可以使用 Java v3 SDK 执行此操作,如果可以,如何操作?

我好像在这里找到了答案:https://intuitdeveloper.lc.intuit.com/questions/810174-qbo-v3-api-sending-and-linking-to-invoices

在 QBO Java SDK 的 Javadoc 中,查看此文件夹:ipp-v3-java-devkit-javadoc-2.5.0

查看 index.html 并找到 DataService class。它有多种 sendEmail() 方法。

希望对您有所帮助!