manually enter a paypal payment, RT#85603
[freeside.git] / FS / FS / Conf.pm
index 393f068..73ec5bc 100644 (file)
@@ -775,7 +775,7 @@ my $validate_email = sub { $_[0] =~
   {
     'key'         => 'credit-card-surcharge-percentage',
     'section'     => 'credit_cards',
-    'description' => 'Add a credit card surcharge to invoices, as a % of the invoice total.  WARNING: Although recently permitted to US merchants in general, specific consumer protection laws may prohibit or restrict this practice in California, Colorado, Connecticut, Florda, Kansas, Maine, Massachusetts, New York, Oklahome, and Texas.  Surcharging is also generally prohibited in most countries outside the US, AU and UK.  When allowed, typically not permitted to be above 4%.',
+    'description' => 'Add a credit card surcharge to invoices, as a % of the invoice total.  WARNING: Although permitted to US merchants in general since 2013, specific consumer protection laws may prohibit or restrict this practice in California, Colorado, Connecticut, Florda, Kansas, Maine, Massachusetts, New York, Oklahoma, and Texas.  Surcharging is also generally prohibited in most countries outside the US, AU and UK.  When allowed, typically not permitted to be above 4%.',
     'type'        => 'text',
     'per_agent'   => 1,
   },
@@ -783,7 +783,7 @@ my $validate_email = sub { $_[0] =~
   {
     'key'         => 'credit-card-surcharge-flatfee',
     'section'     => 'credit_cards',
-    'description' => 'Add a credit card surcharge to invoices, as a flat fee.  WARNING: Although recently permitted to US merchants in general, specific consumer protection laws may prohibit or restrict this practice in California, Colorado, Connecticut, Florda, Kansas, Maine, Massachusetts, New York, Oklahome, and Texas.  Surcharging is also generally prohibited in most countries outside the US, AU and UK.  When allowed, typically not permitted to be above 4%.',
+    'description' => 'Add a credit card surcharge to invoices, as a flat fee.  WARNING: Although permitted to US merchants in general since 2013, specific consumer protection laws may prohibit or restrict this practice in California, Colorado, Connecticut, Florda, Kansas, Maine, Massachusetts, New York, Oklahoma, and Texas.  Surcharging is also generally prohibited in most countries outside the US, AU and UK.  When allowed, typically not permitted to be above 4%.',
     'type'        => 'text',
     'per_agent'   => 1,
   },
@@ -2005,6 +2005,7 @@ and customer address. Include units.',
                        '25-starttls'  => 'STARTTLS (port 25)',
                        '587-starttls' => 'STARTTLS / submission (port 587)',
                        '465-tls'      => 'SMTPS (SSL) (port 465)',
+                       '2525'         => 'None (Non-standard port 2525)',
                      ],
   },
 
@@ -2671,7 +2672,7 @@ and customer address. Include units.',
     'section'     => 'payments',
     'description' => 'Available payment types.',
     'type'        => 'selectmultiple',
-    'select_enum' => [ qw(CARD DCRD CHEK DCHK) ], #BILL CASH WEST MCRD MCHK PPAL) ],
+    'select_enum' => [ qw(CARD DCRD CHEK DCHK PPAL) ], #BILL CASH WEST MCRD MCHK PPAL) ],
   },
 
   {
@@ -2683,6 +2684,17 @@ and customer address. Include units.',
   },
 
   {
+    'key'         => 'processing-fee_on_separate_invoice',
+    'section'     => 'payments',
+    'description' => 'Places the processing fee on a separate invoice by itself.  Only works with real time processing.',
+    'type'        => 'checkbox',
+    'validate'    => sub {
+                        my $conf = new FS::Conf;
+                        !$conf->config('batch-enable_payby') ? '' : 'You can not set this option while batch processing is enabled.';
+                     },
+  },
+
+  {
     'key'         => 'banned_pay-pad',
     'section'     => 'credit_cards',
     'description' => 'Padding for encrypted storage of banned credit card hashes.  If you already have new-style SHA512 entries in the banned_pay table, do not change as this will invalidate the old entries.',
@@ -3840,6 +3852,11 @@ and customer address. Include units.',
     'description' => 'Enable batch processing for the specified payment types.',
     'type'        => 'selectmultiple',
     'select_enum' => [qw( CARD CHEK )],
+    'validate'    => sub {
+                        ## can not create a new invoice and pay it silently with batch processing, only realtime processing.
+                        my $conf = new FS::Conf;
+                        !$conf->exists('processing-fee_on_separate_invoice') ? '' : 'You can not enable batch processing while processing-fee_on_separate_invoice option is enabled.';
+                     },
   },
 
   {
@@ -4186,6 +4203,13 @@ and customer address. Include units.',
   },
 
   {
+    'key'         => 'dashboard-topnotes',
+    'section'     => 'UI',
+    'description' => 'Note to display on the top of the front page',
+    'type'        => 'textarea',
+  },
+
+  {
     'key'         => 'dashboard-toplist',
     'section'     => 'UI',
     'description' => 'List of items to display on the top of the front page',
@@ -5122,7 +5146,7 @@ and customer address. Include units.',
   {
     'key'         => 'cdr-charged_party-field',
     'section'     => 'telephony',
-    'description' => 'Set the charged_party field of CDRs to this field.',
+    'description' => 'Set the charged_party field of CDRs to this field.  Restart Apache and Freeside daemons after changing.',
     'type'        => 'select-sub',
     'options_sub' => sub { my $fields = FS::cdr->table_info->{'fields'};
                            map { $_ => $fields->{$_}||$_ }
@@ -5138,14 +5162,14 @@ and customer address. Include units.',
   {
     'key'         => 'cdr-charged_party-accountcode',
     'section'     => 'telephony',
-    'description' => 'Set the charged_party field of CDRs to the accountcode.',
+    'description' => 'Set the charged_party field of CDRs to the accountcode.  Restart Apache and Freeside daemons after changing.',
     'type'        => 'checkbox',
   },
 
   {
     'key'         => 'cdr-charged_party-accountcode-trim_leading_0s',
     'section'     => 'telephony',
-    'description' => 'When setting the charged_party field of CDRs to the accountcode, trim any leading zeros.',
+    'description' => 'When setting the charged_party field of CDRs to the accountcode, trim any leading zeros.  Restart Apache and Freeside daemons after changing.',
     'type'        => 'checkbox',
   },
 
@@ -5243,7 +5267,7 @@ and customer address. Include units.',
   {
     'key'         => 'cdr-max_duration',
     'section'     => 'telephony',
-    'description' => 'If set, defines a global maximum billsec/duration for (prefix-based) call rating, in seconds.  Used with questionable/dirty CDR data that may contain bad records with long billsecs/durations.',
+    'description' => 'If set, defines a global maximum billsec/duration for (prefix-based) call rating, in seconds.  Used with questionable/dirty CDR data that may contain bad records with long billsecs/durations.  Restart Apache and Freeside daemons after changing.',
     'type'        => 'text',
   },
 
@@ -5771,14 +5795,14 @@ and customer address. Include units.',
   {
     'key'         => 'cdr-prerate',
     'section'     => 'telephony',
-    'description' => 'Experimental feature to rate CDRs immediately, rather than waiting until invoice generation time.  Can reduce invoice generation time when processing lots of CDRs.  Currently works with "VoIP/telco CDR rating (standard)" price plans using "Phone numbers (svc_phone.phonenum)" CDR service matching, without any included minutes.',
+    'description' => 'Experimental feature to rate CDRs immediately, rather than waiting until invoice generation time.  Can reduce invoice generation time when processing lots of CDRs.  Currently works with "VoIP/telco CDR rating (standard)" price plans using "Phone numbers (svc_phone.phonenum)" CDR service matching, without any included minutes.  Restart Apache and Freeside daemons after changing.',
     'type'        => 'checkbox',
   },
 
   {
     'key'         => 'cdr-prerate-cdrtypenums',
     'section'     => 'telephony',
-    'description' => 'When using cdr-prerate to rate CDRs immediately, limit processing to these CDR types.',
+    'description' => 'When using cdr-prerate to rate CDRs immediately, limit processing to these CDR types.  Restart Apache and Freeside daemons after changing.',
     'type'        => 'select-sub',
     'multiple'    => 1,
     'options_sub' => sub { require FS::Record;
@@ -5812,7 +5836,7 @@ and customer address. Include units.',
   {
     'key'         => 'cdr-lrn_lookup',
     'section'     => 'telephony',
-    'description' => 'Look up LRNs of destination numbers for exact matching to the terminating carrier.  This feature requires a Freeside support contract for paid access to the central NPAC database; see <a href ="#support-key">support-key</a>.',
+    'description' => 'Look up LRNs of destination numbers for exact matching to the terminating carrier.  This feature requires a Freeside support contract for paid access to the central NPAC database; see <a href ="#support-key">support-key</a>.  Restart Apache and Freeside daemons after changing.',
     'type'        => 'checkbox',
   },
   
@@ -5997,15 +6021,22 @@ and customer address. Include units.',
 
   {
     'key'         => 'agent-disable_counts',
-    'section'     => 'scalability',
+    'section'     => 'deprecated',
     'description' => 'On the agent browse page, disable the customer and package counts.  Typically used for very large installs when this page takes too long to render.',
     'type'        => 'checkbox',
   },
 
   {
+    'key'         => 'config-disable_counts',
+    'section'     => 'scalability',
+    'description' => 'Disable the customer and package counts on the Agents, Packages, and Services pages. Use for very large installs where these pages take too long to render.',
+    'type'        => 'checkbox',
+  },
+
+  {
     'key'         => 'tollfree-country',
     'section'     => 'telephony',
-    'description' => 'Country / region for toll-free recognition',
+    'description' => 'Country / region for toll-free recognition.  Restart Apache and Freeside daemons after changing.',
     'type'        => 'select',
     'select_hash' => [ ''   => 'NANPA (US/Canada)',
                        'AU' => 'Australia',
@@ -6041,6 +6072,34 @@ and customer address. Include units.',
     'type'        => 'checkbox',
   },
 
+  {
+    'key'         => 'deposit_slip-bank_name',
+    'section'     => 'payments', #XXX payment_deposit_slips
+    'description' => 'Bank name to print on check deposit slips',
+    'type'        => 'text',
+  },
+
+  {
+    'key'         => 'deposit_slip-bank_address',
+    'section'     => 'payments', #XXX payment_deposit_slips
+    'description' => 'Bank address to print on check deposit slips',
+    'type'        => 'textarea',
+  },
+
+  {
+    'key'         => 'deposit_slip-bank_routingnumber',
+    'section'     => 'payments', #XXX payment_deposit_slips
+    'description' => '9 digit bank routing number to print on check deposit slips',
+    'type'        => 'text',
+  },
+
+  {
+    'key'         => 'deposit_slip-bank_accountnumber',
+    'section'     => 'payments', #XXX payment_deposit_slips
+    'description' => 'Bank account number to print on check deposit slips',
+    'type'        => 'text',
+  },
+
 
   # for internal use only; test databases should declare this option and
   # everyone else should pretend it doesn't exist