Introduction
In most European Union countries, VAT exemptions are provided for services and fuel related to commercial aircraft handling. The definition of "commercial aircraft handling" is typically determined by the presence of a valid Air Operator's Certificate (AOC), which is issued by a government body.
FBO One uses the AOC VAT Calculator to determine VAT eligibility based on AOC validation. This calculator evaluates each service in an order and determines whether VAT should be charged or exempted.
Calculator Logic Overview
The AOC VAT Calculator follows this decision sequence for each service:
- Check the debtor's "Charge VAT" setting
- Check if the product is an airside service
- Check if the aircraft is excluded from AOC
- Check for private flight type override (if configured)
- Validate the AOC of the debtor or operator
- Apply EC Reversed VAT logic (if applicable)
Step-by-Step Logic
Step 1: Debtor's "Charge VAT" Setting
The debtor's Charge VAT setting determines how VAT is calculated:
| Setting | Behavior |
|---|---|
| Never | VAT is never charged. Calculator stops here. |
| Always take from product | VAT is charged per product settings. No AOC check. |
| Use AOC VAT calculator | Proceeds to AOC validation (steps below). |
| Exempt for airside products | Airside products exempt; landside charged per product. |
| Validate AOC from operator | Uses the operator's AOC instead of the debtor's. |
Step 2: Is the Product an Airside Service?
The product's Is Airside Product setting is checked:
- Yes: AOC-based exemption can apply. Continue to next step.
- No: This is a landside service (e.g., crew hotel transport). VAT is charged per product settings.
Step 3: Is the Aircraft Excluded from AOC?
The aircraft registration's Exclude from AOC setting is checked:
- Yes: VAT is charged per product settings. The aircraft is not covered by the operator's AOC.
- No: Continue to next step.
Step 4: Private Flight Type Override
If configured, the calculator checks whether the flight type indicates a "private" flight:
Calculator Settings:
| Setting | Description |
|---|---|
| ForceChargeVatOnAirsideServicesForFlightTypes | Name of a Flight Type Price Category (e.g., "Private for VAT") |
| AocVatFlightTypeCheck | Which flight to check: ArrivalOnly, DepartureOnly, or Both |
Check Logic by Setting:
| AocVatFlightTypeCheck | Logic |
|---|---|
| ArrivalOnly | Checks only the arrival flight type |
| DepartureOnly | Checks only the departure flight type |
| Both | AOC exempt applies only if neither arrival nor departure matches a private flight type |
If the flight is private:
- VAT is charged per product settings
- Info message: "The flight is private. AOC exempt does not apply for [contact name]"
If not configured or flight is not private: Continue to AOC validation.
Step 5: AOC Validation
Which Contact Is Checked?
| Debtor's Setting | Contact Checked |
|---|---|
| "Use AOC VAT calculator" | Debtor |
| "Validate AOC from operator" | Operator |
AOC Validity Criteria
An AOC is valid when ALL conditions are met:
- AOC Number is not blank
- AOC Expiration Date is set
- Expiration Date >= VAT Reference Date (order's transaction date)
Validation Outcomes
| Scenario | Result | Message |
|---|---|---|
| Valid AOC | Airside Exempt (0% VAT) | Info: "[Contact] has valid AOC" |
| AOC number blank, Has AOC = Unknown | Charge VAT | Warning: "AOC of [contact] is unknown. VAT will be charged. Enter a valid AOC or select that this operator has no AOC." |
| Has AOC = Yes, no expiration date | Charge VAT | Warning: "AOC invalid. [contact] has no AOC expiration date. VAT will be charged." |
| Has AOC = Yes, date expired | Charge VAT | Warning: "[contact] has an expired AOC. VAT will be charged. Please ask the operator or captain for an updated AOC." |
| Has AOC = No | Charge VAT | (No warning) |
Step 6: EC Reversed VAT
After determining the base result, EC Reversed VAT is applied if:
- Administration has EC Reversed VAT enabled
- Debtor has a valid VAT Number
- Debtor's country differs from administration's country
- Product is configured for EC Reversed VAT
Special rule for private flights:
- EU business customers flying private: EC Reversed VAT still applies
- Non-EU business customers flying private: EC Reversed VAT does not apply
Decision Flowchart
Configuration
VAT Rule Group Calculator Settings
Configure in the VAT Rule Group's Calculator Settings field:
| Setting | Values | Description |
|---|---|---|
| ForceChargeVatOnAirsideServicesForFlightTypes | Flight Type Price Category name | Identifies which flight types are "private" |
| AocVatFlightTypeCheck | ArrivalOnly, DepartureOnly, Both | Which flight(s) to check |
Administration VAT Codes
| Setting | Purpose |
|---|---|
| VAT code for air-side service VAT exemptions | 0% code used when AOC exemption applies |
| EC reversed VAT code for services | Used for EU business customers |
| EC reversed VAT code for goods | Used for EU business customers |
| VAT code for non-EU business exemption | Used for non-EU business customers |
Contact Settings
Debtor/Operator Fields
| Field | Description |
|---|---|
| Charge VAT | Controls how VAT is calculated for this debtor |
| AOC Number | Air Operator's Certificate number |
| AOC Expiration Date | When the AOC expires |
| Has AOC | Yes/No/Unknown - explicit AOC status |
| Country for VAT purposes | Used for EC Reversed VAT |
| VAT Number | Required for EC Reversed VAT |
Product Fields
| Field | Description |
|---|---|
| Is Airside Product | Must be checked for AOC exemption to apply |
| VAT Code | Default VAT code when exemption doesn't apply |
Aircraft Registration Fields
| Field | Description |
|---|---|
| Exclude from AOC | Indicates aircraft is not on operator's AOC |
Order Screen Display
The VAT & AOC section shows:
| Field | Description |
|---|---|
| Pay VAT | Current result (e.g., "Landside only", "Yes", "Reversed in EC") |
| AOC | AOC number from debtor or operator |
| Valid until | AOC expiration date |
| Alert | Any warnings about AOC status |
Important Notes
- Reference Date: AOC validity is checked against the order's transaction date, not the current date.
- Broker Support: "Validate AOC from operator" allows brokers to provide credit while the actual operator's AOC determines VAT exemption.
- Warning Messages: Warnings appear in the order's VAT & AOC section and on workflow transitions to alert users about AOC issues.
- Flight Type Price Categories: The private flight type group must be configured as a Flight Type Price Category containing the relevant flight types.
- Both Setting Logic: When AocVatFlightTypeCheck=Both, AOC exemption applies only if neither arrival nor departure matches a private flight type.
Comments
0 comments
Please sign in to leave a comment.