It is more of a credit card security and not technical issue.
What I mean was, security code like CVV is not stored as part of the
credit card info. CVV code can only be entered by the customer at the
time of checkout. There is no way to authorize the new card as security
code is not stored.
Raj
BJ Freeman wrote:
By using SECAS you can check for the fields that are passed.
if the cc provider provides the CVV code it can be check and then the
same service that is called by the reject code can be called by the SECAS.
here is an example:
here is how a rule looks in ofbiz
<eca service="createPaymentFromPreference" event="return" >
<condition field-name="gatewayAvsResult" operator="equals"
value="XXU"/>
<set field-name="statusId" value="ORDER_FraudCheck"/>
<action service="ChangeStatus" mode="async"/>
</eca>
Your second suggestion can be done, but also takes more consideration as
to how to Flag that type of operation, or just hard code it.
Raj Saini sent the following on 2/12/2008 10:14 PM:
If I am getting it correctly, it is possible to have store setting
(something like nsfRetry) that not to retry the CC. If CC is declined,
customer will be sent back to the payment page again where customer can
enter the new credit card detail. He/she does not need to renter the
order. This is how it is working for me.
Alternatively, you can send a mail on order rejection to customer and
asking them to add/modify the credit card. On next CC retry new card
should be used. Though, I am not sure how it can work with CVV.
Raj
BJ Freeman wrote:
maybe a way to approach this is to allow a parm that can be set for the
store so the process is changed if the card is declined and send the
customer back so they can enter a new CC.
Dave Tenerowicz sent the following on 2/12/2008 12:21 PM:
Sorry, perhaps I was not clear. The issue is not retrying the same CC,
it is using a new CC to pay for the order
The scenario is that the card is declined and will never be authorized.
The Customer wants to place the order and the order taker simply wants
to use a DIFFERENT credit card number to pay for the order. As things
function out of the box, the only recourse for the user is to re-enter
the order (again) and associate it with a different payment method (CC
or other). This is what we need to avoid - it is too cumbersome for the
user
Thanks for any suggestions
-Dave
BJ Freeman wrote:
there is a service retryFailedAuthNsfs
it is automatically run every day.
https://demo.hotwaxmedia.com/webtools/control/availableServices?sel_service_name=retryFailedAuthNsfs
needsNsfRetry is set in the OrderPaymentPreference
look in
applications/Accounting/src/org/ofbiz/accounting/payment/PaymentGatewayServices.java
Dave Tenerowicz sent the following on 2/12/2008 10:28 AM:
In order to test default functionality when a credit card payment
on an
order is declined, we changed the settings in Product Store, Payments
tab for Payment Auth service to alwaysDeclineCCProcessor.
Then we tested by creating an order and submitting a CC# as a payment
method. Of course the CC was declined, and the Order status was set to
ORDER_REJECTED, OrderITemStatus was also set to rejected. Since
there is
no valid status change allowed from ORDER_REJECTED to anything else,
there appears to be no way to take the existing order, assign a new
paymentMethodId and reattempt authorization with a different credit
card. Is this true?
To remedy this, we could add an entry to StatusValidChange that
allows a
movement from ORDER_REJECTED back to ORDER_APPROVED, modify secas.xml
and theoretically that should allow the user to select an alternate
payment method from the Order Detail screen and reprocess payment.
Is this the best way to handle this? The requirement is to allow an
order taker to switch to a different credit card if the first one is
declined - without having to completely re-enter the order.
If anyone has encountered this before, or has a suggestion about an
approach, that would be most welcome. Thanks