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

107 comments:

Unknown said...

Good stuff ..

Raj said...

Really sir its a tremendous work.

Unknown said...

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

Anonymous said...

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

Lokesh said...

nice helping stuff..

Unknown 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.

Unknown said...
This comment has been removed by the author.
Unknown 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

Venkata Narasimha Rao Vutla 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

Unknown said...
This comment has been removed by the author.
Unknown 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.

Unknown 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/

Unknown 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

Unknown said...

Thanks Aslam, It helped me a lot.

Unknown 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..?

Unknown 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


Unknown 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

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?

Unknown said...

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

Janardhan said...

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

Unknown 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

Unknown 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

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


Unknown 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

Unknown said...

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

Unknown said...

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

Google App Integration Chennai

Unknown said...
This comment has been removed by the author.
Unknown 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

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

Unknown said...

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

Unknown said...

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

Unknown 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

Unknown 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

Yoob said...

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

Unknown 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

Unknown said...

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

Salesforce Implementation Services

Unknown 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

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.

Unknown 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

Be Healthy News said...

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

al3ab banat01 said...

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

Unknown said...

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

Unknown said...

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

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

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.

Anonymous 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.

Unknown 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

Ravi said...

does anyone know if I can cancel an easypay in salesforce for paypal? Thx for your hel

Unknown said...

IS there a different code for Paypal Payflow Pro?

Unknown said...
This comment has been removed by the author.
INTERNET FOR FREE - 50GB said...

Really i appreciate, this is very best information, Keep more posting.
AWS Jobs in Hyderabad

Unknown said...

This post is very nice as we found it very informative. thanks for it and keep updating your posts.

You can check Payment Gateway for the best purpose.

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

Hello Asalm,
I tried and it works for Paypal. Do we have to set up with different code for pay pal payflow? As we knoe we will have different API's for Payflow, I would be glad If you can publish for Payflow too...

Unknown said...

I would like to say that this blog really convinced me, you give me best information! Thanks, very good post.
exchange paypal
Keep Posting:)

Paypal Integration in Kenya said...

Wow, PayPal integration is really very easy with Salesforce. Heartly thanks to you for sharing stepwise integration. It helps me a lot.
Regards:
Muva Technologies
https://muva.co.ke/

Post a Comment