1.Introduction

This is the manual for the integration between CCV Shop and Reeleezee.

The integration ensures that orders or invoices from the CCV Shop webshop are processed to receipts or invoices in Reeleezee. Because the orders or invoices enter the webshop owner's accounting system directly, it saves time on financial administration.

Please pay special attention to the following
  1. This integration is a financial integration. It is not a logistics integration. It is not suitable for updating customers in Reeleezee, printing packing slips, or synchronizing products/inventory.
  2. This integration does not replace the work of an accountant. It saves time because you no longer have to retype documents. The accountant is still needed for advice, expertise, and control.
  3. Tip: Other customers using this integration found the tips in the FAQ for CCV Shop and in the FAQ for Reeleezee.

Read more Introduction .... Read less Introduction ....

Install integration
You install this integration from the CCV Shop App Store. If you select the Accounting category, our apps will appear automatically. You can recognize us as a provider by the blue gear icon. If you click on the App, you will see a description and the Install App button. During activation, you will be automatically guided through the configuration screens.
The installation is complete when both connection dots are green, and the settings in the Configuration tab have been entered and saved.

Important: Once the integration is installed, always log in to the dashboard via https://uwkoppeling.webwinkelfacturen.nl, and not from the app store.

The trial period for the integration runs until the first of the following month in which the integration was requested.

If you want to install another integration, you can do so in the same way. Make sure you are logged out of the integration dashboard and preferably start the new installation in an incognito browser.

Cancel integration
If you want to terminate the integration, you can remove the app from the app store in your backend.

Are you switching to another accounting system and want to create a new integration? You can install the new app from the app store in your backend. Make sure you are logged out of the dashboard of the old integration and preferably start the new installation in an incognito browser.

Are you switching to another webshop system? Via our integrations page you can see whether you install it from the relevant app store, or by means of an installation link.

Has the installation been successful, but do you see in the dashboard of the integration the old license key still present when you click the dropdown arrow next to the key (even though that app/key has been deleted)? If so, please send us an email requesting that the old key be removed.

2.How the integration works

Please note: This integration is not suitable for OSS entries. See this explanation.

A order or invoice from the CCV Shop webshop is processed as Reeleezee receipts or invoices. The receipt or invoice receives the status open in Reeleezee.

The integration works with webhooks from the CCV Shop webshop. Processing can be done in two ways, namely based on paid orders or invoices. The advantage of the option paid orders is that orders that are not paid do not enter the accounting system. With this option, however, credit notes are not included. With the option invoices all invoices are processed to Reeleezee, so both debit and credit invoices. You can set the preference for paid orders or invoices via the Configuration tab of the dashboard. See this FAQ for more information.

Read more How the integration works .... Read less How the integration works ....

Pre-check orders or invoices
At the start of processing an order, we perform a number of checks on the CCV Shop order or invoice:
  • It is checked whether the total of the CCV Shop order is equal to the sum of the amounts in the order lines plus the shipping cost amount.
  • If the order is an ICP order, the VAT number is checked.
  • It is checked whether a corresponding VAT code exists in Reeleezee for the VAT in each line.
  • It is checked whether the order or invoice has not already been processed.

Processing orders or invoices
Processing a CCV Shop order or invoice to Reeleezee takes place in two steps:
  1. It is checked if the customer already exists in Reeleezee. If not, the customer is created. Matching is based on the email address.
  2. The Reeleezee receipt or invoice is created and processed.

Post-check
After the order or invoice has been forwarded and a success message from Reeleezee has been received, the order or invoice is marked as handled. The CCV Shop order appears at the Reporting tab on the dashboard.

If Reeleezee returns an error while processing the order or invoice, the order or invoice appears in the Errors tab on the dashboard. Via the yellow button More info more information about the problem can be found. Via the red button Report problem can the order or invoice with all necessary information easily be submitted to us after you have tried to resolve the problem yourself. If the problem is solved, in some cases the orders or invoices can be processed again with the blue Process button.

Data
Information about the data that is processed can be found in the section Day-to-day: To Reeleezee later in the manual.

3.Required: Reeleezee authentication

To establish access, the integration requires a Reeleezee username and password. Do not enter the username and password you use to log in here. You can create a separate username within Reeleezee for this type of connection. You cannot log in with this username, but you can establish the connection. To create the username / password, go to Settings > General Settings > Web Services.

Read more Required Reeleezee ....
Read less Required Reeleezee ....

Webservice koppelingen binnen Reeleezee

Click on New in the upper right corner. You will now see a screen with two tabs, namely Name and Access. Enter a name for the web service connection and click Save, and then Access. Only now can you visit this tab.

Toegang geven aan de webservice koppeling

Enter a username and password. Confirm the password. Write down the new username and password, as you will need to use them for the integration. Click Save. Next, you need to set the Permissions for the integration correctly. The integration must be able to read from Reeleezee and add invoices / booking slips. The image below shows the best way to configure the permissions.

Instellen rechten webservice koppeling

4.Installation

After installation, check using this FAQ, whether the integration works.

You install the integration between CCV Shop and reeleezee via the CCV Shop App Store. First, the connection with your webshop is established and you authorize the integration to read data from your webshop. Explanation is provided in the Install integration section in chapter 1.
Read more Installation ....Read less Installation ....

Activating the integration now continues with:
1. Establishing the connection with Reeleezee. This authorizes the integration to write transactions to your Reeleezee administration and to read information.
2. Configuring additional data, such as the VAT settings.

Before the integration can be used, the terms and conditions must first be accepted. The terms and conditions are based on the general ICT Terms and Conditions (industry organization) and the general GDPR guidelines.

Reeleezee connection
You establish the connection with Reeleezee via the username and password you determined in the previous step. Click the red Connect button next to Reeleezee. You can now enter the username and password in the popup window.

Configure VAT rates and general ledger accounts
When configuring the VAT rates and general ledger accounts, a link is created between the VAT rates in webshop and the VAT codes and revenue accounts in Reeleezee. You can always make changes by clicking the blue 'Edit' button and selecting an option from the drop-down menus.

By default, all EU countries are shown in the list. You only need to configure the countries you sell to, and - if applicable - ICP and International.
The integration shows the standard VAT rates for Europe. You can adjust the VAT percentage with which you sell - left column. For example: By default, sales to Germany are set to 21%, but if you sell in the webshop with 19%, you can adjust that in the left column. Intra-Community (ICP) and international deliveries
The Intra-Community supplies / ICP option is intended for business-to-business deliveries within the EU. These sales are invoiced with 0% VAT. A VAT number from the customer is required. The International option applies to deliveries outside the EU. For these sales, the integration expects 0% VAT; otherwise, the sales cannot be processed. Separate VAT codes and general ledger accounts can be configured for both ICP and international deliveries.

Once the VAT settings have been configured and saved, you will always see the selected VAT rates. If you want to start over, you can use the grey 'Remove VAT settings' button. Your current settings will then be deleted and you can begin again.

Configure payment methods
You can create a link here between the payment methods in the webshop and a fixed debtor in your Reeleezee administration. Orders or invoices with a payment method from the list will then always be posted to this debtor. In that case, no new debtors will be created.
Note: It is not possible to set fixed debtors for ICP orders or invoices. For an ICP order or invoice, a valid VAT number must be transmitted. Therefore, a debtor will always be created in Reeleezee for an ICP order or invoice.

Is the debtor list empty? In this faq we explain how to solve that.

5.Day-to-day: From CCV Shop

Processing schedule: The integration works with webhooks. The integration receives a message as soon as an order is paid or changes status. Depending on the settings for processing the order, the order will be retrieved and processed. If you have chosen to process CCV Shop invoices, the integration receives a message as soon as an invoice is created in CCV Shop. Invoices are always processed immediately, regardless of the status.

Once an order or invoice has been processed, it cannot be processed again. An order or invoice that is modified in the webshop after it has been processed will not be adjusted in Reeleezee.


Field-level specification orders
Specification CCV Shop order. +-
Below is an elaboration at field level when retrieving orders. The general values in the order and the order rules are discussed, the shipping costs and the debtor details.
Name field Values from CCV Shop order
Order-identifier [id]
Order number and reference [ordernumber_full]
Order and booking date [create_date]
ICP indication [is_intra_community_order]
International indication An order is an international order if:
  • The VAT in the order is 0. The VAT in the order is in field [total_tax].
  • It is not an ICP order. The field [is_intra_community_order] must therefore be empty.
  • The delivery country is not equal to the home country of the webshop.
Valuta [currency]
Payment status [paid]
Payment method The payment method is determined as follows based on the field [paymethod]:
  • If the payment method [paymethod] appears in the credentials settings - and is therefore configured on the dashboard https://uwkoppeling.webwinkelfacturen.nl, Configuration tab, then that payment method is used. When checking if the payment method exists, a so-called cleanUp action is performed. Hyphens and capital letters are ignored.
  • If the payment method [paymethod] is not found and the name contains the word transfer, bank, invoice or rekening, the payment method becomes banktransfer.
  • If the name contains the word ideal, the payment method becomes ideal.
  • If the name contains the word paypal, the payment method becomes paypal.
  • If the name contains the word afterpay, the payment method becomes afterpay.
  • If the name contains the words mister and cash, the payment method becomes mistercash.
  • If the name contains the words credit and card, maestro, visa or mastercard then the payment method becomes credit card.
  • In all other cases, the payment method becomes default.
Paymentmethod-id [paymethod_id]
Total amounts incl or excl VAT The amounts in the order can be incl. or excl. VAT. This is determined by the field [taxes_included]. This value is important for determining the Total incl and the Total excl, see below.
Total incl The amount incl. VAT of the order is:
  • At Total amounts incl. - the amount in field [total_price]
  • At Total amounts excl. - the amount in field [total_price] plus the amount in field [total_tax]
Total excl The amount excl. VAT of the order is:
  • At Total amounts incl. - the amount in field [total_price] - [total_tax]
  • At Total amounts excl. - the amount in field [total_price]
Total VAT [total_tax]
Total discounts incl or excl VAT The amounts in the order can be incl. or excl. VAT. This is determined by the field [order_row_taxes_included]
Total discounts incl. The amounts are calculated depending on the field [order_row_taxes_included]. This value is important for determining Total discounts incl. and the Total discounts excl., see below.
  • At Total discount incl. - the sum of the amounts in [discounts]
  • At Total discount excl. - the sum of the amounts in [discounts] plus the VAT on the discounts. The VAT is calculated based on the VAT in the order lines. Different VAT percentages on the order lines are therefore taken into account.
Total discounts excl. The amounts are calculated depending on the field [order_row_taxes_included]:
  • At Total discount excl. - the sum of the amounts in [discounts]
  • At Total discount incl. - the sum of the amounts in [discounts] minus the VAT on the discounts. The VAT is calculated based on the VAT in the order lines. Different VAT percentages on the order lines are therefore taken into account.
Specification CCV Shop order lines +-
Name field Values from CCV Shop order
VAT percentage [tax], if the amount < 1 is dan wordt het percentage vermenigvuldigd met 100
Name product [product_name]
Productcode If filled [sub_product_number], otherwise [product_number]
Amount [count]
Discount ([price_without_discount] - [selling_price]) * [count]
Amounts incl. or excl. VAT The amounts in the order lines can be incl. or excl. VAT. This is determined by the field [order_row_taxes_included]. This value is important for determining the unit prices incl. and the unit prices excl., see below
Unit price excl. VAT The unit price excl. VAT is:
  • For amounts excl. VAT - [selling_price]
  • For amounts incl. VAT - [selling_price] / (1 + the VAT percentage / 100)
Unit price incl. VAT The unit price incl. VAT is:
  • For amounts excl. VAT - [selling_price] * (1 + VAT percentage / 100)
  • For amounts incl. VAT and an international order - [selling_price] / (1 + the VAT percentage / 100).
  • For amounts incl. VAT and not an international order - [selling_price].
Line prices incl and excl discount These are calculated from the discount and the unit prices. The unit prices are multiplied by the quantity.
Accounts and VAT codes from Reeleezee These are determined based on the settings in the integration, the delivery country of the order and the VAT percentages. The type for order lines is turnover / revenue.
Specification CCV Shop shipping costs+-
Name field Values from CCV Shop order
Name Shipping costs
VAT percentage For ICP and international orders 0%, otherwise [shipping_tax_percentage]
Shipping costs incl. or excl. VAT The shipping costs are given incl. or excl. VAT. This is determined by the field [order_row_taxes_included]. This value is important for determining the shipping costs incl. and excl. VAT, see below
Shipping costs excl VAT Shipping costs excl. VAT are:
  • For amounts excl. VAT - [total_shipping]
  • For amounts incl. VAT - [total_shipping] / (1 + VAT percentage / 100)
Shipping costs incl VAT Shipping costs incl. VAT are:
  • For amounts excl. VAT - [total_shipping] * (1 + VAT percentage / 100)
  • For amounts incl. VAT and an international order - [total_shipping] * (1 + VAT percentage / 100).
  • For amounts incl. VAT and not an international order - [total_shipping].
Accounts and VAT codes from Reeleezee These are determined based on the settings in the integration, the delivery country of the order and the VAT percentages. The type for shipping costs is shipping / shipping costs.
Specification CCV Shop payment costs+-
Name field Values from CCV Shop order
Name Payment costs
VAT percentage For orders For ICP and international orders and a margin sale 0%, otherwise the highest percentage for the delivery country.
For invoices The VAT percentage on the shipping costs is used, because there is no VAT percentage on the payment costs.
For example, 21% may be used for the Netherlands, 19% for Germany, and 20% for France.
Payment costs incl and excl VAT Sum of the amounts in [paymethod_costs] and [extra_payment_option_price]. Just like for calculating the amounts in the order lines and for the shipping costs, the field [order_row_taxes_included] is used for the payment costs incl. and excl. VAT
Accounts and VAT codes from Reeleezee These are determined based on the settings in the integration, the delivery country of the order and the VAT percentages. The type for payment costs is payment / payment costs.
Specification CCV Shop surcharges +-
There are two types of surcharges retrieved from the order. The surcharge with field name [extra_costs] and the surcharge with field name [credit_point_discount]. This results in a maximum of 2 surcharge lines.
Name field Values from CCV Shop order
Name Extra [extra_costs_description] or Surcharge
VAT percentage For ICP and international orders 0%, in all other cases the highest VAT percentage in the order lines is used.
Surcharge amounts incl. and excl. VAT Amounts in [extra_costs] and [credit_point_discount]. Just like for calculating the amounts in the order lines and for the shipping costs, the field [order_row_taxes_included] used for the surcharges incl. and excl. VAT
Accounts and VAT codes from Reeleezee These are determined based on the settings in the integration, the delivery country of the order and the VAT percentages. The type for order lines is turnover / revenue.
Specification CCV Shop customer+-
Name field Values from CCV Shop order
First name [billingaddress][first_name]
Last name [billingaddress][last_name]
First name [billingaddress][first_name]
Company name [billingaddress][company]
Phone number [billingaddress][telephone]
Chamber of Commerce number [billingaddress][kvk]
Address line 1 [billingaddress][street]
Address line 2 [billingaddress][address_line_2]
House number [billingaddress][housenumber] [billingaddress][housenumber_suffix]
Zip code [billingaddress][zipcode]
City [billingaddress][city]
Country [billingaddress][country_code]
Shipping address Same as for the billing address, but now with [deliveryaddress] instead of [billingaddress]
VAT number [vatnumber] - this is checked for correctness
Emailaddress [email]


Field-level specification invoices
Specification CCV Shop invoice.+-
Below is an elaboration at field level for retrieving invoices. Please note, a credit invoice is also an invoice and will be retrieved in the same way as debit invoices.
Name field Values from CCV Shop order
Invoice-identifier [id]
Invoice number and reference [invoicenumber_full]
Order-identifier This is determined based on the URL in the field [order]
Invoice and entry date [create_date]
ICP indication [is_intra_community_order]
International indication An order is an international order if:
  • The VAT in the order is 0. The VAT in the order is in field [total_tax].
  • It is not an ICP order. The field [is_intra_community_order] must therefore be empty.
  • The delivery country is not equal to the home country of the webshop.
Valuta [currency]
Payment method The payment method is determined as follows based on the field [paymethod]:
  • If the payment method [paymethod] occurs in the credentials settings - and is thus configured on the dashboard https://uwkoppeling.webwinkelfacturen.nl, tab Configuration, then that payment method is used. When checking if the payment method exists, a so-called cleanUp action is performed. Hyphens and capital letters are ignored.
  • If the payment method [paymethod] is not found and the name contains the word transfer, back, invoice or rekening, the payment method becomes banktransfer.
  • If the name contains the word ideal, the payment method becomes ideal.
  • If the name contains the word paypal, the payment method becomes paypal.
  • If the name contains the word afterpay, the payment method becomes afterpay.
  • If the name contains the words mister and cash, the payment method becomes mistercash.
  • If the name contains the words credit and card, maestro, visa or mastercard, the payment method becomes creditcard.
  • In all other cases, the payment methods will be default.
Paymentmethod-id [paymethod_id]
Total amounts incl or excl VAT The amounts in the order can be incl. or excl. VAT. This is determined by the field [taxes_included]. This value is important for determining the Total incl and the Total excl, see below.
Total incl The amount incl. VAT of the order is:
  • At Total amounts incl. - the amount in field [total_price]
  • At Total amounts excl. - the amount in field [total_price] plus the amount in field [total_tax]
Total excl The amount excl. VAT of the order is:
  • At Total amounts incl. - the amount in field [total_price] - [total_tax]
  • At Total amounts excl. - the amount in field [total_price]
Total VAT [total_tax]
Total discounts incl or excl VAT The amounts in the order can be incl. or excl. VAT. This is determined by the field [order_row_taxes_included]
Specification CCV Shop invoice lines +-
Name field Values from CCV Shop order
VAT percentage [tax], if the amount < 1 is dan wordt het percentage vermenigvuldigd met 100
Name product [product_name]
Productcode If filled [sub_product_number], otherwise [product_number]
Amount [count]
Discount ([price_without_discount_with_attributes] - [price_without_discount_with_attributes]) * [count]
Amounts incl. or excl. VAT The amounts in the invoice lines can be incl. or excl. VAT. This is determined by the field [invoice_row_taxes_included]. This value is important for determining the unit prices incl. and the unit prices excl., see below
Unit price excl. VAT The unit price excl. VAT is:
  • For amounts excl. VAT - [price_with_attributes]
  • For amounts incl. VAT - [price_with_attributes] / (1 + the VAT percentage / 100)
Unit price incl. VAT The unit price incl. VAT is:
  • For amounts excl. VAT - [price_with_attributes] * (1 + VAT percentage / 100)
  • For amounts incl. VAT and an international order - [price_with_attributes] / (1 + the VAT percentage / 100).
  • For amounts incl. VAT and not an international order - [price_with_attributes].
Line prices incl and excl discount These are calculated from the discount and the unit prices. The unit prices are multiplied by the quantity.
The shipping costs are added as a separate invoice line The amounts are determined based on [total_shipping], [shipping_tax_percentage] and [invoice_row_taxes_included] as in other lines. This line is only added for an amount other than 0.
The payment costs are added as a separate invoice line The amounts are determined based on [paymethod_costs], [extra_payment_option_price] and [invoice_row_taxes_included] as in other lines. This line is only added for an amount other than 0.
The surcharges are added as separate lines to the invoice The amounts are determined based on [extra_costs], [credit_point_discount], [invoice_row_taxes_included] as in other lines. The amount is only added for an amount other than 0. This leads to a maximum of 2 extra lines.
Accounts and VAT codes from Reeleezee These are determined based on the settings in the integration, the delivery country of the invoice and the VAT percentages. The type for invoice lines is turnover / revenue, for the shipping costs line shipping / shipping costs and payment costs payment / payment costs.

6.Day-to-day: To Reeleezee

Create transactions
When using the integration for Reeleezee, the orders or invoices can be processed to Reeleezee invoices or booking receipts. Invoices is set as default. If you would prefer to see booking receipts in Reeleezee, please contact webcare@webwinkelfacturen.nl.

The order number is provided as a payment reference. In Reeleezee, the payment reference may only consist of digits. Other characters are removed from the payment reference.

The order number from the order or invoice is placed in the Header field of the invoice as the invoice number. Please note that within Reeleezee, only digits are allowed as invoice numbers. Other characters are removed by the integration. If the integration creates invoices in Reeleezee, the invoice numbers must be sequential. This means an invoice number must be higher than the last created invoice number. Invoice numbers may not be reused for either invoices or booking receipts.

Create debtors
When processing customer information, it is first checked whether the customer has been processed before. If so, this Reeleezee debtor is used as the debtor for the Reeleezee transaction. If the customer is not yet known, they are added to Reeleezee. Matching is based on email address.
Please note: The integration only creates debtors. The integration does not modify debtors.


Field-level specification Reeleezee

Field-level specification of the Reeleezee invoice. +-
Name Example Note
userName info@sponiza.nl The username specifically set up within Reeleezee for the integration
password 1239045 The password for the special Reeleezee username
Name BV Company Company name (max length 45 positions)
CreateDateTime 2023-03-17T12:31:21
SalesInvoice
ReferenceNumber default no value, on request the order number. Letters and other non-digits have been removed from it, as Reeleezee only accepts digits as reference
ContactPersonReference
CustomerReference
@attributes
Code WS_1678710279526
RecipientAddress
Street stationstraat 12 street
Zipcode 1000AA zipcode
City Amsterdam city
CountryCode NL Country code
DocumentDate 2023-03-10
BookDate 2023-03-17 Order date
IsVatIncludedInPrice true Prices incl. VAT: true if the prices in the webshop include VAT, otherwise false
Status open open if the order value is not equal to 0, otherwise tentative.
Header Order 2190320394 Order order number - the letters and other characters are present here. Note that for booking receipts the header is not visible.
PaymentReference 2190320394 Order number without letters and other non-digit characters.
DocumentOrigin receipt only filled when processing to booking receipts
Lines
Description 1x Week planner pink Description
Quantity 1 quantity
Unit ST Unit, this cannot be adjusted.
Price 14.9900 Unit price incl. VAT - if the prices in the webshop include VAT, otherwise line price excl. VAT.
VatCode H VAT code
AccountReference
Number 8000 Ledger account, as set on the dashboard.

7.Support

We believe it is important that you as online retailer have direct access to information about the integration whenever you want. That is why every customer has a personal dashboard.
Read more Support .... Read less Support ....

Persoonlijk

Explanation tabs dashboard

On the Dashboard >> Report you can see which orders or invoices from your CCV Shop webshop, and when, have been transferred to Reeleezee.

At Dashboard >> Errors you can see which orders or invoices have not been processed. Via the blue Process button you can (re)submit the order or invoice. Via the red Report problem button you can create a ticket with us.

At Dashboard >> Open the orders or invoices are listed that have not yet been processed because they do not yet have the correct status in the webshop. Every night jobs run to review the status again and still process the order or invoice.

At Dashboard >> Configuration the settings of your integration are listed. You can adjust the settings there.

At Dashboard >> Profile invoices are available for download. You can also specify an additional email address here for sending emails and stop the integration.

What if orders or invoices are missing in Reeleezee

If orders or invoices are missing in Reeleezee we recommend following the steps below:
  1. Log in to the dashboard: https://uwkoppeling.webwinkelfacturen.nl. The username and password are included in the registration email.
  2. Go to the Errors tab and check if order or invoice is there. You may need to adjust the search period if the order or invoice is from a previous month. If you find order or invoice in this overview:
    1. Check the error code and verify whether you can resolve it yourself.
    2. If yes resolve the issue and click the blue Process button to resubmit the order or invoice.
    3. If not use the red Report problem button to create a ticket with us.
    4. Note if there are multiple errors, please create only 1 or 2 tickets. We will automatically see the other issues.
  3. Go to the Report tab and see if order or invoice is listed there. If so, you'll often see an identifier for Reeleezee (in the purple section of the overview) that you can use to search for order or invoice.
  4. Go to the Open tab and check if order or invoice is there.
  5. If you cannot resolve the issue, you can always create a ticket via the green Ask us button.

You can send any other questions or comments to webcare@webwinkelfacturen.nl. For a quick response, please always include the license key and as much information as possible. If you encounter any problems during installation, please let us know where you're experiencing the issue. And if there's an error message, please include that as well. If you think orders or invoices is missing, please provide the number and date. This way, we can perform a more targeted search and tell you what's wrong.

We have an extensive FAQ-section on the website. Pay particular attention to these sections: https://faq.webwinkelfacturen.nl/category/6/ccv-shop.html and https://faq.webwinkelfacturen.nl/category/37/reeleezee.html.

Would you prefer us to perform the installation of the integration for you? That is possible. Send an email to webcare@webwinkelfacturen.nl with the request. We charge €39.50 excl. VAT for an installation. For installations we require access to the webshop and the accounting system.

We can perform migrations for orders or invoices that took place in the past. The request procedure and method are described in this faq. For migrations we charge €67.50 excl. VAT per 1000 orders or invoices.