automating payments

Automate Your Payments with Salesforce

balasadayappan Blog, CRM, Salesforce

Salesforce is one of the most popular customer relationship management (CRM) suites in the world. To receive full benefit of this robust tool, you need a way to directly integrate actual sales (i.e. Payments) into salesforce. This can be done using manually uploading transactions or entering them manually as they come in to your system. But both of these approaches are complicated and time-consuming.

A Better Approach?

Rather than manually integrate payment processing into salesforce, it’s possible to make this sync 100% automatic. This automatic integration saves you time and also gives other benefits including:

  • Remove the need for double-entry accounting.
  • Instantly identify the best-selling items or the highest value customers.
  • Improved sales.

How do you make this integration automatic?

Connecting a website to the payment processing networks is exceptionally difficult. So merchants can easily connect to the Authorize.Net Payment Gateway when they use Salesforce as their CRM tool, which provides the complex infrastructure and security necessary to ensure fast, reliable and secure transmission of transaction data. Authorize.Net manages the routing of transactions just like a traditional credit card swipe machine you find in the physical retail world, however, Authorize.Net uses the Internet instead of a phone line. See the credit card processing diagram.

We can implement this in 2 different ways:
  1. Create a Web Form using Visualforce page and expose that as Sites (https://developer.salesforce.com/page/Sites). Once the form is submitted with the payment information, call the Authorize.net REST API from salesforce to process the payment then the merchant will receive the payment from the customer’s bank account.bala 1
  2. Create a web site using any application and once the form is submitted from the web site with payment information send that to Salesforce and let the Salesforce calls the Authorize.net REST API to process the payment.

bala 2

Development and testing

  1. We recommend first creating an net Sandbox account, which is a separate, free account for testing purposes. Authorize.net will instantly generate test API credentials for you. Then go to the http://developer.authorize.net/api/reference/index.html and provide the API Login ID and the Transaction Key to generate the sample REST request.
  2. You will have separate methods for each transaction and you can get all sample request from the above mentioned page, Below are the few methods
    1. Charge a Credit Card
    2. Refund a Transaction
    3. Void a Transaction
  3. Develop the apex code with the sample requests created and test it with the sandbox endpoint.
  4. Once all the testing is done switch the endpoint to production in the apex code, also make sure you have enabled the production mode on the merchant interface of Authorize.net

About Bala Sadayappan 

Bala is a Senior Consultant in Statera’s Salesforce CRM Practice. Bala has Seventeen years of experience in IT as a Technical Lead / Architect and maintains certifications in Salesforce.com (Administrator & Developer) and Apttus Configure Price Quote (CPQ).