VirtueMart Forum

VirtueMart 2 + 3 + 4 => Plugins: Payment, Shipment and others => Topic started by: GJC Web Design on December 22, 2016, 13:05:43 PM

Title: Native Paypal Payment Pro method (USA & UK)
Post by: GJC Web Design on December 22, 2016, 13:05:43 PM
This is a post concerning the bundled Paypal Payment Pro method that is only used in the USA & UK and needs a Paypal Business account
It renders a credit card form in the checkout, the client doesn't leave the site - in fact they don't even know they are paying by paypal unless u label it

I just post here what I found before the client bailed out

Problems so far are:

  1.  cc number validation script vmcreditcard.js doesn't load
  2.   when fixed(loaded) the script is faulty and validates nothing - last updated 2012
  3.   when e.g. Paypal rejects the submit because of e.g. wrong cc number there is no way to get the Confirm button back - remains on Check Out Now
   4.  in sandbox all cc numbers are auto loaded- ALL auto loaded numbers are WRONG as are the texts and just generate a generic Paypal error that u would never suspect is because the numbers are wrong
   5.  There is no pay by Paypal buttons or routine: only CC fields
   6.  In the standard VM checkout it is almost impossible to get the form to show (with ajax, opc etc settings) - if u do then the form doesn't show when rejected by Paypal for e.g. wrong number - only the name shows with no form


1.
change in  plugins\vmpayment\paypal\paypal\tmpl\creditcardform.php
JHTML::script('vmcreditcard.js', 'components/com_virtuemart/assets/js/', false);
to
vmJsApi::addJScript('/components/com_virtuemart/assets/js/vmcreditcard.js');

vmJsApi could be added in other parts of the plugin

2. there are updated versions here:   http://www.braemoor.co.uk/software/creditcard.shtml

3. up to now found no fix apart from configuring a 2nd payment method to force the choice again so you can access the form again

4. VMPAYMENT_PAYPAL_CC_SANDBOX_INFO contains the wrong cc numbers - if used the return shows a generic error with no mention that the number is incorrect

the correct are:

VMPAYMENT_PAYPAL_CC_SANDBOX_INFO="You are using the sandbox Mode. You can use these Credit Cards Test Numbers<br />Visa: 4111111111111111 / Amex: 378282246310005 / MasterCard: 5555555555554444 / Discover: 6011111111111117"

the auto loaded numbers are also incorrect

in  plugins\vmpayment\paypal\paypal\assets\js\site.js

jQuery().ready(function($) {

$('.cc_type_sandbox').change(function() {
var pmid = $(this).attr('rel');
var cc_type = $('#cc_type_'+pmid).val();
switch (cc_type) {
case 'Visa':
$('#cc_number_'+pmid).val('4111111111111111');
$('#cc_cvv_'+pmid).val('123');
break;
case 'Mastercard':
$('#cc_number_'+pmid).val('65555555555554444');
$('#cc_cvv_'+pmid).val('123');
break;
case 'Amex':
$('#cc_number_'+pmid).val('378282246310005');
$('#cc_cvv_'+pmid).val('1234');
break;
case 'Discover':
$('#cc_number_'+pmid).val('6011111111111117');
$('#cc_cvv_'+pmid).val('123');
                break;
            case 'Maestro':
                $('#cc_number_'+pmid).val('6763318282526706');
                $('#cc_cvv_'+pmid).val('123');
break;
default:
$('#cc_number_'+pmid).val('');
$('#cc_cvv_'+pmid).val('');
}
});


the old numbers may be used in non US countries????

5. you could config the standard Paypal method as well but in the Paypal Payment Pro they definitely show/state that the paypal button should also be part of the credit card form

6. appears to be a combination of the OPC scripts etc .. it will show if a 2nd payment method is configged and a choice is forced
the return is the most problematic ( with the above changes all is working except of course the validation) - as the client is stuck at this point
with correct numbers the payment goes thru, the order is confirmed and Paypal is happy
Title: Re: Native Paypal Payment Pro method (USA & UK)
Post by: Studio 42 on December 23, 2016, 23:12:12 PM
i think that old vmcreditcard.js, was simply a convertion from vm1.1 with some little fixes to do it work, if i remember me.

But i never pay when i don't get redirect to a payment gateway, it's really strange that so many user pay, with such unsecured page(you never know the shop owner) that can save the credit cart number in a database or can be hacked at any time. But this is another problem
Title: Re: Native Paypal Payment Pro method (USA & UK)
Post by: GJC Web Design on December 24, 2016, 13:29:56 PM
QuoteBut i never pay when i don't get redirect to a payment gateway, it's really strange that so many user pay, with such unsecured page(you never know the shop owner) that can save the credit cart number in a database or can be hacked at any time. But this is another problem

Can only agree..  why would I trust to enter my credit card details into a site I know nothing about.. he doesn't even state who the card or bank processor is.. :-\
but shoppers in the US seem very blasé about payment security and the site owner is convinced this is the way to go

BTW  - ended up with the commercial plugin which works but interestingly fails on all the Paypal Sandbox CC numbers that Paypal supply.. 
but works on the a test number supplied by the developer.. hmmmm ...  awaiting the clients real api data so I can test on live cards..
Title: Re: Native Paypal Payment Pro method (USA & UK)
Post by: GJC Web Design on December 24, 2016, 17:35:34 PM
Developer confirmed that the published test card numbers do not work with Paypal Payment Pro.  He gets his from within the developers site..