-
Notifications
You must be signed in to change notification settings - Fork 2
CreateBatchPurchasesInvoice
The CreateBatchPurchasesInvoice
function post a purchases batch invoice to the transaction table. A purchases batch invoice directly post transactions to the transaction table. The postings are as follow:
One Net line for each batch purchases invoice line, hitting the specified GL account of each line
One VAT line for each batch purchases invoice line, hitting the default Purchases VAT control account (as specified in the Required account list)
One balancing control line per purchases batch invoice hitting the creditors control specified on the supplier account.
public WSResult2OfString CreateBatchPurchasesInvoice(string token, BatchPurchasesInvoice invoice)
Public Function CreateBatchPurchasesInvoice(ByVal token As String, ByVal invoice As BatchPurchasesInvoice) As WSResult2OfString
Parameter Type Description
Parameter | Type | Description |
---|---|---|
token | String | The session token retrieved during authentication. |
invoice | BatchPurchasesInvoice | Purchases batch invoice to post to the system. |
The following example creates a purchases batch invoice for the supplier 'TESTINTEGR' with two lines:
• One line hitting the 2000 GL account with a tax rate of 21%
• One line hitting the 3000 GL account with a no tax element
One line hitting the 2000 GL account with a tax rate of 21%
One line hitting the 3000 GL account with a no tax element
Integration ws = new Integration();
String auth = ws.Login(entityID, partnerKey, userKey);
if (auth != null)
{
accountsIQ.BatchPurchasesInvoice inv = new accountsIQ.BatchPurchasesInvoice();
// Get the account code from a listing method instead
inv.SupplierCode = "TESTINTEGR";
inv.Description = "Invoice number 1";
inv.ExchangeRate = 1;
inv.ExternalReference = "Ext ref 1";
inv.InvoiceDate = DateTime.Now;
// Create a batch invoice with two lines
inv.Lines = new accountsIQ.BatchPurchasesInvoiceLine[2];
//*************** First line
inv.Lines[0] = new accountsIQ.BatchPurchasesInvoiceLine();
inv.Lines[0].Description = "Line 1";
// Get the GL account code from a listing method
inv.Lines[0].GLAccountCode = "2000";
inv.Lines[0].NetAmount = 100;
// Get the tax code & rate from a listing method
inv.Lines[0].TaxCode = "NT";
inv.Lines[0].TaxRate = 0.21;
//*************** Second line
inv.Lines[1] = new accountsIQ.BatchPurchasesInvoiceLine();
inv.Lines[1].Description = "Line 2";
// Get the GL account code from a listing method
inv.Lines[1].GLAccountCode = "3000";
inv.Lines[1].NetAmount = 100;
// Get the tax code & rate from a listing method
inv.Lines[1].TaxCode = "NT";
inv.Lines[1].TaxRate = 0;
//*************** Save the batch invoice
accountsIQ.WSResult2OfString wsbatch = ws.CreateBatchPurchasesInvoice(auth, inv);
Assert.IsNotNull(wsbatch);
Assert.IsTrue(!String.IsNullOrEmpty(wsbatch.Result));
}
Dim ws As New Integration_1_1
Dim auth As String = ws.Login(entityID, partnerKey, userKey)
If (Not auth Is Nothing) Then
Dim inv As New BatchPurchasesInvoice
' Get the account code from a listing method instead
inv.SupplierCode = "TESTINTEGR"
inv.Description = "Invoice number 1"
inv.ExchangeRate = 1
inv.ExternalReference = "Ext ref 1"
inv.InvoiceDate = DateTime.Now
' Create a batch invoice with two lines
inv.Lines = New BatchPurchasesInvoiceLine(2 - 1) {}
' *************** First line
inv.Lines(0) = New BatchPurchasesInvoiceLine
inv.Lines(0).Description = "Line 1"
' Get the GL account code from a listing method
inv.Lines(0).GLAccountCode = "2000"
inv.Lines(0).NetAmount = 100
' Get the tax code & rate from a listing method
inv.Lines(0).TaxCode = "NT"
inv.Lines(0).TaxRate = 0.21
' *************** Second line
inv.Lines(1) = New BatchPurchasesInvoiceLine
inv.Lines(1).Description = "Line 2"
' Get the GL account code from a listing method
inv.Lines(1).GLAccountCode = "3000"
inv.Lines(1).NetAmount = 100
' Get the tax code & rate from a listing method
inv.Lines(1).TaxCode = "NT"
inv.Lines(1).TaxRate = 0
' *************** Save the batch invoice
Dim wsbatch As WSResult2OfString = ws.CreateBatchPurchasesInvoice(auth, inv)
Assert.IsNotNull(wsbatch)
Assert.IsTrue(Not String.IsNullOrEmpty(wsbatch.Result))
End If
Concepts