to get a personalized navigation.
to get a personalized navigation.
In this article, you can find guidelines for how to use Visma.Net API Endpoints connected to the Customer Ledger from Visma.Net Financials.
For more information regarding the endpoints, query parameters and other endpoints for all areas,
Please read the documentation found here: Swagger - Visma.Net Integrations Documentation
Common usage example for Customer(ScreenId=AR303000)
URL: https://integration.visma.net/API/controller/api/v1/Customer |
URL: https://integration.visma.net/API/controller/api/v1/Customer |
Query parameters:
As of today Filtering Parameters does not accept certain characters such as W-Z These are the formats for Filtering *2001-01-01 *2001-01-01 13:13:13 *2001-01-01 13:13:13.133 |
Supported comparative operators for LastModifiedDateTime Conditions on filtering > - Greater than < - Less than <= - Less than or equal to >= - Greater than or equal to |
Usage example:
This query will return customers updated on 2020-01-14 or later.
GET https://integration.visma.net/API/controller/api/v1/Customer ?lastModifiedDateTime=2020-01-14 &lastModifiedDateTimeCondition=>= ( Lines are separated for readability) |
URL: https://integration.visma.net/API/controller/api/v1/customer |
This example shows the minimum fields you should send to be able to post a new Customer, if you are using automatic numbering you can omit the “number” field.
{ "name": { "value": "NewCustomer" }, "number": { "value": "10000" }, "overrideWithClassValues": true, "customerClassId": { "value": "1" }, "mainAddress": { "value": { "addressLine1": { "value": "TestRoad 13" }, "postalCode": { "value": "0101" }, "countryId": { "value": "NO" } } } } |
If sent successfully, the API will return:
Status 201 Created |
URL: https://integration.visma.net/API/controller/api/v1/customer /{customerNumber}/action/createDunningLetter |
This example shows what should be sent to create dunning letters for a specified customer.
{ "dunningLetterDate": "2020-01-21T09:39:48.538Z", "levelFrom": 1, "levelTo": 2 } |
If successful the API will return a message as below:
Status: 200 OK Response body: { "actionId": "2ddece9b-a89b-4f5a-a251-2cf14837bb2d", "actionResult": "Done" } |
URL: https://integration.visma.net/API/controller/api/v1/customer/{customerNumber} |
When using PUT, you only send the fields you want to update. In the below example, we update the mainAddress of the customer:
PUT https://integration.visma.net/API/controller/api/v1/customer/10000 |
{ "mainAddress": { "value": { "addressLine1": { "value": "TestRoad 50" }, "postalCode": { "value": "0101" }, "countryId": { "value": "NO" } } } } |
If successful, the API will return:
Status: 204 No Content |
Common usage example for Endpoint(ScreenId=AR301000)
URL: https://integration.visma.net/API/controller/api/v1/CustomerCreditNote |
URL: https://integration.visma.net/API/controller/api/v1/CustomerCreditNote |
Query parameters:
Lets you define what financialPeriod to include in the response |
Limits response to CreditNotes with a status |
Lets you decide if you want attachments to be expanded or not. |
Lets you decide if you want tax detail lines to be expanded or not. |
Usage example:
This will return Customer CreditNotes in the financial period 01-2020 that have the status “balanced”, and will not expand attachments or tax detail lines.
GET https://integration.visma.net/API/controller/api/v1/customerCreditNote ?financialPeriod=202001 &status=balanced &expandAttachments=false &expandTaxDetails=false (Lines are separated for readability) |
URL: https://integration.visma.net/API/controller/api/v1/CustomerCreditNote |
This example shows the minimum fields you should send to be able to post a new Customer Credit Note, if you are using automatic numbering you can omit the “referenceNumber” field.
{ "currencyId": { "value": "NOK" }, "externalReference": { "value": "ExRef" }, "lines": [ { "operation": "Insert", "inventoryNumber": { "value": "6" }, "quantity": { "value": 1 }, "unitPriceInCurrency": { "value": 1 } } ], "customerNumber": { "value": "10000" }, "referenceNumber": { "value": "25698" }, "documentDate": { "value": "2019-12-21" }, "postPeriod": { "value": "122019" }, "financialPeriod": { "value": "201912" } } |
If sent successfully, the API will return:
Status 201 Created |
URL: https://integration.visma.net/API/controller/api/v1/CustomerCreditNote/{creditNoteNumber} |
When using PUT, you only send the fields you want to update. In the below example, we update the first line of the Credit Note:
PUT https://integration.visma.net/API/controller/api/v1/CustomerCreditNote/25698 |
{ "lines": [ { "operation": "Update", "lineNumber": { "value": 1 }, "inventoryNumber": { "value": "6" }, "quantity": { "value": 1 }, "unitPriceInCurrency": { "value": 1 } } ] } |
If successful, the API will return:
Status: 204 No Content |
Common usage example for Customer Debit Note(ScreenId=AR301000)
URL: https://integration.visma.net/API/controller/api/v1/CustomerDebitNote |
URL: https://integration.visma.net/API/controller/api/v1/CustomerDebitNote |
Example of usage with parameters
Query parameters:
Will limit response to documents with the specified project |
Usage example:
This will return Customer Debit Notes with projectID 20.
GET https://integration.visma.net/API/controller/api/v1/customerDebitNote ?project=20 |
URL: https://integration.visma.net/API/controller/api/v1/CustomerDebitNote |
This example shows the minimum fields you should send to be able to post a new Customer Debit Note, if you are using automatic numbering you can omit the “referenceNumber” field.
{ "lines": [ { "operation": "Insert", "description": { "value": "Test" }, "quantity": { "value": 2 }, "unitPriceInCurrency": { "value": 2 }, "uom": { "value": "STK" } } ], "customerNumber": { "value": "10000" }, "referenceNumber": { "value": "000050" }, "documentDate": { "value": "2020-01-16" }, "postPeriod": { "value": "012020" }, "financialPeriod": { "value": "202001" }, "invoiceText": { "value": "DebitNote" } } |
If sent successfully, the API will return:
Status 201 Created |
URL: https://integration.visma.net/API/controller/api/v1/CustomerDebitNote/{debitNoteNumber} |
When using PUT, you only send the fields you want to update. In the below example, we update the first line of the Credit Note:
PUT https://integration.visma.net/API/controller/api/v1/CustomerDebitNote/000050 |
{ "lines": [ { "operation": "Insert", "lineNumber": { "value": 1 }, "inventoryNumber": { "value": "6" }, "quantity": { "value": 1 }, "unitPriceInCurrency": { "value": 1 } } ] } |
If successful, the API will return:
Status: 204 No Content |
Common usage example for CustomerInvoice(ScreenId=AR301000)
URL: https://integration.visma.net/API/controller/api/v1/CustomerInvoice |
URL: https://integration.visma.net/API/controller/api/v1/CustomerInvoice |
Query parameters:
As of today Filtering Parameters does not accept certain characters such as W-Z These are the formats for Filtering *2001-01-01 *2001-01-01 13:13:13 *2001-01-01 13:13:13.133 |
Supported comparative operators for LastModifiedDateTime Conditions on filtering > - Greater than < - Less than <= - Less than or equal to >= - Greater than or equal to |
Usage example:
This query will return customers updated on 2020-01-14 or later.
GET https://integration.visma.net/API/controller/api/v1/CustomerInvoice ?lastModifiedDateTime=2020-01-14 &lastModifiedDateTimeCondition=>= ( Lines are separated for readability) |
URL: https://integration.visma.net/API/controller/api/v1/CustomerInvoice |
This example shows the minimum fields you should send to be able to post a new Customer Invoice, if you are using automatic numbering you can omit the “referenceNumber” field.
{ "invoiceLines": [ { "operation": "Insert", "inventoryNumber": { "value": "222" }, "quantity": { "value": 500 }, "uom": { "value": "STK" } } ], "sendToAutoInvoice": { "value": true }, "referenceNumber": { "value": "156589" }, "customerNumber": { "value": "10000" }, "documentDate": { "value": "2020-01-27" }, "invoiceText": { "value": "Payment for potatoes" } } |
If sent successfully, the API will return:
Status 201 Created |
URL: https://integration.visma.net/API/controller/api/v1/CustomerInvocie/{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:
PUT https://integration.visma.net/API/controller/api/v1/CustomerInvoice/003547 |
{ "lines": [ { "operation": "Insert", "lineNumber": { "value": 1 }, "inventoryNumber": { "value": "6" }, "quantity": { "value": 1 }, "unitPriceInCurrency": { "value": 1 } } ] } |
If successful, the API will return:
Status: 204 No Content |
Copyright © 2022 Visma.com. All rights reserved.