PHP Web サイトを介して、オンラインのクイックブック アカウントで請求書を自動的に生成する必要があります。私は直観や他の情報源をたくさん検索しましたが、どこから始めて何をすべきかわかりません。私を助けてください..ありがとう
1 に答える
非 SaaS QuickBooks と QuickBooks Online の統合には、qbXML を使用する必要があります。
これを行うには、まず Intuit に登録する必要があります。デスクトップモードで登録するのが最も簡単です。これを行う手順は、QuickBooks PHP wikiにあります。PRODUCTION アプリケーションとして登録します (DEV/PTC を使用できるのは、Intuit から特別なアカウントを取得した場合のみであり、取得することはできません)。
登録が完了すると、接続チケット、アプリ ID、およびアプリ ログインが作成されます。
次に、オープン ソースの PHP QuickBooks DevKit (最近のナイトリー ビルドを使用) を取得して、この例を開くことができます。
- docs/example_online_edition.php
そこから、アプリ ID、アプリ ログイン、および接続チケットを接続すると、XML 形式の要求を QuickBooks に送信できるようになります。
XML 参照には Intuits QuickBooks OSRを使用することをお勧めします。「OE」にチェックを入れ、「US」のチェックを外し、qbXML バージョンを 6.0 に変更し (QuickBooks Online は 6.0 のみをサポートします)、「メッセージの選択」ドロップダウンを使用して要求タイプを選択し、「XML Ops」タブを使用して、利用可能な XML フィールドを参照してください。
結果のコードは次のようになります。
require_once dirname(__FILE__) . '/../QuickBooks.php';
// Register in DESKTOP mode to get these. Docs:
// http://www.consolibyte.com/docs/index.php/QuickBooks_Online_via_qbXML#Connecting_with_the_.27Desktop.27_model_of_communication
$application_id = '134476443';
$application_login = 'qboe.www.consolibyte.com';
$connection_ticket = 'TGT-68-1sRm2nXMVfm$n8hb2MZfVQ';
// Create our new gateway instance
$Gateway = new QuickBooks_Gateway_OnlineEdition(
$application_id,
$application_login,
$connection_ticket);
$xml = '<QBXMLMsgsRq onError="stopOnError">
<VendorAddRq>
<VendorAdd>
<Name>ConsoliBYTE</Name>
<FirstName>Keith</FirstName>
<LastName>Palmer</LastName>
<VendorAddress>
<Addr1>123 Test Road</Addr1>
<City>Mt Pleasant</City>
<State>MI</State>
<PostalCode>48858</PostalCode>
</VendorAddress>
<Email>support@consolibyte.com</Email>
</VendorAdd>
</VendorAddRq>
</QBXMLMsgsRq>';
// Send the request
$resp = $Gateway->qbxml($xml);
print($resp);