News:

Support the VirtueMart project and become a member

Main Menu

Native Paypal Payment Pro method (USA & UK)

Started by GJC Web Design, December 22, 2016, 13:05:43 PM

Previous topic - Next topic

GJC Web Design

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
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

Studio 42

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

GJC Web Design

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..
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

GJC Web Design

Developer confirmed that the published test card numbers do not work with Paypal Payment Pro.  He gets his from within the developers site..

GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM4 AusPost Shipping Plugin - e-go Shipping Plugin - VM4 Postcode Shipping Plugin - Radius Shipping Plugin - VM4 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation