The QuickBooks invoicing team is pleased to inform you that invoices imported into QuickBooks Online via third-party applications now recognize account-level payment settings enabled by users. This workflow has been broken for a long time, and we want to make sure you’re aware that it has been resolved.
What is happening?
For every invoice imported into QuickBooks where the user has signed up for QuickBooks Payments and has any payment settings enabled in their account settings (e.g., Credit Card or ACH), the invoice will be correctly read and written in QuickBooks Online. Users importing invoices will no longer need to manually enable a payment method for each invoice before sending it, which should save them a significant amount of time.
How does this impact me?
If you use our Invoice API to create an invoice for a customer’s QuickBooks Online company, the values for the AllowOnlineCreditCardPayment and AllowOnlineACHPayment fields will be automatically defaulted to the values determined by the customer in their company settings. Refer to the screenshot below.
If the “Accept Credit Cards” field is checked, then the AllowOnlineCreditCardPayment field on the invoice object will default to true.
If the “Accept ACH” field is checked, then the AllowOnlineACHPayment on the invoice object will default to true.
Your app can still pass Boolean values for this field, and those values will be honored. These fields are only active when the company has payments enabled, i.e., when Preferences.SalesFormsPrefs.ETransactionPaymentEnabled is true.
What do I need to do?
There is no action required from you. The change to default behavior will be rolled out to all companies over the next few weeks and customers will start to see their payment settings correctly reflected in their invoices.
Where can I get more information about this?
Read more about the invoicing object in our API documentation here.