OAuth 东西专门设计用于允许最终用户将一组 OAuth 令牌/凭据从 QuickBooks 推送到您的应用程序。然后,您存储 OAuth 令牌,并使用这些令牌与 QuickBooks 进行通信。
这是对所发生情况的准确描述,是的:
a) 当他们使用 Intuit AppCenter 设置帐户时,他们将从应用中心服务中选择我的应用程序(这样做时,它将生成一组 oAuth 连接参数供我放入我的应用程序以将发票推送到他们的帐户, ...
您可以在文档中阅读有关该过程的更多信息:
另一种情况是,如果您允许,用户可以选择从您的应用程序中连接到 QuickBooks。在这种情况下,他们将单击“连接到 QuickBooks”按钮(请参阅此处的文档:https ://developer.intuit.com/docs/0025_quickbooksapi/0010_getting_started/0020_connect/0010_from_within_your_app )将它们转发到 Intuit 的站点,生成OAuth 令牌,然后使用 OAuth 令牌将它们发送回您的站点。
在任何一种情况下,OAuth 令牌都将发送给您,以便您可以存储它们并使用它们与 QuickBooks API 进行通信。
这个:
...并要求用户使用我的帐户 ID 和密码,他们将通过它们在我的帐户下“创建新应用程序”以生成 oAuth 连接信息供我的应用程序使用?
绝对不是你想让他们做的。OAuth 的全部意义在于您无需在任何时候与任何人共享任何用户名/密码。
以下是对您其他评论的一些附加答案:
我想弄清楚的部分是我的客户需要做什么才能从我的应用程序及其 QuickBooks 集成功能中受益。
他们需要登录到他们的 Intuit.com 帐户,并按照提示将他们的 QuickBooks 公司连接到您的应用程序(即按照提示将 OAuth 凭据转发到您的应用程序)。
听起来他/她需要设置一些带有 ID 和密码的帐户。
如果他们还没有 Intuit.com 帐户,系统将提示他们在 OAuth 过程中创建一个。对于 QuickBooks Online,他们将始终拥有 Intuit.com 帐户(这与他们用于登录 QuickBooks Online 的帐户相同)。
现在在我看来,客户可以通过两种方式使用 Intuit 设置帐户。
他们可以通过 AppCenter 或直接在 QuickBooks 桌面中设置帐户(当您安装软件时,它会提示您),或者如果您已经在使用任何 Intuit 服务(例如 QuickBooks Online),那么您可以使用现有的 QuickBooks Online 帐户。
Developer.Intuit.com 帐户仅供开发人员使用(例如,您)。您的最终用户将没有 developer.intuit.com 帐户。他们也不需要一个。
a) 两者有什么区别?
Developer.Intuit.com 帐户仅供开发人员使用。您的最终用户将永远不会看到 developer.intuit.com 网站,也不会看到“创建应用程序”选项。
b) 如果客户想要设置同步他们的 QBD,应该使用哪个?c) 如果客户想使用我的 .net 应用程序,应该使用哪个。d) 如果客户同时需要 (b) 和 (c),应该使用哪个?e) 如果客户以第二种方式创建帐户,他们不会被所有“开发人员”的术语弄糊涂吗?
这些问题都不适用——最终用户永远不会看到或被提示任何开发人员的东西。您看到这一点的唯一原因是您已注册为开发人员。普通最终用户不会,因此不会有任何这些选项。
f) 如果客户已经将他们的 QBD 与 intuit 同步了怎么办?
然后他们可以登录到他们现有的帐户进行连接(即将 OAuth 凭据发送到您的应用程序)。