backport realtime_collect to 1.7 for SG to use instead of calling collect, RT#5071
[freeside.git] / fs_selfservice / FS-SelfService / SelfService.pm
index 8270508..578ae52 100644 (file)
@@ -33,10 +33,13 @@ $socket .= '.'.$tag if defined $tag && length($tag);
   'list_invoices'             => 'MyAccount/list_invoices', #?
   'cancel'                    => 'MyAccount/cancel',        #add to ss cgi!
   'payment_info'              => 'MyAccount/payment_info',
+  'payment_info_renew_info'   => 'MyAccount/payment_info_renew_info',
   'process_payment'           => 'MyAccount/process_payment',
   'process_payment_order_pkg' => 'MyAccount/process_payment_order_pkg',
+  'process_payment_change_pkg' => 'MyAccount/process_payment_change_pkg',
   'process_payment_order_renew' => 'MyAccount/process_payment_order_renew',
   'process_prepay'            => 'MyAccount/process_prepay',
+  'realtime_collect'          => 'MyAccount/realtime_collect',
   'list_pkgs'                 => 'MyAccount/list_pkgs',     #add to ss (added?)
   'list_svcs'                 => 'MyAccount/list_svcs',     #add to ss (added?)
   'list_svc_usage'            => 'MyAccount/list_svc_usage',   
@@ -59,6 +62,19 @@ $socket .= '.'.$tag if defined $tag && length($tag);
   'agent_logout'              => 'Agent/agent_logout',
   'agent_info'                => 'Agent/agent_info',
   'agent_list_customers'      => 'Agent/agent_list_customers',
+  #sg
+  'ping'                      => 'SGNG/ping',
+  'decompify_pkgs'            => 'SGNG/decompify_pkgs',
+  'previous_payment_info'     => 'SGNG/previous_payment_info',
+  'previous_payment_info_renew_info'
+                              => 'SGNG/previous_payment_info_renew_info',
+  'previous_process_payment'  => 'SGNG/previous_process_payment',
+  'previous_process_payment_order_pkg'
+                              => 'SGNG/previous_process_payment_order_pkg',
+  'previous_process_payment_change_pkg'
+                              => 'SGNG/previous_process_payment_change_pkg',
+  'previous_process_payment_order_renew'
+                              => 'SGNG/previous_process_payment_order_renew',
 );
 @EXPORT_OK = ( keys(%autoload), qw( regionselector expselect popselector domainselector) );
 
@@ -453,10 +469,14 @@ Array reference of all states in the current default country.
 Hash reference of card types; keys are card types, values are the exact strings
 passed to the process_payment function
 
-=item paybatch
+=cut
 
-Unique transaction identifier (prevents multiple charges), passed to the
-process_payment function
+#this doesn't actually work yet
+#
+#=item paybatch
+#
+#Unique transaction identifier (prevents multiple charges), passed to the
+#process_payment function
 
 =back
 
@@ -522,15 +542,19 @@ Card expiration month
 
 Card expiration year
 
-=item paybatch
+=cut
 
-Unique transaction identifier, returned from the payment_info function.
-Prevents multiple charges.
+#this doesn't actually work yet
+#
+#=item paybatch
+#
+#Unique transaction identifier, returned from the payment_info function.
+#Prevents multiple charges.
 
 =back
 
 Returns a hash reference with a single key, B<error>, empty on success, or an
-error message on errors
+error message on errors.
 
 =item process_payment_order_pkg
 
@@ -541,6 +565,16 @@ as parameter with the keys of both methods.
 Returns a hash reference with a single key, B<error>, empty on success, or an
 error message on errors.
 
+=item process_payment_change_pkg
+
+Combines the B<process_payment> and B<change_pkg> functions in one step.  If the
+payment processes sucessfully, the package is ordered.  Takes a hash reference
+as parameter with the keys of both methods.
+
+Returns a hash reference with a single key, B<error>, empty on success, or an
+error message on errors.
+
+
 =item process_payment_order_renew
 
 Combines the B<process_payment> and B<order_renew> functions in one step.  If
@@ -565,6 +599,10 @@ Returns a hash reference containing customer package information.  The hash refe
 
 Customer number
 
+=item error
+
+Empty on success, or an error message on errors.
+
 =item cust_pkg HASHREF
 
 Array reference of hash references, each of which has the fields of a cust_pkg
@@ -611,21 +649,7 @@ already provisioned for this specific cust_pkg.  Each has the following keys:
 
 =item label
 
-Array reference with three elements:
-
-=over 4
-
-=item
-
-Name of this service
-
-=item
-
-Meaningful user-specific identifier for the service (i.e. username, domain or mail alias)
-
-=item
-
-Table name of this service
+Array reference with three elements: The first element is the name of this service.  The second element is a meaningful user-specific identifier for the service (i.e. username, domain or mail alias).  The last element is the table name of this service.
 
 =back
 
@@ -635,11 +659,11 @@ Primary key for this service
 
 =item svcpart
 
-Service definition (part_pkg)
+Service definition (see L<FS::part_svc>)
 
 =item pkgnum
 
-Customer package (cust_pkg)
+Customer package (see L<FS::cust_pkg>)
 
 =item overlimit
 
@@ -649,12 +673,6 @@ Blank if the service is not over limit, or the date the service exceeded its usa
 
 =back
 
-=item error
-
-Empty on success, or an error message on errors.
-
-=back
-
 =item list_svcs
 
 Returns service information for this customer.
@@ -693,6 +711,8 @@ mail alias).
 
 Account (svc_acct) services also have the following keys:
 
+=over 4
+
 =item username
 
 Username
@@ -785,6 +805,31 @@ Returns a hash reference with a single key, B<error>, empty on success, or an
 error message on errors.  The special error '_decline' is returned for
 declined transactions.
 
+=item change_pkg
+
+Changes a package for this customer.
+
+Takes a hash reference as parameter with the following keys:
+
+=over 4
+
+=item session_id
+
+Session identifier
+
+=item pkgnum
+
+Existing customer package.
+
+=item pkgpart
+
+New package to order (see L<FS::part_pkg>).
+
+=back
+
+Returns a hash reference with a single key, B<error>, empty on success, or an
+error message on errors.  
+
 =item renew_info
 
 Provides useful info for early renewals.
@@ -832,6 +877,20 @@ Specified as a integer UNIX timestamp.
 Renewal date as a human-readable string.  (Convenience for display;
 subject to change, so best not to parse for the date.)
 
+=item pkgnum
+
+Package that will be renewed.
+
+=item expire_date
+
+Expiration date of the package that will be renewed.
+
+=item expire_date_pretty
+
+Expiration date of the package that will be renewed, as a human-readable
+string.  (Convenience for display; subject to change, so best not to parse for
+the date.)
+
 =back
 
 =item order_renew
@@ -1542,14 +1601,23 @@ Note: Resellers can also use the B<signup_info> and B<new_customer> functions
 with their active session, and the B<customer_info> and B<order_pkg> functions
 with their active session and an additional I<custnum> parameter.
 
+For the most part, development of the reseller web interface has been
+superceded by agent-virtualized access to the backend.
+
 =over 4
 
 =item agent_login
 
+Agent login
+
 =item agent_info
 
+Agent info
+
 =item agent_list_customers
 
+List agent's customers.
+
 =back
 
 =head1 BUGS