我无法在Intuit合作伙伴平台文档中看到任何解释我的应用程序可用的国家/地区或国际/地区使用的版本的限制.
QuickBooks Online销售代表告诉我,"并非所有在美国版应用中心工作的程序都能在国际上运行."
我在知道,如果从加拿大,牙买加,英国,印度和澳大利亚的用户可以使用我的应用程序,如果它在美国的忒应用中心发表这里特别感兴趣.
将Quickbooks API V3中的Invoice文档检索为PDF吗?如果是这样,QuickBooks Desktop也会受到支持吗?在V2(Intuit数据服务)中,仅支持QuickBooks Online.
我能够很好地提高销售订单,我认为修改已经存在的订单项看起来很有意义,但我该如何添加额外的订单项呢?
OSR对我来说似乎没有意义. https://developer-static.intuit.com/qbSDK-current/Common/newOSR/index.html
在我申请销售订单后,我会收到这些订单项:
<SalesOrderLineRet>
<TxnLineID>15-1379092567</TxnLineID>
<ItemRef>
<ListID>80000002-1379090362</ListID>
<FullName>4684</FullName>
</ItemRef>
<Desc>tester</Desc>
<Quantity>3</Quantity>
<Rate>600.00</Rate>
<Amount>1800.00</Amount>
<SalesTaxCodeRef>
<ListID>80000002-1378850266</ListID>
<FullName>Non</FullName>
</SalesTaxCodeRef>
<Invoiced>0</Invoiced>
<IsManuallyClosed>false</IsManuallyClosed>
</SalesOrderLineRet>
<SalesOrderLineRet>
<TxnLineID>16-1379092567</TxnLineID>
<ItemRef>
<ListID>80000001-1378935144</ListID>
<FullName>Test Item</FullName>
</ItemRef>
<Desc>Shipment</Desc>
<Quantity>5</Quantity>
<Rate>5.00</Rate>
<Amount>25.00</Amount>
<SalesTaxCodeRef>
<ListID>80000002-1378850266</ListID>
<FullName>Non</FullName>
</SalesTaxCodeRef>
<Invoiced>0</Invoiced>
<IsManuallyClosed>false</IsManuallyClosed>
</SalesOrderLineRet>
Run Code Online (Sandbox Code Playgroud)
现在这是有道理的,那么我看看SalesOrderMod的qbxml和我看到的订单项部分:
<SalesOrderLineMod> <!-- optional -->
<TxnLineID >IDTYPE</TxnLineID> <!-- required -->
<ItemRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</ItemRef>
<Desc >STRTYPE</Desc> <!-- optional -->
<Quantity >QUANTYPE</Quantity> <!-- optional -->
<UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
<OverrideUOMSetRef> …Run Code Online (Sandbox Code Playgroud) 该文档记录了SQL数据库和数据库服务器.它是标准数据库,还是由intuit制作的自定义数据库?如果它是标准数据库,那么数据库和版本是什么?
是否可以直接使用第三方应用程序连接到数据库?
我正在构建一个页面,它将向Intuit Reconnect API发送请求以更新Oauth Token和Token秘密值.这是工作.但我的测试Oauth值不会在到期后的30天内.因此,响应一直是"令牌刷新窗口超出界限".有没有办法解决这个问题,以便我可以使用新的令牌值获得成功响应?我希望能够多次测试这种情况,而不仅仅是一次.
https://developer.intuit.com/docs/0025_quickbooksapi/0053_auth_auth/0020_reconnect_api
谢谢.
我遇到了一些.NET SDK限制的问题,因此我想发出自己的API调用并解析JSON结果.我坚持打造概括的授权头参数oauth_signature 这里.
对于此参数,它指出: Contains the value generated by running all other request parameters and two secret values through a signing algorithm
到目前为止我有什么.
public static string GetOAuthAuthorization(string oauthToken, string oauthSecret, string consumerKey, string consumerSecret)
{
string oauth_token = oauthToken;
string oauth_nonce = Guid.NewGuid().ToString();
string oauth_consumer_key = consumerKey;
string oauth_signature_method = "HMAC-SHA1";
int oauth_timestamp = (int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds;
string oauth_version="1.0";
string dataString = oauth_token + oauth_nonce + oauth_consumer_key + oauth_timestamp;
//TODO: use following to …Run Code Online (Sandbox Code Playgroud) 我是一个研究 Ruby on Rails 的菜鸟。我正在尝试将 ruby on Rails 应用程序集成到 Quickbooks 中。我正在按照这个视频的步骤进行操作。当我尝试按“连接到 QuickBooks”按钮进行身份验证时,我陷入了困境。
我收到这个错误;
我做了一些研究,发现这个错误与URI.escape()命令有关。我认为他们在 Ruby 3 中删除了它。我该如何解决这个问题?我什至不知道这个URI.escape()命令位于哪里。
这是来自vendors_controller.rb
def authenticate
callback = oauth_callback_vendors_url
token = $qb_oauth_consumer.get_request_token(:oauth_callback => callback)
session[:qb_request_token] = token
# If Rails >= 4.1 you need to do this => session[:qb_request_token] = Marshal.dump(token)
redirect_to("https://appcenter.intuit.com/Connect/Begin?oauth_token=#{token.token}") and return
end
def oauth_callback
at = session[:qb_request_token].get_access_token(:oauth_verifier => params[:oauth_verifier])
# If Rails >= 4.1 you need to do this => at = Marshal.load(session[:qb_request_token]).get_access_token(:oauth_verifier => params[:oauth_verifier])
session[:token] …Run Code Online (Sandbox Code Playgroud) ruby quickbooks ruby-on-rails quickbooks-online intuit-partner-platform
我需要为QuickBooks Online获得一些测试帐户(公司),以便我们完成开发和测试我们的应用程序.我们已经联系到Intuit以试图获得这些并且被告知只使用30天的试验.这些期间对于我们的开发周期而言太短,因此我们购买了要使用的帐户.这些帐户已被关闭/锁定在我们身上,我们只是得到了模糊的答案.我们很想知道为什么我们可以停止做任何可能的有害活动,但是很难获得有关这方面的任何信息.我们的开发人员非常乐意与他们的工程师合作以实现这一目标.
有谁知道我们如何获得测试帐户,以便我们可以测试我们的应用程序?
我希望答案与StackOverflow问题不一样.我们需要测试帐户才能在我们前进之前成功测试我们的应用程序
这个问题涉及Intuit的QBO v3 API.
我有一个用户ID可以访问多家公司.关联公司等.当我尝试连接到我查询的第一个公司以外的公司时,我收到了身份验证错误.这是因为每个OAuth连接只能与一家公司交谈吗?
我不记得在访问令牌获取过程中指定公司,所以我对此感到困惑.我认为这篇文章可能会有回应,但它并没有完全解决我的问题.
我试图调用此API(Oauth1.0标准):
https://appcenter.intuit.com/api/v1/Connection/Reconnect
我正在做的是:(它正在研究java)
Base64Encoder baseEncoder = Base64Encoder.getInstance();
CloseableHttpClient httpclient = HttpClients.createDefault();
HttpGet httpGet = new HttpGet("https://appcenter.intuit.com/api/v1/connection/reconnect");
StringBuilder headerReq = new StringBuilder();
headerReq.append("OAuth ");
headerReq.append("oauth_token=\"").append(OAUTHTOKEN).append("\"");
headerReq.append(", oauth_consumer_key=\"").append(CUNSUMER_KEY).append("\"");
headerReq.append(", oauth_signature_method=\"base64\"");
headerReq.append(", oauth_signature=\"") .append(baseEncoder.encode(PropsUtil.get(OAUTH_CONSUMER_SECRET).getBytes()))
.append(baseEncoder.encode("&".getBytes())) .append(baseEncoder.encode(symmetricEncrypter.decryptData(OAUTH_TOKEN_SECRET).getBytes())).append("\"");
headerReq.append(", oauth_version=\"1.0\"");
httpGet.addHeader("Authorization", headerReq.toString());
CloseableHttpResponse response = httpclient.execute(httpGet);
try {
System.out.println("Responsee::"+ response.getStatusLine());
}
Run Code Online (Sandbox Code Playgroud)
而且,我得到的回应是:
<?xml version="1.0" encoding="utf-8"?>
<PlatformResponse xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://platform.intuit.com/api/v1">
<ErrorMessage>This API requires Authorization.</ErrorMessage>
<ErrorCode>22</ErrorCode>
Run Code Online (Sandbox Code Playgroud)
你能否在创建Oauth1.0标准请求时向我建议我缺少什么,或者,任何人都可以提供该标准的Oauth1.0请求示例的示例代码.
非常感谢你.