Entries Tagged '3rd Party Integration' ↓

Warrior+ WSO Pro Integration

Starting version 4.1, DAP supports integration with Warrior Plus (WSO Pro Standard).

And starting version 4.3.1, DAP now also supports Warrior Plus’s new Adaptive Payments system (WSO Pro Adaptive).

DAP supports both WSO Pro Standard and WSO Pro Adaptive. The same dap script (/dap/dap-wsopro.php) supports both standard and adaptive payments. Only the version of the script that’s included in DAP v4.3.1 has support for WSO Pro Adaptive – older versions of the above script will NOT support WSO Adaptive, and will only support WSO Pro Standard.

How to set it up

If you are on DAP 4.1 or later, you will find a script called dap-wsopro.php in the dap folder.

Set the IPN (instant payment notification) url in your WSO Pro account, to point to the following URL:

http://yoursite.com/dap/dap-wsopro.php

(NOTE: replace yoursite.com with the name of your site).

Make sure product name in DAP exactly matches the product name in WSO Pro.

Also, make sure you have the “Welcome Email” Subject & Body configured in the DAP Product page with the right merge tags to send out user login/password.

How it works

When a user completes purchase of your WSO, WSOPro will send payment notification to DAP to the IPN URL specified above.

DAP will then automatically create the membership account, allow user access to the product and send out the thank-you email configured under the DAP product with the login details.

DAP Login Xpress

What Is “Login Xpress”?

“Login Xpress” is a DAP feature that enables your members to be logged right into your membership site immediately upon completion of their purchase.

This is roughly how it works:

  • Visitor arrives at your web site
  • On your sales page, they click on any “Buy” button to purchase a Product (or Membership Level)
  • They’re taken to the checkout page (depending on Payment processor being used) and they enter their payment information and hit “Submit”
  • When they hit “Submit” to complete their payment, their payment is processed right away, and the buyer is immediately transferred back to your web site, in real time, and automatically logged in to your membership site, and they are taken to the “Welcome” page or “Members” page (you may choose what this page is going to be at a per-Product level)

Payment Processors That Work With Login Xpress

DAP supports this feature with the following payment processors:

  • Paypal Standard (DAP-generated buttons only – will not work with Paypal-hosted buy buttons that you generate from within your Paypal account)
  • 1Shoppingcart / 1SiteAutomation.com
  • Authorize.net

If you use any of the payment options above, then you can set up your sales funnel in such a way that buyers are logged in right away immediately after purchase.

Payment Processors That DO NOT Work With Login Xpress (Yet)

  • Paypal Website Payments Pro
  • ClickBank
  • e-Junkie
  • WorldPay

DAP integrates with the above processors via some kind of “back-end payment notification” – similar to Paypal’s “IPN” (Instant Payment Notification). Which means the notification between the payment processor and DAP on your site only happens on the “back-end”. Which is why DAP can only deliver the login details to the buyer via an email, and cannot log them in right away (like it can do with “Login Xpress”), because the buyer’s information is available to DAP only when the payment processor sends out the IPN notification behind-the-scenes, so to speak.

So if you’re using the above processors to accept online payments, then what you need to do, is to redirect your buyers to a static “Thank You” page that has a message similar to the one below…

“Thank you for your purchase. In a few minutes, please check your email address used during purchase for your log in details to log in to the members’ area and access the product you just purchased.”

And behind the scenes, DAP would’ve already received the payment notification from the payment processor, and it would’ve created an account for your buyer, given them access to the purchased product, and sent them the “Thank-you Email” for the product(s).

Troubleshooting 1-Click Upsells

1) Problem: Getting an error that looks like this after purchase – using 1-Click Upsells.

Warning: file_get_contents(/home/mysite/dap/upsell1.html) [function.file-get-contents]: failed to open stream: No such file or directory in /home/mysite/dap/continue.php(1) : eval()'d code on line 20

Solution: Create missing file.

Every buy button generated by DAP for Auth.net or Paypal Payments Pro, will look something like this…

<form name=”generate_authnet” method=”post” action=”https://www.DigitalAccessPass.com/dap/buy.php”>
<input type=”hidden” name=”item_name” value=”DAP Upsell Tree – Auth.net (T)”/>
<input type=”hidden” name=”description” value=”DAP Upsell Tree For Authorize.net” />
<input type=”hidden” name=”amount” value=”97.00″ />
<input type=”hidden” name=”trial_amount” value=”0.01″ />
<input type=”hidden” name=”total_occurrences” value=”1″ />
<input type=”hidden” name=”is_recurring” value=”Y” />
<input type=”hidden” name=”recurring_cycle_1″ value=”365″ />
<input type=”hidden” name=”recurring_cycle_2″ value=”365″ />
<input type=”hidden” name=”recurring_cycle_3″ value=”365″ />
<input type=”hidden” name=”payment_succ_page” value=”https://www.YourSite.com/dap/continue.php?url=/dap/upsell1.html” />
<input type=”hidden” name=”payment_gateway” value=”authnet” />
<input type=”hidden” name=”is_submitted” value=”Y” />
<input type=”submit” value=”Buy Now” />
</form>

If you see the line in bold above, you will see the field…

payment_succ_page

… pointing to the first upsell…

https://www.YourSite.com/dap/continue.php?url=/dap/upsell1.html

What this essentially means, is that once the payment for the front end order is complete, you want the contents of the page /dap/upsell.html to be presented as the first upsell.

So…

a) Either create an HTML page called upsell1.html in the dap folder.

b) Or change the name of the file in the buy-button form code above, to be whatever your actual file name is.

c) Or if you don’t wish to do any upsells, then put the URL of your final thank you page in that field’s value.

2) Question: How do I use my own button with the shopping cart script?

Look for this in the DAP generated button code:
input type=”submit” value=”Buy Now”

Replace it with your own image :
For example –
input type=”image” src=”/images/btn-order.png” value=”Buy Now”

If images folder is at the root of your site, set src = /images/btn-order.png. If it’s under dap folder, the src tag should be set to “/dap/images/btn-order.png”.

DAP Plugin Framework

How To Setup Notifications/Triggers From DAP to 3rd Party APIs

We have now created a plugin framework that will allow DAP to trigger calls to 3rd party services when a user is added to a product (subscription/registration event) or when a user loses access to product (unsubscribe/unregister event).

In fact, we used the same framework to develop DAP -> Mailchimp integration in DAP 4.1.

Here’s the steps :

1) If you want DAP to trigger calls to the APIs/methods you wrote upon an addUserToProduct event or removeUserFromProduct event in DAP, then in the DAP products page – > notify plugin field, use the following format to integrate the APIs/class files.  You can integrate multiple systems with DAP using this framework.

Say you want to integrate classname1 (that has the necessary APIs to register/unregister users to 3rd party service like Mailchimp ) and classname 2 (that has the necessary  APIs to register/unregister users to another 3rd party service like GetResponse), then use this format in the notify plugins field above.

classname1:VALUE 1 you want to pass to the api: VALUE 2 you want to pass to the api: VALUE 3 you want to pass to the api

If you want DAP to call multiple APIs/ Classes, then just create a comma seperated list of classes that DAP should notify.
classname1:VALUE 1 you want to pass to the api: VALUE 2 you want to pass to the api: VALUE 3 you want to pass to the api,
classname2:VALUE 1 you want to pass to the api: VALUE 2 you want to pass to the api,
classname3:VALUE 1 you want to pass to the api

Whatever values (VALUE1, VALUE2.. ) you put next to the class name (all values should be “:” separated), DAP will forward those params/values to your APIs when a user is added to product or user is removed from product.

To integrate say classname1 which consists of the methods/apis to talk to your 3rd party services, create a folder called classname1 under /dap/plugins folder. Then under the classname1 folder, create a php script called classname1.class.php  (just the way you notice a folder called mailchimp and under mailchimp a class file called mailchimp.class.php).

So you will have something like this:

/dap/plugins/classname1/classname1.class.php

Here’s what you need to have in classname1.class.php ( skleton class implementation ) :

< ?php

class classname1 {

function classname1() // constructor
{ }

//======== USER REGISTRATION===========

// this function is called by dap when a user is added to a product

function register($userId, $productId, $params) {

logToFile(“classname1.class.php: register(): “, LOG_INFO_DAP);
$dapuser = Dap_User::loadUserById($userId);
$email = trim($dapuser->getEmail());
$username = trim($dapuser->getUser_name());
$firstname = trim($dapuser->getFirst_name());
$lastname = trim($dapuser->getLast_name());

$data = explode(“:”,$params);

}

function unregister($userId, $productId, $params)
{
logToFile(“classname1.class.php: register(): “, LOG_INFO_DAP);

$dapuser = Dap_User::loadUserById($userId);
$email = trim($dapuser->getEmail());

$data = explode(“:”,$params);

}

}
?>

NOTE:

You MUST have same name methods (called register() and unregister() ) and the exact method signature as you see above.

You can  call other methods/functions from register/unregister and/or

You can call 3rd party APIs from register/unregister methods and/or

You can include other class files.

Whatever values you pass (VALUE1, VALUE2 etc) via notify plugin, you can access those values in these methods. The values are available in the $params array.

That’s it.

You can add a test user to a product in DAP (via dap admin -> add users) and see if things work as expected.

GetResponse Integration

DAP integrates with GetResponse very easily.

How it works

If you are on DAP 4.1, then DAP can connect with getresponse using the APIs provided by getresponse.

So when someone buys or signs up for that Product, then DAP will automatically notify your GetResponse list, and add the buyer or subscriber (if it’s a free sign-up) to your GetResponse list.

1) Retrieve the getresponse API Key from this URL:

http://www.getresponse.com/my_api_key.html

2) Then go to DAP products page, select the product and under the Notify Plugin section, add the following:

Notify Plugin upon User -> Product Activation (Add) =>
getresponse:<your API key>:<compaign_name>

For ex -

getresponse:89kjhjgjfhgf76ikghkgk:MYCOMP

That’s it.

Now go to DAP admin -> add users page and add a brand new user / email and see what happens.

The added user shd first receive the confirmation email from getresponse and upon confirmation, the user shd get added to getresponse .

If it does not work, then set the dap log level to 5, go to dap system logs-> Empty log content, and rerun the test.
Then send us the log snippet from dap system -> logs.

    That’s it.

    Mailchimp Integration

    Subscriber Flow

    The flow of subscriber is “FROM DAP TO Mailchimp“. User signs up at DAP first, then DAP automatically adds the user to Mailchimp list.. Admin removes the user’s access to a product, and DAP automatically removes the user from Mailchimp list. This feature is available starting DAP v4.1.

    How it works

    1. Login to your account at http://admin.mailchimp.com/account/api/ and note down the API Key.

    Image 1:

    2. Go to http://admin.mailchimp.com/lists/ and grab your List’s Unique Id. Click the “settings” link for the list – the Unique Id is at the bottom of that page.

    Image 2:

    3. Log in to your DAP Admin Dashboard -> Products Page and select the product (whose members you wish to add automatically to your Mailchimp list.

    4. If the list Id of the mailchimp list that you want to integrate with a DAP product/membership is say “ffffffffff”, and say your Mailchimp API Key is ‘ffffffffffffffffffffffffffffff-us2′ then add the following to the “Notify Plugin upon User -> Product Activation (Add)” in DAP products page and HIT Save/Update Product.

    mailchimp:ffffffffffffffffffffffffffffff-us2:ffffffffff

    Image 3:

    That’s it!

    Save the product and this completes the DAP->Mailchimp integration.

    How This Works

    So let’s say you picked the list “ffffffffff” in your Mailchimp account, and the DAP Product “Example Subscription Product” (as shown in the screenshots above).

    So once you add “mailchimp:ffffffffffffffffffffffffffffff-us2:ffffffffff” to the product’s “Notify plugin upon user->product activation” and “Notify plugin upon user->product de-activation” field and save it, every time someone gets access to the “Example Subscription Product” product (regardless of whether they buy it, or you give them access on the backend), DAP will  automatically  add them to the list – ffffffffff. And everytime you remove the user’s access to product (click on ‘Remove’ in DAP manage users page), DAP will automatically remove the user from the list.

    df11c84ab4

    E-Junkie Integration

    Customer Flow

    1. Buyer comes to your web site and clicks on your buy button and is taken to e-junkie to checkout
    2. Buyer finishes paying, and then they are redirected to a static page on your site that says something to the effect of “Thank you for your purchase. Please check your email id that you just used during purchase, for information about how to login and access the product you just purchased.”
    3. While this is happening, in the background, e-junkie would’ve already notified DAP via their back-end notification process called “Common Notification”, and DAP would’ve already created an account for the buyer, and emailed the buyer the login details.
    4. Buyer checks their email id, and they see the email from you giving them their login details.
    5. They login to your site using that information.

    That’s the big picture. Now for the specifics on how to integrate DAP & e-Junkie.

    E-Junkie Integration with DAP

    1) Create a product in DAP that you want to be able to sell via e-junkie
    2) Create a product in e-junkie with exactly the same name as the DAP Product name, and create a buy button for it.
    3) Go to the e-junkie Seller Admin > Edit Account Preferences > Common Notification URL field
    Set it to point to…

    http://yoursite.com/dap/dap-ejunkie.php
    (replace yoursite.com with the name of your site)

    4) Go back to DAP Setup -> config -> payment processing section.
    Look for these config items:

    Merchant’s Payment Gateway API Login ID
    Merchant’s Payment Gateway Transaction Key

    And set these to match your ejunkie merchant login Id and password. This is needed for security validation.

    That’s it!

    Go ahead and test your purchase and see if it makes it to DAP Payment/Coupons => Orders page and if the users get added.

    Infusionsoft Integration

    NOTE:

    Please note that even though the DAP/Infusionsoft integration code is built right into DAP, and there’s no additional charge for the feature itself, however, support for this feature is not free, and is not part of the Standard DAP support you get with your purchase of DAP. We receive support tickets from Infusionsoft users not setting up their Infusionsoft account correctly, and we end up having to work on their Infusionsoft accounts for reasons completely unrelated to DAP, something for which we are not responsible for. So if you want us to support any questions or problems related to the DAP/Infusionsoft integration, we will have to charge you for it. Please contact us for details about how to purchase support time.

    a) For Free products, you can use infusionsoft opt-in form on your squeeze page and integrate it with dap.  You have to set the action trigger upon opt-in (within infusionsoft) to point to http://yoursite.com/dap/dap-infusionsoft-optin-productID.php

    NOTE: Replace productID with the actual DAP product Id.  So if you want to integrate a DAP product with the DAP product ID = 10 with Infusionsoft, then copy /dap/dap-infusionsoft-optin.php to /dap/dap-infusionsoft-optin-10.php.  Change $default_product_id to 10 in the dap-infusionsoft-optin-10.php script. Upload script to dap folder on your site. Set the web form action trigger within infusionsoft to point to http://yoursite.com/dap/dap-infusionsoft-optin-10.php (replace yoursite.com with the name of your site).  Also do steps 1 thru 3 below to complete infusion=>dap integration.  That’s it.

    b) For paid products,  you can use infusionsoft shopping cart and integrate it with dap as described below. You can setup action sets in Infusionsoft to trigger http post notifications to DAP upon every purchase of a program or a product.  The notification to DAP will result in membership account getting created in DAP. You can use InfusionSoft as the shopping cart and DAP to manage members, drip and protect content.

    Here’s a summary of the installation procedure, so you have it handy in case you want to use it.

    1) Download the Infusionsoft Software Development Kit (PHP iSDK package) from http://developers.infusionsoft.com/sdks/

    2) Extract the contents of the zip file. Upload the iSDK/src/xmlrpc-3.0 folder into the DAP folder on your site (via FTP), as well as the following 2 individual files: conn.cfg.php and isdk.php directly to the dap folder on your site.

    If you uploaded it correctly, you should see a folder called xmlrpc-3.0 under /dap folder on your site.

    You should also see conn.cfg.php and isdk.php under dap folder on your site.

    3) Update the following file before uploading: conn.cfg.php. This needs to have the Infusionsoft API code and application name added for your infusionsoft account.

    <?php

    $connInfo = array(‘connectionName:applicationName:i:[API_code_goes_here]:This is the connection for applicationName.infusionsoft.com’);

    ?>

    Here,
    connectionName = demo
    applicationName = <Set to your Infusionsoft Application Name>
    [API_code_goes_here]  = Go to Setup – > Misc. Setting -> go to Miscellaneous tab -> Enter an api passphrase and hit Save.
    It will generated an encrypted API Code. Replace [API_code_goes_here] with the api code.

    The connectionName needs to be hardcoded to “demo”.

    For ex:   I have used the applicationName of “veena” below.

    <?php

    $connInfo = array(‘demo:veena:i:dd2ebm098bsasghf68ihk:This is the connection for veena.infusionsoft.com’);

    ?>

    4) Login to your infusionsoft account:

    a) Go to Setup -> application Settings -> Misc -> Incoming action set (Add)

    Select “Send an HTTP Post to Another Server” action set and set it to point to :
    http://yoursite.com/dap/dap-infusionsoft.php (replace yoursite.com with the name of your site), then click Save.

    b) Go To Setup -> Ecommerce -> Purchase actions -> Successful Purchase Action

    Select “Send an HTTP Post to Another Server” action set and set it to point to :
    http://yoursite.com/dap/dap-infusionsoft.php (replace yoursite.com with the name of your site), then click Save.

    c) Go To Setup -> Order forms-> select the product -> Click on action Success tab  -> Add New Action->

    Select “Send an HTTP Post to Another Server” action set and set it to point to :
    http://yoursite.com/dap/dap-infusionsoft.php (replace yoursite.com with the name of your site), then click Save.

    5) Make sure your product names in Infusionsoft exactly match the ones you have set up in DAP.

    That’s it.

    Integrating DAP with Paypal Standard

    This doc applies to Paypal Standard only.

    (Click here for integration with Paypal Website Payments Pro)

    You do not have to log in to your Paypal account to generate your buy buttons. You can do it from within the DAP Admin Dashboard.

    1) Enabling Instant Payment Notification (IPN) within your Paypal account.

    a) Log in to your Paypal account and click on the “Profile” link in the menu, then on the next page, click “My selling tools.”
    b) Under “Getting paid and managing risk” section, click “Update” beside “Instant payment notifications”
    c) If IPN is already enabled, and you already have a URL in that field, then skip ahead to Step 2.
    Else, if IPN is not already enabled, then click on “Choose IPN Settings”

    d) On the next screen, in the Notification URL field, enter…
    http://YourSite.com/dap/dap-paypal.php
    Don’t forget to replace “YourSite.com” with your actual web site’s domain name.

    e) Make sure “Receive IPN Messages” is selected.

    f) Click on “Save”.

    2) Enable “Auto-Return” and “Payment Data Transfer”

    • Log in to your Paypal account.
    • Go to Profile.
    • Click on Website Payment Preferences
    • Turn Auto Return to On (see image below)
    • Set Return URL to http://YourSite.com/dap/dap-thankyou.php
    • Scroll down further to the Payment Data Transfer (optional) section
    • Set Payment Data Transfer to On
    • Scroll all the way to the bottom of the page, and then Save the changes.
    • Now come back to this same page just like you did before (Profile > Website Payment Preferences)
    • This time, simply scroll down to the Payment Data Transfer (optional) section
    • Now you will see a long, ugly string of text next to the Identity Token field (see image below). Copy that string.
    • Go back to DAP Dashboard > Setup > Config > Payment Processing > Paypal Identity Token field, and enter this string there, and save it.

     

    3) Config settings

    Go to “Setup > Config“.

    Click on the Paypal link in the sub-menu at the top.

    The current page will then skip to the “Payment Processing: Paypal” section about half-way down the page.

    Fill out items 1 through 5 only.

    (items 7-10 are required only if you’re using Paypal Website Payments Pro, or doing Upsells with Paypal Standard)

    4) Generate Buy Button from within DAP

    On the main DAP Admin menu, go to Payment Processing > Generate Buy Buttons page, then switch to Paypal Standard tab

    Choose product for which you wish to generate the buy button, and then click on “Generate Button Code” button.

    5) Publish generated buy-button code on your Sales page.

    That’s it!

    Sales Flow

    Here’s how the flow works now:

    • Prospect clicks on buy-button your sales page and is taken to a Paypal checkout page at Paypal.com
    • They purchase your product and complete the payment
    • They are initially redirected to the “Auto Return” url from Step 2 above
    • DAP captures customer email, name, product name, etc
    • DAP creates member account for buyer on your system, and gives them access to the product, will send out the Welcome-Email from the product page, etc
    • It auto-logs them in to your membership site – no need for member to wait for Welcome email just to get their login information (that email is sent anyway, and will be waiting for them in their inbox)
    • DAP now needs to know where to redirect the user to.
      a) If Product-level Logged-In URL is set in DAP for this Product that they just purchased, then it redirects them to that URL
      b) If no Product-level Logged-In URL is set, OR if the buyer has access to more than 1 product (if they had previously purchased another one of your products, for example), then it uses the Global “Logged-In URL” setting from: Setup > Config > Advanced > URL to which user is redirected to right after login

    2) DAP Generated Buttons For Paypal

    With DAP 4.0, we have added support for DAP generated buttons for Paypal.  You no longer have to generate buttons within Paypal.

    Paypal Integration Summary

    DAP supports 3 different types of Paypal Integration.

    1) Paypal Hosted Buttons
    2) DAP Generated Buttons For Paypal
    3) DAP Shopping Cart with Upsells

    Let’s get into more details about each one of them.

    1) Paypal Hosted Buttons

    You generate the button within your Paypal account.

    Click Here to find instructions to integrate DAP and Paypal Hosted Buttons.

    If the integration is not working, Click Here to find troubleshooting instructions.

    Note: you only need to set the following config items for Paypal hosted buttons.

    a) If you want to use Paypal Sandbox for testing, then set the following to “Y”.
    DAP Setup -> Config -> Paypal -> Use Paypal Sandbox: For initial testing only

    If you want to connect to your Paypal live account, then set it to “No”.

    b) If your site has trouble connecting to Paypal via CURL and you see this error in DAP orders page => Check Product and Price(Reprocessible), then update the config below to FOPEN.

    DAP Setup -> Config -> Paypal -> 4) Paypal Communication Protocol: How DAP connects to and communicates with Paypal on the back-end.

    That’s it.

    The following config items are NOT needed if you use the Paypal hosted buttons.

    Paypal API Username - Only needed if you use the DAP upsell tree plugins for Paypal Payments Pro or Paypal Standard.
    Paypal API Password - Only needed if you use the DAP upsell tree plugins for Paypal Payments Pro or Paypal Standard.
    Paypal API Signature – Only needed if you use the DAP upsell tree plugins for Paypal Payments Pro or Paypal Standard.
    Paypal API Endpoint - Only needed if you use the DAP upsell tree plugins for Paypal Payments Pro or Paypal Standard.

    Paypal Business Email ID - Only needed if you use the DAP generated button for Paypal (DAP Payments/Coupons -> Generate paypal button)

    Merchant Payment Gateway API Login ID
    : Only needed if you use e-junkie or the DAP upsell tree plugin for Authorize.net
    Merchant Payment Gateway Transaction Key: Only needed if you use e-junkie or the DAP upsell tree plugin for Authorize.net

    The following fields in the DAP Products page ONLY need to be set if you use DAP upsell tree plugin or the DAP generated button for Paypal.

    Recurring Count, Trial Amount and Product Price

    If you are using regular paypal button, you can leave these empty. Even if these are not-empty, DAP will not use it for regular paypal hosted buttons.

    2) DAP Generated Buttons For Paypal

    With DAP 4.0, we have added support for DAP generated buttons for Paypal. You no longer have to generate buttons within Paypal.

    You can generate the button for Paypal from within your DAP Admin Panel -> Payment Processing -> Generate Paypal Button page.



    Click Here
    to find instructions to integrate the DAP generated button with Paypal.

    3) DAP Shopping Cart / DAP Upsell Tree Plugins

    1) Paypal Standard Upsell Tree Plugin
    2) Paypal Payments Pro Upsell Tree Plugin / DAP shopping cart

    Click Here
    for details.