mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-11-23 18:21:56 +01:00
muh
This commit is contained in:
parent
c67c21682d
commit
bb9117dbb8
@ -3,7 +3,7 @@
|
||||
## ebill von Handwerkerrechnungen
|
||||
|
||||
|
||||
### Ausgangslage
|
||||
### Ausgangslage, Ihr "Use Case"
|
||||
|
||||
Sie arbeiten in einer Firma, die sich zum Ziel gesetzt hat,
|
||||
für ihre Kunden und auch um neue Kunden zu gewinnen, die
|
||||
@ -17,33 +17,345 @@ Eintippen der Zahlungsdaten im eBanking machen muss, sondern als
|
||||
des Handwerkers direkt in sein eBanking hineingeschickt wird und
|
||||
von dort aus direkt mit zwei Klicks bezahlt werden kann.
|
||||
|
||||
|
||||
|
||||
**Zugangsdaten**
|
||||
|
||||
https://haraldmueller.ch/schueler (Passwort: tbz)
|
||||
|
||||
ftp:
|
||||
|
||||
HOST: ftp.haraldmueller.ch
|
||||
USER: schueler
|
||||
PASS: studentenpasswort
|
||||
PATH: /M122-[KLASSE]/NachName
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
**Resultat**
|
||||
|
||||
![original-rechnugen/example-qr-bill-de.six-image.original.1020.png](original-rechnugen/example-qr-bill-de.six-image.original.1020.png)
|
||||
|
||||
|
||||
## BEWERTUNGSKRITERIEN
|
||||
(MUH, 2022-05)
|
||||
## Aufgabenstellung
|
||||
|
||||
M122-Übung "e-bill"
|
||||
=====================
|
||||
![ebill-uebersicht.jpg](x-ressourcen/ebill-uebersicht.jpg)
|
||||
|
||||
|
||||
Sie bekommen auf dem System des Rechnungsstellers in einem
|
||||
eigenen Format direkt von den Kassensystemen Rechnungsdateien
|
||||
mit allen Informationen, die es für die Rechnungsstellung
|
||||
über e-Bill braucht.
|
||||
|
||||
Sie holen diese per FTP ab und erstellen daraus
|
||||
- 1.) eine Rechnung im Klartext (Zur Vereinfachung nur als Text-Format, produktiv wäre das ein PDF)
|
||||
- 2.) eine Rechnung im XML-Format für das SIX-PaymentServices-Format (Schweizer Marktleader)
|
||||
|
||||
Diese beiden Dateien geben Sie per FTP in das «Zahlungssystem» ab.
|
||||
Dann erfolgt, für Sie im Hintergrund die Weiterleitung
|
||||
ins Bankensystem. Ob das geklappt hat, wissen Sie erst,
|
||||
in dem das Zahlungssystem eine Quittungsdatei produziert
|
||||
hat und Ihnen zur Verfügung stellt.
|
||||
|
||||
Ihrem Kunden (dem Rechnungssteller =Biller) stellen Sie
|
||||
diese Quittungsdatei sowohl per E-Mail wie auch im
|
||||
Rechnungsstellungs-System in einem Archiv (.zip) zur
|
||||
Verfügung, damit er überprüfen kann, ob die Rechnung
|
||||
korrekt verschickt wurde.
|
||||
|
||||
**Biller-System**
|
||||
|
||||
Sie bekommen vom Biller-Sytem **eine oder mehrere** solche
|
||||
Dateien
|
||||
|
||||
- ein .data-File
|
||||
Dateiname: rechnung21003.data
|
||||
|
||||
Rechnung_21003;Auftrag_A003;Zürich;21.07.2021;10:22:54;ZahlungszielInTagen_30
|
||||
Herkunft;41010000001234567;K821;Adam Adler;Bahnhofstrasse 1;8000 Zuerich;CHE-111.222.333 MWST;harald.mueller@tbz.ch
|
||||
Endkunde;41301000000012497;Autoleasing AG;Gewerbestrasse 100;5000 Aarau
|
||||
RechnPos;1;Einrichten E-Mailclients;5;25.00;125.00;MWST_0.00%
|
||||
RechnPos;2;Konfig & Schulung Scanningcnter;1;1000.00;1000.00;MWST_0.00%
|
||||
|
||||
|
||||
Erstellen müssen Sie 2 Files:
|
||||
|
||||
- ein TXT-File
|
||||
- ein XML-File
|
||||
|
||||
Die Dateinamen werden aus den Daten der .data-Files gebildet:
|
||||
(aus Kundennummer K821 und aus der Rechnungsnummer 21003)
|
||||
|
||||
Dateiname: K821_21003_invoice.txt
|
||||
Dateiname: K821_21003_invoice.xml
|
||||
|
||||
|
||||
Inhalt von K821_21003_invoice.txt:
|
||||
(auf den QR-Code im Einzahlungsschein-Bereich wird hier vwerzichtet)
|
||||
|
||||
|
||||
|
||||
Adam Adler
|
||||
Bahnhofstrasse 1
|
||||
8000 Zuerich
|
||||
|
||||
CHE-111.222.333 MWST
|
||||
|
||||
|
||||
|
||||
|
||||
Uster, den 21.07.2021 Autoleasing AG
|
||||
Gewerbestrasse 100
|
||||
5000 Aarau
|
||||
|
||||
Kundennummer: K821
|
||||
Auftragsnummer: A003
|
||||
|
||||
Rechnung Nr 21003
|
||||
-----------------------
|
||||
1 Einrichten E-Mailclients 5 25.00 CHF 125.00 0.00%
|
||||
2 Konfig & Schulung Scanningcenter 1 1200.00 CHF 1200.00 0.00%
|
||||
-----------
|
||||
Total CHF 1325.00
|
||||
|
||||
MWST CHF 0.00
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Zahlungsziel ohne Abzug 30 Tage (20.08.2021)
|
||||
|
||||
|
||||
Empfangsschein Zahlteil
|
||||
|
||||
Adam Adler ---------------------- Adam Adler
|
||||
Bahnhofstrasse 1 | | Bahnhofstrasse 1
|
||||
8000 Zuerich | | 8000 Zuerich
|
||||
| |
|
||||
| |
|
||||
00 00000 00000 00000 00000 | | 00 00000 00000 00000 00000
|
||||
| |
|
||||
Autoleasing AG | | Autoleasing AG
|
||||
Gewerbestrasse 100 | | Gewerbestrasse 100
|
||||
5000 Aarau | | 5000 Aarau
|
||||
----------------------
|
||||
|
||||
|
||||
--------------------
|
||||
|
||||
Inhalt von K821_21003_invoice.xml
|
||||
|
||||
<XML-FSCM-INVOICE-2003A>
|
||||
<INTERCHANGE>
|
||||
<IC-SENDER>
|
||||
<Pid>41010000001234567</Pid>
|
||||
</IC-SENDER>
|
||||
<IC-RECEIVER>
|
||||
<Pid>41301000000012497</Pid>
|
||||
</IC-RECEIVER>
|
||||
<IR-Ref />
|
||||
</INTERCHANGE>
|
||||
<INVOICE>
|
||||
<HEADER>
|
||||
<FUNCTION-FLAGS>
|
||||
<Confirmation-Flag />
|
||||
<Canellation-Flag />
|
||||
</FUNCTION-FLAGS>
|
||||
<MESSAGE-REFERENCE>
|
||||
<REFERENCE-DATE>
|
||||
<Reference-No>202107164522001</Reference-No>
|
||||
<Date>20210731</Date>
|
||||
</REFERENCE-DATE>
|
||||
</MESSAGE-REFERENCE>
|
||||
<PRINT-DATE>
|
||||
<Date>20210731</Date>
|
||||
</PRINT-DATE>
|
||||
<REFERENCE>
|
||||
<INVOICE-REFERENCE>
|
||||
<REFERENCE-DATE>
|
||||
<Reference-No>21003</Reference-No>
|
||||
<Date>20210731</Date>
|
||||
</REFERENCE-DATE>
|
||||
</INVOICE-REFERENCE>
|
||||
<ORDER>
|
||||
<REFERENCE-DATE>
|
||||
<Reference-No>A003</Reference-No>
|
||||
<Date>20210731</Date>
|
||||
</REFERENCE-DATE>
|
||||
</ORDER>
|
||||
<REMINDER Which="MAH">
|
||||
<REFERENCE-DATE>
|
||||
<Reference-No></Reference-No>
|
||||
<Date></Date>
|
||||
</REFERENCE-DATE>
|
||||
</REMINDER>
|
||||
<OTHER-REFERENCE Type="ADE">
|
||||
<REFERENCE-DATE>
|
||||
<Reference-No>202107164522001</Reference-No>
|
||||
<Date>20210731</Date>
|
||||
</REFERENCE-DATE>
|
||||
</OTHER-REFERENCE>
|
||||
</REFERENCE>
|
||||
<BILLER>
|
||||
<Tax-No>CHE-111.222.333 MWST</Tax-No>
|
||||
<Doc-Reference Type="ESR-ALT "></Doc-Reference>
|
||||
<PARTY-ID>
|
||||
<Pid>41010000001234567</Pid>
|
||||
</PARTY-ID>
|
||||
<NAME-ADDRESS Format="COM">
|
||||
<NAME>
|
||||
<Line-35>Adam Adler</Line-35>
|
||||
<Line-35>Bahnhofstrasse 1</Line-35>
|
||||
<Line-35>8000 Zürich</Line-35>
|
||||
<Line-35></Line-35>
|
||||
<Line-35></Line-35>
|
||||
</NAME>
|
||||
<STREET>
|
||||
<Line-35></Line-35>
|
||||
<Line-35></Line-35>
|
||||
<Line-35></Line-35>
|
||||
</STREET>
|
||||
<City></City>
|
||||
<State></State>
|
||||
<Zip></Zip>
|
||||
<Country></Country>
|
||||
</NAME-ADDRESS>
|
||||
<BANK-INFO>
|
||||
<Acct-No></Acct-No>
|
||||
<Acct-Name></Acct-Name>
|
||||
<BankId Type="BCNr-nat" Country="CH">001996</BankId>
|
||||
</BANK-INFO>
|
||||
</BILLER>
|
||||
<PAYER>
|
||||
<PARTY-ID>
|
||||
<Pid>41301000000012497</Pid>
|
||||
</PARTY-ID>
|
||||
<NAME-ADDRESS Format="COM">
|
||||
<NAME>
|
||||
<Line-35>Autoleasing AG</Line-35>
|
||||
<Line-35>Gewerbestrasse 100</Line-35>
|
||||
<Line-35>5000 Aarau</Line-35>
|
||||
<Line-35></Line-35>
|
||||
<Line-35></Line-35>
|
||||
</NAME>
|
||||
<STREET>
|
||||
<Line-35></Line-35>
|
||||
<Line-35></Line-35>
|
||||
<Line-35></Line-35>
|
||||
</STREET>
|
||||
<City></City>
|
||||
<State></State>
|
||||
<Zip></Zip>
|
||||
<Country></Country>
|
||||
</NAME-ADDRESS>
|
||||
</PAYER>
|
||||
</HEADER>
|
||||
<LINE-ITEM />
|
||||
<SUMMARY>
|
||||
<INVOICE-AMOUNT>
|
||||
<Amount>0000135000</Amount>
|
||||
</INVOICE-AMOUNT>
|
||||
<VAT-AMOUNT>
|
||||
<Amount></Amount>
|
||||
</VAT-AMOUNT>
|
||||
<DEPOSIT-AMOUNT>
|
||||
<Amount></Amount>
|
||||
<REFERENCE-DATE>
|
||||
<Reference-No></Reference-No>
|
||||
<Date></Date>
|
||||
</REFERENCE-DATE>
|
||||
</DEPOSIT-AMOUNT>
|
||||
<EXTENDED-AMOUNT Type="79">
|
||||
<Amount></Amount>
|
||||
</EXTENDED-AMOUNT>
|
||||
<TAX>
|
||||
<TAX-BASIS>
|
||||
<Amount></Amount>
|
||||
</TAX-BASIS>
|
||||
<Rate Categorie="S">0</Rate>
|
||||
<Amount></Amount>
|
||||
</TAX>
|
||||
<PAYMENT-TERMS>
|
||||
<BASIC Payment-Type="ESR" Terms-Type="1">
|
||||
<TERMS>
|
||||
<Payment-Period Type="M" On-Or-After="1" Reference-Day="31">30</Payment-Period>
|
||||
<Date>20210830</Date>
|
||||
</TERMS>
|
||||
</BASIC>
|
||||
<DISCOUNT Terms-Type="22">
|
||||
<Discount-Percentage>0.0</Discount-Percentage>
|
||||
<TERMS>
|
||||
<Payment-Period Type="M" On-Or-After="1" Reference-Day="31"></Payment-Period>
|
||||
<Date></Date>
|
||||
</TERMS>
|
||||
<Back-Pack-Container Encode="Base64"> </Back-Pack-Container>
|
||||
</DISCOUNT>
|
||||
</PAYMENT-TERMS>
|
||||
</SUMMARY>
|
||||
</INVOICE>
|
||||
</XML-FSCM-INVOICE-2003A>
|
||||
|
||||
-----------------
|
||||
|
||||
|
||||
https://haraldmueller.ch/schueler (Passwort: tbz)
|
||||
|
||||
ftp:
|
||||
|
||||
HOST: ftp.haraldmueller.ch
|
||||
USER: schueler
|
||||
PASS: studentenpasswort
|
||||
PATH: /M122-[KLASSE]/NachName
|
||||
|
||||
https://haraldmueller.ch/schoolerinvoices/out (Passwort auf html-Seite: tbz)
|
||||
|
||||
https://haraldmueller.ch/schoolerinvoices/in
|
||||
|
||||
|
||||
![ebill-ueberischt-details.jpg](x-ressourcen/ebill-ueberischt-details.jpg)
|
||||
|
||||
|
||||
https://coinditorei.com/zahlungssystem (Passwort: tbz)
|
||||
<br>https://coinditorei.com/zahlungssystem/in
|
||||
<br>https://coinditorei.com/zahlungssystem/out
|
||||
|
||||
Die Dateien müssen einen bestimmten Namen haben.
|
||||
- [Kundennummer]_[Rechnungsnummer]_invoice.xml (Konkret ‘K821_21003_invoice.xml’)
|
||||
- [Kundennummer]_[Rechnungsnummer]_invoice.txt (Konkret ‘K821_21003_invoice.txt’)
|
||||
Testfiles können Sie finden unter: https://coinditorei.com/zahlungssystem/testfiles
|
||||
|
||||
|
||||
Kontrollen
|
||||
Bauen Sie Kontrollen ein, um festzustellen, ob «die» Rechnung richtig verarbeitet wurde, bzw. ob und wann und wie ein allfälliger Abbruch stattgefunden hat. Am einfachsten sind Log-Files.
|
||||
Konfiguration
|
||||
Gut ist, wenn das System ‘von aussen’ konfiguriert / eingestellt werden kann (separates Config-File).
|
||||
|
||||
|
||||
|
||||
## Bewertung und Note
|
||||
|
||||
**Funktionalität**
|
||||
|
||||
Der automatische Ablauf und die korrekten Resultate bestimmen die Note.
|
||||
|
||||
Die Bewertung geschieht über einen Live-Test mit von der Lehrperson erstellten Test-Dateien. Es gibt eine normale ‘richtiges’ Testdatei und eine Testdatei, die unmöglich zu verarbeiten ist. Dabei wird geschaut, ob das System korrekt läuft. Die korrekt Testdatei soll richtig verarbeitet werden. Die inkorrekte Testdatei darf nicht verarbeitet werden. Dies müssen Sie nachvollziehen können.
|
||||
|
||||
**Dokumentation**
|
||||
|
||||
Keine Doku notwendig, die Aufgabenstellung ist Doku genug.
|
||||
|
||||
**Benotung**
|
||||
|
||||
Note 4:
|
||||
Viele Teile der Vorgabe wurden erreicht, aber es fehlt noch etwas damit alles automatisch funktioniert.
|
||||
|
||||
Note 5:
|
||||
Das System funktioniert aus Sicht des Kunden, wenn alles richtig definiert war (keine Fehler in der Rechnungsdatei oder wenn die Quittung nicht vom Zahlungssystem bereitgestellt wurde).
|
||||
|
||||
Note 6:
|
||||
Komplette Verarbeitung der Vorgaben inklusive Log-Dateien zur Rekonstruktion des Ablaufes.
|
||||
Alle Abläufe sind automatisiert und können per Konfigurationsdatei beeinflusst werden (FTP-Server Einstellungen).
|
||||
Es sind diverse Sicherheitsmechanismen eingebaut (Fehlermeldungen mit aussagekräftigem und nützlichem Inhalt).
|
||||
|
||||
|
||||
**Detailberechnung der Note**
|
||||
|
||||
(2P)
|
||||
- Filedownload (.data) via FTP (aus dem [Kundenserver]/out/XX21xMustermann)
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
After Width: | Height: | Size: 52 KiB |
Binary file not shown.
After Width: | Height: | Size: 41 KiB |
Binary file not shown.
Loading…
Reference in New Issue
Block a user