'supported_types' => [ qw( CC ECHECK ) ],
'token_support' => 0, #card storage/tokenization support
'test_transaction' => 0, #set true if ->test_transaction(1) works
+ 'partial_auth' => 0, #can gateway partial auth (new in 3.04)
'supported_actions' => [
'Normal Authorization',
'Authorization Only',
};
}
- # or a more complicated case:
+ # or a more complicated case with module_notes, different supported actions
+ # per type, and special void requirements:
sub _info {
{
'supported_types' => [ qw( CC ECHECK ) ],
'token_support' => 1,
'test_transaction' => 1,
+ 'partial_auth' => 1, #can gateway partial auth (new in 3.04)
'supported_actions' => { 'CC' => [
'Normal Authorization',
'Authorization Only',
],
},
'CC_void_requires_card' => 1,
+ #? 'CC_reverse_auth_requires_txn_date' => 1,
'ECHECK_void_requires_account' => 1, #routing_code, account_number, name
};
}
- Declare this in your "sub _info" introspection subroutine:
'partial_auth' => 1,
- - Add "partial_auth_amount to your build_subs call in set_defaults, or add
+ - Add "partial_auth_amount" to your build_subs call in set_defaults, or add
one:
$self->build_subs('partial_auth_amount');
return is_success 0.
+ If this transaction flag is set, the application can handle a partial
authorization. Make sure the flag to enable them is passed to the
- gateway, if necessary. When a partial authorization is received, the
- amount must be returned as "partial_auth_amount":
+ gateway, if necessary. When a partial authorization is received, return
+ is_success 1, and the amount as "partial_auth_amount":
$self->partial_auth_amount( $partial_amount );
For normal full authorizations, "partial_auth_amount" must not be set.