Subject: | use of password (not transaction_key) is required not optional per B::OP "spec" |
Testing this module with Business::OnlinePayment 3.00_05 I find that
B::OP the documentation that says:
Content required: type, login, password|transaction_key, action,
amount, first_name, last_name, card_number, expiration.
Isn't really correct as B::OP requires password to be set and if called
without the password in the content() the following error is returned
via croak():
missing required field(s): password
There are perhaps two issues here:
* B::OP::required_fields() uses this check (which assumes subclasses
will put password in $self->content() (is this a valid assumption?):
push(@missing, $_) unless exists $content{$_};
* B::OP::AuthorizeNet doesn't set content{password} if transaction_key
is given.