GetNewPurchasesInvoice - accountsIQ/API-Wiki GitHub Wiki
The GetNewPurchasesInvoice
creates a new invoice for a given Supplier account. It fills the invoice defaulting the information with the related supplier's information.
public WSResult2OfInvoice GetNewPurchasesInvoice(string token, string SupplierCode)
Public Function GetNewPurchasesInvoice(ByVal token As String, ByVal SupplierCode As String) As WSResult2OfInvoice
Parameter | Type | Description |
---|---|---|
token | String | The session token retrieved during authentication. |
SupplierCode | String | Code of the Supplier to create a new Purchase invoice for. |
Integration ws = new Integration();
String auth = ws.Login(entityID, partnerKey, userKey);
if (auth != null)
{
WSResult2OfInvoice result = ws.GetNewPurchasesInvoice(auth, "TESTINTEGR");
Assert.IsNotNull(result.Result);
InvoiceLine line = new InvoiceLine();
line.StockItemID = "STOCKITEM1";
line.StockItemPrice = 100M;
line.TaxCode = "NT";
line.TaxRate = 0.21M;
line.StockItemDescription = "From default";
line.StockItemCost = 50M;
line.InvoicedQuantity = 10;
line.NetAmount = 1000M;
line.TaxAmount = line.NetAmount * line.TaxRate;
line.GrossAmount = (1 + line.TaxRate) * line.NetAmount;
line.GLAccountCode = "1000";
line.ActualPrice = 100M;
line.LocationID = "1";
line.SublocationID = "BIN1";
line.GLAccountCode = "1000";
line.OpeningStockGLAccountCode = "2000";
result.Result.AccountName = "Test integrator partner";
result.Result.ExternalReference = "NEWPurchasesINVOICE0001";
result.Result.Lines = new InvoiceLine[1];
result.Result.Lines[0] = line;
result.Result.ExchangeRate = 1;
result.Result.InvoiceNumber = "000021"; // Unlike the sales side, the invoice number is required
WSResultStatus r = ws.SaveInvoice(auth, result.Result, true);
Assert.IsTrue(r.Status == OperationStatus.Created);
}
Dim ws As New Integration
Dim auth As String = ws.Login(entityID, partnerKey, userKey)
If (Not auth Is Nothing) Then
Dim result As WSResult2OfInvoice = Me.ws.GetNewPurchasesInvoice(Me.auth, "TESTINTEGR")
Assert.IsNotNull(result.Result)
Dim line As New InvoiceLine
line.StockItemID = "STOCKITEM1"
line.StockItemPrice = 100
line.TaxCode = "NT"
line.TaxRate = 0.21
line.StockItemDescription = "From default"
line.StockItemCost = 50
line.InvoicedQuantity = 10
line.NetAmount = 1000
line.TaxAmoutn = line.NetAmount * line.TaxRate
line.GrossAmount = (Decimal.op_Increment(line.TaxRate) * line.NetAmount)
line.GLAccountCode = "1000"
line.ActualPrice = 100
line.LocationID = "1"
line.SublocationID = "BIN1"
line.GLAccountCode = "1000"
line.OpeningStockGLAccountCode = "2000"
result.Result.AccountName = "Test integrator partner"
result.Result.ExternalReference = "NEWPurchasesINVOICE0001"
result.Result.Lines = New InvoiceLine() { line }
result.Result.ExchangeRate = 1
result.Result.InvoiceNumber = "000021" ' Unlike the sales side, the invoice number is required
Assert.IsTrue((Me.ws.SaveInvoice(Me.auth, result.Result, True).Status = OperationStatus.Created))
End If