7

Troubleshooting DAP/WordPress Sync

The problem:   DAP users are not being “sync”ed to WordPress.

Here’s how to troubleshoot.

What are your sync options in DAP Admin -> Setup -> Config  -> WordPress Related Section?

Do you allow all users to be sync’d or just paid users?
Do you allow users to be synced only when they pick a username?

If you allow all users to be sync’d and do not want to force your users to pick a username before dap syncs to WP, then use these settings:

Sync DAP User Data to WordPress “Y”
Sync Paid Users Only “N”
Sync Only if Username Exists in DAP “N”

To test:
1) Add a user manually to DAP via dap admin panel
2) Note down the user’s dap login id/password
3) Open a new browser where you are not logged in to DAP as admin
4) Now login to DAP again but this time as the user you created in step 1.
5) Now visit any part of your blog. DAP will now sync user to WP.
6) Login to WP admin panel. Click on Users in the left sidebar and see if the new user was created.

4

Plimus Integration

DAP supports integration with Plimus since 4.1.

You will find a script called dap-plimus.php under the dap folder.

Set the IPN (instant payment notification) url in Plimus to point to the dap URL –

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

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

Make sure product name in DAP exactly matches the product name in Plimus.

Also, make sure you have a thank-you message configured in dap products page.

Here’s how it will work:
When a user completes purchase, Plimus will send payment notification to DAP.

DAP will 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.

3

DAP-Generated Paypal Button – FAQ/Troubleshooting

NOTE: If you wish to set up your Paypal IPN URL to be broadcast to multiple sites, you may also consider our IPN Redirect plugin from WickedCoolPlugins.com
_____________________________________________

Question 1A: How can I share one Paypal account with multiple DAP and non-DAP sites?

-OR-

Question 1B: If I use “DAP” generated buy-buttons, and I have to set up the “auto-return URL” in Paypal, which is limited to just one URL. How can I use that if I’m selling from multiple web sites and using the same Paypal account?

Answer: You can share same Paypal account between multiple DAP and other non-DAP sites if you use DAP-generated Paypal buttons or Paypal-hosted buttons or a combination of both.

If you use DAP generated Paypal buttons:

DAP sends button-level return value to Paypal.  By default, DAP sets the button level return to point to a DAP script on the site where you generated the button ( http://yoursite.com/dap/dap-thankyou.php ). Upon payment, the users are returned to that dap-thankyou.php.   And then the dap-thankyou.php script creates the membership account , auto-logs in users to their membership area and redirects users upon login to whatever you have in DAP product-level or DAP global-level login redirect. So the users automatically land at theDAP product-level or DAP global-level login redirectupon successful payment.

If you want the users to be redirected to a different URL upon login, then you can add a redirect tag to dap generated button code:

<input type=”hidden” name=”redirect” value=”http://yoursite.com/thankyou” />

The auto-return needs to be set and pointed to some URL – any URL – otherwise Paypal will not be able to automatically return users back to your website upon payment for non-paypal hosted buttons. DAP does not care what you set it to – but if you do set it, then make sure that all the Paypal buttons you use (DAP-generated or Paypal-hosted) have their own auto-return value.

If you use a DAP-generated Paypal button, you do not have to worry about the auto-return URL, because DAP will set it and send it to Paypal at a button level. But if you use Paypal-hosted buttons, then make sure you set the button level ‘return’ value.

If you do not set the button level return value, then the Paypal profile -> global level auto-return will get used. So if your global auto-return (under Paypal -> Profile -> Website Payment Preferences) is set to some URL on Site B and say you use a Paypal button to sell something on SITE A but that paypal button does not have a return value set, then upon purchase, the users will get returned to the URL on SITE B and that is probably not what you want.  so make sure you set the button level return value for paypal-hosted buttons.

Question 2:

I added DAP hosted buttons and did a test purchase.  After purchase the user was redirected to the login page and but the user was NOT automatically logged in. The login page states: SUCCESS! Thank you for completing the purchase. Please check your email for further details. Have I setup something incorrect?

Answer:

What do you see in DAP Payments/Coupons -> Orders page for this transaction ?

Hit the search button in the orders page and it will bring up all orders.
Is the payment status “Pending” or is it “Complete” ?

If it’s pending, it could be why the user is not getting logged in. Click on the transaction Id hyperlink for that order and it will take you to the transactions page… here you can see what Paypal sent in the transaction blob.

See if Paypal sent Payment Status = pending.  It yes, it can happen if the buyer didnot confirm their email in paypal.

But if payment status is complete, then do this.

Set DAP setup -> config -> log level to 5
Then go to dap system -> logs and Empty log content

Then rerun the paypal purchase and send us the log snippet.

Question 3:  Users are not getting auto-logged in.

I see these errors in the dap log.

>> 2011-03-29 10:54:02:dap-thankyou: after fopen
2011-03-29 10:54:02:dap-thankyou.php: paypal communication failed <<

Answer: In dap-thankyou.php script, dap uses fopen to connect to paypal to retrieve purchase details and to auto-login users.

If it is failing, then there is probably a fopen connection issue between your host and paypal.

Try this:

In dap config -> payment processing -> Set “Use CURL to connect to Paypal” to FOPEN.

If you set it to fopen, the the IPN script (dap-paypal.php) will use FOPEN to talk to Paypal also. Otherwise it will use CURL.

If the dap-paypal.php (backend ipn script) works, the user account will get created successfully in DAP but for auto-login to work, the front-end script (dap-thankyou.php) needs to work. But for front-end dap-thankyou.php script to work, FOPEN needs to work on your server/host.

So to test if FOPEN is working,  do this:

Set DAP setup -> config -> log level to 5
Then go to dap system -> logs and Empty log content

Make the backend IPN script also use FOPEN (by setting dap config -> “Use CURL to connect to Paypal” to FOPEN)

Now rerun purchase and see if you notice dap-paypal.php lines in there with fopen communication error in DAP Logs.

If yes, then the problem is that your host is preventing fopen communication with paypal.
If no, then open a ticket with us and we will look into it.

Question 4:  How do I replace the DAP generated PP button with my own image?

Look for this line in the button code:

<input type=”image” src=”http://www.paypal.com/en_US/i/btn/btn_buynow_LG.gif” border=”0″ name=”submit” alt=”Make payments with PayPal – its fast, free and secure!” />

Replace the “src” tag with the path to your own image file.

Ex – <input type=”image” src=”/dap/images/myimage,gif” border=”0″ name=”submit” alt=”Make payments with PayPal – its fast, free and secure!” />

Question 5: How to redirect Paypal buyers to a custom URL after purchase?

Answer:

If you’re using buy button form code, then you can add a redirect tag to dap generated buy button code:

<input type=”hidden” name=”redirect” value=”http://yoursite.com/thankyou” />

If you are using a buy button link, then add the text below at the end of your link.

&redirect=http://yoursite.com/thankyou/

Like this:

http://YourSite.com/dap/paypalCoupon.php?cmd=_xclick-subscriptions&item_number=10&currency_code=USD&redirect=http://yoursite.com/thankyou/

Or

http://YourSite.com/dap/paypalCoupon.php?cmd=_xclick-subscriptions&item_number=10&currency_code=USD&redirect=/thankyou/

10

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.

22

Internationalization & Custom Messages

Last Updated: March 9, 2015

The article below applies to both of the following groups…

A) Customizing DAP’s Default Messages

Those who wish to replace DAP’s default error and success messages (like … “Sorry, No User found with the email address…” when someone is trying to use the “Forgot Password” feature, or the message “Sorry, either you have entered an invalid username/password, or you may not have activated your account yet.” which is shown when someone uses the wrong email/password when logging in to your membership site – with English text of their own choice, and

B) Internationalization

Those who wish to replace those messages with text in a completely different non-English, international language (like Spanish, Danish, French, etc).

Non-English Content

All of your content is really going to be within WordPress, which is already international-friendly, and all of your regular site content – including your sales pages, squeeze pages, member content, etc – can all be presented in any language that WordPress already supports.

DAP is also international-friendly.

DAP really has only 4 member-facing pages: Login Form, “My Content“, “My Profile” and “My Affiliate Info (everything else is within WordPress).

And all of these member pages in DAP can be customized in any non-English language of your choice. We tested with many languages like Spanish, Dutch, French, and even Chinese! Others will/should work too as long the character set is UTF-8 based.

So we’re excited to be able to help you create membership sites in multiple languages.

Non-English Emails

And what’s really cool, is that with DAP, you can also send Autoresponder & Broadcast emails in your language.

This is a very powerful feature for those who are often restricted by 3rd-party email services in sending out non-english emails.

In fact, the last time we checked, even the big-boys like Aweber don’t let you do that!

Customizing Language Files

1) Language File Setup for PHP

Open the file…

/dap/inc/language/english.php

and save the file as…

/dap/inc/language/custom.php

in the same folder.

Then you can change the english text within custom.php (last section that is not in caps – like “Sorry, no data found” in the example below) in your language, and upload it back to the same folder ( /dap/inc/content/language ) back on your site. For example…

define(“MSG_SORRY_NO_DATA_FOUND”,”Sorry, no data found.“);

becomes…

define(“MSG_SORRY_NO_DATA_FOUND”,”Désolé, aucune donnée trouvée.“);

(That’s the French translation, according to Google – blame them if it’s not right 🙂

2) Language File Setup for JavaScript

DAP also allows you to customize the JavaScript alerts and messages that pop-up for client-side validations of form fields.

Open the file…

/dap/inc/language/jsenglish.js

and save the file as…

/dap/inc/language/jscustom.js

…on your desktop. Then change the text inside this jscustom.js file and upload it back to /dap/inc/language/ folder on your web site.

That’s it!

 

Contents of english.php

//———- Added in v4.4 ———//
define(“AFFILIATE_INFO_PERFSUMM_SUBHEADING”,”Affiliate Performance Summary”); //used only in dap/index.php
define(“AFFILIATE_INFO_HEADING”,”Affiliate Details”); //used only in dap/index.php
define(“MSG_NO_COMM”,”Sorry, no commissions earned yet.”);
define(“USER_PROFILE_SUCCESS_MESSAGE_USER”,”SUCCESS! Your profile has been updated.”);
define(“MSG_ERROR_EMAILEXISTSVB”, “Sorry, this email id is already in use in our vBulletin Forum. Please try using a different email id.”);
define(“MSG_SUCCESS_USERUPDATE_NOVB”, “SUCCESS! Your profile has been updated, but could not register this username in our vBulletin Forum. Please contact the site admin for help.”);
define(“AUTOMATED_AUTORESPONDER_EMAIL_SUBJECT”, “New Content Available:\n%%CONTENT_NAME%%”);
define(“MSG_INVALID_PASS”,”Sorry, the password you have chosen contains special characters. Only Alphabets and Numbers allowed. Please go ‘back’ and choose a different password.”);
define(“COLNAME_EARNINGTYPE_TEXT”,”Cash/Credit”);
define(“USER_PROFILE_NEW_PASSWORD_LABEL_DAPUSERPROFILE”,”Password<br/>(only if changing)”);
//———- Added in v4.3 ———//
define(“USER_LINKS_COMINGSOON_TEXT”,”Coming Soon…”);
define(“USER_LINKS_COMINGSOON_PREFIX_TEXT”,”[In XXX day(s)]”); //do not change/remove the text “XXX”
define(“MSG_UNSUBSCRIBE”,”[In XXX days]”); //do not change/remove the text “XXX”
define(“MSG_MANDATORY”,”Sorry, all fields are mandatory. Please go ‘back’ and fill up the missing information.”);
define(“MSG_INVALID_EMAIL”,”Sorry, the email address you entered is invalid. Please go ‘back’ and enter a valid email address.”);
define(“MSG_INVALID_COUPON”,”Sorry, the coupon code you entered is invalid. Please go ‘back’ and enter a valid coupon code.”);
define(“MSG_INVALID_PRODUCT”,”Sorry, the product you are trying to sign up for is either invalid, or not authorized for free signup. Please email the web site owner and let them know about this error.”);
define(“MSG_MISSING_COUPON”,”Sorry, coupon code is a required field. Please go ‘back’ and enter a valid coupon code.”);
define(“MSG_PAYMENT_FAILED”,”Payment failed. Please contact the site admin. “);
define(“MSG_THANKYOU_SIGNUP”,”SUCCESS! Thank you for signing up. Please check your email for further details.”);
define(“BUTTON_UPDATE”,”Update”);
define(“SUCCESS_CREATION”,”SUCCESS! Your account has been successfully created! Please check your inbox for login information…”);
define(“NO_AUTH”,”Sorry, you are either not logged in, or not authorized to perform this operation.”);
define(“MSG_ALREADY_SIGNEDUP”,”It appears that you have already signed up for this. No further action is required at this time.”);

//———- Added 03/22/2011 ———//
define(“MSG_ALREADY_LOGGEDIN_1″,”You are already logged in.”);
define(“MSG_ALREADY_LOGGEDIN_2″,”Click here to continue…”);
define(“MSG_PLS_LOGIN”,”Sorry, you must log in before you can view this content.”);
define(“MSG_CLICK_HERE_TO_LOGIN”,”Click here to log in”);
define(“MSG_SORRY_EMAIL_NOT_FOUND”,”Sorry, No User found with the email address “);
define(“MSG_PASSWORD_SENT”,”Please check your email. Your Password has been sent to “);

//———- GENERAL TEXT ———//
define (“ACTIVATION_EMAIL_SUBJECT”, “%%FIRST_NAME%%, Welcome to %%SITE_NAME%% (Activation)”);
define (“AFF_PAYMENT_EMAIL_SUBJECT”, “%%FIRST_NAME%%, You’ve Got An Affiliate Payment”);
define (“FORGOT_PASSWORD_EMAIL_SUBJECT”, “Lost Password”);
define (“LOCKED_EMAIL_SUBJECT”, “Your account has been locked”);
define (“UNLOCKED_EMAIL_SUBJECT”, “Your account has been Unlocked”);
define (“INVALID_PASSWORD_MSG”,”Sorry, either you have entered an invalid username/password, or you may not have activated your account yet.”);
define(“SUCCESS_ACTIVATION”,”SUCCESS! Your account has been successfully activated! We have now sent you an email with your login details that you can use to log in below…”);

define(“MSG_SORRY_NO_DATA_FOUND”,”Sorry, no data found.”);
define(“COLNAME_AFFID_TEXT”,”Aff Id”);
define(“COLNAME_NAME_TEXT”,”Name”);
define(“COLNAME_FIRSTNAME_TEXT”,”First Name”);
define(“COLNAME_LASTNAME_TEXT”,”Last Name”);
define(“COLNAME_EMAIL_TEXT”,”Email”);
define(“COLNAME_AMTEARNED_TEXT”,”Amount Earned”);
define(“COLNAME_DATETIME_TEXT”,”Date/Time”);
define(“COLNAME_AMTPAID_TEXT”,”Amount Paid”);
define(“COLNAME_HTTPREFERER_TEXT”,”HTTP Referer”);
define(“COLNAME_DESTINATION_TEXT”,”Destination”);

//———- USER PROFILE TEXT ———//
define(“USER_PROFILE_HEADING_TEXT”,”Profile Information”);
define(“USER_PROFILE_FIRST_NAME_LABEL”,”First Name”);
define(“USER_PROFILE_LAST_NAME_LABEL”,”Last Name”);
define(“USER_PROFILE_EMAIL_LABEL”,”Email”);
define(“USER_PROFILE_USER_NAME_LABEL”,”Username”);
define(“USER_PROFILE_NEW_PASSWORD_LABEL”,”Password”);
define(“USER_PROFILE_REPEAT_PASSWORD_LABEL”,”Repeat Password”);
define(“USER_PROFILE_PAYPAL_EMAIL_LABEL”,”Paypal Email”);
define(“USER_PROFILE_PAYPAL_EMAIL_EXTRA_LABEL”,”For Affiliates Only”);
define(“USER_PROFILE_COMPANY_LABEL”,”Company”);
define(“USER_PROFILE_TITLE_LABEL”,”Title”);
define(“USER_PROFILE_ADDRESS1_LABEL”,”Address 1″);
define(“USER_PROFILE_ADDRESS2_LABEL”,”Address 2″);
define(“USER_PROFILE_CITY_LABEL”,”City”);
define(“USER_PROFILE_STATE_LABEL”,”State”);
define(“USER_PROFILE_ZIP_LABEL”,”Zip”);
define(“USER_PROFILE_COUNTRY_LABEL”,”Country”);
define(“USER_PROFILE_PHONE_LABEL”,”Phone”);
define(“USER_PROFILE_FAX_LABEL”,”Fax”);
define(“USER_PROFILE_UNSUBSCRIBE_LABEL”,”You are currently receiving product and <br/>account related emails. Uncheck to stop<br/>receiving all emails (not recommended)”);
define(“USER_PROFILE_SUCCESS_MESSAGE”,”SUCCESS! User has been successfully updated.”);

//———- AFFILIATE PAGE LABELS ———//
define(“AFFILIATE_INFO_TOTALEARNINGS_SUBHEADING”,”Total Earnings”);
define(“AFFILIATE_INFO_AFFLINK_SUBHEADING”,”Affiliate Link”);
define(“AFFILIATE_INFO_YOURAFFLINKHOME_LABEL”,”Your Affiliate Link – redirects to home page:”);
define(“AFFILIATE_INFO_AFFLINKSPECIFIC_LABEL”,”Affiliate Link To Specific Page:”);
define(“AFFILIATE_INFO_AFFLINKSPECIFIC_EXTRA_TEXT”,”To link to a specific page, just add the text &quot;&amp;p=&lt;insert_url_here&gt;&quot; to the end of your affiliate link, like this: (no &quot;http://&quot; in the 2nd link at the end – should start with &quot;www&quot;)”);
define(“AFFILIATE_INFO_TEST_TEXT”,”test”);
define(“AFFILIATE_INFO_PAYMENT_DETAILS_SUBHEADING”,”Payment Details”);
define(“AFFILIATE_INFO_EARNINGS_DETAILS_SUBHEADING”,”Earnings Details”);
define(“AFFILIATE_INFO_TRAFFIC_STATISTICS_SUBHEADING”,”Traffic Statistics”);

//———- USER LINKS PAGE TEXT ———//
define(“USER_LINKS_YOUCURRENTLYHAVEACCESSTO_TEXT”,”You currently have access to “);
define(“USER_LINKS_PRODUCTS_TEXT”,” product(s).”);
define(“USER_LINKS_ACCESS_START_DATE_TEXT”,”Access Start Date”);
define(“USER_LINKS_ACCESS_END_DATE_TEXT”,”Access End Date”);
define(“USER_LINKS_DESCRIPTION_TEXT”,”Description”);
define(“USER_LINKS_LINKS_TEXT”,”Links”);
define(“USER_LINKS_NOLINKSFOUND_TEXT”,”No links found.”);

 

Contents Of jsenglish.php

//New entry MSG_EMAIL_INVALID added on 07/14/2011
var MSG_EMAIL_INVALID = “Sorry, email id must of a valid format, may not be blank or contain any special characters”;

var MSG_MISSING_INFO = “Please enter missing information…”;

var MSG_ENTER_EMAIL = “Please enter your email address before we can email you the password”;

var MSG_ENTER_PASSWORD = “Sorry, the password field may not be empty”;

var MSG_PASSWORDS_MISMATCH = “The two Passwords don’t match. Please try again…”;

var MSG_PASSWORD_INVALID = “Sorry, password contains invalid characters. Please choose from numbers and alphabets only.”;

var MSG_UPDATING_PROFILE = “Please wait… Updating User Profile …”;

var MSG_OPTOUT_WARNING = “WARNING: If you uncheck this box, you may not receive emails relevant to the product you have purchased. Are you sure you still want to Unsubscribe?”;

var MSG_NO_SPECIAL = “Sorry, no special characters allowed”;

Other links….

To customize the DAP Stand-alone Login form, click here.

To customize the DAP Login/Logout widget, click here.

To customize the DAP default Error Message with the ‘Lock’ image, click here.

54

Self-Service Store (SSS) Installation & Setup

SSS Intro

[s3mv]SSS_Intro.mp4,640,378,false,false[/s3mv]

Click here to buy SSS

SSS Installation

  1. Make sure you are using DAP v4.1 or above, because SSS won’t work otherwise.
  2. Download the Self-Service-Store_vXX.zip file from the member’s area.
  3. Unzip the 5 files inside to your desktop.
  4. Here’s where each file goes:
    selfService-submit.php: Upload to your “dap” folder

    creditHistory.inc.php and selfService.inc.php: Upload to dap/inc/content folder

    selfServiceAdmin.php and selfServiceAdmin_submit.php: Upload to dap/admin folder.

  5. Go to “Setup > Config > Advanced” screen in DAP Admin Control Panel. You will see two SSS config items:Self-Service: Allow members to use credits and choose products a-la-carte.
    Set this to “Y” and click ‘Update’
    How to order the products displayed in your Self-Service Store?
    Ignore this for now. For future use. Let it remain at whatever it currently is set to.

SSS Setup & Configuration

Watch the following videos for more details:

1) Admin Setup

[s3mv]SSS2_AdminSetup.mp4,640,378,false,false[/s3mv]

2) User View

[s3mv]SSS3_UserView.mp4,640,378,false,false[/s3mv]

Click here to buy SSS

Aweber Integration Summary

The Aweber integration options depend on whether the product is Free Product OR Paid Product.

1) Paid Product

If it’s a paid product, then the integration is always from Payment Processor => DAP => Aweber. And Aweber requires the list to be double-opt-in for this type of integration (3rd party email subscription from DAP => Aweber).

Refer this documentation on how to integrate DAP -> Aweber.

While Aweber list needs to be double-opt-in, the DAP product can be defined as single-opt-in, so this way the subscribers will only receive 2 emails :

– Aweber confirmation email
– DAP thankyou email with id/password

For paid products, currently there’s no way to make sure the AWeber confirmation email goes out before DAP thank-you message.

You can use these workarounds:

a) You can configure DAP to generate a default password (for all users)… that way you do not have to send out any thank-you message from DAP. Just configure a followup via aweber with their default DAP password and instructions to update password upon login.

b) But if you have security concerns with the default password approach, then you can configure a autoresponder via DAP to send out user’s dap id/password. Do not configure any thankyou message because the thankyou message gets sent instantly and might go out before the users receive aweber confirmation. But if you configure an autoresponder message to say drip day 1 with their membership id/password, then the message will get sent at the top of the hour when the dap cron runs. It does not get sent instantly. So there’s a better chance of users receiving and completing aweber confirmation before dap thankyou arrives.

2) Free Product

If its a free product, then there are  2 options.

2.1 ) You can use Aweber sign-up form (webform) instead of DAP Direct Signup form.

The Aweber list can be double-opt-in or single-opt-in.

If you want the aweber list to be single opt-in, then there’s no way to make sure the AWeber confirmation email goes out before the DAP thank-you message because of limited config options in Aweber.

But if you are ok with making the Aweber list as double-opt-in (recommended setting for free products), then the integration will work great.

2.1.1) AWeber webform ( single opt-in list )  => DAP product

–  User will be first added to Aweber
–  Aweber will automatically notify dap
–  DAP will then add user to the free product

– Aweber confirmation will go out

– DAP welcome/thankyou email will go out

No way to make sure dap thankyou goes out after Aweber confirmation ( You can use the workaround described above for paid products).

Click here for Aweber single-opt-in list => DAP integration steps

2.1.2) AWeber webform ( double opt-in list )  => DAP product – RECOMMENDED

–  User will be first added to Aweber
–  Aweber will automatically notify dap
–  DAP will then add user to the free product

– Aweber confirmation will go out first

After user completes the aweber confirmation, only then the  DAP welcome/thankyou email will go out.

For this, use Aweber list level settings (Under My Lists -> List Settings ->Confirmed Opt-in tab). Set the list level confirmation URL to point to the dap-aweber-productId.php script that you can create using the documentation here :

Click here for Aweber double-opt-in list => DAP integration steps

2.2) You can have the user signup via dap signup form and have dap notify aweber and then the user will be added to aweber list.

Use the same integration method as Paid products decribed above (DAP => Aweber).

Click here to find out more about how to create dap direct signup form.

Click here to find out more about how to DAP=>Aweber integration.

Content Protection – Big Picture

Here’s the big picture as far as content protection is concerned.

  • DAP CAN ONLY protect files, pages and posts on the same “domain” where it is installed.
  • If DAP is installed on a domain (www.yoursite.com), then it CANNOT protect a blog or files installed on a sub-domain (like blog.subdomain.com) even if your file structure on your web host makes it appear like blog is a sub-folder in your root folder. The opposite is true too: If DAP is installed on a sub-domain, it CANNOT protect files, pages or posts on the main domain
  • DAP installed on a domain (www.yoursite.com) CAN protect a blog in a “sub-folder” (like domain.com/blog)
  • You can have one DAP installation in the root, and then multiple blogs in “sub-folders” (not sub-domains), and one installation of DAP can protect all of these blogs in sub-folders. Just activate the DAP-WP-LiveLinks plugin in each blog separately. There will still be only one “dap” folder at the root, that will be shared by all of these blogs.
  • DAP can protect a page or post from un-authorized viewers. But once somebody is a member, does get access to that page or post, if you have a video inside that is a Youtube video, DAP obviously can’t protect that video.
18

GetResponse Integration

DAP integrates with GetResponse very easily.

DAP to GetResponse Integration

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.

So basically, user gets added to DAP first, and then DAP adds them to GetResponse.

If you want the other flow (subscriber gets added to GR first, and then GR adds them to DAP, then see this GetResponse-to-DAP flow)

1) Retrieve the getresponse API Key from this URL:

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

2) Then go to DAP > Products > Manage, select the product, go to “Notificationstab, then in the Plugin Notification upon User “Add” field, add the following:

getresponse:<API Key>:<campaign name>

For example:

getresponse:89kjhjgjfh1734dap:fbsecrets

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 should first receive the confirmation email from GetResponse, and upon confirmation, the user should get added to GetResponse.

If it does not work, then…

  • Set the dap log level to 5,
  • Go to DAP > System > Logs.
  • Empty logs, and rerun the test.
  • Then send us the log text from DAP > Sytem > Logs.

 

20

Making Affiliate Payments

DAP’s affiliate program works the same regardless of which DAP-supported payment processor or shopping cart you’re using.

DAP does not directly make any affiliate payments. Instead, at the beginning of each month (or however often you wish to pay your affiliates), with one click on the Affiliates > Run Reports page, DAP will give you a list of all affiliates to whom payment is due, and the actual amount due to each one of them.

The format of the payment list that DAP provides you with, is already “Paypal Mass-Pay Ready” – which means, you could simply upload the file that DAP gives you, upload it to your Paypal account, and then pay all affiliates in one click (details further below).

Or if you don’t wish to pay by Paypal, and wish to use any other form of offline payment (like sending them a physical “check” in the mail, doing wire-transfers, etc), you’re free to use any external means for paying your affiliates. Once you have paid (by Paypal, or other external means), you just come back to DAP and mark all those affiliates as “Paid” – which is when DAP actually reports to all of those affiliates that a payment has been sent to them. Until the actual payment is made, they only see that they are owed a certain amount.

How To Pay Your Affiliates In DAP

1) Go to “Affiliates > Reports
2) Click on “Pay Affiliates as of mm-dd-yyyy” on the right/top part of the page (in older versions of DAP, this would be called “View Due Payments as of mm-dd-yyyy“)
3) DAP will bring up a list of affiliates to be paid. Click on “Export affiliates for payment
4) DAP will create an export of only those affiliates. Only those affiliates can be paid now, as per DAP.
5) You take the exported list that DAP gives you. Pay them via Paypal MassPay (details in the next section below).
6) Once you’ve actually sent them the payment via Paypal, come back to “Affiliates > Reports“, pick the previously exported list from “Mark affiliates from ……. as Paid” drop down (your last un-paid export will be shown in the drop-down list).
7) Mark that export as “Paid”.

That’s it!

Making Payments Via Paypal Mass-Pay

1. Copy all of the text from export field that DAP provides you with, and save it as a text file on your desktop, with a file name like, say, “February 2012 Commissions.txt

2. Log in to your Paypal account

3. Click on “Send Money

4. Click on”Make a Mass Payment

5. Upload previously saved text file on this next screen.

You may also enter a custom subject and body for the email that Paypal will send to all those receiving a payment.

6. Follow the rest of the on-screen instructions and hit “Send”, and you will see a confirmation from Paypal that your payment has been scheduled.

At this point, the money would have already been debited from your Paypal account.

Soon thereafter (usually within 10 minutes), Paypal would’ve actually deposited your payments in to the affiliates’ Paypal accounts.

 

1 19 20 21 22 23 35