Quickbooks SDK增加支付功能
本文关键字:功能 增加 SDK Quickbooks | 更新日期: 2023-09-27 17:51:21
嗨,我一直在尝试使用quickbooks sdk添加支付,到目前为止,我能够做所有事情,但当我向quickbooks发送请求时,我收到一条消息,交易为空
下面是我的示例代码:这段代码使用了quickbooks中的一个示例公司,所以如果你在c#项目中执行此代码,它将立即运行 private static void CreatePayment()
{
//var Customers = GetCustomers();
bool sessionBegun = false;
bool connectionOpen = false;
QBSessionManager sessionManager = null;
try
{
//Create the session Manager object
sessionManager = new QBSessionManager();
//Create the message set request object to hold our request
IMsgSetRequest requestMsgSet = sessionManager.CreateMsgSetRequest("US", 8, 0);
requestMsgSet.Attributes.OnError = ENRqOnError.roeContinue;
//Connect to QuickBooks and begin a session
sessionManager.OpenConnection(@"qid", "QuickBooks Integration Demo");
connectionOpen = true;
sessionManager.BeginSession(@"C:'Users'Public'Documents'Intuit'QuickBooks'Sample Company Files'QuickBooks Enterprise Solutions 15.0'sample_product-based business.qbw", ENOpenMode.omMultiUser);
//sessionManager.BeginSession("", ENOpenMode.omDontCare);
sessionBegun = true;
IReceivePaymentAdd Payment = requestMsgSet.AppendReceivePaymentAddRq();
Payment.CustomerRef.ListID.SetValue("260000-933272658");
//Payment.TotalAmount.SetValue(100.00);
//Payment.ORApplyPayment.IsAutoApply.SetValue(true);
////// Create the AppliedToTxn request for the payment.
IAppliedToTxnAdd PaymentLine = Payment.ORApplyPayment.AppliedToTxnAddList.Append();
//// Set the invoice TxnID and amount of the payment to apply
PaymentLine.TxnID.SetValue("8B8-933372331");
PaymentLine.PaymentAmount.SetValue(100.00);
//Send the request and get the response from QuickBooks
IMsgSetResponse responseMsgSet = sessionManager.DoRequests(requestMsgSet);
IResponse response = responseMsgSet.ResponseList.GetAt(0);
var StatusMessage = response.StatusMessage;
Console.WriteLine(StatusMessage);
//IReceivePaymentAdd Done = (IReceivePaymentAdd)response.Detail;
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
//MessageBox.Show(ex.Message, "Error");
}
finally
{
//End the session and close the connection to QuickBooks
if (sessionBegun)
{
sessionManager.EndSession();
}
if (connectionOpen)
{
sessionManager.CloseConnection();
}
}
Console.ReadLine();
}
必须发送总金额才能向QuickBooks添加付款。
您可以设置注释掉的总金额:
//Payment.TotalAmount.SetValue(100.00);