如何解决使用 php api 创建 QuickBooks 在线发票时出错
我在将发票保存到 quickbook online PHP api 时发现错误,这是我的代码, ...
require_once(__DIR__ . '/quickbook/vendor/autoload.PHP');
$config = include('quickbook/config.PHP');
use QuickBooksOnline\API\Core\ServiceContext;
use QuickBooksOnline\API\DataService\DataService;
use QuickBooksOnline\API\PlatformService\PlatformService;
use QuickBooksOnline\API\Core\Http\Serialization\XmlObjectSerializer;
use QuickBooksOnline\API\Facades\Invoice;
//include("connect.PHP");
session_start();
$cid = $_REQUEST['cid'];
$token_file = 'quickbook/token.txt';
$atf = unserialize(file_get_contents($token_file));
$accesstoken = $atf;
$invoice_id = $_SESSION['invoice_id'];
$firstname = $_SESSION['firstname'];
$lastname = $_SESSION['lastname'];
$company_name = $_SESSION['company_name'];
$email = $_SESSION['email'];
$cust_phone = $_SESSION['cust_phone'];
$cust_address = $_SESSION['cust_address'];
$cust_city = $_SESSION['cust_city'];
$cust_pincode = $_SESSION['cust_pincode'];
$cust_country = $_SESSION['cust_country'];
$invoice_service = $_SESSION['invoice_service'];
$invoice_amount = $_SESSION['invoice_amount'];
$dataService = DataService::Configure(array(
'auth_mode' => 'oauth2','ClientID' => $config['client_id'],'ClientSecret' => $config['client_secret'],'accesstokenKey' => $accesstoken->getAccesstoken(),'refreshTokenKey' => $accesstoken->getRefreshToken(),'QBORealmID' => $accesstoken->getRealmID(),'baseUrl' => "development"
));
$theResourceObj = Invoice::create([
"DocNumber" => $invoice_id,"Line" => [
[
"Description" => $invoice_service,"Amount" => number_format($invoice_amount,2),"DetailType" => "SalesItemLineDetail","SalesItemLineDetail" => [
"ItemRef" => [
"value" => 1,"name" => "Services"
],"UnitPrice" => $invoice_amount,"Qty" => 1
]
]
],"CustomerRef"=> [
"value"=> $cid,]
]);
//print_r($theResourceObj);
$resultingObj = $dataService->Add($theResourceObj);
$error = $dataService->getLastError();
if ($error) {
echo "The Status code is: " . $error->getHttpStatusCode() . "<br>";
echo "The Helper message is: " . $error->getoAuthHelperError() . "<br>";
echo "The Response message is: " . $error->getResponseBody() . "<br>";
}
else {
echo "Created Id={$resultingObj->Id}. Reconstructed response body:<br><br>";
$xmlBody = XmlObjectSerializer::getPostXmlFromArbitraryEntity($resultingObj,$urlResource);
echo $xmlBody . "<br>";
}
exit;
//location('invoice.PHP');
....
这里有错误
The Status code is: 400 The Helper message is: Invalid auth/bad request (got a 400,expected HTTP/1.1 20X or a redirect) The Response message is: required param missing,need to supply the required value for the APIrequired parameter Line.Amount is missing in the request
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。