Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeDNN Open Source...DNN Open Source...Module ForumsModule ForumsStoreStoreNeed Help Implementing new PGNeed Help Implementing new PG
Previous
 
Next
New Post
4/18/2012 1:20 PM
 

Hello All,

My PG provider basically requires me to post my data to their secure servers (given URL) with details in the Form Fields. I extended Paypal provider to create mine. Got it to go well.

Now the user has to enter all his transaction information (CC, Exp., CVV etc) on the Provider's server and upon completion of the transaction, the server responds back with a response which is required to be collected in the form of a Return URL.

This return URL is something like http://www.yourwebsite.com/Response.aspx?DR={DR} where  {DR} is the response back from the server.

I need to process this response and get back to user with his status, transaction id etc.

I could modify PayPalAdmin and PayPalPatment pages to create new ones for me and could post data to the server.


I need some help in receiving back the response. How can I get any of my page to talk back to the server and dish out the Response provided.


Any help would be appreciated.

Thanks

Ashutosh

 
New Post
4/19/2012 5:35 AM
 

Hi Ashutosh,

First you should not extend an existing provider, but instead create your own one! Because, if you upgrade your module, you will loose your changes.

Basic steps to create a gateway provider:

  1. Copy the files from the folder \DesktopModules\Store\Cart\Providers\GatewayProviders\PayPalProvider
  2. Create a new folder (YourOwnProvider) inside \DesktopModules\Store\Cart\Providers\GatewayProviders\
  3. Paste the files inside your new folder
  4. Rename all files with your own provider name (eg: PayPalAdmin ascx > YourOwnNameAdmin)
  5. Rename all class names and namespaces with 'YourOwnName'
  6. Add the new project to the Store solution
  7. Create a new folder (YourOwnProvider) inside \DesktopModules\Store\Providers\GatewayProviders\
  8. Correct folder names in the post build event

Your provider should have a parameter the notification url. In the payPal provider you have a parameter named NotifyURL transmited in the form field 'notify_url'. Look at the code in the method ConfirmOrder in the class PayPalPayment. A TransactionDetail object is created to store the url parameters (ReturnURL, CancelURL and NotifyURL) and this object is passed as parameter to the PayPalGatewayProvider class (provider.ProcessTransaction(CheckoutControl.BillingAddress, order, transaction)). The provider class build the form to transmit to the PayPal server.

In the ConfirmOrder method the NotifyURL is build to call an aspx page (PayPalIPN.aspx) like this: transaction.NotifyURL = urlAuthority + TemplateSourceDirectory + "/PayPalIPN.aspx?language=" + language. Your should have a similar page (YourOwnNameIPN.aspx) to get the response from your gateway provider and update the order status.

Gilles


We (team members) are Humans offering their knowledge, their work and their spare time FOR FREE to benefit the community. It would be so particularly appreciated that your messages begin with "Hello" and end with "Thank you" or any other form of politeness. Ask yourself what your reaction would be, if you were approached by me (a total stranger) on the street to ask you something without saying "Hello" nor "Thank you"? After several years of services dedicated to the community, I begin to be tired to read requests without any form of politeness.
 
New Post
4/19/2012 6:59 AM
 
Thanks Gilles,

I kinda got off to the correct start. What I got stuck on was receiving the response back from the payment gateway. And I guess PayPalIPN.aspx is what I would be looking at.

Would give it a try and come back with the results.


Thanks a lot
Ashutosh
 
New Post
4/19/2012 3:41 PM
 
Hello Gilles,

I went your way and got some success going my way. I could post my data and invoke the PG, make a transaction, which was successful. Buts that about it.

When the Payment Gateway redirects back to ReturnURL, which I have set to Response.aspx in the same location where we have the Payment page (Response.aspx is actually a copy of PayPalIPN.aspx). I have modified it to read my QueryString and fetch the details from there but it instead of loading that page, lands back to the page from where it went off and shows me Shipping and billing placeholders.

Could you please guide me through.

Thanks
Ashutosh
 
New Post
4/20/2012 11:25 AM
 

Hi Ashutosh,

Normaly the ReturnURL is the url where your client will be redirected after payment. You should use the NotifyURL to specify the url where the server post informations about the success/fails status of a payment.

It's difficult to help if I don't know anything about your payment provider! Could you provide me a link to the technical documentation?

Gilles


We (team members) are Humans offering their knowledge, their work and their spare time FOR FREE to benefit the community. It would be so particularly appreciated that your messages begin with "Hello" and end with "Thank you" or any other form of politeness. Ask yourself what your reaction would be, if you were approached by me (a total stranger) on the street to ask you something without saying "Hello" nor "Thank you"? After several years of services dedicated to the community, I begin to be tired to read requests without any form of politeness.
 
Previous
 
Next
HomeHomeDNN Open Source...DNN Open Source...Module ForumsModule ForumsStoreStoreNeed Help Implementing new PGNeed Help Implementing new PG


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out