Perk performs a number of general checks on all invoices:
- checks if the invoice is a duplicate
- checks if the payment information matches the supplier’s default information
- checks if the tax rate is applicable at the date of the invoice
- checks if a unit of measurement is present when a quantity is specified
- checks if the PO supplier is the same as the invoice supplier
- checks if the PO currency is the same as the invoice currency
In addition, Perk can check other invoice attributes such as supplier and customer tax IDs, reverse charge reference, customer name, and supplier and customer addresses.
You can view the checks that have been performed on the invoice (and those not performed or not applicable) in the Invoice checks tab.
Note: Depending on your company’s settings, you may or may not be able to dismiss notifications according to the check type and your role.
Invoice data extracted by Perk‘s AI is used when performing invoice requirement checks:
- Tax IDs: Supplier tax ID, customer tax ID
- Addresses: Supplier addresses, customer addresses, shipping address
- Names: Company name
- Reverse charge reference
EU-based requirements:
These checks are focused on complying with statutory requirements in EU countries. Some checks may also be applied in countries with similar invoice requirements.
Tip: Your company can choose to activate or deactivate these formal checks as required.
Duplicate invoices
Perk can recognize invoices that are potential duplicates and flag them with a notification banner. Invoice duplicate notifications can be dismissed depending on the invoice business rules.
Perk performs duplicate checks by comparing the values in these fields:
- Supplier
- Invoice number
- Invoice date
- Total amount (Gross total)
- Currency
In Settings > Supplier invoices > Business rules, Formal checks tab, you can choose which fields are used to determine whether an invoice is a duplicate of another or not depending on your specific requirements.
By default, all fields are used to determine an invoice duplicate. Perk checks that the values in the selected fields are identical. If the supplier and/or invoice number hasn’t been extracted by Perk’s AI, a duplicate check is still performed on the other available information. If the same field in two invoices is empty (i.e. no value), it is considered a match.
Tip: To prevent false positives, it is recommended that you activate at least the supplier and invoice number fields.
When a person uploads or submits the invoice, Perk checks the values in the duplicate check fields and compares them with other invoices in the same company and across different companies (legal entities) within the account. A notification is displayed on all duplicate invoices, i.e. the original invoice and any subsequent invoices that Perk detects as being a duplicate.
In addition, if a person updates any of the values of the fields included in the duplicate check manually and saves the invoice, or simply submits the New or Draft invoice, the duplicate check is re-triggered. If any potential duplicates are found, a notification is displayed. If you are a financial reviewer or an invoice processor, you can click on the notification to view the invoice that may be a duplicate.
When submitting the invoice, if any potential duplicates are found, employees are required to acknowledge the duplicate and determine the next step. You can choose to:
- Cancel: the invoice isn’t submitted.
- Submit and keep notification: the invoice is submitted for approval and review (depending on the company’s invoice workflow), but the duplicate notification is displayed to the approver and/or financial reviewer.
- Submit and dismiss notification: the invoice is submitted for approval and review (depending on the company’s invoice workflow), and the duplicate notification is removed. The action is logged in the invoice history.
Payment information (IBAN)
Perk can detect and extract IBANs from invoices and check the information against the information provided in the supplier master data.
If an IBAN is found in the invoice, it is extracted and displayed in the Payment account. If there is more than one IBAN, the numbers are displayed in the Payment account dropdown list so you can select the correct one:
- IBAN numbers extracted from the invoice are highlighted as AI-extracted IBAN
- IBAN data taken from the supplier‘s master data is highlighted as Known vendor payment account.
If the IBAN in the supplier invoice doesn’t match the IBAN in the supplier master data, a mismatch notification is displayed.
Note: Blank spaces are ignored during IBAN validation.
Tax rate validity
Perk can flag invoices where the service date or invoice date doesn’t match the validity period of the detected tax rate (Tax rate: Issue date not within validity period of selected tax rate).
When you upload an invoice, Perk AI automatically detects the tax rate stated in the invoice line items and links it to the tax rate in Perk (if present). Alternatively, invoice processors and financial reviewers can select the applicable tax rate for the line item.
If the tax rate selected contains a validity period, Perk checks that the invoice’s service dates or invoice date falls within that period. If the invoice or service date is before the tax start date (Valid from) or after the tax end date (Valid to), it displays a warning.
The notification is displayed at invoice line item level, specifying the selected tax rate that doesn’t apply.
Units of measurement in PO invoices
Perk can flag line items where the unit of measurement is missing.
When this check is activated, the unit of measurement column is mandatory and automatically displayed. If the quantity is greater than zero, Perk checks that line items matched with a PO line item contain a unit of measurement. If not, it displays a Unit missing error message for the line item.
Non-PO line items or line items that haven’t been matched yet are not considered by this check.
By default, this check is inactive and must be activated in the Invoice business rules. Since it triggers an error notification, it can’t be dismissed.
Invoice-PO supplier mismatch
Perk can flag any invoices where the supplier on the invoice doesn’t match the supplier of the associated PO.
In this case, Perk compares the supplier received in the PO with the supplier selected on the invoice and displays a warning where the two don’t match. Perk uses the supplier ID to determine whether the PO supplier matches the invoice supplier.
Where multiple POs are selected on the invoice, Perk checks to see whether any of the PO suppliers don’t match the invoice supplier.
Currency for PO invoices
Whenever you match an invoice with a purchase order or multiple POs, Perk checks that the invoice currency matches the PO currency. If the currencies are different, Perk flags this with an error.
Invoice due date
At times, suppliers include a specific date (due date) on which the customer must provide invoice payment. Depending on the specific agreement between the supplier and the customer, penalties may be applied for late payment. Perk AI extracts and track this due date as part of the invoice header.
You can activate the Invoice due date on/after invoice date check to ensure that the due date isn’t earlier than the invoice date to prevent incorrect or erroneous financial bookings or export issues. By default, this check is active and dismissible.
PO due date
Yokoy extracts the due date from the invoice or calculates it based on the supplier’s payment terms. However, in many cases, a different payment term is agreed upon between customers and the supplier for a specific PO. This payment term is included in the PO header data. If the supplier issues an invoice for that PO with a different payment term than agreed, invoice processors are notified with a warning.
By default, this check is inactive. When this check is activated, Yokoy checks the invoice due date against the due date that is calculated for the PO based on the payment terms. If the check is disabled, invoices are checked against the supplier’s standard payment terms.
If no invoice date is provided, then the check isn’t performed. If the submitter or invoice processor enters the invoice date, then Yokoy checks against the calculated PO due date.
Address validation
Addresses are used to determine the type of transaction covered by an invoice. Perk uses the Google Address Validation API to ensure addresses are correct, complete, and well-formatted.
Invoice transaction types
The transaction type is used to determine tax ID checks and the reverse charge check. Perk considers the country as being the applicable jurisdiction for tax purposes.
To determine the transaction type, Perk validates shipping and customer addresses:
- Domestic transaction: a transaction with the place of supply located in the same jurisdiction as the supplier address. The place of supply is determined by invoice shipping address (if such exists on the invoice) or the invoice customer address.
- Intra-EU transaction: a transaction with the place of supply located in a different jurisdiction compared to the supplier address. Both the place of supply and the supplier address are in EU countries. The place of supply is determined by the invoice shipping address (if such exists on the invoice) or the invoice customer address.
- Import transaction: a transaction with the place of supply located in a different jurisdiction compared to the supplier address. The place of supply is in a EU country whereas the supplier address is within a non-EU country, or vice versa. The place of supply is determined by the invoice shipping address (if such exists on the invoice) or the invoice customer address.
|
Transaction type |
Address validation |
|
Domestic transaction |
Shipping/Supplier country = Customer country |
|
Intra-EU transaction |
Shipping/Supplier country ≠ Customer country, |
|
Import transaction |
Shipping/Supplier country ≠ Customer country, |
Validating full addresses
Addresses must be correct, complete, and well-formatted in order to determine the transaction type (and hence, tax ID and reverse charge checks).
Perk uses Google Address Validation API to verify that the address is a full address. Perk sends the AI-extracted address (supplier or customer) to the Google API. The Google API enriches the address information sent by Perk and returns the full address.
Perk stores the full address information returned by Google for 90 days, to avoid calling the Google API repeatedly for the same address.
For validation purposes, Perk uses these Google Address Validation attributes for the shipping address (if provided on the invoice), customer address, and supplier address:
- Country code (
regionCode) - Place ID (
placeId) - Single-line formatted address string (
formattedAddress)
Caution: Google Address Validation API only works for addresses in these countries.
If the Google API is not reachable for some technical reason or it couldn’t return values, a fallback option is used to determine the respective supplier and/or customer country code:
-
Supplier country code: Perk determines the country code as follows:
- AI-extracted invoice country value
- Supplier master country code of the supplier selected in the invoice header
- Customer country code: only the company’s country code as configured in the legal entity (Settings > Account > Companies, Settings)
Note: Address checks apply to all types of transactions.
Checking supplier addresses
You can set up Perk to check that the supplier address found on the invoice matches that specified in the supplier master data. Both the extracted address from the invoice and the supplier master address of the supplier selected in the invoice header are enriched by the Google API.
Depending on whether a supplier address is present in the invoice and/or master data, Perk proceeds as follows:
-
Checks for supplier address on invoice:
- No supplier address is found on the invoice. In this case, a notification is triggered.
-
Checks for supplier master address (Invoices > Invoice processor > Suppliers):
- Supplier address on invoice but no supplier master address is found. A notification is triggered.
-
Supplier address is found on the invoice and supplier master address exists:
Perk compares the formatted address string and place ID for the invoice supplier address with the supplier master address. The data must match exactly; no partial matches are allowed when comparing addresses.- None of the data matches, then a notification is triggered.
- A match is found either on the formatted address string or on Place ID, then validation is successful. No notification is triggered in Perk.
Note: If you change the supplier in the invoice header, the supplier address check is re-triggered.
Checking customer addresses
You can set up Perk to validate the customer address found on the invoice against company master data; in particular, against the office locations provided in Settings > Account > Companies for the company where the invoice was uploaded. If multiple office locations are specified in the company settings, the invoice address must match at least one. Both the extracted address from the invoice and the office location (company address) are enriched by the Google API.
Depending on whether a customer address is present in the invoice and/or configuration, Perk proceeds as follows:
-
Checks for customer address on invoice:
- No customer address is found on the invoice. In this case, a notification is triggered.
-
Checks for customer address (Admin > Company)
- No customer address: In this case, a notification is triggered.
-
Customer address found on the invoice and customer master address. Perk compares the formatted address string and place ID for the invoice customer address with the office location. The data must match exactly; no partial matches are allowed when comparing addresses.
- None of the data matches, then a notification is triggered.
- Customer address on invoice matches customer address for another legal entity: if no address is found in the company settings, Perk checks to determine if a matching office location exists in another company in the account. If a match is found, a notification will be displayed to the person.
- A match is found either on the formatted address string or on Place ID, then validation is successful. No notification is triggered in Perk.
Note: If an invoice is moved to another company, then all invoice requirement checks are re-triggered based on the configuration of that company.
Tax ID checks
A tax ID is a unique identification number assigned to businesses by the government for tax purposes. A tax ID is used when companies report tax information to the tax authorities. Depending on the country, tax IDs may have different names and formats such as VAT ID, VAT registration number, BTW Nr., etc.
In Perk, you can check:
Note: When checking tax IDs, Perk performs an exact match check, but ignores any special characters that the tax ID may contain.
Supplier tax IDs
You can import multiple tax IDs as part of supplier master data. Supplier tax IDs are displayed under Invoices > Invoice processor > Suppliers in the Supplier tax ID section of the Supplier details tab in the supplier record.
Company tax ID
You can set up one company tax ID in Settings > Account > Companies for each legal entity.
Checking supplier tax IDs
You can set up several checks for supplier tax ID depending on the transaction type:
In addition, you can set up an additional tax ID check for domestic (for EU customers) and intra-EU transactions to validate whether the tax ID is a valid VIES number.
Note: If the supplier is changed in the invoice header, the supplier Tax ID checks are re-triggered.
Supplier tax ID for domestic transactions
In the case of domestic transactions, you can set up Perk to compare the supplier tax ID extracted from an invoice against the supplier tax ID(s) provided in the supplier master data.
Tax ID strings should match fully. No partial matches are allowed. If there are blank spaces in any of the compared values, they are ignored.
Perk proceeds as follows:
- Check whether a supplier tax ID exists on the invoice:
- No supplier tax ID found on the invoice. In this case, a notification is triggered.
-
Supplier tax ID exists on the invoice: Perk compares the extracted value with the master data tax ID value(s) of the supplier selected in the invoice header:
- Supplier tax ID is found on the invoice but no tax ID in the supplier master data. In this case, a tax ID mismatch notification is triggered.
- Supplier tax ID is found on the invoice, but it doesn’t match any tax ID in the supplier master data. In this case, a Tax ID mismatch notification is triggered.
- Supplier tax ID is found on the invoice and it matches a Tax ID in the supplier master data. In this case, no notification is displayed.
Supplier tax ID for intra-EU transactions
For an intra-EU transactions, Perk compares the supplier tax ID extracted from an invoice to the supplier tax ID(s) provided in the supplier master data. The same validations are performed as for Supplier tax ID for domestic transactions.
Supplier tax ID for import transactions
For import transaction, Perk compares the supplier tax ID extracted from an invoice to the supplier tax ID(s) provided in the supplier master data. The same validations are performed as for Supplier tax ID for domestic transactions.
Checking VIES validity
You can set up Perk to check the Supplier Tax ID extracted from an invoice against the VAT Information Exchange System of the European Commission. This check ensures that the suppliers are taxable persons and hold a valid VAT identification number.
The check is performed by connecting to an external VIES API provided by the European Commission. The VIES service only stores EU VAT identification numbers. If the supplier address is outside of EU, then no validation is performed and no notification is triggered.
In this case, Perk takes the supplier tax ID found on an invoice and checks its validity by sending it to the VIES system.
- If it is validated successfully in VIES, no notification is triggered in Perk.
- If it has not been validated successfully in VIES, a notification is triggered in Perk:
If VIES API can’t be reached for some technical reason and the VIES validation can‘t be performed, then a “VIES service unavailable” notification is triggered.
Checking customer tax IDs
You can set up several checks for customer tax ID depending on the transaction type:
Customer tax ID for domestic transactions
In the case of domestic transaction, Perk can compare the customer tax ID extracted from an invoice to the company tax IDs provided in the Company master data.
Tax ID strings should match fully. No partial matches are allowed. If there are any blank spaces in any of the compared values, they are ignored.
Perk proceeds to check for customer Tax ID on the invoice:
-
No customer tax ID found on the invoice. In this case, a notification is triggered.
Missing screenshot -
Customer tax ID found on the invoice. Perk compares the extracted value to the tax ID value(s) of the legal entity where the invoice has been uploaded.
- Customer tax ID found on the invoice but doesn’t match any Tax ID in the company master data. In this case, a tax ID mismatch notification is triggered.
- Customer tax ID found on the invoice but no Tax ID in the company master data. In this case, a tax ID mismatch notification is triggered.
- Customer tax ID found on the invoice and matches a tax ID in the company master data. In this case no notification is displayed.
Customer tax ID for intra-EU transactions
For intra-EU transactions, Perk compares the customer tax ID extracted from an invoice to the company tax ID(s) provided in the company settings.
The same validations are performed as for Customer tax ID for domestic transactions.
Customer tax ID for import transactions
For import transactions, Perk compares the customer tax ID extracted from an invoice to the company tax ID(s) provided in the company settings.
The same validations are performed as for Customer tax ID for domestic transactions.
Name check
Perk performs a check on the company name. Perk can validate whether the name that appears on the invoice matches the company‘s name or flag any invoices where the invoice doesn’t include the legal entity name.
Perk displays a warning for those invoices where:
- the company name doesn’t match the legal entity name
- no company name appears
You can use this check to flag invoices that may belong to other companies in your account, so you can move them to the corresponding company.
Reverse charge references
For intra-EU invoices, Perk can validate the reverse charge reference. In the case of domestic or import transactions, no action is performed. The reverse charge references list is maintained by the AI team. This list can be enhanced by AI team on request.
Perk first determines whether it’s an intra-EU invoice by address validation. If so, Perk checks if a reverse charge reference is found on the invoice:
- Intra-EU transaction and reverse charge reference found: an information notification is triggered.
- Intra-EU transaction and no reverse charge reference found: a warning notification is triggered.
Factual checks for 2-way and 3-way matching
If you validate purchase order and goods receipt against invoice data, Perk can perform several factual checks to compare key data in the invoice against the original purchase order and goods receipt data.
More specifically, you can perform these checks:
- Amount mismatch (2-way matching): PO line item amount doesn’t match invoice line item amount.
- Quantity mismatch (2-way matching): PO line item quantity doesn’t match invoice line item quantity.
- Amount mismatch (3-way matching): PO and GR line item amounts doesn’t match invoice line item amount.
- Missing goods receipt (3-way matching): No goods receipt data available for the PO invoice.
- Missing goods have been received (3-way matching): GR line item data available and matches invoice line item amount.
When Perk detects a PO invoice that does not match either the amount or quantity, it displays a warning notification. These notifications are displayed at line item level.
Since these checks indicate unsuccessful 2-way or 3-way matching, they are not considered formal checks and therefore, are not included in the Invoice checks tab.
You can turn on factual checks in Settings > Supplier invoices > Invoice business rules, Factual checks tab. All checks are active by default when you enable PO invoices in Perk.
Given that the amount mismatch, quantity mismatch, and missing goods receipt notifications flag any issues that prevent successful 2-way or 3-way matching, they cannot be dismissed or deactivated by invoice processors. However, the missing goods have been received notification is designed to highlight a change in 3-way matching status. In other words, where a PO invoice couldn’t previously be matched with its PO and GR line items due to amount mismatch, Perk indicates that the GR data has been updated and automatic matching was performed. This notification can be disabled, if desired.
Viewing checks performed on the invoice
You can view the checks performed on an invoice in the Invoice checks tab. Perk performs invoice checks when the invoice is saved. The Invoice checks tab displays all active checks that your Perk admin has enabled for the company. Checks that aren’t active for the company are ignored.
Perk groups the information into checks that Perk hasn’t performed and those performed. If the check doesn’t apply to the specific invoice, it is displayed with the status Not applicable. If the check couldn’t be performed for whatever reason, it is indicated as Not performed, so you can follow up on this criteria and perform a visual check.
For the checks performed on the invoice, Perk displays all active checks and their status. If the invoice meets the criteria, the check is indicated as Passed.
If the invoice fails to meet the criteria for one or more reasons, Perk displays the number of notifications triggered for that check. The notifications are displayed in the invoice header or the line item as appropriate.
If you dismiss a notification for a specific check, the check is still flagged in the Invoice checks tab since the invoice doesn’t meet the check criteria. You can view dismissed notifications in the Invoice history tab.