• POST rest/addpurchasetransaction/

      • Add a purchase transaction

This POST method allows you to create a new purchase invoice within the ‘Boekhouding’ (bookkeeping) module of our software.


  • Maximum 75 invoice lines per invoice allowed.
  • If CustomerNumber is used to identify the customer, the parameters CustomerName and CustomerEmail will be ignored.
  • If CustomerName or CustomerEmail is used to identify the customer, and you have multiple customers that match, we will use the first found match.
  • The parameters CustomerName and CustomerEmail can also be used combined. When both parameters are submitted, the system will search for relations where both name and e-mail match with the submitted parameters.
  • You must add at least one invoice line.
  • Request
  • Response


SupplierNumber ** Integer Details
The customer, identified by its customer number, to be associated with the invoice
SupplierName ** String Details
The customer, identified by its name, to be associated with the invoice
SupplierEmail ** String Details
The customer, identified by its e-mailaddress, to be associated with the invoice
InvoiceDate Date String (dd-MM-yyyy) Details
The invoice date in format dd-MM-yyyy. (http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html) Defaults to current date.
InvoiceDueDate Date String (dd-MM-yyyy) Details
The invoice due date in format dd-MM-yyyy. (http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html) Defaults to current date.
PurchaseInvoiceNumber Long Details
An optional purchase invoice number.
InvoiceNotes String Details
The invoice description
InvoiceFileUrl String Details
A file URL containing the file to be attached to the invoice. The file will be downloaded and added as attachment to the invoice. If the file is not downloadable, the invoice will still be created but without attachment. The file URL must end with one of the following file extensions in order for it to be added to the invoice: .jpg, .png, .pdf, .doc, .docx, .gif
InvoiceProject String Details
The project by either projectnumber or project name to be associated with the invoide
AddAsDraft Boolean (true|false) Details
Defaults to false. If set to true, the purchasetransaction will we added as a draft ('concept' purchasetransaction)
SelectProjectBy String Details
Allowed values: NAME or NUMBER. Determines wether the value in the parameter 'InvoiceProject' is the projectname or projectnumber.
Invoice_InvoiceLine * Array Details
An JSON array of invoice lines. At least one record must be present.
Invoice_InvoiceLine > TaxPc ** Float Details
Numeric representation of the tax % to be applied for this invoice line. Please note that this percentage must be available within your Silvasoft administration.
Invoice_InvoiceLine > TaxCode ** String Details
The tax code to apply to this invoice line. For example if you have multiple tax codes with the same percentage, you can identify a specific tax code with this parameter.
Invoice_InvoiceLine > SubTotalInclTax * Float Details
The invoice line subtotal, including taxes. We will automatically calculate the totals excluding taxes based on the given tax percentage.
Invoice_InvoiceLine > Description String Details
Invoiceline description
Invoice_InvoiceLine > CostCenter String Details
The Cost Center for the invoiceline (Dutch: Kostenplaats). If the Cost Center does not exist in your administration, a new one will be created.
Invoice_InvoiceLine > LedgerAccountNumber String Details
The ledger accountnumber (Dutch: Grootboekrekeningnummer) to be associated with the invoiceline. The ledger account must be present in your administration.
Invoice_InvoiceLine > PurchaseClassification String Details
Belgium administrations only: a purchase classification for the invoiceline. Can be either 81, 82 or 83.

CURL Example


Response JSON Example

The response order can vary from the parameter order above