Steuerkram/src/Views/accounts/form.php

169 lines
11 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="card" style="max-width:700px">
<div class="card-body">
<form method="post" action="<?= $h($action) ?>">
<input type="hidden" name="_back" value="<?= $h($back ?? '/accounts') ?>">
<div class="form-grid form-grid-2">
<div class="form-group">
<label for="kontonummer">Kontonummer *</label>
<input type="text" id="kontonummer" name="kontonummer"
value="<?= $h($account['kontonummer'] ?? '') ?>"
class="<?= isset($errors['kontonummer']) ? 'input-error' : '' ?>"
required>
<?php if (isset($errors['kontonummer'])): ?>
<div class="error-text"><?= $h($errors['kontonummer']) ?></div>
<?php endif; ?>
</div>
<div class="form-group">
<label for="kontenart">Kontenart *</label>
<select id="kontenart" name="kontenart"
class="<?= isset($errors['kontenart']) ? 'input-error' : '' ?>" required>
<option value="">– wählen –</option>
<?php foreach (['Betriebseinnahme','Betriebsausgabe','Anlagevermögen','Zahlungskonto','Verbindlichkeit','Privat'] as $art): ?>
<option value="<?= $h($art) ?>"<?= ($account['kontenart'] ?? '') === $art ? ' selected' : '' ?>>
<?= $h($art) ?>
</option>
<?php endforeach; ?>
</select>
<?php if (isset($errors['kontenart'])): ?>
<div class="error-text"><?= $h($errors['kontenart']) ?></div>
<?php endif; ?>
</div>
</div>
<div class="form-group">
<label for="bezeichnung">Bezeichnung *</label>
<input type="text" id="bezeichnung" name="bezeichnung"
value="<?= $h($account['bezeichnung'] ?? '') ?>"
class="<?= isset($errors['bezeichnung']) ? 'input-error' : '' ?>"
required>
<?php if (isset($errors['bezeichnung'])): ?>
<div class="error-text"><?= $h($errors['bezeichnung']) ?></div>
<?php endif; ?>
</div>
<div class="form-grid form-grid-2">
<div class="form-group">
<label for="steuercode">Steuercode</label>
<select id="steuercode" name="steuercode">
<option value="">– kein –</option>
<?php foreach (['USt19','USt7','VSt19','VSt7'] as $sc): ?>
<option value="<?= $sc ?>"<?= ($account['steuercode'] ?? '') === $sc ? ' selected' : '' ?>>
<?= $sc ?>
</option>
<?php endforeach; ?>
</select>
<div class="form-hint">USt = Ausgangs-USt, VSt = Vorsteuer</div>
</div>
<div class="form-group">
<label for="ustva_kz">UStVA Kennzahl (ELSTER)</label>
<input type="text" id="ustva_kz" name="ustva_kz"
value="<?= $h($account['ustva_kz'] ?? '') ?>"
placeholder="z.B. 81, 86, 66">
<div class="form-hint">Kennzahl im ELSTER-Formular</div>
</div>
</div>
<div class="form-grid form-grid-2">
<div class="form-group">
<label for="euer_zeile">EÜR-Zeile</label>
<select id="euer_zeile" name="euer_zeile">
<option value="">– keine –</option>
<?php
$euerZeilen = [
// 1. Betriebseinnahmen (Zeilen 12–22)
'12' => '12 – Betriebseinnahmen Kleinunternehmer (§ 19 Abs. 1 UStG)',
'14' => '14 – Betriebseinnahmen Land-/Forstwirt (§ 24 UStG)',
'15' => '15 – Umsatzsteuerpflichtige Betriebseinnahmen',
'16' => '16 – Betriebseinnahmen umsatzsteuerfrei / nicht steuerbar / § 13b UStG',
'17' => '17 – Vereinnahmte Umsatzsteuer / USt auf unentgeltliche Wertabgaben',
'18' => '18 – Vom Finanzamt erstattete/verrechnete Umsatzsteuer',
'19' => '19 – Veräußerung oder Entnahme von Anlagevermögen',
'20' => '20 – Private Kfz-Nutzung',
'21' => '21 – Sonstige Sach-, Nutzungs- und Leistungsentnahmen',
'22' => '22 – Auflösung von Rücklagen und/oder Ausgleichsposten',
// 2. Betriebsausgaben – Material / Leistungen / Personal (Zeilen 27–30)
'27' => '27 – Waren, Rohstoffe und Hilfsstoffe einschl. Nebenkosten',
'29' => '29 – Bezogene Fremdleistungen',
'30' => '30 – Ausgaben für eigenes Personal (Gehälter, Löhne, SV-Beiträge)',
// AfA (Zeilen 31–38)
'31' => '31 – AfA auf Grundstücke/grundstücksgleiche Rechte',
'32' => '32 – AfA auf immaterielle Wirtschaftsgüter',
'33' => '33 – AfA auf bewegliche Wirtschaftsgüter',
'34' => '34 – Sonderabschreibungen nach § 7b / § 7g Abs. 5 und 6 EStG',
'35' => '35 – Herabsetzungsbeträge nach § 7g Abs. 2 Satz 3 EStG',
'36' => '36 – Aufwendungen für geringwertige Wirtschaftsgüter (§ 6 Abs. 2 EStG)',
'37' => '37 – Auflösung Sammelposten nach § 6 Abs. 2a EStG',
'38' => '38 – Restbuchwerte der ausgeschiedenen Anlagegüter',
// Raumkosten (Zeilen 39–41)
'39' => '39 – Miete/Pacht für Geschäftsräume und betrieblich genutzte Grundstücke',
'40' => '40 – Aufwendungen für doppelte Haushaltsführung',
'41' => '41 – Sonstige Aufwendungen für betrieblich genutzte Grundstücke',
// Sonstige unbeschränkt abziehbare Betriebsausgaben (Zeilen 43–60)
'43' => '43 – Aufwendungen für Telekommunikation (Telefon, Internet)',
'44' => '44 – Übernachtungs- und Reisenebenkosten bei Geschäftsreisen',
'45' => '45 – Fortbildungskosten (ohne Reisekosten)',
'46' => '46 – Kosten für Rechts- und Steuerberatung, Buchführung',
'47' => '47 – Miete/Leasing für bewegliche Wirtschaftsgüter (ohne Kfz)',
'48' => '48 – Erhaltungsaufwendungen (Instandhaltung, Wartung, Reparatur)',
'49' => '49 – Beiträge, Gebühren, Abgaben und Versicherungen',
'50' => '50 – Laufende EDV-Kosten (Beratung, Wartung, Reparatur)',
'51' => '51 – Arbeitsmittel (Bürobedarf, Porto, Fachliteratur)',
'52' => '52 – Kosten für Abfallbeseitigung und Entsorgung',
'53' => '53 – Kosten für Verpackung und Transport',
'54' => '54 – Werbekosten (Inserate, Werbespots, Plakate)',
'55' => '55 – Schuldzinsen zur Finanzierung von Anschaffungs-/Herstellungskosten AV',
'56' => '56 – Übrige Schuldzinsen',
'57' => '57 (Kz 185) – Gezahlte und nach § 15 UStG abziehbare Vorsteuerbeträge',
'58' => '58 (Kz 186) – An das Finanzamt gezahlte/verrechnete Umsatzsteuer',
'60' => '60 – Übrige unbeschränkt abziehbare Betriebsausgaben',
// Beschränkt abziehbare Betriebsausgaben (Zeilen 62–67)
'62' => '62 – Geschenke (abziehbarer Anteil)',
'63' => '63 – Bewirtungsaufwendungen (abziehbarer Anteil)',
'64' => '64 – Verpflegungsmehraufwendungen',
'65' => '65 – Aufwendungen für ein häusliches Arbeitszimmer (abziehbar)',
'66' => '66 – Tagespauschale für die Tätigkeit in der häuslichen Wohnung',
'67' => '67 – Sonstige beschränkt abziehbare Betriebsausgaben (abziehbar)',
// Kfz-Kosten und andere Fahrtkosten (Zeilen 68–72)
'68' => '68 – Kfz-Leasingkosten',
'69' => '69 – Kfz-Steuern, Versicherungen und Maut',
'70' => '70 – Sonstige tatsächliche Fahrtkosten (ohne AfA und Zinsen)',
'71' => '71 – Fahrtkosten für nicht zum Betriebsvermögen gehörende Fahrzeuge',
'72' => '72 – Fahrtkosten Wohnung – erste Betriebsstätte; Familienheimfahrten',
// Nicht abziehbare Beträge
'74' => '74 – Nicht abziehbare Betriebsausgaben (§ 4 Abs. 5 EStG u. a.)',
];
foreach ($euerZeilen as $val => $label):
?>
<option value="<?= $val ?>"<?= ($account['euer_zeile'] ?? '') === (string)$val ? ' selected' : '' ?>>
<?= $h($label) ?>
</option>
<?php endforeach; ?>
</select>
<div class="form-hint">Zeilen entsprechen der amtlichen Anlage EÜR 2025; „Kz“ ist die ELSTER-Kennzahl</div>
</div>
</div>
<div class="form-group">
<label for="beschreibung">Beschreibung</label>
<textarea id="beschreibung" name="beschreibung"><?= $h($account['beschreibung'] ?? '') ?></textarea>
</div>
<?php if (!empty($account['id'])): ?>
<div class="form-group">
<label>
<input type="checkbox" name="aktiv" value="1"<?= ($account['aktiv'] ?? 1) ? ' checked' : '' ?>>
Konto aktiv
</label>
</div>
<?php endif; ?>
<div style="display:flex;gap:.75rem;margin-top:1.5rem">
<button type="submit" class="btn btn-primary">Speichern</button>
<a href="<?= $h($back ?? '/accounts') ?>" class="btn btn-secondary">Abbrechen</a>
</div>
</form>
</div>
</div>