D365 F&ODynamics 365 Finance & Operations · Azure North Europe

D365 F&OD365 Module Coverage

16 D365 modules configured for Norwegian aquaculture — with Fish Generation dimension, catch-weight items, and full SAF-T/MVA/EHF localization.

16
Modules In Scope
2
X++ Extensions
9
Virtual Entities
3
PA Write-Backs
0
ISV Dependencies
▼ scroll

Module Configuration Overview

mindmap root((D365 F&O\nNordHav)) Finance General Ledger Fish Generation Dimension SAF-T Norway IAS 41 Accruals Accounts Payable EHF Invoice IBAN/BBAN A-melding Accounts Receivable EHF Sales Invoice Cash Discount Cash & Bank Norwegian Banks BankID Fixed Assets Pen & Vessel Assets Farm License Budgeting Production Budget Site Budget SCM Inventory Catch-Weight Items Site/Warehouse per Pen Batch Tracking Production Control Smolt Production Routes Harvest Production Orders Procurement Feed RFQ & PO Supplier Certificates Asset Management Pens Vessels Equipment Maintenance Plans Work Orders Quality Catch Certificates Veterinary Inspection Supplier QC Warehouse Pick-Pack Harvest Transport Docs Transportation Slaughter Logistics Project Operations Capital Projects Facility CapEx License Acquisition Resource Management Team Allocation Billing & Revenue Grunnrenteskatt Calc

RFP Response Coverage by Category

All 441 RFP requirements answered with 100% coverage. Click any card to view the detailed requirement-by-requirement response.

Total: 441 Requirements
Std 221 (50%) Cfg 110 (25%) Dev 95 (22%) ISV 4 (1%)
Response Codes: Standard = Out-of-box D365 functionality · Configuration = D365 parameter / setup change · Developed = Power Platform / custom integration · Partner / ISV = Third-party solution

Per-Module Capability Tables

Inventory
Production
Asset Mgmt
Procurement
Finance & GL
Quality
Projects
⚡ Extensions
8
Capabilities
5
AQU Req. Direct
CW
Catch-Weight
Native
Config Type
CapabilityTypeReqDetail
Catch-Weight Items for Live FishNATIVEAQU-040InventTable.CWEnabled=Yes. CW unit = kg net weight, tracking unit = individual fish. Batch tracking per generation.
One Warehouse per Sea PenCONFIGAQU-010Each pen mapped to its own InventLocation. Enables pen-level inventory balance queries and biomass calc.
Fish Generation Batch TrackingX++ EXTAQU-041InventBatch.FishGeneration field injected via X++ extension on InventBatchEntity. Maps to nha_generation in Dataverse.
Inter-Site Transfer OrdersNATIVEAQU-042Standard Transfer Orders. AquaMonitor freshwater screen triggers Transfer Order creation via OData POST.
Inventory Counting JournalsNATIVEAQU-043Annual pen count-back supports regulatory biomass audit. Triggered from harvest close-out.
Feed Stock Inventory (Barge)CONFIGAQU-044Dedicated warehouse per AKVA feed barge. IoT consumption postings reduce stock in real time.
Chemical/Medication StockNATIVEAQU-045Controlled substance tracking with lot/batch dates. Expiry management. Links to treatment records.
Catch-Weight Inventory AdjustmentNATIVEAQU-046CW adjustment journals for mortality corrections and grading re-classification events.
8
Capabilities
7
AQU Req. Direct
BOM
Routes Used
Native
Config Type
CapabilityTypeReqDetail
Harvest Production OrdersNATIVEAQU-055Harvest BOM: Live fish IN → Whole round fish OUT. Production Order triggered by AQUA-FLOW-007 from BPF Stage 6.
Smolt Production (RT-SMOLT)CONFIGAQU-056Route: Incubation → Alevin → Fry (freshwater) → Smolt transfer. Degree-day gates between stages.
Grow-out Route (RT-HOG)CONFIGAQU-057Simplified grow-out route tracking seawater phase. Marks feed and treatment resource consumption.
X++ Withdrawal BlockX++ EXTAQU-058Extension on ProdUpdRelease.checkDocument(). Queries nha_withdrawal via Dataverse API. Throws err if active period.
Production BOM per GenerationCONFIGAQU-059Each generation (cohort) has its own BOM version. Enables per-cohort cost accumulation via Fish Generation dimension.
Resource Consumption (Feed/Chemical)NATIVEAQU-060Route card journals post feed and chemical costs to the production order WIP cost. Auto-dimension-injected.
Co-Product Output (processing grades)NATIVEAQU-061Filleting orders produce co-products (fillet, offcut, roe) using standard D365 co-product BOM lines.
Production Scheduling (CRP)NATIVEAQU-062Capacity requirements planning for slaughterhouse capacity slots. Integration with 3rd-party slaughterhouse via EDI.
8
Capabilities
6
AQU Req. Direct
WO
Work Orders
Native
Config Type
CapabilityTypeReqDetail
Sea Pen Asset RegisterCONFIGAQU-065Each pen is an EntAssetObject with volume, net type, installation date. Net replacement schedules trigger preventive WOs.
Vessel & Well-Boat RegisterCONFIGAQU-066Vessels registered as assets with maintenance cost centre. Harvest transport work orders link to vessels.
AKVA Feed Barge AssetCONFIGAQU-067Each AKVA iFeed barge its own asset with IoT maintenance alerts. Service work orders from sensor threshold breaches.
Preventive Maintenance PlansNATIVEAQU-068Calendar-based and counter-based maintenance schedules. Nets replaced per dive inspection output.
Treatment Work OrdersVE READAQU-069AquaMonitor treatment screen reads WO status via Virtual Entity (EntAssetWorkOrderEntity). Withdrawal tracker uses WO close date.
Spare Parts InventoryNATIVEAQU-070Pens, nets, mooring and electrical spare parts managed in D365 items. Consumed on WO line posting.
Farm License as Intangible AssetCONFIGAQU-071Aquaculture licenses registered as intangible assets. Straight-line depreciation. Grunnrenteskatt base asset register.
Asset KPI (OEE / Uptime)NATIVEAQU-072Asset KPI configurations for pen net uptime, vessel availability. Feeds into Power BI Asset KPI report.
9
Capabilities
6
AQU Req. Direct
EHF
Invoice Format
Native
Config Type
CapabilityTypeReqDetail
Feed Purchase RFQ & OrderNATIVEAQU-075Annual feed tender via D365 RFQ workflow. Feed item with supplier price list. PO visible in AquaMonitor feed screen via [VE].
Smolt & Egg ProcurementCONFIGAQU-076Smolt as inventory item with batch/lot number = generation ID. Supplier quality certificate required on PO line.
Chemical & Medication ProcurementNATIVEAQU-077Controlled substance PO requires vet approval attachment. Lot expiry enforced. Links to prescription on PO receipt.
Cleaner Fish ProcurementCONFIGAQU-078Wrasse/lumpsucker as live inventory items. Separate site/pen. CW-enabled. Procurement integrated with lice management approval.
EHF Electronic Invoicing (Inbound)NATIVEREQ-F-003D365 Electronic Reporting EHF format. Receives EHF invoices from Norwegian suppliers via Peppol access point.
3-Way Matching (PO/Receipt/Invoice)NATIVEREQ-F-004Invoice matching policy set to 3-way for all procurement categories above tolerance threshold.
Supplier Certificates (PdsMRC)NATIVEAQU-079Product compliance certificates (ASC, GlobalG.A.P, organic) tracked on supplier-item. Expiry alerts on PO creation.
Purchase Price Trade AgreementsNATIVEREQ-F-005Annual feed price agreements per supplier and feed type. Price tolerance warning on variance.
Vendor Bank Account (IBAN/BBAN)NATIVEREQ-F-006Norwegian bank account formats (BBAN 11-digit). Payment journal ISO 20022 pain.001 via DnB/Sparebank.
7
Capabilities
SAF-T
Norway Req
IAS 41
Biological
2 X++
Extensions
CapabilityTypeReqDetail
Fish Generation Financial DimensionX++ EXTAQU-020Custom D365 financial dimension "FishGeneration" auto-injected on all InventJournalTrans, ProdJournalBOM, and vendor invoices via X++ extension on LedgerDimensionFacade. Enables per-cohort P&L.
IAS 41 Biological Asset AccrualsCONFIGAQU-021Periodic journal reversals to accrue estimated biomass value change. Fair-value delta posted to P&L (IAS 41 requirement for IFRS reporters). Annual actuary input.
SAF-T Financial ExportNATIVEREQ-F-001Norwegian SAF-T (Standard Audit File — Tax) via D365 Electronic Reporting GER configuration. Annual and on-demand export. Validated by Skatteetaten schema.
MVA (Norwegian VAT)NATIVEREQ-F-002Norwegian tax codes configured: 25% (standard), 15% (food), 0% (export). Altinn MVA-melding submission via AQUA-FLOW-004.
Grunnrenteskatt (Resource Rent Tax)CONFIGAQU-022Spot price mechanism for ground rent calculation. License asset fair value feeding tax base. GL accounts configured per 2023 legislation (Havbruksskatt).
A-melding (Payroll Reporting)NATIVEREQ-H-001Monthly A-melding submissions to Altinn for all employees. Norwegian payroll localization in D365 HR module.
Multi-Company / IntercompanyGAPREQ-F-007Not applicable. Project decision: single legal entity (NordHav Aquaculture AS, NHA). All aquaculture, processing, and administrative operations consolidated in one entity. Intercompany automation not required.
5
Capabilities
3
AQU Req. Direct
COC
Catch Cert
Native
Config Type
CapabilityTypeReqDetail
Catch Certificates (EU export)NATIVEAQU-080PdsMRCItemCertification for EU Catch Certificate (EC 1005/2008). Generated on finished goods batch. Visible via [VE] in AquaMonitor harvest screen.
Veterinary Inspection CertificatesCONFIGAQU-081Quality order at slaughterhouse receipt with vet inspection test group. Passed/failed determines freeze/release of production output.
Supplier Quality Orders (Smolt, Feed)NATIVEAQU-082Quality orders triggered on smolt and feed receipt. Certificate of Analysis required. Block setting prevents consumption before QO pass.
Non-Conformance TrackingNATIVEAQU-083NCR tracking for disease outbreaks at supplier, medication defects, packaging failures. Linked to cost of quality analysis in PBI.
Traceability (Farm-to-Fork)NATIVEAQU-084End-to-end traceability: egg batch → generation → harvest PO → finished goods batch → sales order → customer delivery. Full recall chain in D365.
5
Capabilities
CapEx
Primary Use
GRR
Tax Assist
Native
Config Type
CapabilityTypeReqDetail
Facility CapEx ProjectsCONFIGREQ-P-001New pen installation, facility upgrades tracked as investment projects with WBS. Costs capitalised to Fixed Assets on completion.
License Acquisition ProjectsCONFIGREQ-P-002License auction costs tracked as intangible asset investment project. Costs capitalised to farm license asset at close.
Environmental Upgrade ProjectsCONFIGREQ-P-003Upgrade projects to meet green concession requirements tracked separately for subsidy reporting to Fiskeridirektoratet.
Grunnrenteskatt CapEx OffsetCONFIGAQU-022Project cost data feeds resource rent tax deduction model. CapEx investments offset against annual tax base calculation.
Team Time TrackingNATIVEREQ-P-004Project timesheets for engineering and biology staff. Resource cost allocation to site CapEx and maintenance projects.
2
X++ Extensions
9
Virtual Entities
3
PA Write-Backs
1
IoT Integration

X++ Extensions (2 Work Packages)

Minimal custom code — only 2 X++ extensions are deployed, both defensive in nature. This minimises upgrade risk during Microsoft product updates. All other integration is handled by Power Automate, OData, and Virtual Entities.

ExtensionTypeWork PackageDetail
Fish Generation Financial DimensionX++ EXTWP-10Custom financial dimension "FishGeneration" auto-injected on all InventJournalTrans, ProdJournalBOM, and vendor invoices via X++ extension on LedgerDimensionFacade. Enables per-cohort P&L and cost-per-kg analysis. Also extends InventBatchEntity with FishGeneration field for batch tracking, mapped to nha_generation in Dataverse.
Harvest Withdrawal BlockX++ EXTWP-09Extension on ProdUpdRelease.checkDocument(). Queries nha_withdrawal via Dataverse API before allowing Production Order release. If an active withdrawal period exists for the generation being harvested, the extension throws a hard error — preventing illegal harvest of medicated fish. Protects food safety and regulatory compliance.

Virtual Entities (9 — Read-Only Live Sync)

Virtual Entities surface D365 data live inside AquaMonitor MDA without copying to Dataverse. This prevents dual-maintenance and ensures the MDA always shows the latest D365 state. Configured in WP-8 (2 weeks).

Virtual EntityTypeD365 Source EntityUsed In
Sites & WarehousesVE READInventSiteEntityAquaMonitor Site/Pen screen — shows D365 site registration, addresses, and operational status.
Inventory BatchesVE READInventBatchEntitySite/Pen screen — displays generation batch details, expiry dates, and batch attributes for live fish inventory.
Production OrdersVE READProdProductionOrderEntityHarvest BPF screen — shows harvest production order status, scheduled dates, and output quantities.
Transfer OrdersVE READInventTransferOrderEntityFreshwater/Sea operations screen — displays smolt and fish transfer orders between sites/pens.
Asset Objects (Pens/Vessels)VE READEntAssetObjectEntityAsset overview screen — shows pen, vessel, and feed barge asset details with maintenance history.
Work Orders (Maintenance)VE READEntAssetWorkOrderEntityTreatment screen — displays D365 work order status for treatment operations, linking to withdrawal tracker.
Quality OrdersVE READQualityOrderEntityHarvest and QC screens — shows quality order results for vet inspections and catch certificates.
Purchase Orders (Feed)VE READPurchaseOrderHeaderV2EntityFeed management screen — displays feed PO status, delivery dates, and quantities for feed planning.
Sales OrdersVE READSalesOrderHeaderV2EntityCommercial screen — shows customer orders and allocations for harvest and processing planning.

Power Automate Write-Backs to D365 (3 Flows)

AquaMonitor MDA triggers these write-back flows to post financial and inventory transactions into D365 via OData. All flows use service principal authentication and include retry/error handling.

FlowTypeTriggerDetail
Post GL Journal (Mortality Cost)PA → ODATAMortality event recorded in AquaMonitorCreates and posts a General Journal line in D365 with Fish Generation dimension. Debits mortality expense, credits biomass inventory account. Runs via AQUA-FLOW-003.
Release Production Order (Harvest)PA → ODATABPF Stage 6 gate passed in Harvest BPFCalls ProdProductionOrderEntity OData action to release the harvest production order. Triggers the X++ Withdrawal Block check before release. Runs via AQUA-FLOW-007.
Post Inventory Journal (Feed Consumption)PA → ODATADaily feed data from AKVA IoT pipelineCreates inventory adjustment journal lines in D365 to reduce feed stock on the barge warehouse. Posts with Fish Generation dimension and site/pen references. Runs via AQUA-FLOW-002.

IoT → D365 Integration (AKVA Feed Barge)

AKVA iFeed barges push real-time feed consumption telemetry to Azure IoT Hub. Stream Analytics aggregates data into daily totals, which trigger the feed consumption inventory journal posting above. This is the only OT (Operational Technology) → D365 pipeline. Configured in WP-11 (5 weeks).

ComponentTypeWork PackageDetail
AKVA iFeed → IoT HubAZUREWP-11Each feed barge pushes feed dispensed (kg), feed type, pen target, and timestamp every 15 minutes via MQTT to Azure IoT Hub (North Europe).
Stream Analytics AggregationAZUREWP-11Tumbling window (24h) aggregates per-barge, per-pen, per-feed-type totals. Output triggers Power Automate feed journal flow.
D365 Inventory Journal PostPA → ODATAWP-11Aggregated daily feed consumption posted as inventory adjustment reducing barge warehouse stock. Fish Generation dimension auto-applied.

Explore integrations and analytics

See how D365 connects with AKVA IoT, regulatory APIs, and feeds the Power BI analytics layer.