Preferenze di fatturazione
Modalità di fatturazione
Billing Extension offre 3 nuove modalità di fatturazione:
- OneInvoice (fatturazione mensile)
- OnePayment. (fatturazione e pagamento mensile)
- Manual (fattura a richiesta)
Se non vuoi utilizzare queste modalità, puoi tranquillamente lasciare selezionata la modalità Legacy che corrisponde alla fatturazione standard di WHMCS. Tieni presente che tali modalità possono essere utilizzate simultaneamente. Ad esempio puoi utilizzare OneInvoice per il cliente X, OnePayment per Y, Manual per Z ed utilizzare Legacy per tutti gli altri clienti.
Snapshot
In linea con le regole fiscali, i dati personali dei clienti e i loro custom field (per esempio la partite IVA) vengono registrati e salvati al momento della creazione della fattura o della proforma. WHMCS ha già una funzionalità simile pensata per questo scopo ma non è ideale da utilizzare. Per prima cosa WHMCS non immagazzina tutte le informazioni e non c'è modo di modificarle. Billing Extension invece salva tutto il necessario:
- Dettagli cliente
- Custom fields
- Tassi di cambio valuta
- Bilancio credito attuale
- Stato di esenzione dalle tasse
- dettagli VIES
- Documenti correlati (es. rimborsi, note di credito, pagamenti in eccesso)
- Il tuo Profilo azienda
Abbiamo aggiunto anche un'interfaccia da cui gli amministratori possono facilmente modificare gli snapshot e confrontarli con i valori live. Questa interfaccia è integrata direttamente in ogni proforma, fattura o nota di credito e può essere utilzzata per fare uno snapshot manuale.
Tassi di cambio valuta
WHMCS permette la vendita in più valute ed aggiorna automaticamente i tassi di cambio in vigore tuttavia non tiene in memoria l'andamento dei tassi nel corso del tempo. Questo è un problema in quanto per le fatture emesse in valute diverse da quella predefinita dovrebbe essere sempre indicato il tasso di cambio applicato. Facciamo un esempio.
Una fattura di 100 euro viene emessa il primo gennaio quando il tasso di cambio USD/EUR è 1.12. Il cliente la contabilizza il 7 di aprile quando il tasso è diventato 1.09. C'è una differenza di circa 3 euro tra gennaio e aprile.
In genere sono i commercialisti dei tuoi clienti a doversi occupare della variazione dei tassi tuttavia puoi rendere le cose molto più semplici grazie a Billing Extension. Il modulo memorizza i tassi di cambio in vigore ogni giorno in modo da poter inidcare in fattura il tasso applicato come visibile nella seguente immagine (angolo in alto a destra).
Nel caso volessi personalizzare l'aspetto della fattura affinché indichi i prezzi in altre valute, puoi utilizzare il seguente array che è disponibile sia su viewinvoice.tpl (versione HTML) che su invoicepdf.tpl (PDF). In basso c'è un esempio basato su un WHMCS che utilizza le valute USD (predefinita), GBP e AUD.
Tutti gli importi della fattura sono inclusi nell'array per permetterti di mostrare ciascun valore in qualsiasi valuta. Se l'array è vuoto significa che non ci sono tassi di cambio disponibili nella data di emissione della fattura. Ora faccio un esempio. Ecco come mostrare il Totale in tutte le valute su viewinvoice.tpl.
Supponiamo di voler mostrare il valore in AUD al fianco di ogni voce fattura. Il codice è leggermente diverso in quanto dobbiamo iterare l'array ma non è così complicato.
Per quanto riguarda invoicepdf.tpl, funziona tutto allo stesso modo. L'unica differenza è che per accedere $bx_currencies dovrai adoperare la sintassi PHP anziché quella Smarty. Ad esempio {$bx_currencies.GBP.total} in PHP diventa $bx_currencies['GBP']['total']. Per evitare confusione qui in basso abbiamo "convertito" in PHP l'esempio appena mostrato per le voci fattura.
Tax ID di WHMCS
A partire dalla versione 7.7 di WHMCS rilasciata il 13 febbraio 2019, c'è un nuovo campo chiamato Tax ID utilizzato per memorizzare il Tax ID del cliente (partita IVA o codice fiscale). Ci sono voluti più di 10 anni per vedere la sua introduzione in WHMCS ma abbiamo preso la decisione di non utilizzarlo ai fini della fatturazione per le seguenti ragioni:
- Billing Extension già gestisce il Tax ID dal 2014
- Il VIES integrato in WHMCS presenta difetti e non è completo
- Di tanto in tanto WHMCS prende decisioni inspiegabili che potrebbero compromettere la corretta fatturazione nel caso in cui venga coinvolto il Tax ID
- L'idea di basare cose come l'ABN o la fatturazione elettronica su un campo che WHMCS potrebbe modificare senza preavviso è spaventosa
Ciò detto, per le aziende Europee ed Australiane continueremo ad affidarci ad un Client Custom Field per quanto concerne il Tax ID. Il Tax ID standard di WHMCS verrà utilizzato solo per gli altri paesi.
Soppressione fatture
Questa funzionalità può essere utile per ridurre il numero di fatture facendoti risparmaire ore di lavoro e denaro. In certi casi WHMCS crea fatture a importo zero. Ciò succede anche quando i clienti ordinano servizi gratuiti, utilizzano codici sconto del 100% oppure pagano una fattura interamente con credito utente. Nella maggior parte dei paesi tutte queste fatture possono essere soppresse dato che non sussistono pagamenti. Prima di abilitare una qualsiasi di queste funzionalità, ti consigliamo di consultare il tuo commercialista.
Quando l'Anti-frode è attivo i nuovi clienti (quelli ai quali non è stata emessa ancora alcuna fattura) non ricevono alcuna fattura anche quando si utilizzano metodi di pagamento immediati come PayPal o carta di credito. Billing Extension sposta temporaneamente i pagamenti nella pagina Fatturazione da dove è possibile generare le fatture manualmente quando è stata verificata la regolarità dell'ordine. L'Anti-Fraud non si applica sui clienti già registrati e su quelli che sono già stati verificati in precedenza.
Notifica soppressione
Quando una fattura viene soppressa, Billing Extension sopprime anche l'invio delle eventuali notifiche email ad essa collegate al fine di evitare confusione nei clienti che altrimenti riceverebbero notifiche riguardanti fatture che non esistono più.
{$suppress_reason} contiene il motivo per il quale la fattura è stata soppressa. Nel momento in cui scriviamo, può assumere i seguenti valori:
- FullDiscount quando uno sconto del 100% è applicato alla fattura ed hai scelto di sopprimerla
- NoAmount quando la fattura è a importo zero ed hai scelto di sopprimerla
- FullCredit quando la fattura è saldata interamente con credito ed hai scelto di sopprimerla
- AddFunds quando la fattura è una ricarica credito ed hai scelto di sopprimerla
- OneInvoice quando OneInvoice è in uso
L'altra variabile utilizzable è {$suppress_invoice} che assume i seguenti valori:
- Skip quando a seconda delle tue impostazioni la generazione della fattura non è necessaria
- No quando la generazione della fattura è stata rimandata ad un momento successivo (es. OneInvoice)
Pagamenti in eccesso
Potrebbe sembrare che i pagamenti in eccesso siano un'eventualità rara ma in realtà si verificano piuttosto di frequente. A volte i clienti dimenticano di aver già pagato o di avere attivo un pagamento automatico con PayPal. Altre volte pur avendo distetto i servizi dimenticano di eliminare le sottoscrizioni per i pagamenti automatici. Quando si verificano questi episodi WHMCS non li gestisce in modo corretto.In secondo luogo WHMCS converte il pagamento in eccesso in credito utente. Il principio sarebbe anche corretto ma purtroppo questa "conversione" non lascia traccia ed è basata su un calcolo errato delle tasse e degli importi. Scopriamo come questa funzione di Billing Extension può venirti in aiuto.
L'altro scenario possibile è che il cliente paga da subito la proforma con un pagamento in eccesso. In questo caso non c'è bisogno di creare una nuova fattura. Il modulo aggiorna la proforma pagata in eccesso prima che sia convertita in fattura, aggiungendo una nuova voce.
Sottolineiamo che i pagamenti in eccesso possono essere tassati a seconda delle regole di tassazione. Inoltre se applichi le tasse sulle fatture di ricarica credito, Billing Extension si assicura che il cliente riceva nel suo bilancio credito l'importo corretto (al netto delle tasse).
Visualizzazione tasse
WHMCS mostra la riga delle tasse in fattura solo quando il valore è maggiore di zero. In alcuni paesi la legge impone che questa voce sia sempre visibile in fattura, anche quando l'importo delle tasse è pari a zero. Se sei in uno di questi paesi, attiva questa opzione.Numeri di riferimento
Per una serie di ragioni (es. OneInvoice) Billing Extension potrebbe sopprimere l'emissione delle fatture per generarle separatamente in un secondo momento. Quando ciò si verifica, diciamo che la fattura è stata soppressa.Sebbene si tratti di un procedimento assolutamente normale, i clienti potrebbero avere qualche difficoltà non avendo più i riferimenti delle proforma originarie. La funzione Numeri di riferimento si occupa proprio di questo facendo in modo che le voci fattura matengano il riferimento al numero originario della proforma come visibile nell'esempio qui in basso.
Il numero di riferimento è disponibile anche sulle fatture e le note di credito standard utilizzando le seguenti variabili:
- Per viewinvoice.tpl {$reference_proformanum}
- Per invoicepdf.tpl $reference_proformanum
Tieni presente che il numero di riferimento è presente solo sulle fatture e le note di credito dal momento che non avrebbe senso mostrarlo sulle proforma. Il testo multi-lingua può essere personalizzato effettuando l'overriding della seguente variabile della lingua.
$_ADDONLANG['hook']['clientsdetails']['invoice']['referencenum'] = '(Proforma #%proformanum)';
Comprendiamo che la modifica di invoicepdf.tpl è difficoltosa in quanto che utilizza la sintassi TCPDF pertanto ti mostriamo come ottenere il seguente risultato.
Questo è lo snippet completo da utilizzare subito dopo la sezione Invoice Header.
$pdf->SetFont($pdfFont, 'B', 15);
$pdf->SetFillColor(239);
$pdf->Cell(0, 8, $pagetitle, 0, 0, 'L', '1');
$pdf->SetFont($pdfFont, '', 8);
$pdf->Cell(0, 6, $reference_proformanum, 0, 0, 'R', '1');
$pdf->Ln(8);
Commenti (0)