ChargeItPro Javascript API

Payment Processing Partners, Inc. is offering a browser based payment processing solution that allows developers to easily integrate payment processing hardware into their new or existing solutions.

Detailed API documentation can be found here.

Prerequisites

To get started using Easy Integrator.
Download and install ChargeItProWebDriver application.
Our ChargeItProWebDriver application allows your Web Site to communicate with Hardware Devices to capture payment information and signatures.
The ChargeItProWebDriver comes pre-configured with an Emulator to allow you to test payment transactions without having hardware installed.
How to use the Emulator

How To Setup Workstations

Authentication
All requests must be authenticated by passing in a MerchantName and MerchantKey, generated and provided by ChargeItPro.
Hardware Configuration
In order for EasyIntegrator API to communicate with the hardware you will need to run setup and generate a unique ConfigurationId. This ConfigurationId must be passed on all subsequent requests.
Quick Setup vs. Advanced Setup
When you run setup you will be presented with the following screen.



Clicking the Quick Setup button will present you with the following screen.



Clicking the Detailed Setup button will present you with the following screen.



This is an example of a Setup Screen that has been integrated with EasyIntegrator that calls the RunSetup method and generates a unique ConfigurationId.

Code Example
  1. var request = {
  2. "merchantName": "DemoUser1",
  3. "merchantKey": "62de169ead984d709cd6acdb36d0f03e"
  4. };
  5. EasyIntegrator.runSetup(request)
  6. .success(function (configurationId) {
  7. /* IMPORTANT: You must store this configurationId */
  8. /* (ie in a database) and pass it in */
  9. /* on all Transaction Requests. */
  10. })
  11. .error(function (errorMessage) {
  12. alert(errorMessage);
  13. })
It is important that you save this ConfigurationId and pass it in on all requests. ConfigurationId's may be shared by multiple computers within a Merchant domain.

How To Process Payments

This is an example of a Demo Shopping Cart that has been integrated with EasyIntegrator.

ItemsQuantityPrice
Blue Mixer

"Every home chef needs this mixer!" -- Anson Luis, renown French Chef

$24.99
Red Toaster

The perfect toaster for your kitchen.

$74.98
Total$99.97
Transaction Type:  
Use Tokenization
What is Tokenization?
Description
To use Easy Integrator to process a payment transaction, create a JSON object that contains a TransFields object and pass it into EasyIntegrator.processTransaction.
Code Example
  1. var request = {
  2. "merchantName": "BobsRibs1",
  3. "merchantKey": "A3gziLB98002",
  4. "configurationId": "198e84701abc28da",
  5. "transactionType": "CreditSale",
  6. "transFields": {
  7. "amountTotal": 99.97
  8. }
  9. };
  10. EasyIntegrator.processTransaction(request)
  11. .success(function (resultsFields) {
  12. var transactionId = resultsFields.uniqueTransId;
  13. })
  14. .error(function (errorMessage) {
  15. alert(errorMessage);
  16. })
  17. .done(function () {
  18. });
Receipt Data
This is an example of a receipt and the fields returned from EasyIntegrator to populate the form values.

How To Process Customer Transactions

This is an example of a Customer Management Screen that has been integrated with EasyIntegrator.

Note: The following grid contains only test data, so Deletes will just be local test data (i.e. you can't hurt anything).
Cust RefFirst NameLastNameEmailPhoneZipLast Transaction
{{customer.customerRef}}{{customer.firstName}}{{customer.lastName}}{{customer.email}}{{customer.phone}}{{customer.zip}}{{customer.lastTransaction}}
Add Customer
Description
To use EasyIntegrator to process a customer transaction, create a JSON object that contains a CustomerFields object and pass it into EasyIntegrator.processTransaction.
Code Example
  1. var request = {
  2. "merchantName": "BobsRibs1",
  3. "merchantKey": "A3gziLB98002",
  4. "configurationId": "198e84701abc28da",
  5. "transactionType": "CreateCustomer",
  6. "customerFields": {
  7. "firstName": "Test",
  8. "lastName": "Customer",
  9. "address": "2 W 72nd St.",
  10. "address2": "",
  11. "city": "New York",
  12. "state": "NY",
  13. "zip": "10023"
  14. }
  15. };
  16. EasyIntegrator.processTransaction(request)
  17. .success(function (customer) {
  18. var customerRef = customer.customerRef;
  19. })
  20. .error(function (errorMessage) {
  21. alert(errorMessage);
  22. })
  23. .done(function () {
  24. });