Forum

Benvenuto!

Questo è il forum ufficiale dell'Associazione Odoo Italia. Dopo esserti registrato potrai partecipare ponendo domande o rispondendo a quelle esistenti. Non scordarti di compilare il tuo profilo e consultare le linee guida prima di iniziare a scrivere.

0

Fatturazione elettronica

Avatar
Antonio

Salve,

sono da poco nel mondo odoo, sto utilizzando la versione 14 della community, esiste un modulo per la fatturazione elettronica?


grazie

Avatar
Abbandona
2 Risposte
0
Avatar
Andrea
Migliore risposta

Può seguire lo sviluppo del modulo per la FE qui: https://github.com/OCA/l10n-italy/tree/14.0

Come vede non è ancora stata ultimata.

In compenso può utilizzare in abbinata i servizi dell'Agenzia dell'Entrate (Fatture e corrispettivi) e l'esportazione/importazione delle fatture elettroniche già presente in Odoo 14 CE (modulo EDI).

I pregi:

  • cominciare a utilizzare la versione 14 senza dover aspettare lo sviluppo dei moduli dedicati alla FE

  • separare le due gestioni: per un numero non elevato di fatture giornaliere lo ritengo un pregio. Trovo che le logiche Odoo non sempre si adattino bene a quelle della FE (date, scadenze, competenze, numerazione, correzioni, casi particolari, ecc).

  • i flussi sono indenni da errori: quando si esporta la fattura attiva da Odoo si ottiene un file XML che il sistema dell'AdE digerisce tranquillamente (solo attenzione ad aggiornare l'elenco delle imposte di Odoo con tutte le nature di esenzione IVA previste); a questo punto basta inserire uno o due dati mancanti e inviare direttamente la fattura dall'AdE allo SdI. Quando si scarica il XML dei fornitori dall'AdE basta importarlo in Odoo: vengono riconosciute tutte le caratteristiche, basta poi procedere con la normale approvazione

  • sarà sempre possibile installare il modulo FE (quando sarà pronto)

  • I difetti:

  • non è un sistema automatizzato, richiede un doppio lavoro il che equivale a più tempo perso dal personale amministrativo. Se si hanno molte registrazioni al giorno lo sconsiglio

  • per ora la ritenuta d'acconto non è gestita, quindi va creata un'imposta fra le imposte se ne vuole tener conto per esempio per avere lo scadenziario dei pagamenti corretto

  • pertanto non va bene per chi voglia gestire con Odoo CE non solo la parte economico/finanziaria ma anche la parte fiscale

Saluti!

Avatar
Abbandona
0
Avatar
Antonio
Migliore risposta

Grazie mille, proverò a fare dei test. 

Avatar
Abbandona
0
Avatar
Marcelo Frare
Migliore risposta

Benvenuto Developer!

visto che sei del mestiere ;-) puoi scaricarti e usare la versione test-sviluppo che per quanto riguarda il modulo fatturapa_out è quasi pronta ad essere mergiata. (la stiamo usando da qualche mese presso un cliente pilota)

https://github.com/odoo-italia/l10n-italy/tree/14.0-supermerge

In questo modo potrai contribuire anche te a testare e segnalare eventuali correzioni da fare!

Avatar
Abbandona
0
Avatar
Antonio
Migliore risposta

Grazie mille per il supporto, proverò e vi farò sapere. 

ho installato il modulo, va in errore quando cerco di creare una fattura, se mi indichi dove fare le segnalazioni inerenti le prossime le metterò lì



Odoo Server Error
Traceback (most recent call last):
  File "/odoo/odoo-server/odoo/addons/base/models/ir_http.py", line 237, in _dispatch
    result = request.dispatch()
  File "/odoo/odoo-server/odoo/http.py", line 683, in dispatch
    result = self._call_function(**self.params)
  File "/odoo/odoo-server/odoo/http.py", line 359, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/odoo/odoo-server/odoo/service/model.py", line 94, in wrapper
    return f(dbname, *args, **kwargs)
  File "/odoo/odoo-server/odoo/http.py", line 347, in checked_call
    result = self.endpoint(*a, **kw)
  File "/odoo/odoo-server/odoo/http.py", line 912, in __call__
    return self.method(*args, **kw)
  File "/odoo/odoo-server/odoo/http.py", line 531, in response_wrap
    response = f(*args, **kw)
  File "/odoo/odoo-server/addons/web/controllers/main.py", line 1393, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "/odoo/odoo-server/addons/web/controllers/main.py", line 1381, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/odoo/odoo-server/odoo/api.py", line 396, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/odoo/odoo-server/odoo/api.py", line 383, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/odoo/odoo-server/custom-addons/l10n_it_delivery_note/models/stock_picking.py", line 237, in action_delivery_note_invoice
    return self.delivery_note_id.action_invoice()
  File "/odoo/odoo-server/custom-addons/l10n_it_delivery_note/models/stock_delivery_note.py", line 507, in action_invoice
    invoice_ids = self.sale_ids.filtered(
  File "/odoo/odoo-server/custom-addons/l10n_it_delivery_note/models/sale_order.py", line 116, in _create_invoices
    invoice_ids = super()._create_invoices(grouped=grouped, final=final)
  File "/odoo/odoo-server/addons/sale/models/sale.py", line 773, in _create_invoices
    move.message_post_with_view('mail.message_origin_link',
  File "/odoo/odoo-server/addons/mail/models/mail_thread.py", line 1935, in message_post_with_view
    record.message_post_with_template(False, **kwargs)
  File "/odoo/odoo-server/addons/mail/models/mail_thread.py", line 1966, in message_post_with_template
    return composer.send_mail(auto_commit=auto_commit)
  File "/odoo/odoo-server/addons/sale/models/mail_compose_message.py", line 13, in send_mail
    return super(MailComposeMessage, self).send_mail(auto_commit=auto_commit)
  File "/odoo/odoo-server/addons/purchase/models/mail_compose_message.py", line 13, in send_mail
    return super(MailComposeMessage, self).send_mail(auto_commit=auto_commit)
  File "/odoo/odoo-server/addons/mail/wizard/mail_compose_message.py", line 259, in send_mail
    ActiveModel.browse(res_id).message_post(**post_params)
  File "/odoo/odoo-server/addons/mail/models/mail_thread.py", line 1823, in message_post
    record_name = record_name or self.display_name
  File "/odoo/odoo-server/odoo/fields.py", line 1019, in __get__
    self.compute_value(recs)
  File "/odoo/odoo-server/odoo/fields.py", line 1175, in compute_value
    records._compute_field_value(self)
  File "/odoo/odoo-server/addons/mail/models/mail_thread.py", line 410, in _compute_field_value
    return super()._compute_field_value(field)
  File "/odoo/odoo-server/odoo/models.py", line 4061, in _compute_field_value
    getattr(self, field.compute)()
  File "/odoo/odoo-server/odoo/models.py", line 1728, in _compute_display_name
    names = dict(self.name_get())
  File "/odoo/odoo-server/custom-addons/l10n_it_fatturapa_in/models/account.py", line 241, in name_get
    result = super(AccountInvoice, self).name_get()
  File "/odoo/odoo-server/addons/account/models/account_move.py", line 1916, in name_get
    name = move._get_move_display_name(show_ref=True)
  File "/odoo/odoo-server/addons/account/models/account_move.py", line 2126, in _get_move_display_name
    draft_name += {
Exception

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/odoo/odoo-server/odoo/http.py", line 639, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/odoo/odoo-server/odoo/http.py", line 315, in _handle_exception
    raise exception.with_traceback(None) from new_cause
KeyError: 'other'


Avatar
Abbandona
0
Avatar
Massimiliano
Migliore risposta

Ciao,

ho lo stesso errore, potrei sapere se hai risolto e come?

Errore:


Odoo Server Error

Traceback (most recent call last):
  File "/odoo/odoo-server/odoo/addons/base/models/ir_http.py", line 237, in _dispatch
    result = request.dispatch()
  File "/odoo/odoo-server/odoo/http.py", line 684, in dispatch
    result = self._call_function(**self.params)
  File "/odoo/odoo-server/odoo/http.py", line 360, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/odoo/odoo-server/odoo/service/model.py", line 94, in wrapper
    return f(dbname, *args, **kwargs)
  File "/odoo/odoo-server/odoo/http.py", line 348, in checked_call
    result = self.endpoint(*a, **kw)
  File "/odoo/odoo-server/odoo/http.py", line 913, in __call__
    return self.method(*args, **kw)
  File "/odoo/odoo-server/odoo/http.py", line 532, in response_wrap
    response = f(*args, **kw)
  File "/odoo/odoo-server/addons/web/controllers/main.py", line 1389, in call_kw
    return self._call_kw(model, method, args, kwargs)
  File "/odoo/odoo-server/addons/web/controllers/main.py", line 1381, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/odoo/odoo-server/odoo/api.py", line 399, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "/odoo/odoo-server/odoo/api.py", line 386, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/odoo/odoo-server/addons/account/models/account_journal.py", line 619, in create_invoice_from_attachment
    invoice.with_context(no_new_invoice=True).message_post(attachment_ids=[attachment.id])
  File "/odoo/odoo-server/addons/mail/models/mail_thread.py", line 1829, in message_post
    record_name = record_name or self.display_name
  File "/odoo/odoo-server/odoo/fields.py", line 1021, in __get__
    self.compute_value(recs)
  File "/odoo/odoo-server/odoo/fields.py", line 1177, in compute_value
    records._compute_field_value(self)
  File "/odoo/odoo-server/addons/mail/models/mail_thread.py", line 410, in _compute_field_value
    return super()._compute_field_value(field)
  File "/odoo/odoo-server/odoo/models.py", line 4062, in _compute_field_value
    getattr(self, field.compute)()
  File "/odoo/odoo-server/odoo/models.py", line 1728, in _compute_display_name
    names = dict(self.name_get())
  File "/opt/odoo/addons/l10n-italy/l10n_it_fatturapa_in/models/account.py", line 251, in name_get
    result = super(AccountInvoice, self).name_get()
  File "/odoo/odoo-server/addons/account/models/account_move.py", line 2048, in name_get
    name = move._get_move_display_name(show_ref=True)
  File "/odoo/odoo-server/addons/account/models/account_move.py", line 2258, in _get_move_display_name
    draft_name += {
Exception

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/odoo/odoo-server/odoo/http.py", line 640, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/odoo/odoo-server/odoo/http.py", line 316, in _handle_exception
    raise exception.with_traceback(None) from new_cause
KeyError: 'other'


Grazie

Avatar
Abbandona