Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


These support forums are now closed for new topics and comments.
Please head on over to http://eureka.ucommerce.net/ for support.

  • Simon Dingley 1470 posts 3427 karma points c-trib
    Nov 26, 2011 @ 13:11
    Simon Dingley
    0

    Problem with PayPal Integration and PaymentRequest.axd

    I've now got a store up and running and trying to configure the PayPal provider. I have run through the instructions at http://www.publicvoid.dk/SetupUCommerceToIncludePayPalAsAPaymentMethod.aspx which need updating I think as the PayPal side of things looked a lot different for me.

    When I go through the payment process I end up on a url like http://www.example.com/8/xxxxxxxx-c40d-4b0c-a783-1d8938dc3a7d/PaymentRequest.axd which is displaying an encryption key an a "Post it" button. Not sure where to go from here as we don't really want customers seeing this page so perhaps something is not quite right in the configuration?

    Thanks, Simon

  • Justin Spradlin 139 posts 347 karma points
    Nov 26, 2011 @ 15:31
    Justin Spradlin
    2

    That intermediate page displays in the sandbox mode. You can use the PayPal developer sandbox to test your site. This sandbox will have different encryption keys that you will need to download. Check your PayPal.config to enable/disable the sandbox and debug options. 

    As far as the different appearance of PayPal, I was able to find a button in the PayPal UI to return to the "Legacy" view. Once I did that the instructions looked the same. I couldn't find any of the links I needed using the new PayPal layout either. 

    Justin

  • Søren Spelling Lund 1797 posts 2786 karma points
    Nov 27, 2011 @ 19:49
    Søren Spelling Lund
    1

    Thanks for helping out, Justin :)

  • Simon Dingley 1470 posts 3427 karma points c-trib
    Nov 27, 2011 @ 21:05
    Simon Dingley
    0

    Thanks Justin that helped however still struggling to complete a transaction using the Sandbox. I've disabled Encryption for the moment just so I can try and get a transaction completed but still no joy. Currently with Encryption off I am getting through to PayPal but when attempting to login and pay with the Sandbox account I just get the error message "This transaction cannot be completed...". I was expecting PayPal integration to be the easiest of all to get up and running but doesn't seem to be the case.

    Simon

  • Søren Spelling Lund 1797 posts 2786 karma points
    Nov 28, 2011 @ 10:50
    Søren Spelling Lund
    1

    Unfortunately the PayPal Sandbox can be a bit tricky. Basically you'll have three accounts in play to test it:

    The sandbox account itself - used to set up the actual test accounts

    The buyer account, which represents the customer - used when you place an order

    The business account, which represents the store receiving the paypal - used when you verify transactions coming in

    Do you ever get to the step where you enter the account credentials?

  • Simon Dingley 1470 posts 3427 karma points c-trib
    Nov 28, 2011 @ 15:18
    Simon Dingley
    0

    Excellent - thanks Søren. I feel a blog post in order when I am done to help anyone else out that may have similar issues.

  • Simon Dingley 1470 posts 3427 karma points c-trib
    Nov 28, 2011 @ 15:31
    Simon Dingley
    0

    Does the post back from PayPal allow the order to be retrieved for display on the Order Confirmation page?

  • Justin Spradlin 139 posts 347 karma points
    Nov 28, 2011 @ 17:09
    Justin Spradlin
    0

    If your site is availble publicly (not localhost) then PayPal will send a IPN notification back to your site. uCommerce has a httpHandler that will process the IPN notification and update the order to see that the payment has been approved. This is the step that will make it show up as a "new" order in the uCommerce Orders tree. It is up to you to handle moving the order along in your pipeline either by hand or by extending the New Item pipeline.

  • Simon Dingley 1470 posts 3427 karma points c-trib
    Nov 28, 2011 @ 17:13
    Simon Dingley
    0

    Thanks Justin. I understand about the IPN I was asking more with regards to the return url which sends the user to an "Order Completed" page on the site to be able to display any confirmation details.

  • Justin Spradlin 139 posts 347 karma points
    Nov 28, 2011 @ 17:14
    Justin Spradlin
    0

    Oh, I see. I am not sure about that one then. Sorry. 

  • Søren Spelling Lund 1797 posts 2786 karma points
    Nov 29, 2011 @ 14:48
    Søren Spelling Lund
    0

    Simon, you can save a cookie with the order guid for the customer and look that up once the customer is redirected to the confirm page. The payment gateways will typically include various information in the redirect, but it's different for each of them. Using a cookie will give a universial way to handle it.

  • Rich Green 2246 posts 4008 karma points
    May 25, 2012 @ 12:03
    Rich Green
    0

    We're having problems too.

    I've got to the point where:

    - The order goes to the PayPal (Sandbox) & I can make the payment via PayPal.

    However no order appears in uCommerce and PayPal does not automatically return me to my configured Confirmation page. However if I click 'Return to merchant' I go back to the /confirmation page with the orderguid in tact.

    So the callback / IPN notification is not being processed at all, could this be a Firewall issue (the site is on a public URL), where can I check for failed callback?

    More Info:

    - There is nothing in the log files (except for missing uCommerce license)

    - I've disabled encyption.

    - No logging in the PayPal Sandbox that I can see.

    - Paypal payment provider is set to execute the 'Checkout' pipeline

    I'm a little lost and don't know what I can use to debug?

    Any ideas appreciated, cheers

    Rich

  • Søren Spelling Lund 1797 posts 2786 karma points
    May 29, 2012 @ 11:51
    Søren Spelling Lund
    0

    I would check to see if the PaymentProcessor.axd is available from an external IP. When you're not seeing any issues in the Umbraco log that's typically the issue.

    Try accessing the URL www.yoursite.com/PaymentProcessor.axd from your phone or device sitting on an external network and see if you get a YSOD (that's the expected behavior when the proper security params are not passed to the service).

  • Craig Cronin 304 posts 503 karma points
    Oct 07, 2012 @ 17:08
    Craig Cronin
    0

    Hi Rich,

    Did you have any luck with this I'm doing my first uCommerce site and having the same problem as you have described above.

  • Craig Cronin 304 posts 503 karma points
    Oct 08, 2012 @ 00:58
    Craig Cronin
    1

    I think I fixed this if anyone comes across the post.

    It looks like i take things out of the normal process and it runs the checkout pipeline, so I just needed to take the order GUID parameter and load the purchase order for referencing.  

    orderGuid comes back from the paypal redirect.

    <xsl:variable name="postedOrder" select="CommerceLibrary:GetPurchaseOrderByGuid(umbraco.library:Request('orderGuid'))"></xsl:variable>      
                
            <!-- Begin Order Confirmation -->
            <div class="order-confirmation">
              <span class="title">Thank you for your order</span>  
              <span class="order-number">Your order number<br />is: <xsl:value-of select="$postedOrder/purchaseOrder/@orderNumber" /></span>
              <p>Your fruit will be with you in 3-7 working days.  Sign in to your account
                 to track your order and make easier purchases from now on.</p>
            </div>
            <!-- End Order Confirmation -->

  • Søren Spelling Lund 1797 posts 2786 karma points
    Oct 10, 2012 @ 09:21
    Søren Spelling Lund
    0

    Hi Craig,

    Thanks for being awesome and posting your soluton in the thread! :)

  • wolulcmit 357 posts 693 karma points
    May 09, 2014 @ 09:19
    wolulcmit
    0

    My PaymentProcessor.axd is working (order completes from the paypal IPN callback)
    but I don't get an orderGuid from the paypal redirect, so can't get the order back using the method descibed by Craig above (CommerceLibrary:GetPurchaseOrderByGuid).

    Is there anything special you have to do in order for paypal to pass you back uCommerce's orderGuid?
    this is what my querysting looks like when coming back from paypal: ?tx=2BK3707803512473B&st=Pending&amt=43.95&cc=GBP&cm=&item_number=
    Have tried using CommerceLibrary:GetPurchaseOrderByPaymentReference instead, but not sure if payment reference and transaction id are the same thing. Probably not as it doesn't work.

    anything I'm missing? why would the transaction ID be in the redirect url but not the orderGuid?

    thanks,
    - Tim


  • Craig Cronin 304 posts 503 karma points
    May 09, 2014 @ 19:44
    Craig Cronin
    0

    Hi Tim,

    I'm a little rusty on the issue at the moment but I'm due to dig the code out over the weekend for the customer.  Unless Søren gets back to you in the meantime "and he ususally does", I will take a look a see if I can work it out to help.

    Craig

  • wolulcmit 357 posts 693 karma points
    May 16, 2014 @ 07:47
    wolulcmit
    0

    So I got it working in debug mode, and as it doesnt seem that easy to get the GetPurchaseOrderByGuid back after Paypal (for whatever reason that is unknown to me) Instead I am running a custom pipeline from within my paypay-success page which clears the basket using: ${Processing.ClearBasketInformationTask}
    which seems to work ok (so far)

    But, now that I am ready to test it Live I ran into the following error on the PaymentRequest.axd page:

    Blocked loading mixed active content "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"

    PaymentRequest.axd is trying to load a version of jQuery from a non-https url, which is being blocked by the browser (I guess this is a fairly recent default behaviour with later browser versions), which is causing the page to fail. I know this has probably been fixed in future versions of uCommerce (think I am running 2.6), but what are my options here? Can't believe this hasn't cropped up anywhere for anyone else.

    why is javascript even needed for this to work?

    help!?

    - Tim

     

  • Craig Cronin 304 posts 503 karma points
    May 20, 2014 @ 22:09
    Craig Cronin
    0

    Hi Tim,

    Sorry for the delay, have you had any luck with this.  I've been so busy I really just havent had a chance to dig the code out?

  • Søren Spelling Lund 1797 posts 2786 karma points
    May 21, 2014 @ 09:53
    Søren Spelling Lund
    0

    Hi Tim,

    This was fixed in uCommerce 3 back in 2012 :)

    Hope this helps.

  • wolulcmit 357 posts 693 karma points
    May 21, 2014 @ 11:25
    wolulcmit
    0

    Hi Søren, thanks

    unfortunately I think I'm stuck with a pretty 'special' build. I have tried to upgrade previously without any success. mainly SQL scripts failing when running through the upgrade process.

    Is it possible to upgrade to 3 without totally breaking my site?
    I might try to replace the dll responsible for the paypal payment provider? could you give me any clue as to whether that's possible or is all within the main UCommerce.dll ?

    - Tim

  • Jesper Nielsen 141 posts 498 karma points
    May 22, 2014 @ 09:48
    Jesper Nielsen
    0

    Hi Tim,

    Upgrading is clearly the recommended option. :-)

    There are, to my knowledge, nothing to hinder an upgrade to version 3.
    But there are breaking changes, so you probably need to change a bit of code to get it to compile.

    The PayPal provider is located in the "UCommerce.Transactions.Payments.dll". They are all IOC-configured in the "Payments.config" file. So you could try switching the dll. But there are no guarantees. It might explode. :-S

    Another option would be to override the "PayPalWebsitePaymentsStandardPageBuilder" class and change the BuildHead implementation to use https instead of http for the javascript source.

    Kind regards,
    Jesper

  • Jebastin 42 posts 91 karma points
    Nov 11, 2014 @ 07:26
    Jebastin
    0

    I'm facing exactly the similar issue now.

    I'm using a Sandbox Paypal account. PayPal payment is success. It returns to the Confirmation page. Order is not getting stored in the table [uCommerce_PurchaseOrder], but it's not getting displayed in Orders in uCommerce section at the back-office.

    Can anyone help me to resolve the issue?

    uCommerce 6.0.3.14141

    Avenue Clothing Demo Store for uCommerce 5 - Razor 3.0.1.14013

    Payment Method: PayPal

    Pipeline: Checkout

     

Please Sign in or register to post replies

Write your reply to:

Draft