Simple Paypal Integration with Salesforce (Step by Step)

Tuesday, January 11, 2011 by Aslam - The Alexendra
Hi All,
Recently I got a need to implement Paypal integration with Salesforce for a basic payment for Merchant Type account, the payments would be from Customers using Credit Cards like Visa etc. I started looking into Paypal methods to find out which is best to implement using Apex, then i found one old blog post very helpful (Unfortunately that blog post is removed recently so not able to paste url here). The method which i preferred is DoDirectPayment. I did some modification in that code and provided in this blog.
The main problem i faced, was not the code, the testing. Like me, many new developers face this problem, thats why i came with this blog to describe step by step procedure to do a simple test with your paypal payment process using salesforce code. This might be useful for the developers who dealing with Paypal first time as well as want to integrate it with Salesforce.




1) Setup one sandbox account.

Go to http://developer.paypal.com and create one account there. After creating, login there only. In the left menu you will find "Test Accounts" link. Click on that.
From the right side screen, you can create multiple test accounts.
For testing purpose generally you need two type of accounts. One is "Seller" and one is "Buyer". Its always better to create preconfigured accounts.
Click on "PreConfigured" link to create one 'Buyer' account, set some amount there.
Click on "PreConfigured" link to create one 'Seller' account, set some amount there.
Click on "PreConfigured" link to create one 'Website Payments Pro' account, used for Merchant (Seller), set some amount there. Dont choose seller account this time because we going to use "DoDirectPayment" API method which need this type of account.

We dont need "Seller" account but i found after some struggle that if you not create any Seller account first then if you create any 'Website Payments Pro', then it will always be "unverified". I am not sure why it is like this. But this is "My Best Practice" that you should first create one Seller account, then create this ''Website Payments Pro' account. And verify, that one is marked as "Verified" as shown in the below screenshot.




2) Test Merchant Account API Setup

Now, select your 'website payments pro' account using radio button there and click 'Enter Sandbox Test Site'.
Login with your password.
Click on Profile link after you login. It will be on top right side.
Click on 'Request API Credentials' link in bottom left side.
Click on 'Set up PayPal API credentials and permissions' link.
Click on 'View API Signature' link and note down your API Username, API Password, API Signature
Click on 'Grant API Access' link on previous screen. Here give your API username and Check all checkboxes and Save
Now you ok with configuration.

2) Salesforce Code setup
Now copy paste following Apex Class code in your org.
Add "https://api-3t.sandbox.paypal.com/2.0/" url into "Remote Site Setting".

In the below code change your API Username, API Password and Signature.
public class PaypalProccessor{
public string amount;
public String result {set;get;}
public string FirstName{get; set; }
public string LastName{get; set; }
public string Addy1{get; set; }
public string Addy2{get; set; }
public string Country{get; set; }
public string CardType{get; set; }
public string CardNo{get; set; }
public string expMo{get; set; }
public string expYe{get; set; }
public string CVV{get; set; }
public string city{get; set; }
public string state{get; set; }
public string zip{get; set; }
public string payer{ get; set; }
public string transid {get; set;}
public string message {get; set; }
public string err {get; set; }
public string rawResponse {get; set; }

public PaypalProccessor(){
city
= '';
state
= '';
zip
= '';
CVV
= '';
expYe
= '';
expMo
= '';
CardNo
= '';
CardType
= 'Visa';
FirstName
= '';
LastName
= '';
Country
= 'US';
Addy1
= '';
Addy2
= '';
payer
= '';
err
= '';
message
= '';
}


public String doDirectPayment()
{

Http h
= new Http();
HttpRequest req
= new HttpRequest();
String url
= 'https://api-3t.sandbox.paypal.com/2.0/';
string un
= 'sel2_1294222298_biz_api1.gmail.com';
string pw
= 'xxxxxxxxxx';
string sig
= 'AwG6Yp1inPr4tudjFvxxxxxxxtAVuo9M5cH1nAqpxK2Biv1RrZa4gX';


String doDirectRequest;
doDirectRequest
= '<soap:Envelope xmlns:soap=' + '\'' + 'http://schemas.xmlsoap.org/soap/envelope/' + '\'' + ' xmlns:xsi=' + '\''+ 'http://www.w3.org/2001/XMLSchema-instance' + '\'' + ' xmlns:xsd=' + '\''+ 'http://www.w3.org/2001/XMLSchema' + '\'' + '>';
doDirectRequest
+= '<soap:Header><RequesterCredentials xmlns="urn:ebay:api:PayPalAPI"><Credentials xmlns="urn:ebay:apis:eBLBaseComponents">';
doDirectRequest
+= '<Username>' + un + '</Username><ebl:Password xmlns:ebl="urn:ebay:apis:eBLBaseComponents">' + pw;
doDirectRequest
+= '</ebl:Password><Signature>' + sig + '</Signature>';
doDirectRequest
+= '</Credentials></RequesterCredentials></soap:Header><soap:Body><DoDirectPaymentReq xmlns="urn:ebay:api:PayPalAPI">';
doDirectRequest
+= '<DoDirectPaymentRequest><Version xmlns="urn:ebay:apis:eBLBaseComponents">1.00</Version>';
doDirectRequest
+= '<DoDirectPaymentRequestDetails xmlns="urn:ebay:apis:eBLBaseComponents">';
doDirectRequest
+= '<PaymentAction>Sale</PaymentAction><PaymentDetails><OrderTotal currencyID="USD">' + amount + '</OrderTotal>';
doDirectRequest
+= '<ShipToAddress><Name>' + FirstName + ' ' + LastName + '</Name><Street1>' + Addy1 + '</Street1><Street2>' +Addy2 + '</Street2>';
doDirectRequest
+= '<CityName>' + city + '</CityName><StateOrProvince>' + state + '</StateOrProvince><PostalCode>' + zip + '</PostalCode>';
doDirectRequest
+= '<Country>' + country + '</Country></ShipToAddress>';
doDirectRequest
+= '</PaymentDetails><CreditCard><CreditCardType>' + CardType + '</CreditCardType><CreditCardNumber>' + CardNo + '</CreditCardNumber>';
doDirectRequest
+= '<ExpMonth>' + expMo + '</ExpMonth><ExpYear>' + expYe + '</ExpYear><CardOwner><PayerStatus>verified</PayerStatus>';
doDirectRequest
+= '<PayerName><FirstName>' + FirstName+ '</FirstName><LastName>' + LastName + '</LastName></PayerName><PayerCountry>' + country + '</PayerCountry>';
doDirectRequest
+= '<Address><Street1>' + Addy1 + '</Street1><Street2>' + Addy2 + '</Street2><CityName>' + city + '</CityName>';
doDirectRequest
+= '<StateOrProvince>' + state + '</StateOrProvince><Country>' + country + '</Country><PostalCode>' + zip + '</PostalCode></Address>';
doDirectRequest
+= '</CardOwner><CVV2>' + CVV + '</CVV2></CreditCard></DoDirectPaymentRequestDetails>';
doDirectRequest
+= '</DoDirectPaymentRequest></DoDirectPaymentReq></soap:Body></soap:Envelope>';

req.setBody(doDirectRequest);

req.setEndpoint(url);
req.setMethod(
'POST');
req.setHeader(
'Content-length', '1753' );
req.setHeader(
'Content-Type', 'text/xml;charset=UTF-8');
req.setHeader(
'SOAPAction','');
req.setHeader(
'Host','api-aa.sandbox.paypal.com');
HttpResponse res
= h.send(req);
String xml
= res.getBody();
rawResponse
= xml;
system.debug(
'::' + rawResponse);
XmlStreamReader reader
= res.getXmlStreamReader();
result
= readXMLResponse(reader,'Ack');
reader
= res.getXmlStreamReader();
err
= readXMLResponse(reader, 'LongMessage');

if (result == 'Success')
{
reader
= res.getXmlStreamReader();
transid
= readXMLResponse(reader, 'TransactionID');
system.debug(
'::' + transid );
}
else
{
result
= err;
}
return result;
}

public String readXMLResponse(XmlStreamReader reader, String sxmltag)
{
string retValue;
// Read through the XML
while(reader.hasNext())
{
if (reader.getEventType() == XmlTag.START_ELEMENT)
{
if (reader.getLocalName() == sxmltag) {
reader.next();
if (reader.getEventType() == XmlTag.characters)
{
retValue
= reader.getText();
}
}
}
reader.next();
}
return retValue;
}

public String pay(){

err
= '';
if (FirstName == '')
err
= err + 'You must enter a First Name.\n';
if (LastName == '')
err
= err + 'You must enter a Last Name.\n';
if (Addy1 == '')
err
= err + 'You must enter an Address.\n';
if (city == '')
err
= err + 'You must enter a City.\n';
if (state == '')
err
= err + 'You must enter a State.\n';
if (zip == '')
err
= err + 'You must enter a Zip.\n';
if (CardNo == '')
err
= err + 'You must enter a Credit Card Number.\n';
if (expMo.length() != 2)
err
= err + 'Expiration month must be in the format MM.\n';
if (expYe.length() != 4)
err
= err + 'Expiration year must be in the format YYYY.\n';

if (amount == '0')
{
err
+= 'Amount 0 can not process.\n';
message
= err;
}
message
= err;
if (err == '')
{
message
= doDirectPayment();
}

if (message == 'Success')
{

}
else
{
//pr = null;
}
return message;
}

}


3) Run and Test
Now you can use below code to do a sample payment. Run this code either on your VF screen or from System Log screen.
PaypalProccessor p = new PaypalProccessor();
p.city
= 'ajm';
p.state
= 'CA';
p.zip
= '4534';
p.CVV
= '';
p.expYe
= '2016';
p.expMo
= '01';
p.CardNo
= '4028398122647025';
p.CardType
= 'Visa';
p.FName
= 'aslam';
p.LName
= 'bari';
p.Country
= 'US';
p.Addy1
= '44';
p.Addy2
= '433';
p.payer
= 'abuy_1294681533_per@gmail.com';
p.amount
= '100';
string message
= p.pay();
string transactionid
= p.transid;
system.debug(
'#### Message::' + message);
system.debug(
'#### Transaction Id::' + transactionid);

You will see that you got one Transaction Id and 'Success' message. If you dont find success message, then print "err" property to check whats wrong.
Log into your test pro account and check your balance, it might be increased. If so, its all fine :)


Thanks
Aslam Bari

139 comments:

kirtesh said...

Good stuff ..

Raj said...

Really sir its a tremendous work.

Kapil Goutam said...

cool & shortest way to implement......nice post

Deepak kapoor said...

Nice step by step description is provided..
awesome effort...

Lokesh said...

nice helping stuff..

anil said...
This comment has been removed by the author.
Aslam - The Alexendra said...

@anil: there may be some issue in your account setup. The demo i given in blog is using developer(sandbox) account. Check other settings also about your account like API access etc

Anonymous said...

HI,
Am new to salesforce, and i was trying to integrate paypal, i found your blog and way of developing interesting .
I followed everything whatever you have mentioned, but my question is do i need a personal account alredy created in the paypal,
But still i trie both ways with creating and without creating paypal account but am getting the following error. Please can you help me out in solving this.

Security error Security header is not valid

am getting this error while running.

anil said...
This comment has been removed by the author.
anil said...

@aslam,
Thanks for the quick reply, but am using the developer account itself and where can i check this settings. I tried to find out but am not getting any settings like that.
I am trying to build this paypal as buying tickets ,which has x price and based on tickets total price it shud be payed through paypal. I have a question Will this work without personal account of buyer created in Paypal

Anonymous said...

Hi...
i am new to salesforce. and i wnat to integarte paypal with salesforce. i read you blog but whe i go step by step i got a lot of probs like my Website Payments Pro' account is not verified. so can you help me on this.. Thanks

Kp

Aslam - The Alexendra said...

@kp: For facing paypal config issues, you should to ask their customer support, they will provide response.

Anonymous said...

Thanks 4 ur reply..
Actualy i have an production site. so can i use this on that also..

thanks
Kp

Anonymous said...

how to use run and test code on VF page??

Anonymous said...

thanx for your reply but i done with this. now i got a prob while testing it...can you please expalin how to use this in my SFDC site

Thankx,
Kp

Anonymous said...

Thank u for your code... Can you pls help me in this i run your code on system log. it runs successfully nw i want to work on Vf page for that can you pls explain how to implement that

Aslam - The Alexendra said...

@Anonymous: First of all if anybody posting comments provide name or email, so it would be easy to reply. By the way, if you executed in system log, then on page you can execute same thing on click of a button.

kanupriya said...
This comment has been removed by the author.
kanupriya said...
This comment has been removed by the author.
Aslam - The Alexendra said...

@Kanupriya: Can you mail me aslam.bari@gmail.com for you questions.
Thanks

Anonymous said...

Hi Great post!

I copied your code and tried a sample payment (in the System Log) and received the following error response: "Security header is not valid"

Any ideas on how to tackle this?

Thanks! I love your blog!

Thanks,
G. Lo

Anonymous said...

Also, is it possible to run paypal processor without personal account of buyer created in Paypal?

-G. Lo

Aslam - The Alexendra said...

@G. LO: You need to provide your api username, api key and password in order to use the code. If you are using wrong credentials then you will face invalid headers.
In my example i use a buyer who has some Credit Card. You can choose different methods also. There must be some on paypal org.

Abhijit said...

Aslam - Really nice document with very good step by step directions.

I am new to webservices callout, i see this is perfect example for that, so how i can display Paypal account details in salesforce VF page, after passing all required details

Narasimha said...

Good Post! helped me Today!
Thanku So much.

Nitin said...

Hi Aslam,
I am Click on 'Grant API Access' link and input my username but error is occured "You are logging into the account of the API caller of this transaction. Please change your login information and try again."
Please tell whts going on.
First time i am integrating Paypal.
Thanks in Advance.....

Aslam - The Alexendra said...

Hi nitin
you need to check paypal doc and support
you will get help from there
i am not much familar with paypal issues

Aslam - The Alexendra said...

Hi nitin
you need to check paypal doc and support
you will get help from there
i am not much familar with paypal issues

David Ashworth said...

Does anyone know how to modify the above to work with an EventBrite API?

Anonymous said...

Hi Aslam,

Successfully integrated executed the code and there is a increment in the test pro account ,but there is no decrements in the Buyer account.

David Ashworth said...

Thanks for this post. I am looking to find a way to have transactions starting from a link on the client web site which result in a donation via paypal show up in a client record (or unresolved list) inside salesforce.

I believe your method allows a payment to be initiated from Salesforce resulting in the use of PayPal as the processor.

Please advise and thanks

David

Aslam - The Alexendra said...

@David
Then you simply need to use "Bu now" or "Pay now" button given by paypal and use that straight away on your site.

Matt said...

Very nice step by step tutorial: it helped me to test the SFDC/PayPal integration in less than an hour. Many Thanks, Aslam: you are the man!

Couple of remarks regarding your code tough:

1)There is no need to perform the GRANT API Access step as there is no 3rd party involved in that simple transaction. At least my test transaction ran successfully without that step. Or Am I missing something?

2) In the test code, FName and LName variables don't exist. They should be replaced by FirstName and LastName.

3) People should of course use the information of their own buyer test profile, not yours.

4) As another person noted before, my merchant is credited with the transaction amount. However, my buyer account balance stays the same. Any idea why?

Really great work and thanks again!

Matt

@shyyy said...

how to run and test this program. Tell me the code for visualforce

fusarium said...

Aslam - Casey at Tech Guys. Just Google'd "Paypal to Salesforce integration" and found you. Happy to know you! Thanks for the great write-up.

Tim Dionne said...

Hey do you have any experience with making this all work with a production salesforce org and production paypal? You need a digital cert to authenticate with paypal. Salesforce doesn't appear to have a mechanism for importing an already signed CERT, which paypal provides.

Thanks!

Aslam - The Alexendra said...

@Tim
The above code works well in production.
We only need API, username, key of the merchant account.

Anonymous said...

Thanks.This is very useful for me.The transaction completed successfully.But I received the following visualforce error "java.lang.IllegalArgumentException: Illegal view ID Success. The ID must begin with /"

Please kindly help me to clear the error.

Aslam - The Alexendra said...

This is not the Paypal error. This seems visualforce error. Check your method and expressions, i guess you are missing {!} expression somewhere

khubeb said...

Hi Aslam ,
I trying your code but i m getting
error on my VF page
error is
"System.XmlException: ParseError at [row,col]:[1,50] Message: White spaces are required between publicId and systemId.
Error is in expression '{!doDirectPayment}' in component in page paypal

Class.PaypalProccessor.readXMLResponse: line 119, column 1
Class.PaypalProccessor.doDirectPayment: line 87, column 1

"
thanks in advance
khubebsiddiqui@gmail.com

reshu rr said...
This comment has been removed by the author.
reshu rr said...

Hi Aslam first of all thanks for this post.

I have two test accounts in paypal buyer and seller. With this code the seller account is updated with the transactions but no money is deducted from the buyer account.
I have passed the test credit card no. and email id in the testing process still there is no deduction, is there something i am missing.

Aslam - The Alexendra said...

@reshu
Please check what is the status about the transaction?
May be transaction is not successful.

reshu rr said...

Transaction is successful with some transaction id.
Even the seller account is incremented but the buyer account is not deducted.

khubeb said...

java.lang.IllegalArgumentException: Illegal view ID This transaction cannot be processed due to an invalid merchant configuration.. The ID must begin with /

i m getting this error again and again can u help me on this

Aslam - The Alexendra said...

@khubeb, this error is not specific to this post. If you have general queries regarding salesforce issues, please here:

http://forum.aslambari.com/
http://www.linkedin.com/groups/Salesforce-Gurus-4977673?trk=myg_ugrp_ovr

khubeb said...

Visualforce Error


System.CalloutException: Read timed out
Error is in expression '{!doDirectPayment}' in component in page paypal

Class.PaypalProccessor.doDirectPayment: line 83, column 1

while running it i m getting it error
thanks in advance

Anonymous said...

hii
After first payment am getting fallowing error

#### Message::Transaction is not compliant due to missing or invalid 3D-secure authentication values


Shashi Reddy

Anonymous said...

Hi, Aslam,

I have a Salesforce to PayPal integration project. If you are interested, please contact me.

Best Regards,
Lian Chen
------------------
lian825@hotmail.com

Anonymous said...

Hi,

Thanks for your post. I have implemented successfully. Now i want to add cancellation functionality using transid, can you guide me to implement that.

Thanks,
Reddy

Anonymous said...

Hi Aslam, This process in not asking any passwords as regular payment. How i can redirect to paypal payment page from salesforce?.

Thanks
@Reddy

Srinivas said...

hi aslam, paypal is upgrade please help me http://developer.paypal.com/

aparna john said...

Hi,Website homepage is the main web page of a site, also called the "front page". When a user types in a browser a website domain for Web Design Cochin, the browser downloads the website homepage that contains links to other website pages.Thanks...........

Uzair said...

Hi Aslam,

While making payment's in sandbox environment I'm getting the below exception.

"System.XmlException: ParseError at [row,col]:[7,3] Message: The element type "p" must be terminated by the matching end-tag "/p".
Error is in expression '{!pay}' in component in page paypalcardproccessor

Class.PaypalCardProccessor.readXMLResponse: line 117, column 1
Class.PaypalCardProccessor.doDirectPayment: line 87, column 1
Class.PaypalCardProccessor.pay: line 149, column 1 "

In the debug log I'm getting the following :

CALLOUT_REQUEST|[82]|System.HttpRequest[Endpoint=https://api-3t.sandbox.paypal.com/2.0/, Method=POST]
CALLOUT_RESPONSE|[82]|System.HttpResponse[Status=Bad Request, StatusCode=400]

Could you please help me with this.

Thanks in Advance,
Uzair

Shruti Gujarathi said...

Thanks Aslam, It helped me a lot.

khillan singh said...

Hi, I am Trying the above code by get the exception on the vf page 'The element type "p" must be terminated by the matching end-tag "</p>".' and from the response i get the following response '<HTML> <HEAD>
<TITLE>Invalid URL</TITLE>
</HEAD> <BODY>
<H1>Invalid URL</H1>
The requested URL "/2.0", is invalid.>p>
Reference #9.1ce0fc7d.1387534802.12140fd8
</BODY> </HTML>
Can you let me know where is the problem please as soon as possible. my email Id is : khillanSingh@gmail,com'

blogger said...

I too got this error 'The element type "p" must be terminated by the matching end-tag ".'Can you please let me know to solve it.It will be very helpful.Thanks for this article..

Anonymous said...

Got this error, please help:

21:43:35.078 (1078129000)|FATAL_ERROR|System.XmlException: ParseError at [row,col]:[7,3]
Message: The element type "p" must be terminated by the matching end-tag

Anonymous said...

THE REQUESTED URL IS INVALID... https://api-3t.sandbox.paypal.com/2.0

Anuj Singhal said...

Hi Alexendra,

I havce tried the above mentioned code and steps but getting error message as mentioned below. Also Is is necessary to have a real card no. to test the integration. Isn't possible to mention a dummy card no. for testing purpose?

EXCEPTION: System.XmlException: ParseError at [row,col]:[1,50]
Message: White spaces are required between publicId and systemId.

Aslam - The Alexendra said...

Solutions for Errors:
All who getting different kind of errors make sure they following this:

1) Using proper username, password and signature for the BUSINESS TYPE Account (Merchant) they created for their sandbox/live account

2) That Business / Merchant account must enabled "Payments Pro" option.

Anuj Singhal said...

Hi Alexendra,

Thanks for your reply however, it seems some issue with code or request as well as I got an exception mentioned below however, I did not find any p that is being used and not terminated. I have used the same code as mentioned in your post.

EXCEPTION: System.XmlException: ParseError at [row,col]:[7,3]
Message: The element type "p" must be terminated by the matching end-tag "/p".
STACKTRACE: Class.PaypalProccessor.readXMLResponse: line 119, column 1
Class.PaypalProccessor.doDirectPayment: line 87, column 1
Class.PaypalProccessor.pay: line 154, column 1
AnonymousBlock: line 17, column 1
AnonymousBlock: line 17, column 1
LINE: 119 COLUMN: 1

Aslam - The Alexendra said...

@Anuj,
It seems the issue with response coming. May be it is not what is expected.
So my suggestion is to print the response, and see if you finding correct result? If yes, then make a small custom code to parse the response, instead of my xml parser.

Anuj Singhal said...

Hi Alexandra,

Not sure what went wrong earlier now I managed to execute the code with no error however, still there is one issue

00:11:09.343 (1343985000)|USER_DEBUG|[19]|DEBUG|#### Message::Version is not supported
00:11:09.344 (1344014000)|USER_DEBUG|[19]|DEBUG|#### Transaction Id::null

Anuj Singhal said...

@Alexandra, my mistake reviewed the SOAP request again and found provided version was in incorrect format. Now I am able to see successful transaction however, nothing reflected on Paypal Sandbox. any clue..?

Vijakumarreddy Dokkupalli said...

Thanks for sharing fabulous information.It' s my pleasure to read it.I have also bookmarked you for checking out new posts.
Digital Marketing Training in Hyderabad


Bangalore RWD said...

Great job of this blog owner by updating the stem by step of paypal integration method for the ecommerce websites.
Web Design Companies | Web Designing Companies

vasudha dharani said...

Salesforce Developer Online Training, ONLINE TRAINING – IT SUPPORT – CORPORATE TRAINING http://www.21cssindia.com/courses/salesforce-developer-online-training-144.html The 21st Century Software Solutions of India offers one of the Largest conglomerations of Software Training, IT Support, Corporate Training institute in India - +919000444287 - +917386622889 - Visakhapatnam,Hyderabad Salesforce Developer Online Training, Salesforce Developer Training, Salesforce Developer, Salesforce Developer Online Training| Salesforce Developer Training| Salesforce Developer| If you’re serious about a career in IT, 21st Century would like to provide you a guidance don’t hesitate to organize a free demo session. For any further information regarding the courses once go through our website Visit:http://www.21cssindia.com | Call Us +917386622889 - +919000444287 - contact@21cssindia.com

Kristine Hansen said...

This is very good website. It is very nice deign and content. We offer your visitor easy way convert money paypal to Exchange Paypal to Skrill, Exchange Paypal to Skrill, Exchange Paypal to Payza, Exchange Paypal to Webmoney, Exchange Paypal to bitcoin, Exchange Paypal to okpay, Exchange Paypal to egopay, Exchange Paypal to perfectmoney, Exchange Paypal to liqpay, xchange Paypal to cashu, Exchange Paypal to bank transfer.
Exchange Paypal to egopay,
Exchange Paypal to Skrill,
Exchange Paypal to Skrill,
Exchange Paypal to Payza,
Exchange Paypal to Webmoney,
Exchange Paypal to bitcoin,
Exchange Paypal to okpay,
Exchange Paypal to egopay,
Exchange Paypal to perfectmoney,
Exchange Paypal to liqpay,
Exchange Paypal to cashu,
Exchange Paypal to banktransfer.

Anuj Singhal said...

Hi @Aslam,

While implementing the same I got read timed out any clue what could the the cause of issue and how it can be corrected?

karthi xavi said...

Hi Aslam,
Do we need to write test class? if so the test class will pass the methods?

janardhana reddy.m said...

Hi Aslam,
How to call Refund method of paypal. Please help me

Chang bui thi said...

I love all the posts, I really enjoyed, I would like more information about this, because it is very nice., Thanks for sharing.
Signature:
i like play games friv4school online and play games2girls 2 Download facebook

Anuj Singhal said...

Hi Aslam,

It seems paypal has changed its UI. Could you please help how to go on this to create a test Account?

Thanks
Anuj Singhal

Kumar Tours said...

We are the sole ideal B1 business visa providers within Hyderabad. Many of us produce the many luxuries to the clients to have b1 and also b2 business visa. For virtually every queries with regards to B1 and also B2 business visa it is possible to straight check with us all throughout Hyderabad, even as we will be the greatest specialists service providers within Hyderabad.
For more information click the below given links.
Us b1 visa hyderabad.
B1 visa Hyderabad

Frozen Juegos said...

Great post,Thanks for providing us this great knowledge,Keep it up.
A good blog.
Signature:
Jugar juegos de frozen gratis en línea gratis, los nuevos de princesa de Disney juegos frozen - la princesa encantadora y linda. Divertirse frozen!

games unblocked said...

I am very happy to read this. Appreciate your sharing
kids games
friv
unblockedgames
un show mas

Mít Trang said...

Its really good information, i like your blog post. Thanks for sharing
juegosjuegos.com
juegos de matar zombies
jogos do friv

Anuj Singhal said...

Hi All

I have gone through each steps mentioned in doc however, still getting some errors. Also seems UI is changed. Let me know if anyone has tried the same recently.

Thanks


thị hậu nguyễn said...

I hope you will almost be posted such nice articles
happy wheels
super mario bros
pacman
agario

for IT the said...

Great Article
Java Online Course | Java EE Training


Java Training Institutes in Chennai | java j2ee training institutes in chennai | Java Training in Chennai | J2EE Training in Chennai | Java Course in Chennai


Java Interview Questions | Java Training Institutes | Core Java Interview Questions

Friv4 Games Online said...

Thank you for your post, I look for such article along time, today i find it finally. this post give me lots of advise it is very useful for me
Signature:
i like play games happy wheels online and play happy wheels 2 games and zombie tsunami apk , retrica download , retrica apk , happy wheels 2 , agario

Yepi said...

You need to kill time, you need entertainment. Refer to our website. hope you get the most comfort.
Thanks you for sharing!
Yepi
Kizi
Friv
Friv Games

abhishek bhatnagar said...

i am new in payment gateway integration could you please let me know about orbitalPaymentTech Integration with salesforce

Mohammed said...

Nice blog...Very useful information is providing by ur blog..here is a way to find.

Google App Integration Chennai

Hieu Nguyen said...

you'd have time to look these kids active. Please visit our website and let us play the game interesting.
Thanks for sharing !
Friv 10
Kizi 10
Yepi 2

Online Friv said...

You need to kill time, you'd have time to look these kids active. Refer to our website. Hope you get the most comfort.
Thanks for sharing !
Friv 5
Kizi 1
Yepi 3

Alex Albert said...
This comment has been removed by the author.
Alex Albert said...

Paypal is the nice payment gateway but now-a-days bitcoin payment gateway integration is more popular. Cryptex Technologies hold expertise in integrating bitcoin. For any queries email us at: info@cryptextechnologies.com

mark2016 said...

Rottgering NVM Makelaars voor deskundig advies en begeleiding. Wij zijn actief in de regio groot Den Haag en kennen dit gebied als geen ander. Lees op onze website hoe wij u kunnen helpen.

makelaar den hag

mina55 said...

Administratiekantoor voor Den Haag en omgeving Salarisadministraties Financiële administraties Fiscale aangiften Advisering ARO Den Haag

administratiekantoor den haag
belastingaangifte den haag
boekhouder den hag

حسام داود said...

level تسليك مجارى بالرياض
افضل شركة تنظيف بالرياض
تنظيف شقق بالرياض
تنظيف منازل بالرياض
شركة غسيل خزنات بالرياض
افضل شركة مكافحة حشرات بالرياض
رش مبيدات بالرياض
شركة تخزين عفش بالرياض
تنظيف مجالس بالرياض
تنظيف فلل بالرياض
شركة تنظيف بالرياض

Cary Bel said...

Thanks for sharing this. If you are looking for best blockchain api developer then contact us at:info@cryptextechnologies.com

Pay Any Fee said...

I wanted to thank you for this great read!! I definitely enjoyed every little bit of it . I have you bookmarked to check out new stuff on your post. School Fee Collection Software

Friv4 said...

When you're tired, you want to relax after a stressful working hours, you need to have time to take care of the kids active.
Please visit our website and play exciting flash games.Thanks you for sharing!
Friv 4

Kizi200 said...

Play the Best Free Games! We've picked out the racing games, cooking games, candy crush, games shooting, fashion games, ...
Thanks for sharing !
Kizi 200
Friv 1
Y88
Y9

Friv100 said...

You want to relax after a stressful working hours. Refer to our website. hope you get the most comfort.
Thanks for sharing !
Friv 100
Friv 8
Friv 2

GirlsGoGames Dressup said...

You want to relax after a stressful working hours. Refer to our website. Hope you get the most comfort.
Thanks for sharing !
GirlsGoGames
Kizi 100
Frvi

Soc Cute said...

This is the game is played so great. Invite you to experience it interesting things there.
strike force heroes | strike force heroes 4 | slither io
tank trouble 2 | earn to die | goodgame empire

sign in to gmail | log in to gmail

hotmail sign in | hotmail login


Sri Vidya said...

Briltus Technologies offer the most effective real time practical oriented Salesforce online Training . Our sessions help your group to quickly procure the power they need.
Visit: http://www.briltus.com

games2girls said...

You need to have time to take care of the kids active. Please visit our website and play exciting flash games.
Thanks you for sharing!
Games2Girls
Kizi 1000
Frin
Friv 3

Yoob said...

Ok thanks so much and I like this!
Y8
Juegos de Twizl
Friv

Alice Denny said...

I was working and suddenly I visits your site frequently and recommended it to me to read also. Age Of War 2
Big Farm | Slitherio
Tank Trouble | Happy Wheels
Goodgeme Empire | Slither.io

Brayden Barnell said...

Great post, thanks a lot for sharing. If you are looking for bitcoin payment gateway integration company then contact us at: info@cryptextechnologies.com

John Alert said...

Java Training Institutes Java Training Institutes
Java Spring Hibernate Training Institutes in Chennai J2EE Training Institutes in Chennai J2EE Training Institutes in Chennai Core Java Training Institutes in Chennai Core Java Training Institutes in Chennai

Hibernate Online Training Hibernate Online Training Hibernate Training in Chennai Hibernate Training in Chennai Java Online Training Java Online Training Hibernate Training Institutes in ChennaiHibernate Training Institutes in Chennai

gun mayhem 3 said...

You go to our Web page you can play online games for free.
Our Web page selection is the biggest collection so you can play entirely for free
gun mayhem | age of war
learn to fly | happy wheels game
tank trouble

Raj Solanki said...

Thanks a lot for offering great informative post. Really liked this awesome post.

Salesforce Implementation Services

Eric Trump said...

Thanks for sharing this good stuff! Keep up the great work, we look forward to reading more from you in the future!
Friv 100

Abiya Carol said...

We developed our own API using PHP to integrate Payment with Salesforce. From inside Salesforce itself, we can now easily make Paypal Authorization requests, Capture, Void & Direct Payment. Also created apex jobs for recurring payment.

aws training in chennai

Trần Mi said...

The article gives me a lot of interesting information. I still often share life experiences with friends. And I enjoyed the convenience and attractiveness of free messaging app
whatsapp baixar , baixar whatsapp , baixar whatsapp gratis

Trần Mi said...

Facebook has become a part of my life, not only helped me to connect with you but also where I can share every moment in life. I really like the convenience that it brings
facebook baixar , baixar facebook , baixar facebook gratis

Linh Hoa said...

I wanted to thank you for this excellent read!! I definitely loved every little bit of it.Cheers for the info!!!! & This is the perfect blog for anyone who wants to know about this topic
return man 2 game , return man 2 , return man

Linh Hoa said...

In your article, points caught my attention the most is how your prose, to give me a deep impression. Wish you would write more. good luck!
subway surfers game , subway surfer , subway surfers

Sarma said...

Hi. Happy New Year. I have found your site to be very informative. I am trying to integrate paypal payments into salesforce, but I am having problems with the adjusted fee scale. Any recommendation would be appreciated.

Alex Albert said...

Thanks for sharing such a useful information about bitcoin payment integration. Cryptex Technologies hold significant experience in creating bitcoin payment gateway Integration. Creating a gateway for the online transfer of Bitcoin is a job that calls for considerable experience, through technical knowledge and analyzing power. Cryptex hold expertise in all the aspects i.e. we have years of experience in creative payment gateway for Bitcoin, our development team has proficient command on technical knowledge and we also analyze different scenarios to test the security and reliability of the payment transfer system. For any further queries email us at: info@cryptextextechnologies.com

Naveen Karma said...

i thankful to you for sharing about Salesforce Integration Services informative blog.

yoob games said...

العاب بنات يحتوي موقعنا على العاب تلبيس بنات متجددة باستمرار وكل مايتعلق بصنف العاب بنات تلبيس ومكياج وطبخ و العاب فلاش اولاد ومرحبا في العاب تلبيس ...
العاب
al3ab-banat01

Vaishanvi gandhi said...

hey....i got err in this form...help me plz
System.XmlException: No body found in HTTP response

Craft Mine said...


Very helpful advice in this particular post! It’s the little changes that make the largest changes. Thanks for sharing!
minecraft | baixar facebook | baixar whatsapp | facebook baixar | baixar photo grid

Minal Kapoor said...

Really i appreciate, this is very best information, Keep more posting.
Website Design in Nagpur

Steve Berke said...

I think this article will fully complement you article. PLease continue publishing helpful topics like this. Regards, from Always Open Commerce

94 hằng said...

Mostly people have all the same things when they are writing academic task or any other writing, especially light music most people like during the writing.

subway surf , baixar subway surf, subway surf download , download subway surf

94 hằng said...

Life becomes more interesting and wonderful when you share your memorable moments with friends and family through unique photographs. You can create your own unique style impressed with image editing software. And after hours of work stress you can also

Square Quick
Square Quick
Square Quick
Square Quick
Square Quick

94 hằng said...

Mostly people have all the same things when they are writing academic task or any other writing, especially light music most people like during the writing.

Snapchat , Snapchat, Snapchat , Snapchat

94 hằng said...

Life becomes more interesting and wonderful when you share your memorable moments with friends and family through unique photographs. You can create your own unique style impressed with image editing software. And after hours of work stress you can also
Download Musicas, Baixar Musicas Gratis ,Baixar Musicas Gratis, Baixar Musicas

94 hằng said...

You need to have time to take care of the active. It in fact was a amusement account it. Look advanced to far added agreeable from you.

entrar hotmail agora , hotmail entrar, entrar hotmail , entrar no hotmail

94 hằng said...

Mostly people have all the same things when they are writing academic task or any other writing, especially light music most people like during the writing.
facebook iniciar sesión , facebook, iniciar sesion , iniciar sesion facebook

94 hằng said...

Mostly people have all the same things when they are writing academic task or any other writing, especially light music most people like during the writing.
dream league soccer download , dream league soccer apk , download dream league soccer , dream league soccer

94 hằng said...

You need to have time to take care of the active. It in fact was a amusement account it. Look advanced to far added agreeable from you.
banana kong ,
banana kong baixar ,
baixar banana kong ,
download banana kong ,
banana kong

94 hằng said...

Life becomes more interesting and wonderful when you share your memorable moments with friends and family through unique photographs. You can create your own unique style impressed with image editing software. And after hours of work stress you can also

whatsapp messenger
baixar whatsapp
whatsapp plus
download whatsapp
whatsapp baixar


94 hằng said...

You need to have time to take care of the active. It in fact was a amusement account it. Look advanced to far added agreeable from you.
Hotmail
Hotmail Iniciar Sesión
Iniciar Sesión
Iniciar Sesión Hotmail
Iniciar Sesión
Iniciar Sesión Hotmail

ngocanh said...


Very interesting blog. Alot of blogs I see these days don't really provide anything that I'm interested in, but I'm most definately interested in this one. Just thought that I would post and let you know. Nice! thank you so much!
geometry dash 2.0 l geometry dash 2.0 apk l geometry dash online l geometry dash 2.0 download l geometry dash

ngocanh said...

Your blog posts are more interesting and impressive. I think there are many people like and visit it regularly, including me.I actually appreciate your own position and I will be sure to come back here.
b612 l b612 app l baixar b612 l download b612 l b612 apk

CloudGenie Technologies Private Limited said...

Hi, Anyone needs about Salesforce Integration Services, we provide best and reliable Salesforce CRM services in USA, India, UK and Japan.

Karthika Shree said...

Great site for these post and i am seeing the most of contents have useful for my Carrier.Thanks to such a useful information.Any information are commands like to share him.
Sales-Force Training in Chennai

Dus Pay said...

Hello Dear sir

I like your blog very well, I want to say thank you for giving so good information.
I have a website duspay.com. We provide payment gateway
Payment Gateway | Duspay

Unknown said...

Hi Alex Albert, I am getting this error,'This transaction cannot be processed. The merchant's account is not able to process transactions'. pls help me out. There is some cofig problem how to solve this.

Anonymous said...

Thanks

Andy Fernandez said...

Thanks for sharing this useful information with us. Cryptex Technologies hold significant experience in creating bitcoin payment integration. Creating a gateway for the online transfer of Bitcoin is a job that calls for considerable experience, through technical knowledge and analyzing power. Cryptex hold expertise in all the aspects i.e. we have years of experience in creative payment gateway for Bitcoin, our development team has proficient command on technical knowledge and we also analyze different scenarios to test the security and reliability of the payment transfer system. For any queries email us at: info@cryptextextechnologies.com

Post a Comment