Wiki

Clone wiki

Intuit Payment Solutions - Hosted PayPage / Home

#Intuit Payment Solutions ##Hosted PayPage Class

This class with help you integrate Hosted PayPage's into your Web Site. This is not a complete solution, as such you are expected to use this class as a starting point to build your own PayPage Integration.

Intuit Payment Processing tracks all API and SDK usage by Developer for Security and other reasons, since I am not the final developer of the end solution all persons wishing to utilize this project must have a developer account with Intuit, they are free.

Become an IPP Developer

##Usage

Step 1

Register your solution using this class to get the Login and APP ID. Follow the Quick Start Guide. You will need to complete steps 1-4 in order to get the needed information to use this class.

1. Be sure to select **Desktop** Security Model
2. In most cases you will need to create 2 Applications, a Production and a Testing Applications

If you do not already have a Test Merchant Account you can get one here

Step 2

Generate a Connection Ticket to Authorize the Class to process payments on your Merchant Account. Copy and Paste on of the URL below in to a Browser, Replacing the {{APPID}} place holder with your APP ID from Step 1

Production / Live Merchant Account:

#!txt

https://merchantaccount.quickbooks.com/j/sdkconnection?appid={{APPID}}&sessionEnabled=false
Testing / PTC Merchant Account:

#!txt

https://merchantaccount.ptc.quickbooks.com/j/sdkconnection?appid={{APPID}}&sessionEnabled=false

Record the Resulting Connection Ticket, you will need it later. Keep it safe.

Step 3

Configure your Merchant Account for PayPage

Production / Live Merchant Account

Testing / PTC Merchant Account

* Use the "PayPage Terminal" settings to set up your PayPage. 
* Your settings will depend on your Usage Case

Step 4

Look at the enclosed Examples to create your solution This code is not for use in production, these are references only, you need to write your own solution utilizing the HostedPayPage Class

When Creating your Solution the following configuration is required

#!php

// Configuration, These Values come from Intuit- See README
$connect_ticket = ''; 
$ipp_app_login  = '';
$ipp_app_id     = '';
$ipp_live       = false;

Be sure each of these variables are set in the class property or you will get an error returned by Inuit, most common is a generate "Merchant Account not Configured property" which is effectively "Error" and does not actually mean there is an error with your merchant account, the most common reason to get this error is one of these variables is wrong. For example if you put in the Application information for the "Production" app but leave the $ipp_live variable set to false, this error will be returned, also if you set your application inside the Intuit Partner Platform to "Hosted" not "Desktop" this error will occur

Examples


Basic

The Basic example is a simple php implementation of the class, It contains several files * example_redirect.php: This is the Primary file in the example, this example shows to to create a paypage ticket, and redirect the customer to Intuit's site * example_buynow.php: This is a Simple Landing Page and "Buy Now" Link * example_paymentcomplete.php: If configured Intuit will redirect the customer back to your site to a specified URl, this will allow you to record the transaction in a database, send an email, or display a custom Receipt, This file is a basic example of how to handle that return

Concrete5

Concrete5 is a CMS system written in PHP, This example is a basic Concrete5 Integration. It does not contain return processing. However is illustrates how to use some of the custom data fields, as well as integrating hosted paypage with a 3rd Party Application. This uses the "Single Page" functionality of the Concrete5 System

To install on a Concrete5 Site, simple upload "HostedPayPage.php" and "pay.php" files to your concrete5 Installation under the "single_pages" directory. Then navigate to "dashboard/pages/single/" and enter "pay.php" into Add Single Page field.

Go Live


Once your Ready to Go Live change the line

#!php

$ipp_live       = false;
to

#!php

$ipp_live       = true;

This will tell the class to send the customer to the Production environment instead of the Testing/Developer environment. Make sure the connection ticket, app login and appid are for an applications with the Environment of "Production" as well

##Support This is not a Complete Solution, if you need commercial support or assistance in developing a solution for your use case contact me for a Quote.

Bugs or erorrs should be reported using the Issue Tracking here on BitBucket, no other reports will be responded to.

##Lic.

Released under the MIT Lic.

##Author

MP Technology Group code@mptechnologygroup.com

If you found this Helpful consider a Donation, your donation helps to fund this and other Open Source Projects

Donate

Updated