Visma logo

Integration between Ongoing Warehouse and Visma.net

Table of contents

Introduction

Ongoing Warehouse has developed an integration for Visma's web-based ERP Visma.net. This integration makes it possible for businesses which use Visma.net to easily outsource their warehouse needs to a 3PL company which uses the Ongoing Warehouse WMS. The integration can also be used by businesses who run Visma.net and who want to run their own warehouse using the Ongoing Warehouse WMS. By passing information electronically between Visma.Net and Ongoing Warehouse, many manual tasks concerning stock balances, order statuses, etc. are eliminated or reduced. As a complement to the integration, users of Visma.net can also be given direct access to the WMS.

The integration works well together with the Ongoing workflow. It uses the Visma.net API. Most functions run every 15 minutes, but some functions are based on user actions.

Note that the information in this document might differ from your particular integration, if any special requests were made during the implementation of the integration.

Scheduled functions

Some functions in the integration run on a schedule. The supplier registry, article registry, orders and purchase orders are synced automatically from Visma.net to Ongoing Warehouse.

Supplier registry

The supplier registry is read automatically from Visma.net to Ongoing Warehouse. The registry may be used for e.g. customs reports.

Field mapping

Show field mapping

Ongoing Warehouse field name Visma.net field name
NameName
SupplierNumberNumber
Address ⇒ NameName
Address ⇒ AddressSupplierAddress ⇒ AddressLine1
Address ⇒ Address2SupplierAddress ⇒ AddressLine2
Address ⇒ Address3SupplierAddress ⇒ AddressLine3
Address ⇒ CitySupplierAddress ⇒ City
Address ⇒ PostCodeSupplierAddress ⇒ PostalCode
Address ⇒ CountryCodeSupplierAddress ⇒ Country ⇒ Id
Address ⇒ MobilePhoneSupplierContact ⇒ Phone2
Address ⇒ TelePhoneSupplierContact ⇒ Phone1
Address ⇒ EmailSupplierContact ⇒ Email
Address ⇒ RemarkSupplierContact ⇒ Attention

Article registry

The article registry is read automatically from Visma.net to Ongoing Warehouse. If a change is made in Visma.net, it will be reflected automatically in Ongoing Warehouse.

Field mapping

Show field mapping

Ongoing Warehouse field name Visma.net field name
ArticleDefinition ⇒ ArticleNumberInventory ⇒ InventoryNumber
ArticleDefinition ⇒ ArticleNameInventory ⇒ Description
ArticleDefinition ⇒ CustomerPriceInventory ⇒ DefaultPrice
ArticleDefinition ⇒ IsStockArticletrue
ArticleDefinition ⇒ IsObsoleteInventory ⇒ Status <> Active
ArticleDefintion ⇒ MainSupplier ⇒ SupplierNumberInventory ⇒ Crossreferences ⇒ BAccount ⇒ Number
ArticleDefinition ⇒ BarCodeInventory ⇒ Crossreferences (alternateType = Barcode AND description = GTIN) ⇒ AlternateID

Filters

By default, only articles with the Visma.net field "Inventory ⇒ Type" set to "FinishedGoodItem" will be synced to Ongoing.

Orders

An order in Visma.net may be used to create a delivery. These deliveries are mapped to Ongoing Warehouse, where they are called orders. Thus:

Order (Visma.net) ⇒ Delivery (Visma.net) ⇒ Order (Ongoing Warehouse)

In order for this to work smoothly, the integration requires that each Visma.net delivery only contain 1 Visma.net order. If you want to use consolidated deliveries, then this must be handled by the warehouse in the Ongoing WMS.

Field mapping

Show field mapping

Ongoing Warehouse field name Visma.net field name
OrderInfo ⇒ GoodsOwnerOrderIdShipment ⇒ ShipmentNumber
OrderInfo ⇒ GoodsOwnerOrderNumberSalesOrder ⇒ OrderNo
OrderInfo ⇒ TermsOfDeliveryShipment ⇒ ShippingTerms ⇒ Description
OrderInfo ⇒ DeliveryDateShipment ⇒ ShipmentDate
OrderInfo ⇒ OrderTypeShipment ⇒ ShipmentdetailLines ⇒ OrderType (Kräver inställning)
OrderInfo ⇒ ReferenceNumberSalesOrder ⇒ CustomerOrder
Customer ⇒ OrganisationNumberCustomer ⇒ CorporateId
Customer ⇒ VATNumberCustomer ⇒ VatRegistrationId
Customer ⇒ ExternalCustomerCodeShipment ⇒ Customer ⇒ InternalId
Customer ⇒ CustomerNumberShipment ⇒ Customer ⇒ Number
Customer ⇒ NameShipment ⇒ DeliveryContact ⇒ Name
Customer ⇒ EmailShipment ⇒ DeliveryContact ⇒ Email
Customer ⇒ NotifyByEmailfalse
Customer ⇒ AddressShipment ⇒ deliveryAddress ⇒ addressLine1
Customer ⇒ Address2Shipment ⇒ deliveryAddress ⇒ addressLine2
Customer ⇒ Address3Shipment ⇒ deliveryAddress ⇒ addressLine3
Customer ⇒ CityShipment ⇒ deliveryAddress ⇒ City
Customer ⇒ CountryCodeShipment ⇒ deliveryAddress ⇒ Country ⇒ id
Customer ⇒ PostCodeShipment ⇒ deliveryAddress ⇒ PostalCode
CommunicationInfo ⇒ FromSystemName"Visma.net"
CommunicationInfo ⇒ ToSystemName"Ongoing Warehouse"
CommunicationInfo ⇒ TransporterContractClassNo mapping. There is an option to add special logic which selects the transporter automatically based on the order.
ExternalOrderLineCodeShipment ⇒ ShipmentDetailLine ⇒ LineNumber
NumberOfItemsShipment ⇒ ShipmentDetailLine ⇒ OrderedQty
ArticleNumberShipment ⇒ ShipmentDetailLine ⇒ InventoryNumber
CurrencyCodeShipment ⇒ CurrencyId
ArticleNameShipment ⇒ ShipmentDetailLine ⇒ Description
LinePrice(SalesOrder ⇒ Line ⇒ UnitPrice) * (Shipment ⇒ ShipmentDetailLine ⇒ orderedQty)

Filters

By default, any orders matching the following filter in Visma.net is synced to Ongoing.

Show filters

Visma.net field name Default filter
Shipment ⇒ FromWarehouse ⇒ IdNo filter
Shipment ⇒ Status"Open"
Shipment ⇒ ShipmentDetailLines ⇒ location ⇒ idNo filter
Shipment ⇒ ShipmentDetailLines ⇒ OrderType"SO"

Purchase orders (inorders)

Purchase orders in Visma.net are mapped to purchase orders in Ongoing Warehouse. This allows the warehouse to report received goods to Visma.net.

Field mapping

Show field mapping

Ongoing Warehouse field name Visma.net field name
InOrderInfo ⇒ GoodsOwnerReferencePurchaseOrder ⇒ RequisitionRefNbr
InOrderInfo ⇒ GoodsOwnerOrderNumberPurchaseOrder ⇒ OrderNbr
InOrderInfo ⇒ InDatePurchaseOrder ⇒ PromisedOn
InOrderInfo ⇒ OrderDatePurchaseOrder ⇒ Date
InOrderSupplier ⇒ SupplierNamePurchaseOrder ⇒ Supplier ⇒ Name
InOrderSupplier ⇒ SupplierNumberPurchaseOrder ⇒ Supplier ⇒ Number
CommunicationInfo ⇒ FromSystemName"Visma.net"
CommunicationInfo ⇒ ToSystemName"Ongoing Warehouse"
InOrderLine ⇒ ArticleNumberPurchaseOrder ⇒ lines ⇒ inventory ⇒ number
InOrderLine ⇒ NumberOfItemsPurchaseOrder ⇒ lines ⇒ orderQty
InOrderLine ⇒ ExternalOrderLineCodePurchaseOrder ⇒ lines ⇒ lineNbr

Filter

By default, only purchase orders in Visma.net with the field Shipment ⇒ ShipmentDetailLines ⇒ OrderType set to "SO" will be synced to Ongoing.

Functions based on user actions

Inbound deliveries

When a delivery is made to the warehouse, this will be recorded on a purchase order. This triggers a number of calls to the Visma.net API. First a receipt ("kvittering") is created, recording that that purchase order has been received. The received quantities are also recorded on each line. It is possible that the received quantities differ from the advised quantities.

By default, all goods will automatically be released in Visma.net after it has been received in Ongoing. It is possible to change this so it is not automatically released.

Field mapping

The below table specifies where the information originates from in the Visma.net receipts which the integration creates.

Show field mapping

Visma.net receipt ("kvittering") field name Source field
SupplierIdVisma.net ⇒ PurchaseOrder ⇒ Supplier ⇒ Number
LocationIdVisma.net ⇒ PurchaseOrde ⇒ Location ⇒ Name
WarehouseIdSpecified when the integration is set up
holdfalse
currencyVisma.net ⇒ PurchaseOrder ⇒ Currency
SupplierRefVisma.net ⇒ PurchaseOrder ⇒ SupplierRef
Lines ⇒ poOrderLineNbrVisma.net ⇒ PurchaseOrder ⇒ PurchaseOrderLine ⇒ LineNbr
Lines ⇒ poOrderNbrVisma.net ⇒ PurchaseOrder ⇒ OrderNbr
Lines ⇒ poOrderTypeVisma.net ⇒ PurchaseOrder ⇒ OrderType
Lines ⇒ completePoLinetrue
Lines ⇒ receiptQty(Ongoing Warehouse ⇒ ReceivedInOrderLine ⇒ ReceivedNumberOfItems)
(Visma.net ⇒ PurchaseOrder ⇒ PurchaseOrderLine ⇒ QtyOnReceipts)
Lines ⇒ lineNbrVisma.net ⇒ PurchaseOrder ⇒ PurchaseOrderLine ⇒ LineNbr
Lines ⇒ lineType”GoodsForInventory”
Lines ⇒ warehouseIdSpecified when the integration is set up
Lines ⇒ locationIdVisma.net ⇒ Warehouse (same warehouse as above) ⇒ Shiplocation ⇒ id
Lines ⇒ uomVisma.net ⇒ PurchaseOrder ⇒ PurchaseOrderLine ⇒ uom
Lines ⇒ branchIdVisma.net ⇒ PurchaseOrder ⇒ PurchaseOrderLine ⇒ branch ⇒ number
Lines ⇒ inventoryIdVisma.net ⇒ PurchaseOrder ⇒ PurchaseOrderLine ⇒ inventory ⇒ number

Outbound deliveries

When an order has been set to status Sent or Collected in Ongoing, a number of calls are made to the Visma.net API. These calls will confirm the delivery and update the delivered quantities on each order line in Visma.net.

If you intend to make partial deliveries, it is important to check that Visma.net is set to automatically create a back order for the remaining quantity.

Field mapping

Show field mapping

Ongoing Warehouse field name Visma.net field name
Order ⇒ OrderInfo ⇒ GoodsOwnerOrderNumberShipment ⇒ ShipmentNumber
Order ⇒ PickedOrderLine ⇒ LineNumberShipment ⇒ ShipmentDetailLine ⇒ LineNumber
Order ⇒ PickedOrderLine ⇒ PickedNumberOfItemsShipment ⇒ ShipmentDetailLine ⇒ ShippedQty

Preparations

In order to configure this integration Onogoing Warehouse will need user name and password to Visma.net API. From these credentials Ongoing Warehouse will generate a bearer token to use when accessing the API. If the API user has access to several companies, Ongoing Warehouse will also need the company ID and name to use as context. If you are unable to get this information please ask your Visma reseller.