News:

Looking for documentation? Take a look on our wiki

Main Menu

directed to paypal after hitting "next"

Started by steelduck, February 15, 2011, 22:38:40 PM

Previous topic - Next topic

steelduck

hi,
i am using vm 1.1.7 and joomla 1.5.22 and i am currently testing paypal sandbox.

i encountered a similar problem as described here:
http://forum.virtuemart.net/index.php?topic=81085.0

i am directed to paypal after hitting "next" - and not after "confirm order" (where the buyer is supposed to confirm terms and conditions as well).

going through the test payment i am redirected to the "confirm order" screen with a couple of failure messages or alternatively receiving them directly after hitting the pay button in paypal.

Failure messages as below:
Info: the address was added by the user
failure: payment failed. choose annother payment method.


Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/classes/payment/ps_paypal_api.php on line 663

line 663: if(in_array('CHECK_OUT_GET_PAYMENT_METHOD', $checkout_steps[$current_stage]))

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/classes/payment/ps_paypal_api.php on line 663

the same?

Fatal error: Call to a member function url() on a non-object in /administrator/components/com_virtuemart/classes/payment/ps_paypal_api.php on line 679

line 679: if(in_array('CHECK_OUT_GET_PAYMENT_METHOD', $checkout_steps[$current_stage]))


and of course the credit card option showing up, as mentioned somewhere as well.


as far as i understand from the other post - the solution is vantage technic's paypal module? or is this one obsolete since i am using the latest version of vm?

thanx for your help

piperpilot

Directing to PayPal before the final confirmation screen is actually proper according to the flow that is programmed in.  This is leveraging the "Express Checkout" option of paypal.  After the user confirms all of the information on paypal and returns to your site to accept the terms and conditions, the payment is processed.  If they never accept your Ts & Cs and confirm, then the payment is never processed.

As for your errors...that I can't really see what is going on.

steelduck

thanx for your answer.

that is strange, i have never encountered a shop where i had to pay before confirmation of the order.

is it possible to change that? i want buyers to comfirm first and pay after. perhaps even skip the first page, since its the same on the second only with the choice of payment method additionally.

do you think that: One Page Checkout for Virtuemart could solve the problems, without much hassle?

 


zanardi

Strange as it sounds, this is how PayPal Express Checkout works. I think you can handle this by putting Payment selection and Order confirmation in the same page. You can do that in Virtuemart -> Configuration -> Checkout: insert same number for "Show on step:" for last two options.
--
Francesco (zanardi)
http://extensions.gibilogic.com
@gibilogic on Twitter

steelduck

yes that puts it all on the second step. and it would be great like that if it only would work.

what i find strange is that it seems to have a life on its own. one time the paypal express button shows up (its set on no) and another time it doesnt. and i dont want it at all since i want the buyer to be transferred to paypal after confirmation of the order.

same is with the whole payment process. one time i get through the paypal payment and back to where i started from (a loop) and recently i just get a whole page of error messages as you can see below.

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/classes/payment/ps_paypal_api.php on line 944

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/classes/payment/ps_paypal_api.php on line 980

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 149

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 159

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 182

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 280

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 287

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 295

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 311

Warning: Invalid argument supplied for foreach() in /administrator/components/com_virtuemart/html/checkout.index.php on line 319

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 335

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /administrator/components/com_virtuemart/html/checkout.index.php on line 345


hope they tell you something.

well it didnt work before either but now it seems to add to the problem that it probably wants to come back to the confirm order step, which i finished before being transferred to paypal.

i really would like to have it all in one step and working, how can i get it out of the loop?





steelduck

i found and tried your new checkout.php (https://forum.virtuemart.net/index.php?topic=82202.0)

it didnt work for the one step thing mentioned above - same error messages.

setting it back to the intended order it works fine. i get through the payment process, emails and everything (with sandbox).

second test was negative: it couldnt reconnect to paypal after confirming the order.
third was ok again

however, the credit card option still shows up.

annother thing: when payment is successful its supposed to set the status on "paid" so it sends out the email with the download ids automatically.
and now it only has it on pending. is this because of paypal sandbox, but i assume it is ment to simulate a proper payment process, isnt it? 

then i also tried the old paypal with sandbox but i only came to the paypal login, where it wont accept my sandbox buyer login. does sandbox work for this at all? the old paypal would have the order of payment steps i would actually prefer, only having it all on one page would be better.

why does the paypal api have to be in this order anyway? that way it has to connect to paypal twice and not only one time after confirming the order. this doesnt appear to me very practical. setting it all on one page, one could still have the express checkout with confirming the order at the same time.

zanardi

Let's try to clarify first, for both me and you. Please note i also have still some doubts regarding this method since it was coded by someone else, that is why i ask you to tackle one issue at a time.

1. PayPal API payment method was built according to PayPal specification. So AFAIK we have no choice regarding how it works. If you want the "old" behaviour (go to PayPal after order confirmation) you can always use PayPal Legacy payment method.

2. Just to clarify, PayPal API implements "Website Payment Pro" (API based), while PayPal Legacy implements "Website Payment Standard" (HTML based). Both are valid and usable, it depends on what you want.

3. PayPal API (Website Payment Pro) has 2 possible methods:
a. Express Checkout: you go to PayPal, pay, and then come back on the seller site to complete your order. This method is always enabled.
b. Direct Payment: you insert your credit card data and payment occurs in background, without taking you to PayPal site. You can disable this option in configuration.

With all this in mind, maybe you should first decide what to use and configure your shop accordingly. If, after that, you still have issues, then open another thread here and i will be glad to help you.
--
Francesco (zanardi)
http://extensions.gibilogic.com
@gibilogic on Twitter

patrickmark

I have problem like folow:

Error: Error - Paypal did not complete the transaction. Please try again in a little while.
Error: Failure in Processing the Payment (ps_paypal_api)

All API part is set-up correctly i was trying to use direct payment option, but so far no luck with that.

Any suggestions ??

zanardi

@patrickmark:
please don't double posting. You already post a message in another thread, where i already replied. No need to add another post here.
--
Francesco (zanardi)
http://extensions.gibilogic.com
@gibilogic on Twitter

timjm

Zanardi:

You had mentioned that

QuotePayPal API implements "Website Payment Pro" (API based), while PayPal Legacy implements "Website Payment Standard" (HTML based).

However, when I use either the API or Legacy version of the Paypal module, I am always eventually dumped to the Paypal screen, where a Paypal login is required, and no option for credit card without a Paypal account is given.

What am I doing wrong?

Thanks!!!

timjm

Actually, it appears that the purchase does go through (at least in sandbox mode) while using the legacy module. However, I guess the confusing bit is that it brings you to the Paypal website once the transaction is processed i.e. after putting in your credit card information.

Does someone have a fix?

Thanks.

-Tim

zanardi

@timjm:
sorry i don't understand you. When you use Legacy (HTML - Website Standard), you conclude the order on Virtuemart and then you are taken to PayPal payment screen (with the choice between logging in to PayPal or using a credit cart). This has always been.

Explain me again: what happens instead when you use API - Website Pro? And how did you configure it?
--
Francesco (zanardi)
http://extensions.gibilogic.com
@gibilogic on Twitter

timjm

My apologies.

In legacy mode with the HTML based method (I had the payment process option selected before but have switched over to HTML as per your recommendation) it will bring me into Paypal to process the payment, but I do not see a non-account option.

timjm

So, in the API (HTML enabled) I am getting the credit card error now too:

QuoteInvalid Credit Card Number or Credit Card Verification Code.
Error: Invalid Credit Card Number or Credit Card Verification Code.
Error: Failure in Processing the Payment (ps_paypal_api)
Invalid Credit Card Number or Credit Card Verification Code.

Can we use a non-HTML mode for the Paypal API and have it work?

timjm

OK - so in your other post you said that you have to have API in payment process mode.

It looks like the credit card should be working, though I am getting an error:

Error - Paypal did not complete the transaction - FAILURE - SHORTMESSAGE =Invalid Configuration - ERRORCODE =10501 - LONGMESSAGE =This transaction cannot be processed due to an invalid merchant configuration.

Is there a typical root to this problem, or is my sandbox probably setup incorrectly?

Thanks!!