New and improved sandbox!
by Henric StrömWhat's new?
We've implemented a new customer type in Visma Online (our platform) for sandbox companies. That means newly registered sandbox companies will use our production environment with test companies as well as new IdentityServer clients in the production environment. They'll be suffixed automatically with "sandbox" in the company name so there's no risk of mixing them up with a real company.
Visma Lön Smart in Sweden!
Visma Lön Smart is the latest addition to our payroll suite in Sweden.
We are soon releasing Visma Lön Smart's API and it's a part of the sandbox package for swedish partners. You'll be able to integrate seamlessly with both products using the same authorization flow, separated with scopes.
The API is currently in the last phase of development, but the Visma Lön Smart service will be provisioned together with Visma eAccounting already.
Why?
This will easily solve most of the known issues with the existing sandbox environment. Deployment frequency, improved performance and multi user support are just a few of them. It will be more production-like for you as developers, which is something we've heard you have wanted for quite some time.
What do I need to do?
Register a new sandbox account here . You'll get a new sandbox company and new oAuth credentials in the production environment. For your integration code, you need to swap the clientid,clientsecretand IdentityServer base URL from https://identity-sandbox.test.vismaonline.com to https://identity.vismaonline.com and API base URL from https://eaccountingapi-sandbox.test.vismaonline.com to https://eaccountingapi.vismaonline.com.
When do I need to do that?
The old sandbox environment will be up and running until 2024-08-31. After this date, the following URLs will stop function and the companies will be removed permanently:
- https://eaccounting-sandbox.test.vismaonline.com
- https://eaccountingapi-sandbox.test.vismaonline.com
- https//identity-sandbox.test.vismaonline.com
What about my data?!
You'll be able to export articles, customers, suppliers, chart of accounts, vouchers and more from Visma eAccounting. Just go to Settings > Import & Export. This data can then be imported in your new sandbox company. If that doesn't fulfill your needs, you can use the API to get the data you need and post to the new company.
After 2024-08-31 all old sandbox data will be deleted permanently!
Notice anything weird? Don't hesitate to contact us at [email protected].
Visma eAccounting API - New Error Codes
by Daniel Jonsson
New error codesSeveral new error codes have been added.
Error Codes
4026 - This error is thrown when you try to post a voucher in a locked bookkeping period.
4028 - This error is thrown when trying to undo an order that has backorders connected to it.
4029 - This error is thrown when a invalid social security number is provided for ROT/RUT input.
4032 - This error is thrown when a supplier invoice rows doesn't balance.
4033 - This error is thrown when the attempted action breaks the rules of approval flow.
Visma eAccounting API - New Bugfix regarding decimals
by Daniel JonssonVisma eAccounting API - New Bugfix - ShippedDateTime
by Daniel JonssonVisma eAccounting API - New Properties on Articles and Vouchers
by Daniel Jonsson
New propertiesWe added currency fields in the API for Articles.
We also added VoucherId on AllocationPeriods.
Properties added:
CurrencyCode, PurchasePriceWithCurrency and FreightCostWithCurrency
Endpoints affected:
v2/articles
v2/articles/{articleid}
Properties added
VoucherId
Endpoints affected:
V2/AllocationPeriods
Visma eAccounting API - New filter
by Daniel Jonsson
Several new filtersWe have added many new filters, see below
Added the possibility to filter by negative amounts
Properties: -TotalAmount, -TotalVatAmount, -TotalRoundings, -RemainingAmount
Affected endpoints:
v2/customerinvoices
v2/customerinvoices/statistics
Possibility to filter by customer ID on quotes
We have made it possible to filter by customer ID when fetching quotes.
Affected endpoint:
GET v2/quotes
Added the possibility to filter on Row/Text
Affected endpoints:
GET /v2/customerinvoices
Added the possibility to filter on Row/ArticleNumber
Affected endpoints:
GET /v2/customerinvoicedrafts
Filtering by properties 'HasAutoInvoiceError' and 'TotalAmountInvoiceCurrency'
In the v2/customerinvoices and v2/customerinvoices/statistics endpoints we are missing properties 'HasAutoInvoiceError' and 'TotalAmountInvoiceCurrency'. Those have been added and the filtering is now possible, the same as in the web.
Affected endpoints:
GET /v2/customerinvoices?$filter=HasAutoInvoiceError eq true
GET /v2/customerinvoices/statistics?$filter=HasAutoInvoiceError eq true
GET v2/customerinvoices?$filter=RemainingAmountInvoiceCurrency eq -TotalAmountInvoiceCurrency or RemainingAmountInvoiceCurrency eq TotalAmountInvoiceCurrency
GET v2/customerinvoices/statistics?$filter=RemainingAmountInvoiceCurrency eq -TotalAmountInvoiceCurrency or RemainingAmountInvoiceCurrency eq TotalAmountInvoiceCurrency
Filter customer invoices by text row
Search for invoices with tex rows that contain a specific text.
New endpoints:
GET v2/customerinvoices?$filter=Rows/any(c: contains(c/Text,'anytext'))
Visma eAccounting API - New Properties
by Daniel Jonsson
We have added many new properties that we see add value for you developersWe added new properties wich affects PeppolID, CustomerNumber in orders and qoutes, settings for email for qoutes & orders and so on.
Expose CustomerNumber in quotedrafts, quotes and orders
New endpoints have been added to the quotedrafts, quotes and orders to expose the customerNumber in the same way as customerInvoices.
Affected endpoints:
GET v2/quotedrafts
GET v2/quotes
GET v2/orders
New property "PeppolId" added
PeppolID is now exposed in the API. The property is readonly.
Effected endpoint:
GET v2/companysettings
New properties "MessageThreads" and "Notes"
The following properties "MessageThreads" and "Notes" has been ** added to the customerinvoicedrafts endpoints. The new properties can be used to get a message thread or note by id.
Effected endpoints:
GET v2/customerinvoicedrafts
GET v2/customerinvoicedrafts/{id}
New properties EmailAddressQuote and EmailAddressOrder
These new properties will allow the user to add different recipients for quotes and orders.
Affected endpoints:
GET v2/customers
GET v2/customers/{id}
POST v2/customers
PUT v2/customers/{id}
The logic of the new endpoints below is that if the email property in the request body is empty, then the document should be sent to the default email, which comes from the email Order/Quote field. If this field is empty then the default email is the email from the email invoice field. If the email invoice field is empty you get an exception that the email was not sent.
Affected endpoints:
POST v2/quotes/{id}/email
POST v2/orders/{id}/email
Visma eAccounting API - New bugfixes
by Daniel Jonsson
Here is a list of the latest bugfixes we've doneThe parts we have solved affects both green technology, correct VAT numbers and so on.
Create a green tech invoice with 20 percentage for solar panel installation
This update makes it possible to create invoices with 20% and not only 15% as before, which are the only allowed values. The user has the option to change this by opening company settings and then invoice settings.
Affected endpoints:
POST v2/quotes
POST v2/orders
POST v2/customerinvoices
POST v2/quotedraft
POST v2/customerinvoicedrafts
Fix the e-mail layout formatting for quotes/orders/invoices
The formatting of the e-mail is now fixed so that it matches the one sent from the web.
Affected endpoints:
v2/quotes/{id}/email
v2/orders/{id}/email
v2/customerinvoices/{id}/email
Validate VAT number on customers
If a VAT number is added to a customer it needs to be valid according to VIES. This change will apply when creating new customers or changing existing ones. This behaviour will align with the current validation in the web application.
Affected endpoints:
POST v2/customers
PUT v2/customers/{id}
Invoice date on sales invoice drats
Today we always show the original invoice date, regardless of the company setting for “KeepOriginalDraftDate”.
This update will change the behavior to:
Keep today's date if the setting is OFF or NULL
Use the original draft date if the setting is ON
Affected endpoints:
GET v2/customerinvoicedrafts
GET v2/customerinvoicedrafts/{id}
New endpoints for SalesPriceList and DiscountAgreementWe now, in eAccounting, support creating several price lists, therefore you can have specific sales prices for an article to specific customers. Also, we support creating multiple discount agreements that could be linked to a customer. These endpoints are available only for PRO variants.
Existing salespricelists and discountagreements can now be fetched in the API.
Changelog
- Affected endpoints:
GET /v2/salespricelists
GET /v2/salespricelists/{salesPriceListId}
GET /v2/salespricelists/prices
GET /v2/salespricelists/prices/{salesPriceListId}/{articleId}
GET /v2/discountagreements
GET /v2/discountagreements/{discountAgreementId}
