Integrating Linked2Pay and Salesforce using Chargent



Linked2pay is an award winning ACH and credit card processing platform. The platform provides an innovative solution that improves payment acceptance speed as well as providing administrative tools for managing payments and APIs that provide an approach for implementing automatic payment processing.

Integration with Chargent allows the ability to provide a seamless process for completing payment for orders managed in Salesforce. The integration also provides a secure ACH and credit card payments process that maximizes security and fraud prevention for PCI compliance through the use of NACHA guidelines, encryption, and tokenization.

Connect Linked2Pay and Salesforce with Chargent

See all Linked2Pay transactions, manage refunds, send payment links and more, all inside Salesforce with Chargent, the top rated payments app on the Salesforce AppExchange.

Not yet a Chargent customer?

Contact us for a no-obligation 30 day trial, and see for yourself!

Prior to setting up Linked2Pay in Salesforce

  1. Install both the Base Package and the Chargent Orders Transaction Package of Chargent into your Salesforce org.
  2. Configure Chargent according to the Installation and Setup Guide.

Setting Up Linked2Pay

If you don’t already have a Linked2Pay test account you can register for a test account on the Linked2Pay website.

  1. Log into Linked2Pay account.
  2. Click Settings tab.
  3. Click on the API option
  4. Check Enable Web Service and click Generate Web Service Access KeyNote: The Web Service Access Key will need to be entered into Salesforce.

  1. Click Save Changes at the bottom of Settings screen.
  2. Click Virtual Terminal tab.

Linked2Pay Virtual Terminal

  1. Click Create Terminal.

Linked2Pay Create Terminal

Enter Terminal Name, click Next on this and subsequent screens, and click Submit on final screen. Note: Leave default values on subsequent screens. Terminal Name will need to be entered into Salesforce to setup the Linked2Pay gateway record.

Linked2Pay Virtual Terminal Step

Add a Linked2Pay Gateway record in Salesforce using Chargent’s Gateway Wizard.

  1. Click on the App Launcher on the top left side in Salesforce.
  2. Select Chargent as the App
  3. Select the Chargent Settings Tab
  4. Choose Chargent Setup Wizard
  1. Do you have a Payment Gateway account – Select Yes
  2. Select Linked2Pay as your Payment gateway.
  3. Select Test Transactions for testing or Live Transactions if you are looking to process real time payments.
  4. Follow the prompts to configure your gateway.

You will need the following information:

  • Add your credentials based on your Sandbox (Test) or Production Live Linked2Pay account.
    • Linked2Pay Login Name
    • Linked2Pay Web Services Key
    • Linked2Pay Virtual Terminal Name

Other information that will be asked:

  • Will you be using tokenization? (recommended)
  • What currency will you be using? (USD, CAN, etc.)
  • What payment methods will you be accepting?
  • Credit cards and/or ACH (electronic check)
    • What Credit Card types will you be accepting? (Visa, Mastercard, etc…)
  • Payment Console Setup (Premium feature for Platform Edition)
    • Show Charge Button
    • Show / Create Update Token Button
    • Show Authorize Button

Direct Debit Network (version 6.15 and higher)

Starting with Chargent version 6.15, you can now select the Bank Account network for your region during the gateway setup process. This will allow for the correct Direct Debit Network fields to be displayed on Payment Requests and Payment Console based on your region.

You have the following Direct Debit Networks to choose from based on your region.

  • US – ACH (also known as echeck or electronic check)
  • Canada – EFT (ACSS) Electronic Funds Transfer
  • Australia – BECS
  • Europe – SEPA

Once you have your Direct Debit Network set, you will see the appropriate field names on your Payment Request that are sent as well as your internal Payment Console.

Add a Linked2Pay Gateway record in Salesforce (Chargent versions prior to 5.40)

  1. Click on the AppLauncher on the top left side in Salesforce.
  2. In the Search for apps or items box, Search for Gateways and select
  1. Click New and select Linked2Pay US or Linked2Pay CA as the Gateway Type
  2. Map the following fields in Chargent with your credentials from Linked2Pay:
    • Merchant ID: Linked2Pay Login Name
    • Merchant Security Key: Linked2Pay Web Services Key
    • Terminal Security Key: Linked2Pay Virtual Terminal Name
  3. Setup the following Gateway fields
    • Check the Active box – To make the Gateway active
    • Use Tokenization – If you are planning on using Linked2Pay tokenization (recommended)
    • Available Card Types – Select the cards you will be accepting (this is based on your gateway settings and what card types they can process – Visa, Mastercard, American Express, etc..)
    • Available Payment Methods – Will you be accepting just Credit Cards or ACH
    • Available Currencies – What currencies will you accept (this is based on your payment gateway and the currencies they accept payment in.
    • Credit Card / Bank Account Data Handling – This lets Chargent know when to clear the information in Salesforce. You have 4 options.
      • Never Clear
      • Clear After Successful Charge
      • Clear After All Transactions
      • Clear When Token is Present (recommended)

When using Payment Requests or Payment Console the following should also be set. Please note these features come with Sites and Platform edition & require activation in your Production Org.

  • Available PR Transaction Types
    • Charge Full Amount – Charges the credit card immediately
    • Authorize Full Amount – This option won’t charge the card but only holds the funds available until you capture them.
    • Authorize Minimum Amount – This option won’t charge the card but only holds the minimum amount that your gateway will allow. You will need to charge the correct amount in order to capture the transaction
  • Show Charge Button
  • Show Authorize Button

Your Gateway page should look similar to the figure below. Click the Save button to commit your changes.

Testing the Integration

Now that you have created the Linked2Pay gateway record in Salesforce, it is time to run some test transactions to ensure it was set up correctly, and understand how Chargent works to charge credit cards within Salesforce.

Create a Chargent Order in Salesforce to run test transactions

  1. Click on the App Launcher in the top left side and select Chargent as the App.
  1. Click the Chargent Orders Tab.
  2. Click on New
  3. Enter the following information:
    • Account: The Account the Chargent Order should be associated with.
    • Payment Type should either be credit card or check depending on if you are testing credit cards or ACH (electronic check)
    • Billing Information
      • Billing First Name
      • Billing Last Name
      • Billing Address
      • Billing City
      • Billing State / Province
      • Billing Zip Code / Postal Code
      • Billing Email Address (if you want to test the email receipt that gets triggered upon a successful transaction)
    • Charge Amount – The charge amount determines the test results whether you have an approved transaction or a declined transaction.
    • Manual Charge checkbox to enter a specific amount. If you are entering Subtotal, Tax, and Shipping then the Charge Amount will be automatically calculated and the Manual Charge box does not need to be checked).
    • Credit Card Number = See Linked2Pay test credit card and ACH information . Linked2Pay uses specific card numbers to test a successful transaction.
    • Card type (Visa, MasterCard, etc..) or Bank Account Type for ACH (Checking or Savings).
    • Card Expiration Month and Card Expiration Year should 02/20 in order to return a successful Approved transaction.

  1. Click Save
  2. Click the Charge button. You will receive a pop-up asking for the CSC (Card Security Code). The CSC for Visa is 999 in order to return an approval.

  1. Press the Charge button

You should receive a popup that shows the test transaction was approved.

Test Credit Card and ACH

Credit Cards:
Visa: 4111 1111 1111 1111
Expiration Date 02/2020
CVV: 999

ACH Transaction:
Routing Number: 122000247
Account Number: 123456789

Sending Live Transactions from a Salesforce Sandbox

When Chargent is installed in a Salesforce Sandbox, transactions are typically sent to the payment gateway’s test / sandbox / development environment, regardless of whether Chargent’s Test Endpoint checkbox is checked. This is done as a security precaution, to prevent real transactions from being accidentally sent from a Salesforce Sandbox.

When Chargent is installed in a production or developer Salesforce org, checking the Test Endpoint checkbox on the Gateway record will route transactions to the test environments provided by the gateway.

Note: Some gateways use the same endpoint for live and test environments. For these gateways, the Chargent application does not prevent live transaction processing. As such, it is best practice to deactivate your live gateway records in orgs used for testing.

If you wish to send live transactions from a Salesforce Sandbox, as a final step in testing, simply use Chargent’s Endpoint Override field on the Gateway record, and enter the production endpoint of your chosen gateway there.

Here is the production endpoint URL for Chargent’s integration with Linked2Pay:

Note that the full endpoint URL must be entered in the Endpoint Override field, and the domain must be present in the Remote Site Settings (for standard Chargent integrations it should be already present).

Understanding Transactions

When a transaction occurs between Chargent and the Linked2Pay gateway, a new transaction record is created in Salesforce. The listing of transactions can be found in the Transaction section under the Related tab.

On the Related tab, click a Transaction ID link to see the details, as shown in the figure below. This transaction record contains the entire set of data that Linked2Pay sends in its response, including the transaction Type (Charge, Authorize, Refund or Void), the Response Status (Approved, Declined, Error), and any related approval or error messages.

Going Live

This section contains the procedure for making the integration available for production systems. This procedure should not occur until the testing procedure described in Testing the Integration is successful.

  1. Register for a live Linked2Pay account’s username and password.
  2. Repeat Setting Up Linked2Pay For Integration using production account creating production Virtual Terminal.
  3. Repeat Setting Up Salesforce For Integration for production Salesforce.
  1. Repeat Testing the Integration for production integration using at least one real credit card transaction and one real ACH transaction using company or personal accounts.
    Note: Void the transaction after test if needed.


Chargent supports Linked2Pay Payments customer code tokens, which allows future transactions to be executed without the need to store sensitive credit card or bank account numbers in Salesforce.

This tokenization feature is essential in limiting the scope of PCI compliance for your organization. Because Linked2Pay securely stores sensitive credit card account numbers, it will return a customer token which can be used to process payments. This allows you to clear the credit card information in Salesforce. The token will only work with Linked2Pay Payments for that customer.

Chargent stores Linked2Pay Payments customer code tokens in the Token field, which does not need to be encrypted so the Token can be copied to new Chargent Order from the same donor, or even integrated with other systems that may connect to Linked2Pay Payments.

Chargent can also automatically delete credit card and account numbers from Salesforce upon a successful transaction and creation of a customer code token.

To enable Linked2Pay Payments Customer Code Tokens for Payments in Salesforce:

  • Click the App Launcher on the top left.
  • Search and select Gateways.
  • Click on the Linked2Pay gateway record.
  • Click Edit.
  • Check the Use Tokenization checkbox.
  • Set the Credit Card Handling field (unless you are using Payment Console ).
    • Never Clear: Chargent will not remove any card data automatically. Clear After Successful Charge: Chargent will clear the credit card number, expiration dates and card security code only after a successful charge is run.
    • Clear After All Transactions: The credit card number, expiration date and card security code will be erased after any transaction (Charge, Void, Refund).
    • Clear When Token Present: Only when a token is present in the token field, will the credit card number, expiration date and card security code be cleared.

The optional Payment Console feature available in the Platform Edition of Chargent can create Linked2Pay Payments tokens without ever saving sensitive data to the Salesforce database, greatly reducing PCI Compliance scope.

Please contact us for additional information on security and PCI compliance options for Salesforce.