Supplier Invoice

Common usage example for Supplier Invoice(ScreenId=AP301000)

URL: https://api.finance.visma.net/v1/supplierInvoice

For information about the ERP logic behind Supplier Invoices, please refer to the ERP Manual Help: Purchase invoices

Methods


GET All Supplier Invoices

URL: https://api.finance.visma.net/v1/supplierInvoice

Query Parameters

  • Project=String

Will limit response to documents with the specified project

Usage Example

This will return Supplier Invoices with projectID 20.

GET https://api.finance.visma.net/v1/supplierInvoice?project=20


POST SupplierInvoice

URL: https://api.finance.visma.net/v1/supplierInvoice

This example shows the minimum fields you should send to be able to post a new Supplier Invoice, if you are using automatic numbering you can omit the “referenceNumber” field.

JSON Request body

{
    "date": {
        "value": "2025-11-08T00:00:00"
    },
    "documentType": {
        "value": "Invoice"
    },
    "referenceNumber": {
        "value": "000357"
    },
    "invoiceLines": [
        {
            "inventoryNumber": {
                "value": "test*test"
            },
            "lineNumber": {
                "value": "1"
            },
            "operation": "Insert",
            "projectId": {
                "value": "X"
            },
            "quantity": {
                "value": 1
            },
            "subaccount": [
                {
                    "segmentId": 1,
                    "segmentValue": "00"
                }
            ],
            "unitCostInCurrency": {
                "value": "1.60"
            },
            "vatCodeId": {
                "value": "1"
            }
        }
    ],
    "paymentRefNo": {
        "value": "test"
    },
    "postPeriod": {
        "value": "112025"
    },
    "supplierNumber": {
        "value": "50000"
    },
    "supplierReference": {
        "value": "test"
    }
}

If sent successfully, the API will return:

Created


PUT SupplierInvoice

URL: https://api.finance.visma.net/v1/supplierInvoice/{invoiceNumber}

When using PUT, you only send the fields you want to update. In the below example, we update the first line of the invoice:

URL PUT https://api.finance.visma.net/v1/supplierInvoice/000050'

JSON Request body

{
    "invoiceLines": [
        {
            "operation": "Update",
            "lineNumber": {
                "value": 1
            },
            "inventoryNumber": {
                "value": "6"
            },
            "quantity": {
                "value": 1
            }
        }
    ]
}

If successful, the API will return:

No Content


Last modified November 28, 2025