Revision e0ef8114
Von Tamino Steinert vor 12 Monaten hinzugefügt
SL/Controller/ZUGFeRD.pm | ||
---|---|---|
257 | 257 |
$self->redirect_to( |
258 | 258 |
controller => 'ap.pl', |
259 | 259 |
action => 'load_zugferd', |
260 |
no_payment_bookings => 0, |
|
261 |
paid_1_suggestion => $::form->format_amount(\%::myconfig, $metadata{'total'}, 2), |
|
262 |
invnumber => $invnumber, |
|
263 |
AP_chart_id => $ap_chart_id, |
|
264 |
currency => $currency->name, |
|
265 |
duedate => $metadata{'duedate'}, |
|
266 |
transdate => $metadata{'transdate'}, |
|
267 |
notes => $notes, |
|
268 |
taxincluded => 0, |
|
269 |
direct_debit => $metadata{'direct_debit'}, |
|
270 |
vendor => $vendor->name, |
|
271 |
vendor_id => $vendor->id, |
|
272 |
zugferd_session_file => $file_name, |
|
273 |
%item_form, |
|
260 |
form_defaults => { |
|
261 |
zugferd_session_file => $file_name, |
|
262 |
vendor_id => $vendor->id, |
|
263 |
vendor => $vendor->name, |
|
264 |
invnumber => $invnumber, |
|
265 |
transdate => $metadata{'transdate'}, |
|
266 |
duedate => $metadata{'duedate'}, |
|
267 |
no_payment_bookings => 0, |
|
268 |
notes => $notes, |
|
269 |
taxincluded => 0, |
|
270 |
direct_debit => $metadata{'direct_debit'}, |
|
271 |
currency => $currency->name, |
|
272 |
AP_chart_id => $ap_chart_id, |
|
273 |
paid_1_suggestion => $::form->format_amount(\%::myconfig, $metadata{'total'}, 2), |
|
274 |
%item_form, |
|
275 |
}, |
|
274 | 276 |
); |
275 | 277 |
|
276 | 278 |
} |
... | ... | |
351 | 353 |
This is just a very basic Parser for ZUGFeRD/Factur-X/XRechnung invoices. |
352 | 354 |
We assume that the invoice's creator is a company with a valid |
353 | 355 |
European VAT ID or German tax number and enrolled in |
354 |
Kivitendo. Currently, implementation is a bit hacky because |
|
355 |
invoice import uses AP record templates as a vessel for |
|
356 |
generating the AP record form with the imported data filled |
|
357 |
in. |
|
356 |
Kivitendo. |
|
358 | 357 |
|
359 | 358 |
=head1 TODO |
360 | 359 |
|
... | ... | |
362 | 361 |
|
363 | 362 |
=over 4 |
364 | 363 |
|
365 |
=item Direct creation of the filled in AP record form |
|
366 |
|
|
367 |
Creating an AP record template in the database is not |
|
368 |
very elegant, since it will spam the database with record |
|
369 |
templates that become redundant once the invoice has been |
|
370 |
booked. It would be preferable to fill in the form directly. |
|
371 |
|
|
372 | 364 |
=item Automatic upload of invoice |
373 | 365 |
|
374 | 366 |
Right now, one has to use the "Book and upload" button to |
Auch abrufbar als: Unified diff
ZUGFeRD: Buchungsvorlage für Lieferant berücksichtigen