Skip to main content

Custom Accounts/ERP Integrations

Learn how to use a custom accounts/ERP integration using the steps in this guide!

Updated yesterday

What are Custom Accounts/ERP Integrations?

A Custom Accounts/ERP Integration refer to the process where third-party developers create tailored integrations between the CRM and an ERP (Enterprise Resource Planning) or Accounts system that the CRM does not have a native integration to. These custom integrations allow for the customisation of the integration name and provide a custom order confirmation REST API endpoint, making the integration appear more native and seamless to the user.

How do I use a Custom Accounts/ERP Integration?

If you want to get started with one of these integrations please let us know by emailing help@prospectsoft.com. Or speaking to a member of the team.

Before you Begin

This section will cover the things you'll need and some other things you might want to review before building an integration.

Prerequisites

To interact with our API, you will need a PAT (Personal Access Token). More information on how to obtain one can be found in this document.

You will also need to have the Operating Company integration set to Other.

Useful Links

We have also created a handy article which contains an overview of the OData API so that you can get started efficiently.

A list of all the GET/POST Endpoints available in our API can be found on this page.

Scope

When building a custom integration we recommend starting by thinking about the scope of what needs to be integrated. This will vary depending on what functionality the Accounts/ERP system you are integrating with has.

We would recommend the following areas to integrate with:

  • ​Import VAT Rates

  • ​Import Currencies

  • ​Import Product Categories

  • ​Import Product Items

  • ​Import Sales Ledgers

  • ​Creating Customer Records (Missing Customer Import)​

  • Creating Orders in the Accounts/ERP System​

  • Updating the CRM with the Order Number

  • ​Sales Order Header Import

  • ​Sales Orders Import

  • ​Sales Invoices Import

  • ​Sales Credits

  • ​Sales Invoice Header


Getting Started

This section will cover getting some very basic data flowing between the ERP System and your CRM. This will not be enough to get a working integration completed, but it will get you familiar with our API and prepare you to move on to the MVP working integration.

Operating Company

In the CRM, the Operating Company controls some core settings about the business using the CRM (currency, VAT/GST Number, etc.) and normally maintains connection to the ERP system. It is possible to have multiple Operating Companies if a customer has multiple businesses or multiple Accounts/ERP systems.

All Operating Companies in the CRM wilth have an Operating Company Code used to identify them. When importing information into the CRM there are several places where you'll need to pass the Operating Company Code.

If you look at the /HomeCurrencies Endpoint, you can find the list of Operating Companies the CRM system has configured and see the Operating Company Code listed within them. The code is usually a single character.

In the below example the OperatingCompanyCode is "B".

Product Items

Product Items in the CRM refer to products or items that a business may manufacture, sell, stock, or keep inventory of. They are used throughout the system for quoting and sales.

If you look at the /ProductItems Endpoint, you can find the list of Product Items the CRM system. Visit our API Docs with details about the POST request for Product Items.

Required fields

Below is the list of the required fields for the creation of a Product Item Record:

{
"OperatingCompanyCode": "",
"ProductItemId": "",
"Description": "",
"CategoryId": "",
“SellingPrice”:
}

Note: The "CategoryID" needs to match the ID of a Product Category that exists in the CRM. For the purpose of the Quick Start, use Code CATEGORY-A

Example Body of a POST Request:

{
"OperatingCompanyCode": "A",
"ProductItemId": "TESTITEM",
"Description": "Test Product Item",
"CategoryId" : "CATEGORY-A",
"SellingPrice": 1234
}

Note: The CRM stores values such as SellingPrice as an integer and by default will conver these to two decimal places elsewhere in the system. When importing a Sell Price, you need to multiply it by 10^decimals that your currency sells to.

For example, if I sold in prices with two decimal places £12.34 would need to be be imported as 1234.

This article will outline changing the decimals further on.

Sales Ledgers

Sales Ledgers are a record type in the CRM that are equivalent to the Sales Ledger or Customer record used in the Accounts/ERP system and are used to link a the Accounts/ERP record to the CRM Company.

If you look at the /SalesLedgers Endpoint, you can find the list of Sales Ledgers in the CRM. Visit our API Docs for details about the different /SalesLedgers requests.

Required fields

Below is a list of the required fields for the creation of a Sales Ledger Record:

{
"OperatingCompanyCode": "",
"SalesLedgerId": "",
"Name": “”
}

Example Body of a POST Request:

{
"OperatingCompanyCode": "A",
"SalesLedgerId": "TEST000123",
"Name": "Test Sales Ledger",
"AddressLine1": "Business LTD"
"AddressLine2": "123 Street",
"AddressLine3": "Business Town",
"AddressLine4": "Enterprise City",
"AddressLine5": "State 1",
"Postcode": "AB1 2CD",
"Country": "United Kingdom",
"Telephone": "+44 20 7123 4567",
"Fax": "+44 20 7123 4567",
"Email": "email@example.com",
"Website": "www.example.com"
}

Customer Creation

You should now log in to the system and create a record via the CRM, assigning it to the Sales Ledger you have just imported.

This guide will walk you through how to create a new record, ensuring you enter the Sales Ledger ID:

Order Creation

Now that you have a Product Item, Sales Ledger and a Customer Record, you can create a Quote in the system that can be converted into an Order. This guide will walk you through how to create a Quote.

Confirming an Order

Depending on how you are writing your integration, order confirmation can be done in one of two ways:

  1. You poll the CRM for Orders Waiting to be Confirmed

We would recommend Method 1 as the preferred way to manage Order Confirmation, but Method 2 will also enable you to confirm orders.

Method 1 – The CRM calls an Endpoint

To begin with you you will need to set up the Endpoint you want it to call, in the CRM Settings:

Select System Settings, then Integrations from the navigation menu. Under "Operating Companies, Inventory Management, Accounts & ERP Integrations”, click on "Click to Configure":

To open a detailed record of an operating company, click on the company name under the Description.

Click on the pencil on the right hand side to open up the integration pop-up window. Select "Other":

You can enter a name for your Integration, the Authentication Scheme, Key or Token and the Order Confirmation Endpoint.

When a user clicks the "Confirm" button against a quote, a request will be made to your Endpoint with a body containing the Quote ID that is being confirmed and Endpoint details for Confirming or Rejecting the order:

{
"quoteId": 1294,
"confirmEndpoint":
{
"endpoint":"http://integration.prospect365.com/quote/1234/confirm",
"token":"eas:m1/j8tR4D4s+...."},

"rejectEndpoint":
{
"endpoint":"http://integration.prospect365.com/quote/1234/reject",
"token":"eas:m1/j8tR4D4s+...."
}
}

Order Confirmation Response

Upon receiving a call to confirm an order, the endpoint should return immediately to acknowledge that the request has been received. This is expected to be done before the order has been processed and the response to the order confirmation call should reflect that the request has been received and understood, not whether the order was confirmed successfully into the third party system.

You will receive one of the two following messages:

Successful

{ 
“success”: “true”
}

Unsuccessful

{
“success”: “false”,
“message”: “failure message”
}

Once you have the Quote ID of the quote that has been confirmed, you can then retrieve the details of the customer and the lines on the quote.

Obtaining Quote Header Details

If you look at the /Quotes Endpoint, you can find the list of Quote Imports your Workspace has setup and see the Quote Import code. Visit our API Docs with details about the POST request for Quotes.

Below is an example GET Request that can be used to retrieve details of from the Quote Header:

/Quotes?
$select=Orderedby,SalesLedgerOrderPlacedOnId,Description,DeliveryName,DeliveryAddressLine1,DeliveryAddressLine2,DeliveryAddressLine3,DeliveryAddressLine4,DeliveryAddressLine5,DeliveryPostcode,DeliveryCountry,DeliveryNotes1,DeliveryNotes2,CustomerOrderReference,DecimalForeignNetValue&$filter=StatusFlag ne 'D' and QuoteId eq ????

Note:

???? is the Quote ID

Below is a list defining each of the terms used in the GET Request:

  • Orderedby – The usercode of the user who confirmed the order

  • SalesLedgerOrderPlacedOnId – The Sales Ledger ID the order was placed on

  • Description – The description of the quote entered by the user (this could be blank)

  • DeliveryName – Delivery Name

  • DeliveryAddressLine1 – Delivery Address Line 1

  • DeliveryAddressLine2 – Delivery Address Line 2

  • DeliveryAddressLine3 – Delivery Address Line 3

  • DeliveryAddressLine4 – Delivery Address Line 4

  • DeliveryAddressLine5 – Delivery Address Line 5

  • DeliveryPostcode – Delivery Postcode

  • DeliveryCountry – Delivery Country

  • DeliveryNotes1 – Delivery Notes Line 1

  • DeliveryNotes2 – Delivery Notes Line 2

  • CustomerOrderReference – Customer PO Reference

  • DecimalForeignNetValue – Total Net Order Value

This GET retrieves a lot of the information you may require when creating an order in your ERP system. If you require further information, please use the docs to find the field names and add them as required.

Obtaining Quote Line Details

If you look at the /QuoteLines Endpoint, you can find the list of QuoteLine Imports your Workspace has setup. Visit our API Docs with details about the POST request for QuoteLines.

Below is an example GET Request that can be used to retrieve details of the lines on the Quote:

/QuoteLines?$select=DecimalForeignNetValue,DecimalForeignPrice,DecimalQuantity,Description,ProductItemId,Quote,Sequence&$filter=StatusFlag ne 'D' and Quote/QuoteId eq ????&$orderby=Sequence asc

Note:

???? is the Quote ID

Below is a list defining each of the terms used in the GET Request:

  • DecimalForeignPrice – This is the price of the item before any line discount has been applied

  • DecimalForeignNetValue – This is the Net Total Line Value

  • DecimalQuantity – This is the Quantity for the Line

  • ProductItemId – This is the Product Code for the Line

  • Description – This is the Product Description on the Line

This GET retrieves a lot of the information you may require when creating an order in your ERP system. If you require further information, please use the docs to find the field names and add them as required.

Once you have processed the order into the ERP system, you then need to let us know if this was successful or unsuccessful. The original post contains 'Confirm' and 'Reject' links that can be used to update the order in the CRM.

​Confirm Order

The Endpoint for a confirmed order is as follows:

https://integration.prospect365.com/quote/????/confirm

Note:

???? is the Quote ID

​When posting to the Endpoint you will need to send a "success" and Order Number value. For confirming orders, "success" will always be "true", and the order number will be the order number from your Accounts/ERP system.

​Example Body of a POST Request

​{
​ "success": "true",
"ordernumber": "ORD001234"
​}

Reject Order

​The Endpoint for a rejected order is as follows:

https://integration.prospect365.com/quote/????/reject

​Note:

???? is the Quote ID

​When posting to the rejection endpoint you will need to send a "success" and message for rejecting. For rejecting orders, "success" will always be "false", and the message should be something useful to the user e.g. "Sales Ledger Invalid" or "Product Code incorrect". This will enable the CRM user to correct the issue and retry confirmation.

​Example Body of a POST Request

​{
"success": "false",
"messsage": "Order failed to confirm because the account is on stop"
​}

​Method 2 – Polling the CRM for Orders

​When a user presses "Confirm" in the CRM it will attempt to confirm the order into the integrated Accounts/ERP system and update the Quote Status to "Waiting to be Confirmed" instead.

If it's not possible to setup an Order ConfirmationEndpoint for the CRM to call when a Quote is confirmed you can instead poll the CRM for Quotes in this status.

Please note that within the CRM users can also flag Quotes or Sales Orders as being "On Hold". Records that have this flag set should not be confirmed into the Accounts/ERP System until it is taken off hold.

​Retrieve "Waiting to be Confirmed" Quotes and Sales Orders

​Below is an example GET Request for all Quotes/Sales Orders that are not On Hold and are in a status of "Waiting to be Confirmed":

​/Quotes?$select=QuoteId&$filter=StatusFlag eq 'A' and StatusId eq 1 and OperatingCompanyCode eq 'A' and OnHold eq 0 

​Once you have a list of the Quotes that needs to be processed, you can then loop through them one at a time and create the orders.

​Obtaining Quote Header Details

If you look at the /Quotes Endpoint, you can find the list of Quote Imports your Workspace has setup and see the Quote Import code. Visit our API Docs with details about the POST request for Quotes.

Below is an example GET Request that can be used to retrieve details from the Quote Header:

​/Quotes?$select=Orderedby,SalesLedgerOrderPlacedOnId,Description,DeliveryName,DeliveryAddressLine1,DeliveryAddressLine2,DeliveryAddressLine3,DeliveryAddressLine4,DeliveryAddressLine5,DeliveryPostcode,DeliveryCountry,DeliveryNotes1,DeliveryNotes2,CustomerOrderReference,DecimalForeignNetValue&$filter=StatusFlag ne 'D' and QuoteId eq ???? 

Note:

???? is the Quote ID

Below is a list defining each of the terms used in the GET Request:

  • ​Orderedby – The usercode of the user who confirmed the order

  • ​SalesLedgerOrderPlacedOnId – The Sales Ledger ID the order was placed on

  • ​Description – The description of the quote entered by the user (this could be blank)

  • ​DeliveryName – Delivery Name

  • ​DeliveryAddressLine1 – Delivery Address Line 1

  • ​DeliveryAddressLine2 – Delivery Address Line 2

  • ​DeliveryAddressLine3 – Delivery Address Line 3

  • ​DeliveryAddressLine4 – Delivery Address Line 4

  • ​DeliveryAddressLine5 – Delivery Address Line 5

  • ​DeliveryPostcode – Delivery Postcode

  • ​DeliveryCountry – Delivery Country

  • ​DeliveryNotes1 – Delivery Notes Line 1

  • ​DeliveryNotes2 – Delivery Notes Line 2

  • ​CustomerOrderReference – Customer PO Reference

  • ​DecimalForeignNetValue – Total Net Order Value

We believe this GET retrieves a lot of the information you may require when creating an order in your ERP system. If you require further information, please use the docs to find the field names and add them as required.

​Obtaining Quote Line Details

If you look at the /QuoteLines Endpoint, you can find the list of QuoteLine Imports your Workspace has setup. Visit our API Docs with details about the POST request for QuoteLines.

​Below is an example GET Request that can be used to retrieve details of the lines on the Quote:

​/QuoteLines?$select=DecimalForeignNetValue,DecimalForeignPrice,DecimalQuantity,Description,ProductItemId,Quote,Sequence&$filter=StatusFlag ne 'D' and Quote/QuoteId eq ????&$orderby=Sequence asc 

​Note:

???? is the Quote ID

Below is a list defining each of the terms used in the GET Request:

  • ​DecimalForeignPrice – This is the price of the item before any line discount has been applied

  • ​DecimalForeignNetValue – This is the Net Total Line Value

  • DecimalQuantity – This is the Quantity for the Line

  • ​ProductItemId – This is the Product Code for the Line

  • ​Description – This is the Product Description on the Line

​We believe this GET retrieves a lot of the information you may require when creating an order in your ERP system. If you require further information, please use the docs to find the field names and add them as required.

​Once you have processed the order into the ERP system you then need to let us know if this was successful or unsuccessful. The original post contains Confirm and Reject links that can be used to update the order in the CRM.

Confirm Order

​The Endpoint for a confirmed order is as follows:

https://integration.prospect365.com/quote/????/confirm

​​Note:

???? is the Quote ID

​When posting to the Endpoint you will need to send a "success" and Order Number value. For confirming orders "success" will always be true, and the order number will be the order number from your ERP system.

Example Body of a POST Request

​{ 
​"success": "true",
"ordernumber": "ORD001234"
​}

Reject Order

​The Endpoint for a confirmed order is as follows:

https://integration.prospect365.com/quote/????/reject

​Note: ???? is the Quote ID

​When posting to the Endpoint you will need to send a "success" and message for rejecting. For rejecting orders, "success" will always be false, and the message should be something useful to the user e.g. Sales Ledger Invalid, Product Code incorrect. The message will therefore be something the user can correct and re-try.

​Example Body of a POST Request

​{ 
​ "success": "false",
"messsage": "Order failed to confirm because the account is on stop"
​}

​Upon completing this Quick Start section, you should be comfortable importing data and posting it to the CRM.

You should now have the following items working:

  • ​A Product Item Import

  • ​A Sales Ledger Import

  • ​Order Confirmation using Either:

    • ​An Endpoint for Order Confirmation

    • ​A polling routine looking for Waiting to be Confirmed Quotes

  • ​Confirmation of Orders in the CRM


​MVP – Minimum Viable Product

​Now that you have a basic flow of data between your ERP and CRM systems, we can now begin to build on this basic integration and start turning it into an MVP version.

We would recommend the following:

  • ​Import VAT Rates

  • ​Import Currencies

  • ​Import Product Categories

  • ​Import Product Items

  • ​Import Sales Ledgers

  • ​Creating Customer Records (Missing Customer Import)​

  • Creating Orders in the Accounts/ERP System​

  • Updating the CRM with the Order Number

  • ​Sales Order Header Import

  • ​Sales Orders Import

  • ​Sales Invoices Import

  • ​Sales Credits

  • ​Sales Invoice Header

​Some of these we have already touched on in the Quick Start section, but we are going to revisit and add some extra details.

​VAT Rate Import

​VAT is a complex topic, and there will be a more detailed section on VAT later in this document. For MVP purposes we are going to keep it simple and assume that all sales are taking place in the Home Country.

​In a later section we will cover Import of VAT Rates for EC Registered Companies, or other countries you are VAT registered in.

If you look at the /VatRates Endpoint, you can find the list of VatRates Imports your Workspace has setup. Visit our API Docs with details about the POST request for VatRates.

​Example Body of a POST Request:

​{ 
​ "OperatingCompanyCode": "A",
"CountryType": "H",
"TransactionType": "S",
"TaxCode": "S",
"Description": "Standard",
"Rate1": 20.0000
​}

Notes:

TransactionType: S represents Home Sale

CountryType: H represents Home Country
​​

​In later imports we can Assign these Tax Codes to Products and Customers to say how they should have their VAT applied.

​Currency Import

If you look at the /ForeignCurrencies Endpoint, you can find the list of ForeignCurrencies Imports your Workspace has setup. Visit our API Docs with details about the POST request for ForeignCurrencies.

Below is the list of the required fields for the creation of a Currency Record:

Example Body of a POST Request:

{ 
​"OperatingCompanyCode": "A",
"Description": "EUR",
"CurrencyCode": "EUR",
"Decimals": 2,
"CurrencyRate": 7100,
"Multiply": 1,
"IsoCode": "EUR"
​}

Notes:

Decimals should specify how many decimal places the Currency has, the default is 2 CurrencyRate specifies the integer Exchange Rate based on the decimals, e.g. multiply the number by 10000 to go from your Home Currency to this currency.

Multiple specifies if you need to multiply (1) or divide (0) by the CurrencyRate to convert a value in home currency to this Currency

If IsoCode matches the currency code of the Currency this will be set automatically, if it is not this should be set to the IsoCode of the currency e.g. Euro = EUR.

​Product Category Import

​In the quick start section, we briefly mentioned Product Category when we imported Product Items. In the CRM, you can import your ERPs full stock tree structure if you would like it for reporting.

If you look at the /ProductCategories Endpoint, you can find the list of ProductCategories Imports your Workspace has setup. Visit our API Docs with details about the POST request for ProductCategories.

Example Body of a POST Request:

​{ 
​ "OperatingCompanyCode": "A”,
"CategoryId" : "TEST",
"Description": "Test Category"
"ParentCategory": "123"
​}

Notes:

Parent Category needs to be set if this is a child Category, this should match the Parent Category’s ID.

​Product Item Import

If you look at the /ProductItems Endpoint, you can find the list of ProductItems Imports your Workspace has setup. Visit our API Docs with details about the POST request for ProductItems.

​​Building on what was covered in the Quick Start section, within our Product Item table there are more fields you may want to consider importing:

Example Body of a POST Request:

{
"OperatingCompanyCode":"A",
"ProductItemId":"TESTITEM",
"VatCode":"S",
"CostPrice":789,
"ExtendedDescription":"Test Extended Description",
"Sku":"Test Sku",
"Obsolete":0
}

Notes:

VatCode needs to match the ID of a VAT Rate in the system.

Obsolete can be 1 or 0, 0 for Active Products, 1 for Discontinued / Dormant Products. If the product is active this can be skipped as the default is 0

CostPrice is as integer. By default the system treats prices as if they are two decimal places. In a later chapter we will talk about amending this, but by default it is set to two Decimal Places. For example, before importing a Cost Price you need to multiple it by 100 e.g. £12.34 should be imported as 1234.

​Sales Ledger Import

If you look at the /SalesLedgers Endpoint, you can find the list of SalesLedgers Imports your Workspace has setup. Visit our API Docs with details about the POST request for SalesLedgers.​

​Building on what was covered in the Quick Start section, within our Sales Ledger table there are more fields you may want to consider importing:

Example Body of a POST Request:

{
"OperatingCompanyCode":"A",
"SalesLedgerId":"TEST000123",
"TaxCode":"S",
"OnStop":0,
"Balance":1000,
"CreditLimit":100000,
"CurrencyCode":"GBP",
"VatRegistrationCode":"GB1234",
"InvoiceTo":"INV0000123",
"Closed":0,
"DisplayDescription":"ABC123"
}

​Notes:

TaxCode should match the ID of an imported VAT Rate.

CurrencyCode should match the ID of an imported Currency.

If your ERP system has GUIDs for the Primary Key of a ledger, we recommend this being stored in SledgerId and the friendly code being stored here e.g. ABC123 or Customer Name e.g. Test Sales Ledger.

​Order Creation

​Now we are importing more information from the ERP system, we can add additional fields to our queries. Obtaining more information from the Quote in the CRM such as VAT Codes, VAT Amounts, and Currency Codes.

​Obtaining Quote Header Details

If you look at the /Quotes Endpoint, you can find the list of Quotes Imports your Workspace has setup. Visit our API Docs with details about the POST request for Quotes.​

​Below is an example GET Request that can be used to retrieve details of from the Quote Header:

​/Quotes?$select=CurrencyCode,Orderedby,SalesLedgerOrderPlacedOnId,Description,DeliveryName,DeliveryAddressLine1,DeliveryAddressLine2,DeliveryAddressLine3,DeliveryAddressLine4,DeliveryAddressLine5,DeliveryPostcode,DeliveryCountry,DeliveryNotes1,DeliveryNotes2,CustomerOrderReference,DecimalForeignNetValue,DecimalForeignGrossValue,DecimalForeignTaxValue&$filter=StatusFlag ne 'D' and QuoteId eq ???? 

​​Notes:

???? is the Quote ID

Below is a list defining each of the terms used in the GET Request:

​CurrencyCode – The Currency the Quote was made in

​Orderedby – The usercode of the user who confirmed the order

​SalesLedgerOrderPlacedOnId – The Sales Ledger ID the order was placed on

​Description – The description of the quote entered by the user (this could be blank)

​DeliveryName – Delivery Name

​DeliveryAddressLine1 – Delivery Address Line 1

​DeliveryAddressLine2 – Delivery Address Line 2

​DeliveryAddressLine3 – Delivery Address Line 3

DeliveryAddressLine4 – Delivery Address Line 4

​DeliveryAddressLine5 – Delivery Address Line 5

​DeliveryPostcode – Delivery Postcode

​DeliveryCountry – Delivery Country

​DeliveryNotes1 – Delivery Notes Line 1

​DeliveryNotes2 – Delivery Notes Line 2

​CustomerOrderReference – Customer PO Reference

​DecimalForeignNetValue – Total Net Order Value

​DecimalForeignGrossValue – Total Gross Order Value

​DecimalForeignTaxValue – Total Tax Value for the Order

We believe this GET retrieves a lot of the information you may require when creating an order in your ERP system. If you require further information, please use the docs to find the field names and add them as required.

​Obtaining Quote Line Details

If you look at the /QuoteLines Endpoint, you can find the list of QuoteLine Imports your Workspace has setup. Visit our API Docs with details about the POST request for QuoteLines.

​Below is an example GET Request that can be used to retrieve details of the lines on the Quote:

​/QuoteLines?$select=DecimalForeignDiscountPrice,DecimalForeignNetValue,DecimalForeignPrice,DecimalGrossValue,DecimalTaxValue,DecimalQuantity,DecimalDiscountPerUnit,DecimalDiscountNetValue,DecimalDiscountPercentage,Description,ProductItemId,Quote,Sequence,TaxCode&$filter=StatusFlag ne 'D' and Quote/QuoteId eq ????&$orderby=Sequence asc 

​​Notes:

???? is the Quote ID

Below is a list defining each of the terms used in the GET Request:

  • ​DecimalForeignPrice – This is the price of the item before any line discount has been applied

  • ​DecimalForeignDiscountPrice – This is the price of the item after the line discount has been applied

  • ​DecimalDiscountPerUnit – This is the Discount Amount Per Item

  • ​DecimalDiscountNetValue – This is the Discount Amount For the Line

  • ​DecimalDiscountPercentage – This is the Discount Percentage Applied to the Line

  • ​DecimalForeignNetValue – This is the Net Total Line Value

  • ​DecimalGrossValue – This is the Gross Total Line Value

  • ​DecimalTaxValue – This is the Total Tax for the Line

  • ​DecimalQuantity – This is the Quantity for the Line

  • ​ProductItemId – This is the Product Code for the Line

  • ​Description – This is the Product Description on the Line

  • ​TaxCode – The tax code applied to the Line

Further Areas

We would also recommend integrating with the following areas of the CRM:

  • ​Sales Order Header Import

  • Sales Orders Import

  • Sales Invoices Import

  • Sales Credits

  • Sales Invoice Headers

Did this answer your question?