This is for when you don’t care about assigning unique usernames and passwords to your users, and would rather given all of your members (or site visitors) a single email id and password to log in to your membership site.
Here’s how you can do it:
Problem: Someone buys a product from your site, and you can see in the DAP “Manage Users” page that they have been added as a user, but that user never gets an email with their login/password. All they get is the confirmation email from the payment processor.
You want to know: “How can I get my users to automatically receive a “welcome” email with their Id/password” from DAP?”
If the users got added and the user status is “A” in the DAP manage users page, but the user did not receive welcome email with their ID/Password, it could because:
[NOTE: In newer versions of DAP, “Thank-You Email” is now being called as “Welcome Email”. So wherever you see “Thank-You” below, please note that it’s the same as “Welcome”]
For that product, you did not set the ‘thank-you’ email subject/body in the DAP Products Page.
Select the product in DAP products page and set the thank-you message content as shown below.
You have set up the thank-you email message, but the email still did not get delivered.
The only time the Welcome Email is sent, is when a user is given access to a Product for the very first time. If you are trying to add a user to a product, and the user already has been given access to the product, then it won’t send out the welcome email the second (or subsequent) time(s). So make sure the user you’re testing with does not already have access to that Product. If she does, then remove access to the product before testing again.
Go to DAP Setup > Config > Basic and make sure the “Admin Email” is set to an ’email address that resides on your domain/hosting account where DAP is installed’ instead of say a gmail or hotmail or yahoo email address. Now, if you have done everything in terms of making sure there’s no reverse DNS lookup issues with your host but if there are still users who do not receive emails (and the email is not in their spam folder) :
Here’s what you can do:
1) Setup dap to generate default password (dap setup -> config -> advanced) and instruct users to change their password right after they log in.
2) Set up an autoresponder email in DAP to drip day 1 with the merge tag for login id/password. So even if the thank-you email is not delivered right after purchase, when the cron runs at the top of the hour, it will send out the id/password again.. in case they did not receive it the first time.
You can have dap connect to 3rd party smtp service like AuthSMTP.com to send out all autoresponder/broadcast emails for better email deliverability.
BTW, if you have tried everything and still the emails are not getting delivered or is landing in the SPAM folder, then please checkout our documentation on troubleshooting email delivery here:
1) I got an e-mail with this subject:
[DAP] http://yoursite.com: dap-paypal: Invalid IPN Coming In
This can happen if you click on this URL in a browser.
http://yoursite.com/dap/dap-paypal.php (replace yoursite.com with the name of your site).
This is a backend script and should not be called directly via browser. But if you click on this accidently, this error can be ignored. Just make sure that the DAP and Paypal are integrated and purchases via Paypal are getting registered in dap correctly.
2) DAP Paypal IPN Error (Rejected): IPN Product Name = does not match any DAP Product Name.
But REJECTING MISMATCH it because of your Config settings (Product Mismatch)
Make sure that the item_name in Paypal button is set to eXactly match a DAP product name otherwise DAP cannot process the payment notifications. If the notification is for a product that you sell outside of DAP, then DAP will reject it with this error message and no action is needed.
If you want DAP to process Paypal notifications even if the product name in DAP does not match the Paypal item_name, then enable this setting in DAP :
DAP Setup -> Config -> Payment Processing -> Should DAP process Customer Emails even when the Product names don`t match ->
Set this to “Y” if you want DAP to process non-dap defined product purchase notification from Paypal.
3) Paypal failing with “Check Product and Price(Reprocessible)” in DAP Orders page
Note: DAP Orders page moved under Payment/Coupons menu in DAP 4.0
This could be due to a problem with the CURL library on your site.
With DAP 4.0, you can easily switch your site to use FOPEN instead of CURL.
DAP Setup -> Config -> Payment Processing -> How DAP connects to Paypal -> Select FOPEN
4) Can I use my Paypal account to sell products outside of DAP even if the global IPN points to a DAP script?
Sure. Paypal has 2 IPN settings:
a) Local button level IPN
This one needs to point to the DAP script (http://yoursite.com/dap/dap-paypal.php) on your site so for all sales via this button,
Paypal can send a notification to DAP.
b) Global IPN – under your Paypal profile -> instant payment notification preferences
This one is used by Paypal ONLY if button level IPN is not set. If the button level IPN is set, then Paypal ignores the global IPN.
We recommend that you set both button level and global IPN to point to the same dap script –
(NOTE: replace yoursite.com with the name of your site)
Now, if you are selling other products outside of DAP using Paypal and for those Paypal buttons, if there is no button level IPN notification defined, then Paypal will look at the global IPN setting (which also points to dap) and send notifications to dap. But dap will reject that message because the product is not defined in DAP.
That is when you receive these ‘IPN rejected’ messages and you can ignore them.
5) I have integrated DAP and Paypal per your documentation but it still does not work.
Three key things to watch out for when you integrate DAP and Paypal are:
a) Make sure that the Paypal button has the item_name set to exactly match a DAP product name otherwise DAP cannot process the payment notifications.
b) Button-level IPN must point to DAP script (http://yoursite.com/dap/dap-paypal.php – replace yoursite.com with the name of your site).
In Paypal button creation page, under Ã¢â‚¬Å“Step 3: Customize advanced features (optional)Ã¢â‚¬Â tab, within the Ã¢â‚¬Å“Advanced VariablesÃ¢â‚¬Â text box,
enter the following (change the text yoursite.com below to your domain name).
Note: replace yoursite.com with the name of your site
c) Global IPN must be enabled and pointed to the DAP script as descrbed in step 1 of this document.
6) What config items in DAP are required if I use Paypal HOSTED button?
If you want to use sandbox for testing, then
DAP Setup -> Config -> Payment Processing -> Use Paypal Sanbox For Testing -> Set to “Y”.
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 to use FOPEN.
DAP Setup -> Config -> Payment Processing -> How DAP connects to Paypal –> Set to “Y”.
NOTE: In the DAP Products page, you ONLY need to set the Product Price, Trial Amount and Recurring Count if you use the DAP hosted/generated buttons for Paypal. Not needed if you use Paypal hosted buttons. You can leave it empty if you use Paypal hosted buttons. Even if you populate it, it will not be used.
If you use the Paypal hosted buttons, then you DO NOT need to set the following in DAP Setup -> Config -> Payment Processing ->
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’s Payment Gateway API Login ID – Only needed if you use e-junkie or the DAP upsell tree plugin for Authorize.net
Merchant’s Payment Gateway Transaction Key – Only needed if you use e-junkie or the DAP upsell tree plugin for Authorize.net
Please check all of the steps at the link below…
Especially check the “notify_url” part towards the end.
If you are absolutely sure that you have followed all of the steps above, and DAP is still not creating an account for the new user, it is possible that your host is not allowing your server and Paypal to communicate correctly. You can confirm if this is an issue, by going to the “Orders” page, searching for all orders, and see if your test purchase in question has been recorded by DAP (even if DAP didn’t give access to the user).
If you find the order in DAP, but the user has not been created, then check with your host and make sure “fopen” or “curl” is enabled for your web site.
If they say it is enabled, and it still doesn’t work, please do the following:
1) Go to Setup > Config > Dap Log Level and set it to “5”.
2) Completely delete test user from DAP
3) Repeat test purchase
3) Go to System > Logs and copy/paste the information there into a support ticket
4) And then please update the ticket with…
* Domain name where DAP is installed
* FTP info
* DAP admin info
And we’ll investigate this asap.
5) Go to Setup > Config > Dap Log Level and set it back to “1”.
The only time a new user shows up with the status “Unconfirmed” is if you have “Double Optin” turned on for that product to which he just got access.
When you have double-optin turned on, then their initial status is “Unconfirmed” because you want them to click on the “Double Optin” link and confirm their intent to get access to your product, after which their status is automatically changed to “Confirmed”.
So to make sure Users are always created with “Confirmed” status, just remove all text from the “Double Optin Body” and “Double Optin Subject” of the Product in question.
If your product is a “Paid” product, then obviously, you don’t want people who just bought your product by filling out a shopping cart, to have to go through another double-optin confirmation process. So for paid products, you should probably not force double-optin.
Double-optin is best when you’re signing up free users for a free product via the DAP Direct-signup Form.
DAP has a feature where you can ask DAP to always generate a pre-determined, default password of your choice for all new members.
So all new users will be assigned the same default password, which of course, they can change as soon as (or any time after) they login.
This is especially useful if you want a third-party service like Aweber – instead of DAP – to send out the new member’s “Welcome Email” which contains their email and password.
Since DAP is unable to pass the randomly generated password to Aweber, instead, you can setup a default password by going to
Setup > Config > Default Password
This can be found under the Miscellaneous section on that page.
So if you set this password to say, changethis, then DAP will give out the same password to all new users.
Then, in the welcome email you configure at, say, Aweber, you would put the Aweber merge code for email id, and then enter this pre-selected password (because you already know what it is) into your Aweber email, like this:
Welcome to Example.com. You may log in to your member’s area at:
– Admin from Example.com
And if you ever change the default password in DAP, don’t forget to also change it in your welcome email at Aweber (or 3rd party email service).
Also, don’t use the default password in any subsequent emails, other than the Welcome email (very first email sent to member through Aweber), because the member may have already changed their password by then.
WARNING: You must have also set up DAP/Aweber integration first before you attempt to do this.
How does a customer, once they have signed up and become a member, cancel their membership (or get for a refund)?
If it’s Paypal, they could go into their Paypal account, and cancel their subscription themselves.
If it’s ClickBank, they can log in to their CB account, and cancel their subscription themselves.
If it’s any other payment processor or cart – like 1SiteAutomation.com, Authorize.net, Paypal Payments Pro, etc – then they have to ask you (the membership site owner) to cancel.
Except with CB, in all other cases, they have to ask you for a refund
Whether it’s a cancellation or a refund, log in to your Payment Processor (1shoppingcart, Authorize.net, etc), and make sure you perform the cancellation or refund there. DAP does not store any of the payment information of your subscriber. So both cancellations and refunds have to be performed at your Payment Processor.
Now that you’ve cancelled the actual charging of the customer at the payment processor level, you have to also take care of the customer within DAP – only for refunds.
Cancellation Of Ongoing Subscription in DAP
If this is the cancellation of an ongoing subscription, then no action required within the DAP Dashboard as far as the User is concerned. DAP already does “Pay As You Go” processing – which means, their account will automatically expire at the end of the current recurring period (eg., end of current month). The “Access End Date” of the user’s access to the Product will automatically expire if no new payments come in. And then they’ll automatically lose all access to the content that is part of that Product.
However, if this is the cancellation of a “trial”, where if the user comes back and signs up again for another trial a few weeks or months later, then you want the user to start all the way AT THE BEGINNING. So if it’s the cancellation of a “trial” then you must manually remove the user’s access to the product. So for that, follow the process below.
Refunds (and Cancellation of Trial) in DAP
If it’s a refund of the entire purchase, then…
If it’s a refund of just one recurring payment from among a series of subscription payments, or the cancellation of a trial, then you can go into the “Users > Manage” screen, search for the user, and do a “Rollback Access for Selected User(s) to the Product by 1 Recurring Cycle“.
For a big-picture view, also see Cancellations & Refunds
DAP allows you to easily import users in bulk from an external system or database.
Importing users in bulk is the same as adding users one at a time using the single-user-add feature. So whichever way you manually add users, DAP is going to all of the following…
When you do a single-user-add, all of this is done for that user in real-time. When you do a bulk-add, then all of the above happens for each user being imported, one at a time, when the DAP hourly cron job runs at the top of every hour. That’s the main difference.
1) You must have already created the DAP Product into which the users will be imported
2) The user list has to be in a CSV (comma separated) format (one user per line)
For doing a simple import of user data containing just email, first and/or last name, the format of data (per user, per line) should be like this:
Email and FirstName are mandatory. But LastName is optional. So your user data row could be just…
But please make sure you are using at least DAP v4.2.1 and LiveLinks v1.7, because what’s explained below is only available only since then.
1) You must have already created the Product into which the users will be imported
2) The user list has to be in a CSV (comma separated) format (one user per line), with the exact format being:
Email,Firstname,Lastname,Password,ProductName, Address,City,State,Zip,Country,Phone,Company, Flag (to indicate Paid or Free user), Access Start Date, Access End Date,UserName
firstname.lastname@example.org,Joe,Member,test123,Example One-time Product,99 hill ave,Cityname,NY,10001,USA,,Plug and Play Inc,y,2011-03-16, 2012-03-15,JoeMember
The only required fields are Email, FirstName and ProductName. If you do not want to supply a value for any of the optional fields, but still wish to import certain others, then just leave those fields empty in the data row (but the commas should remain) as shown below.
Email,Firstname,,,ProductName,,,,,,,,Flag (to indicate Paid or Free user), Access Start Date, Access End Date,UserName
Create a file with the name /dap/bulk/importusers.csv file so it has the users you want to import in the format specified above.
Run this script on your browser to complete the import, by visiting:
* Replace “YourSite.com” with your actual domain name
* Limit the number of users you are importing with this method to not more than 500 users (rows) at a time. Otherwise the import may timeout, because the import occurs real time, because you’re running the script manually, and not via cron. If the user already exists in dap, then the script will just skip that user and move on to the next user in the bulk add list.
DAP is not an email service (like, say, Aweber).
DAP is just a script – a tool – like Microsoft Outlook or Thunderbird – that simply sends out email using your web host’s email server.
It is your web host’s mail server that actually sends out the email to the recipient. So once DAP notifies your mail server about a email that is to be sent, it has absolutely no control over what happens next.
It’s like when you put an envelope with a letter (regular mail) into the mailbox (post box). It is up to the Postal Service to actually pick up your letter, and deliver to the destination address. Your web host is like the Postal Service. If it doesn’t pick up and deliver the (e)mail, then DAP doesn’t have any say in it.
So if the emails that DAP sends out are not getting delivered to your recipients (or landing in the spam/junk folder of the recipient), there could be more than one reason for that.
DAP uses your web host’s email servers to send out emails.
Here are some ways to improve email deliverability and also avoid your email landing in the recipient’s junk/spam folder.
If you are on a shared host, you may even consider totally by-passing sending emails through your web host, and instead use DAP’s “SMTP” feature to send emails out through an external email system – like Amazon’s SES (Simple Email Service) , Gmail or AuthSMTP.com.
If Admin notifications are going out ok, but the welcome email to the buyer/member is not being delivered, then see Troubleshooting Welcome-Email Delivery
If yours is a new site setup, then this is usually because the hourly cron-job has not been setup.
However, if the emails were going out fine previously, and suddenly stopped going out, then it usually is because…
Steps to troubleshoot
If your inexpensive (read as cheap 🙂 shared web host is hosting a large number of sites on one server, and one of them knowingly sends out spam (or mistakenly gets flagged for spam), that will put the email deliverability of every web site on that server in jeopardy, because your site now shares the same IP address as that of an “alleged” spammer.
So your emails get sent to junk/spam folder by Gmail and Yahoo. Or worse, they just totally disappear into the ether.
Almost all shared hosts have hourly email sending limits. For example, DreamHost has an outgoing limit of 300 emails per hour. Which means, a total of only 300 emails can be sent out per hour through any web site hosted on DreamHost. All of the following count towards the 300 limit:
So do you see how quickly you can go over that hourly limit of 300 emails per hour?
But here comes the worst part…
Once you go over that limit, any emails that are actually sent by you or the scripts running on your site, will not actually result in any kind of error. The mail server will respond by saying that the email(s) has been sent successfully, but in reality, on the backend, it quietly “snuffs out” the email. Which means, it doesn’t go anywhere – just gets sent to a “blackhole”. So you keep thinking that you sent out the email. DAP keeps thinking it has sent out the email. But in reality, the emails never actually get sent.
This is the same as you actually putting your letter into the mailbox at the Post Office. But then, imagine this: The postal worker who comes to pick up your mail, quietly goes to the back of the post office and dumps it all into one giant trash can, and destroys all of the mail. So you’re thinking you actually mailed out that important check to pay your utility bill. But the utility company never gets your check, and they slam you with a late fee.
1) BEST OPTION: DAP + 3rd party SMTP service provider like Amazon SES, AuthSMTP.com or SMTP.com. (much less expensive than Aweber, and very reliable too)
2) DAP + Aweber (more expensive, very reliable)
3) DAP + Good web host (cheapest option, but can lead to mixed results – depends on your host).
You could always use DAP and external SMTP service provider like Amazon SES, AuthSMTP.com or SMTP.com to send out bulk mail through DAP while totally bypassing your web host’s email system. This is probably the first best option where DAP controls the composition and sending of the email, the 3rd party service controls the deliverability.
Next best option is using a service like Aweber or GetResponse.
And if you can’t afford even that, then simply use DAP on a good web host. We ourselves use just DAP and LiquidWeb’s email servers to send out emails to all of our users.
And DAP also has built-in job queues to schedule outgoing emails while also making sure that you don’t exceed your web host’s hourly email sending limits (dreamhost’s limit is 300 emails/hour, I think). We use multiple SMTP servers from our own other web sites, all combined to be able to send a few thousand emails per hour.
But even with a lot of planning, it is easy to go over the hourly limit.
So the next time you see in your Job Queue that emails were sent out successfully, but the recipient never received it, here are some things to check:
1) It landed in your recipient’s junk/spam folder. Ask them to whitelist or add your email address to their contacts list.
2) You have overshot the limit, so you would have to actually send out the email again.
3) Try to send out broadcasts during a low-traffic time – say like later in the night – when you’re not actively sending out emails, and using up precious email counts from that hourly quota.
There are a few different reasons why this may not be working.
The DAP email-processing cron that processes the 1SC emails may not be running. Check your webhost control panel -> Cron job settings. Make sure dap-emailorder.php is setup to run once every 10 minutes.
The billing email id you have entered in DAP at Setup > Config > Payment Processing , should be entered into the “Order Notice Email – Primary Destination” field in your 1SiteAutomation/1Shoppingcart account, on the Setup > Orders > Notifications section. If by chance you enter it into the “Order Notice Email – Primary Destination” field, it WILL NOT WORK.
The DAP cron is running but 1SC payment notification emails are not reaching your mail server. Check the email account where you expect to receive your 1SC payment notification emails and see if the order notification email from 1SC is in that mail box.
The cron is running and the 1SC order notification email is reaching your mail server – but you did not configure the mail server settings correctly in DAP Dashboard -> Setup -> Config -> Payment Processing.
Email Server Where Order Emails Come In
Email Server User Name
Email Server Password
DAP only processes order notification emails that are in the “Unread” status, to prevent previously processed emails and other non-DAP emails from being repeatedly processed.
Also, if you “pop” off the emails from that mail box (means, your email client like Outlook or Thunderbird or Gmail is “removing” your emails from the server when it retrieves them), it means that when DAP logs in to that billing email address, there are no emails there to be processed – the mailbox is empty, or the 1SC payment notification emails have somehow gotten deleted from that mailbox.
So it is possible that DAP is able to connect to your email server, but DAP is not finding any “unread” emails. Please login to your email server and mark all the payment emails that you want DAP to process… as “unread”. And also make sure that your email client does not remove the emails from that mail box.
There might be a “Product Name” mismatch. The product name has to be EXACTLY the same (including case, spaces, etc) in both DAP as well as in 1ShoppingCart. So if you have created a product by name “Widget A”, make sure your 1shoppingcart product also has the exact same name “Widget A”.
If everything is setup correctly, DAP cron will run every 10 minutes and try to process all 1SC emails.
The next time the DAP cron will run (every 10 minutes), it will pick up all the unread payment emails from 1SC.
Welcome email is not getting sent.
Select the product, and make sure there is some text in the “Thankyou-Email Subject” and “Thankyou-Email Body”. Whatever is in these fields is what gets sent immediately after someone purchases that product (or right after you give them access from the backend).
Now go to DAP Dashboard -> Users -> Add .
Select the product and manually add user. Now see if the thankyou email gets sent to that email id. If it got sent, then your product setup is correct.
Also check the DAP Dashboard -> Orders . Search for all orders, look up the order for the particular user in question by email.
Check the payment status and make sure there is no error there.
If you did all this and things are still not working, please do this:
1. Set DAP Dashboard > setup -> Config -> Log Level -> Log All activity
2. Re-run the 1SC test purchase
3. Check the DAP Logs (DAP Dashboard > System > Logs) and send us the log text in there for troubleshooting by pasting it into a new support ticket.
Make sure you have set the thank-you message with the right merge tags for Email and Password.
First set DAP Dashboard > setup -> Config -> Log Level -> Log All activity
If you feel that the orders were not processed in dap, then just login to the 1SC email account where the sales/payment notification emails are sitting, and mark those orders/emails as UNREAD that you want dap to process.
Then manually run the cron script dap-emailorder.php cron by visiting the following link in the browser.
Replace yoursite.com with the name of your site.
It will just display an empty screen when complete.
Then check “Users > Manage” to see if user has been created.
– Veena Prashanth
You wish to do what we call a “silent” import. Basically, you don’t want DAP to send out the instant “thanky-you” email to the users being imported.
You may want to do this, say, if you wanted to import a bunch of users into DAP first, without DAP sending them any kind of emails at all, do some preliminary testing, make sure their settings, product access, etc, are all correct, before notifying them of any changes.
1. Remove the “ThankYou-Email Subject” and “ThankYou-Email Body” from the Product into which you wish to import users. Save it in a text file for later, and save the Product.
2. Go ahead and do the bulk-add of users from “Users > Add > Bulk-Add Multiple Users To A Product”.
3. Wait for the DAP Hourly Cron to run and finish importing all users. Since the “ThankYou-Email Subject” and “ThankYou-Email Body” of the Product is empty at the time of import, DAP won’t send out those emails.
4. Once all the users have been imported, put back the “ThankYou-Email Subject” and “ThankYou-Email Body” text content, and save the Product.
5. At a later point, if you want, you can send out an Autoresponder email – or even better, a Broadcast email – with the merge codes for the email and password, if you want the newly imported users to get their passwords, or if you wish to notify them of anything at all (like the new system you’re using, their new account info, a general “what has changed recently” type of email, etc).