VismaBouwsoftAPICalls.v1_PUT_PurchaseInvoices Method
v1_PUT_PurchaseInvoices() as String

This API call is used to update fields of a(n) PurchaseInvoice

General Description

HTTP method API version
PUT v1

Don’t forget to put the Authorization field in the header

API Path: /PurchaseInvoices/{id}
or
API Path: /PurchaseInvoices/{id}/Upload

You make this API call with the key field id as the path parameter (the id of the PurchaseInvoice you want to update)

Fields

The following fields are available:

Field Name Type Id Type Name Length Required Writeable Force Write Link
company_id 1 tpLong 0 No Yes No
nr 1 tpLong 0 No Yes No
date 3 tpDate 0 No Yes No
expirationdate 3 tpDate 0 No Yes No
nr_supplier 2 tpString 100 No Yes No
concerning 2 tpString 250 No Yes No
paymentnotification 2 tpString 200 No Yes No
ledger 1 tpLong 0 No Yes No
depreciation 4 tpDouble 0 No Yes No
accountnumber 2 tpString 30 No Yes No
address_id 1 tpLong 0 No Yes No
address_name 2 tpString 150 No Yes No
address_address 2 tpString 63 No Yes No
address_addressline2 2 tpString 63 No No No
address_countrycode 2 tpString 2 No Yes No
address_zipcode 2 tpString 15 No Yes No
address_vatnr 2 tpString 30 No Yes No
commercialdiscount 4 tpDouble 0 No Yes No
cashdiscount 4 tpDouble 0 No Yes No
cashdiscount_amount 8 tpCurrency 0 No Yes No
cashdiscount_approved 5 tpBool 0 No Yes No
basis1 8 tpCurrency 0 No Yes No
vatid1 1 tpLong 0 No Yes No
vatcode1 2 tpString 5 No Yes No
vatpercent1 4 tpDouble 0 No Yes No
vatcocontractor1 5 tpBool 0 No Yes No
amountexclvat1 8 tpCurrency 0 No No No
taxableamount1 8 tpCurrency 0 No No No
vatamount1 8 tpCurrency 0 No No No
amountinclvat1 8 tpCurrency 0 No No No
basis2 8 tpCurrency 0 No Yes No
vatid2 1 tpLong 0 No Yes No
vatcode2 2 tpString 5 No Yes No
vatpercent2 4 tpDouble 0 No Yes No
vatcocontractor2 5 tpBool 0 No Yes No
amountexclvat2 8 tpCurrency 0 No No No
taxableamount2 8 tpCurrency 0 No No No
vatamount2 8 tpCurrency 0 No No No
amountinclvat2 8 tpCurrency 0 No No No
basis3 8 tpCurrency 0 No Yes No
vatid3 1 tpLong 0 No Yes No
vatcode3 2 tpString 5 No Yes No
vatpercent3 4 tpDouble 0 No Yes No
vatcocontractor3 5 tpBool 0 No Yes No
amountexclvat3 8 tpCurrency 0 No No No
taxableamount3 8 tpCurrency 0 No No No
vatamount3 8 tpCurrency 0 No No No
amountinclvat3 8 tpCurrency 0 No No No
basis4 8 tpCurrency 0 No Yes No
vatid4 1 tpLong 0 No Yes No
vatcode4 2 tpString 5 No Yes No
vatpercent4 4 tpDouble 0 No Yes No
vatcocontractor4 5 tpBool 0 No Yes No
amountexclvat4 8 tpCurrency 0 No No No
taxableamount4 8 tpCurrency 0 No No No
vatamount4 8 tpCurrency 0 No No No
amountinclvat4 8 tpCurrency 0 No No No
basis5 8 tpCurrency 0 No Yes No
vatid5 1 tpLong 0 No Yes No
vatcode5 2 tpString 5 No Yes No
vatpercent5 4 tpDouble 0 No Yes No
vatcocontractor5 5 tpBool 0 No Yes No
amountexclvat5 8 tpCurrency 0 No No No
taxableamount5 8 tpCurrency 0 No No No
vatamount5 8 tpCurrency 0 No No No
amountinclvat5 8 tpCurrency 0 No No No
totalsbasedonvatcodebreakdown 5 tpBool 0 No No No
amountexclvat_total 8 tpCurrency 0 No Yes No
vatamount_total 8 tpCurrency 0 No Yes No
amountinclvat_total 8 tpCurrency 0 No No No
paid 5 tpBool 0 No Yes No
amountoutstanding 8 tpCurrency 0 No No No
amountpaid 8 tpCurrency 0 No No No
ts_lastupdate 3 tpDate 0 No No No

/PurchaseInvoices/{id}

If everything succeeds the HTTP response status is 200
(200 OK)

If there is something wrong with the request, the response status and code is 400
(400 Bad Request)

If there is no record that has the requested id the HTTP response status and code is 404
(404 Not found)

If you forget to send the Authorization, the response status is 401
(401 Unauthorized)

If what you sent can’t be processed, the response status is 500
(500 Internal Server Error)

For an explanation of all possible errors, please consult our section on possible answers to API calls here

Examples:

https://ra.bouwsoft.be/api/v1/PurchaseInvoices/937

with the following parameters :

Header Parameters :
ParameterName: Clientnr, ParameterValue: 115
ParameterName: AccessToken, ParameterValue: POmfWxfljVzSfttkmfzRqlOmfrkffGmjfIPkzrUGIUfGUfkbIP

Query Parameters :
ParameterName: columns, ParameterValue: basis1=110

Success gives statuscode 200 And the following result

{“RecordChanges”: [
  {
    "id": 937,
    "basis1": 110.0,
    "amountexclvat1": 110.0,
    "taxableamount1": 110.0,
    "vatamount1": 23.100000000000001,
    "amountinclvat1": 133.099999999999994,
    "amountexclvat_total": 110.0,
    "vatamount_total": 23.100000000000001,
    "amountinclvat_total": 133.099999999999994,
    "amountoutstanding": 133.099999999999994,
    "ts_lastupdate": "2026–05–07 09:24:59"
  }
]
}

https://ra.bouwsoft.be/api/v1/PurchaseInvoices/938

with the following parameters :

Header Parameters :
ParameterName: Clientnr, ParameterValue: 115
ParameterName: AccessToken, ParameterValue: brAfWxfUkVzSfADjffzRqmlDfbjrfGIUflOkzlIVVfUGOOVbAO

Query Parameters :
ParameterName: columns, ParameterValue: amountexclvat_total=110,vatamount_total=23.1

Success gives statuscode 200 And the following result

{“RecordChanges”: [
  {
    "id": 938,
    "amountexclvat_total": 110.0,
    "vatamount_total": 23.100000000000001,
    "amountinclvat_total": 133.099999999999994,
    "amountoutstanding": 133.099999999999994,
    "ts_lastupdate": "2026–05–07 09:25:00"
  }
]
}

https://ra.bouwsoft.be/api/v1/PurchaseInvoices/937

with the following parameters :

Header Parameters :
ParameterName: Clientnr, ParameterValue: 115
ParameterName: AccessToken, ParameterValue: PbffWxfDbmzSftlbtfzRqkDVfGGGfGObflAkzOfOUfmGtAVAbl

Query Parameters :
ParameterName: columns, ParameterValue: paymentnotification=’000/0005/13490‘,expirationdate=’2017–04–21’,commercialdiscount=5,cashdiscount=3,basis1=150.55,cashdiscount_amount=4.8,cashdiscount_approved=True,paid=True

Success gives statuscode 200 And the following result

{“RecordChanges”: [
  {
    "id": 937,
    "expirationdate": "2017–04–21",
    "paymentnotification": "000000513490",
    "commercialdiscount": 5,
    "cashdiscount": 3.356115,
    "cashdiscount_amount": 4.8,
    "cashdiscount_approved": true,
    "basis1": 150.550000000000011,
    "amountexclvat1": 143.02000000000001,
    "taxableamount1": 138.219999999999999,
    "vatamount1": 29.030000000000001,
    "amountinclvat1": 172.050000000000011,
    "totalsbasedonvatcodebreakdown": true,
    "amountexclvat_total": 150.550000000000011,
    "vatamount_total": 29.030000000000001,
    "amountinclvat_total": 172.050000000000011,
    "amountpaid": 167.25,
    "ts_lastupdate": "2026–05–07 09:20:13"
  }
]
}

/PurchaseInvoices/{id}/Upload

If everything succeeds the HTTP response status is 200
(200 OK)

If there is something wrong with the request, the response status and code is 400
(400 Bad Request)

If there is no record that has the requested id the HTTP response status and code is 404
(404 Not found)

If you forget to send the Authorization, the response status is 401
(401 Unauthorized)

If what you sent can’t be processed, the response status is 500
(500 Internal Server Error)

For an explanation of all possible errors, please consult our section on possible answers to API calls here

Examples:

https://ra.bouwsoft.be/api/v1/PurchaseInvoices/937/Upload

with the following parameters :

Header Parameters :
ParameterName: AccessToken, ParameterValue: lAtfWxfrmIzSfmtbbtzRqtjjflIPIODmjDGtzDUkGlfGUOmOjP
ParameterName: Clientnr, ParameterValue: 115

Body Parameters :
ParameterName: fileParameterValue: tptypeput.txt

Success gives statuscode 201 And the following result

{“RecordChanges”: [
  {
    "name": "tptypeput.txt",
    "path_display": "",
    "path_lower": "",
    "id": "",
    "client_modified": "2026–05–07T09:20:12Z",
    "server_modified": "2026–05–07T09:20:12Z",
    "rev": "",
    "size": 425,
    "is_downloadable": true,
    "checksum": "/ffHRlNYSNXanxh4C9ojRHbRD20AVuSCZEULTBzXebY="
  }
]
}