diff --git a/erpnext/regional/germany/accounts_controller.py b/erpnext/regional/germany/accounts_controller.py
new file mode 100644
index 0000000..193c8e1
--- /dev/null
+++ b/erpnext/regional/germany/accounts_controller.py
@@ -0,0 +1,57 @@
+import frappe
+from frappe import _
+from frappe import msgprint
+
+
+REQUIRED_FIELDS = {
+	"Sales Invoice": [
+		{
+			"field_name": "company_address",
+			"regulation": "§ 14 Abs. 4 Nr. 1 UStG"
+		},
+		{
+			"field_name": "company_tax_id",
+			"regulation": "§ 14 Abs. 4 Nr. 2 UStG"
+		},
+		{
+			"field_name": "taxes",
+			"regulation": "§ 14 Abs. 4 Nr. 8 UStG",
+			"condition": "not exempt_from_sales_tax"
+		},
+		{
+			"field_name": "customer_address",
+			"regulation": "§ 14 Abs. 4 Nr. 1 UStG",
+			"condition": "base_grand_total > 250"
+		}
+	]
+}
+
+
+def validate_regional(doc):
+	"""Check if required fields for this document are present."""
+	required_fields = REQUIRED_FIELDS.get(doc.doctype)
+	if not required_fields:
+		return
+
+	meta = frappe.get_meta(doc.doctype)
+	field_map = {field.fieldname: field.label for field in meta.fields}
+
+	for field in required_fields:
+		condition = field.get("condition")
+		if condition and not frappe.safe_eval(condition, doc.as_dict()):
+			continue
+
+		field_name = field.get("field_name")
+		regulation = field.get("regulation")
+		if field_name and not doc.get(field_name):
+			missing(field_map.get(field_name), regulation)
+
+
+def missing(field_label, regulation):
+	"""Notify the user that a required field is missing."""
+	context = 'Specific for Germany. Example: Remember to set Company Tax ID. It is required by § 14 Abs. 4 Nr. 2 UStG.'
+	msgprint(_('Remember to set {field_label}. It is required by {regulation}.', context=context).format(
+			field_label=frappe.bold(_(field_label)),
+			regulation=regulation
+		)
+	)
