fix Text::Template link
[freeside.git] / httemplate / docs / billing.html
index dcb9020..1d6f8c4 100644 (file)
@@ -4,36 +4,28 @@
 <body>
   <h1>Billing</h1>
   <ul>
-    <li>To enable billing, you <b>must</b> create an <a href="config.html#invoice_template">invoice_template</a> configuration file.  An example file is available in the <i>conf/</i> directory of the distribution.  You also need to create an <a href="config.html#lpr">lpr</a> configuration file to enable postal invoices.
-    <ul>
-      <li>Optional: Invoice template customization
-        <ul>
-          <li>See the <a href="http://search.cpan.org/doc/MJD/Text-Template-1.42/Template.pm">Text::Template</a> documentation for details on the substitution language.
-          <li>You <b>must</b> call the invoice_lines() function at least once - pass it a number of lines, and it returns a list of array references, each of two elements: a service description column, and a price column.
-          <li>In addition, the following variables are available:
-            <ul>
-              <li>$invnum - invoice number
-              <li>$date - as a UNIX timestamp (see <a href="http://search.cpan.org/doc/GBARR/TimeDate-1.09/lib/Date/Format.pm">Date::Format</a> for conversion functions).
-              <li>$page - current page
-              <li>$total_pages - total pages
-              <li>@address - A six-element array containing the customer name, company, and address.
-              <li>$overdue - true if this invoice is overdue
-            </ul>
-        </ul>
-    </ul>
     <li>You can bill individual customers by clicking on the <i>Bill now</i> link on the main customer view.
-    <li> The <b>freeside-bill</b> script can be run daily to bill all customers. (link to manpage!)  Usage:<pre>freeside-bill [ -c [ -p ] [ -a ] [ -i ] ] [ -d <i>date</i> ] <i>user</i></pre>
+    <li>The <a href="man/bin/freeside-daily.html"><b>freeside-daily</b></a> script should be run daily to bill customers and run invoice collection events.
+    <li>Real-time credit card processing: Install the <a href="http://search.cpan.org/search?mode=module&query=Business%3A%3AOnlinePayment">Business::OnlinePayment</a> module for your processor.  Configure the <a href="../config/config-view.cgi#business-onlinepayment">business-onlinepayment</a> configuration option.  Disable the default <b>Batch card</b> <a href="../browse/part_bill_event.cgi">invoice event</a> and add one for Business::OnlinePayment.
+    <li>Optional: Credit card expiration alerts: Customize <a href="../config/config.cgi#alerter_template">alerter_template</a> configuration option and run <a href="man/bin/freeside-expiration-alerter.html">freeside-expiration-alerter</a> daily.
+    <li>Credit card decline alerts: Customize the <a href="../config/config.cgi#declinetemplate">declinetemplate</a> configuration option and set the <a href="../config/config.cgi#emaildecline">emaildecline</a> configuration option.
+    <li>Optional: Invoice template customization
       <ul>
-        <li>-c: Turn on collecting (you probably want this).
-        <li>-p: Apply unapplied payments and credits before collecting (you probably want this too)
-        <li>-a: Call collect even if there isn't a new invoice (probably a bad idea for daily use)
-        <li>-i: Real-time billing (as opposed to bacth billing).  Only relevant for credit cards.
-        <li>-d: Pretend it is <i>date</i> (parsed by <a href="http://search.cpan.org/doc/GBARR/TimeDate-1.09/lib/Date/Parse.pm">Date::Parse</a>)
-        <li>user: as setup with freeside-adduser
+        <li>See the <a href="http://search.cpan.org/~mjd/Text-Template/lib/Text/Template.pm">Text::Template</a> documentation for details on the substitution language.
+        <li>You <b>must</b> call the invoice_lines() function at least once - pass it a number of lines, and it returns a list of array references, each of two elements: a service description column, and a price column.  Alternatively, call invoice_lines() with no arguments, and pagination will be disabled - all invoice line items will print on one page, with no padding (recommended for email invoices).
+        <li>In addition, the following variables are available:
+          <ul>
+            <li>$invnum - invoice number
+            <li>$date - as a UNIX timestamp (see <a href="http://search.cpan.org/doc/GBARR/TimeDate-1.09/lib/Date/Format.pm">Date::Format</a> for conversion functions).
+            <li>$page - current page
+            <li>$total_pages - total pages
+            <li>@address - A six-element array containing the customer name, company, and address.
+<!--            <li>$overdue - true if this invoice is overdue -->
+          </ul>
       </ul>
-      <br><br>Batch credit card processing
+    <li>Batch credit card processing
       <ul>
-        <li>After this script is run, a credit card batch will be in the <a href="schema.html#cust_pay_batch">cust_pay_batch</a> table.  Export this table to your credit card batching.
+        <li>After <a href="man/bin/freeside-daily.html"><b>freeside-daily</b></a> is run, a credit card batch will be in the <a href="schema.html#cust_pay_batch">cust_pay_batch</a> table.  Export this table to your credit card batching.
         <li>When your batch completes, erase the cust_pay_batch records in that batch and add any necessary paymants to the <a href="schema.html#cust_pay">cust_pay</a> table.  Example code to add payments is:
         <pre>use FS::cust_pay;
 
@@ -55,16 +47,8 @@ if ( $error ) {
 
 # end loop
 </pre>
-All fields except paybatch are contained in the cust_pay_batch table.  You can use paybatch field to track particular batches and/or particular transactions within a batch.<br><br>
-        <li>The <b>freeside-print-batch</b> script can print or email pending credit card batches for manual entry.  Usage: freeside-print-batch [-v] [-p] [-e] [-a] [-d] <i>user</i>
-          <ul>
-            <li>-v: Verbose - Prints records to STDOUT.
-            <li>-p: Print to printer lpr as found in the conf directory.
-            <li>-e: Email output to user found in the Conf email file.
-            <li>-a: Automatically pays all records in cust_pay_batch.  Use -d with this option usually.
-            <li>-d: Delete - Pays account and deletes record from cust_pay_batch.
-          </ul>
-      </ul>
-    <li>The <b>freeside-overdue</b> script can list, add postal invoicing, suspend or cancel overdue and/or expired accounts (link to manpage!).
+All fields except paybatch are contained in the cust_pay_batch table.  You can use paybatch field to track particular batches and/or particular transactions within a batch.
+    </ul>
+<!--      <li>The <a href="man/bin/freeside-print-batch.html"><b>freeside-print-batch</b></a> script can print or email pending credit card batches for manual entry. -->
   </ul>
 </body>