Add txn_date to return fields (and build_subs)
[Business-OnlinePayment.git] / OnlinePayment.pm
index c5ed1bd..b4404fe 100644 (file)
@@ -6,7 +6,7 @@ use Carp;
 
 require 5.005;
 
-$VERSION = '3.04_01';
+$VERSION = '3.05_01';
 $VERSION = eval $VERSION; # modperlstyle: convert the string into a number
 
 # Remember subclasses we have "wrapped" submit() with _pre_submit()
@@ -19,6 +19,7 @@ my @methods = qw(
     failure_status
     fraud_detect
     is_success
+    partial_auth_amount
     maximum_risk
     path
     port
@@ -35,6 +36,7 @@ my @methods = qw(
     response_page
     avs_code
     cvv2_response
+    txn_date
 );
 
 __PACKAGE__->build_subs(@methods);
@@ -381,6 +383,16 @@ just a whole or floating point number (i.e. 26, 26.1 or 26.13).
 
 =over 4
 
+=item partial_auth
+
+If you are prepared to handle partial authorizations
+(see L<partial_auth_amount()|/"partial_auth_amount()">
+ in L<TRANSACTION RESULT FIELDS|/"TRANSACTION RESULT FIELDS">),
+pass a true value in this field to enable them.
+
+If this flag is not set, a partial authorization will be immediately reversed
+or voided.
+
 =item description
 
 A description of the transaction (used by some processors to send
@@ -654,6 +666,15 @@ Returns true if the transaction was approved by the gateway, false if
 it was submitted but not approved, or undef if it has not been 
 submitted yet.
 
+=head2 partial_auth_amount()
+
+If this transaction was a partial authorization (i.e. successful, but less than
+the requested amount was processed), then the amount processed is returned in
+this field.
+
+(When is_success is true but this field is empty or 0, that indicates a normal
+full authorization for the entire requested amount.)
+
 =head2 error_message()
 
 If the transaction has been submitted but was not accepted, this
@@ -688,6 +709,11 @@ this if you would like to run inquiries or refunds on the transaction later.
 If supported by your gateway, a card_token can be used in a subsequent
 transaction to refer to a card number.
 
+=head2 txn_date()
+
+Transaction date, as returned by the gateway.  Required by some gateways
+for follow-up transactions.
+
 =head2 fraud_score()
 
 Retrieve or change the fraud score from any Business::FraudDetect plugin
@@ -768,8 +794,8 @@ Croaks if any of the required fields are not present.
 
 =head2 silly_bool( $value )
 
-Returns 0 if the value starts with y, Y, t or T.
-Returns 1 if the value starts with n, N, f or F.
+Returns 1 if the value starts with y, Y, t or T.
+Returns 0 if the value starts with n, N, f or F.
 Otherwise returns the value itself.
 
 Use this for handling boolean content like tax_exempt.