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 –
http://yoursite.com/dap/dap-paypal.php
(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).
notify_url=http://yoursite.com/dap/dap-paypal.php
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.
http://www.digitalaccesspass.com/doc/setting-up-your-paypal-button-and-paypal-IPN/
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…
http://www.digitalaccesspass.com/doc/setting-up-your-paypal-button-and-paypal-ipn/
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”.
Last updated: 09/02/2014
UPDATE: We are now authorized resellers for Authorize.net. If you’re in the US or Canada, click here to apply. If you’re in the UK, then click here.
DAP directly integrates with the following Payment Processors without the need for any additional third-party shopping carts:
DAP also integrates with the following Shopping Carts
Since DAP integrates with Shopping carts like WooCommerc, 1SiteAutomation.com (our white label of 1Shoppingcart), e-Junkie, Premium Web Cart and Infusionsoft, that means that it also integrates (albeit indirectly) with all of the Payment processors and gateways that these carts support. So, for example, since DAP works with 1SiteAutomation, it essentially integrates with all payment providers supported by 1SiteAutomation, like:
Bank of America
BluePay
Concord EFSNet
Cybercash
DPI Merchant Services
e-Commerce Exchange
Echo Inc.
ECX QuickCommerce 3.0
Epoch Systems
eProcessing Network
EPS SecureNet
EWAY (Australia)
FastTransact
Firepay
GoRealTime/EPP
GoRealTime
iBill
IntelliPay ExpertLink
IONGate (Costco)
iTransact RediCharge
LinkPoint Secure
MCPS WebLink
MerchantPartners
Moneris
NETbilling
Network Merchants
Paradata
PayCom Processing
Paymentech (direct integration via Authorize.net)
PayPal Payflow Pro (via e-Junkie)
PayReady
Planet Payment
PRIGate
PSiGate
RightConnect
RTWare WebLink
Shift4
SkipJack
StrataPay
Surepay
TrialPay (via e-Junkie)
TrustCommerce
USAEpay
uSight
VeriPayment
VeriSign PayFlow Pro
ViaKlix (Nova Systems)
YourPay
For the full list and more details, click here
If you use the DAP Shopping Cart Plugin, you can do 1-Click Upsells/Downsells like the pros, without the need for any external shopping cart or upsell service provider.
The free DAP shopping cart that comes with your DAP purchase allows you to do unlimited 1-Click Upsells using Stripe, Authorize.net and Paypal Website Payments Pro (legacy).
However, for doing 2-Click Upsells/Downsells with Paypal Standard, you need our Paypal Upsell-Tree plugin that is sold separately. Or you can also get this plugin for free with our Platinum subscription.
Of course, if you need advanced shopping cart features – like ability to calculate shipping, tax, and coupons – then you should consider using 1SiteAutomation.com.
If you want automated recurring order processing using 1ShoppingCart (1SC) or 1SiteAutomation.com, then DAP needs to be able to process the recurring email notifications sent by 1ShoppingCart, which it does on the back-end when the DAP Cron Job runs every 10 minutes.
However, if you’re using Godaddy as your web host, then because GoDaddy disables a mandatory PHP library (“imap”) on all their servers for some reason, DAP is unable to process the recurring order email notifications from 1ShoppingCart.
This is not an issue if you are using GoDaddy as just your domain name registrar, and using some other service like Liquid Web or Hostgator as your web host.
But if you’re using 1SC & GoDaddy hosting, you will have to end up doing manual cancellations if any member cancels their subscription, or if their credit card fails and their recurring payments don’t get processed.
Please note that 1ShoppingCart order processing works great with all other (non-GoDaddy) hosts.
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
1-Click Upsells, Downsells and OTO’s are now extremely simple to implement using the new “Upsell Tree” plugin for DAP.
And this particular plugin works with Paypal Standard! Which means you don’t need a merchant account any more.
All you need is a regular Paypal Business Account.
Please note that this is not “True 1-Click”, like you can do with a real merchant account – because of the very fact that Paypal expects your buyers to log in at least once into their paypal account through Paypal.com, and then at the end of the Upsell-flow, there is one final confirmation page. So it’s more like “2-Click Upsells” really.
If you want true 1-Click Upsells, then you need to have a merchant account through Paypal Website Payments Pro or Authorize.net.
On every upsell page, you must also include a “No, Thank You” button or link that will allow your buyer to skip your upsell or downsell, and go to the next part of the sale.
For all upsells that are not the last upsell, you can link this button or link to the next upsell in the chain. So basically, on Upsell 1, they can either take the upsell1 (whatever your offer is) by clicking on the buy button, or click on the “No, Thank You” button/link, and you could then either taken them to the URL of Upsell2, or Downsell 1, or if this is the last upsell in the flow, then you could send them directly to the Paypal Upsell Summary Page /dap/PaypalCheckoutConfirm.php
Button to take them to next Upsell/Downsell:
<form name=”nothankyou”>
<input type=”button” name=”nothankyoubutton” value=”No, thank you, I wish to skip this incredible offer” onClick=”location.href=’https://YourSite.com/dap/continue.php?url=/dap/upsell2.html‘;”>
</form>
Feel free to copy the above HTML button code for the no-thankyou button. However, paste it into a text editor and be careful and don’t delete any of the HTML code, and only change actual URL’s or the button’s value (which is the text your buyer will see on the button).
Button to take them to final Checkout Summary page:
<form name=”nothankyou”>
<input type=”button” name=”nothankyoubutton” value=”No, thank you, please complete my order” onClick=”location.href=’/dap/PaypalCheckoutConfirm.php‘;”>
</form>
Link to take them to next Upsell/Downsell:
<a href=”https://YourSite.com/dap/continue.php?url=/dap/upsell2.html“>No, thank you, I wish to skip this incredible offer</a>
Link to take them to final Checkout Summary page:
<a href=”/dap/PaypalCheckoutConfirm.php“>No, thank you, please complete my order</a>
That’s it.
While it looks like a LOT of steps, that is only because we have to explain the steps in detail so they are clear. In reality, it is very simple to set up, and starting from scratch, if you have DAP & SSL already installed, it shouldn’t take you more than 1/2 hour to set up your 1-Click Upsells/Downsells/OTO’s. And if you’re not using Upsells/Downsells, then it can be done even faster.
If you have any further questions, feel free to open a support ticket, and we will assist you in getting this going.
IMPORTANT: PLEASE NOTE
The latest version of Paypal Payments Pro (called PAYFLOW) is not compatible with DAP and Recurring Billing Cycles, You will have to open a Paypal account with the older version of their Payments Pro Merchant service that is compatible with DAP. Please make sure to use the older version of PPP which has to be specially requested through their support team. In a future DAP release, we will make it compatible with the new version of PPP.
Please read this for more on Payflow and Paypal Payments PRO :
http://www.digitalaccesspass.com/forums/threads/1044-Recurring-transaction-failed-in-paypal?highlight=payflow
This post includes information about generating buy buttons for Paypal Website Payments Pro. It also has information about setting up 1-Click Upsells.
Even if you don’t wish to do upsells, you should follow the setup instructions in this page, for integrating your site with Paypal Website Payments Pro .
a) Log in to your Paypal account and click on the “Profile” link.
b) Go to Instant Payment Notification
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”.
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.
You will now see a green check mark image, with a long string of characters on line 2. That is your Paypal Identity Token. Copy that string.
Go back to DAP Dashboard > Setup > Config > Payment Processing > Paypal Identity Token field, and enter this string there, and save it.
<form name="DAPCartPaymentForm" method="post" action="https://yoursite.com/dap/checkout.php">
<input type="hidden" name="payment_succ_page" value="http://yoursite.com/members/"/>
<input type="hidden" name="item_name" value="Bronze Members" />
<input type="hidden" name="is_submitted" value="Y" />
<input type="hidden" name="btntype" value="buynow" />
<input type="hidden" name="is_last_upsell" value="N" />
<input type="hidden" name="payment_gateway" value="paypal" />
<div align="center"><input type="image" src="https://yoursite.com/dap/images/addtoorder1click.jpg" width="200" height="100" border="0" name="submit" /></div>
</form>
That’s it for Paypal Pro button generation.
You can either use the standalone cart page, and then customize the header and footer.php file.
Or you can put the cart right within a WordPress page on your site, so the cart will then take on your theme’s look and feel, and look like it were completely a part of your wordpress site.
To create custom header and footer, create two files by name cartheader.php & cartfooter.php
Upload them to the dap/inc/ folder.
Whatever HTML snippet you put in the above two files will show up as header & footer on the check out page.
See http://www.digitalaccesspass.com/doc/dap-shopping-cart-overview/
While it looks like a LOT of steps, that is only because we have to explain the steps in detail so they are clear. In reality, it is very simple to set up, and starting from scratch, if you have DAP & SSL already installed, it shouldn’t take you more than 1/2 hour to set up your 1-Click Upsells/Downsells/OTO’s. And if you’re not using Upsells/Downsells, then it can be done even faster.
If you have any further questions, feel free to open a support ticket, and we will assist you in getting this going.
With DAP, you can add users to your membership site in 3 different ways.
1. PURCHASE: Someone buys your product or subscribes (“Paid” member with access to both free and paid content)
2. FORM SIGNUP: Someone signs up through a signup form (“Free” members with access to only free content)
3. ADMIN ADDED: You add them as a member directly through the DAP Admin Control Panel (you can mark them as either “free” or “paid”)
All three are explained in detail below.
*You first create a “Sales Page”.
On your sales page, depending on which payment processor you use, you go to Paypal/1ShoppingCart/ClickBank and create a new product with the EXACT same name as the product you created within DAP, and get the ‘Buy Button’ link from your Payment Processor. Publish this “Buy Button” on your sales page.
* Your visitor goes to your sales page
* They purchase your product
* Your payment process (Paypal/1ShoppingCart/ClickBank) notifies DAP that you have a new purchase.
* If the product names match, DAP automatically creates an account for them, generates a random password, and sends them an email with their email/password. You can customize the contents of this email on the “Templates” screen in your DAP Admin Control Panel. Integration with your shopping cart explained elsewhere (see documentation for setup).
That’s it!
That’s how “buyers” get added to your membership site and get access to the product they just purchased.
2. FORM SIGNUP:
You wish to give someone a “Free” membership.
NOTE: “Free” members who do not have a payment associated in DAP (which means they have not purchased anything) will have access only to content that you have marked as “Free”.
Once you have created a Product in DAP, and have added content (blog post/page links, links to files, etc), and have saved it, on the Product page, below the Product name list, you will see a link called “Direct Signup HTML”. (See image below). You must first select a Product before you can copy the correct form HTML.
Fig 1. Direct Signup Link on Products page
Fig 2. Form HTML that you get on clicking the Direct Signup Link
This HTML gives you the full HTML form code that you can publish on any page of your web site. This form only collects an email address and a first name.
Take this HTML code and publish it on page of your web site where you want sign up users. This could be a WP page or post too.
Note: When you see the above HTML code, there’s a field in there that looks like this:
<input type=”hidden” name=”redirect” value=”http://YourSite/Your-login-page-link/?msg=Success!%20Your%20membership account%20has%20been%20created.%20%20Check%20your%20email%20address%20in%20a%20few%20minutes%20for%20your%20password“>
Don’t forget to change the text above, where it says “http://YourSite/Your-login-page-link/?…” to point to your actual domain name and to your actual login page (if you have customized it).
Then, when someone enters their email address and first name and signs up through the signup form, DAP creates an account for them using that email address, creates a random password, and sends them an email with their email/password.
After that, you can drip any content or emails on them that are marked as “Free” (when adding content or emails).
At some later point, if they purchase any of your “Paid” products (see the “1. Purchase” section above), then as long as they use the same email id during purchase, DAP will automatically give them access to all of the “Paid” content in the Product that they just purchased.
3. ADMIN ADDED:
If you wish to directly give someone access to a Product and all its content and emails, you can add them directly from the DAP Admin screen (Users > Add/Edit).
You just need their email id and their first name (both of which they can change subsequently) to add them to a Product.
While adding them, you have the option of marking them as a “Paid” user by checking the “Mark as Paid” checkbox.
If you don’t check this check box, then they will be added as a “Free” user and get access only to “Free” resources (content/emails).
But if you check the “Mark as Paid” checkbox, then they will get access to all “Paid” content and emails, just like someone who is actually a “Paid” member.
Q: I just made a test purchase. But DAP did not process the payment (or) did not add me as a member (or) is not creating a new member.
Make sure that the product name within DAP and the product name in your “buy” button (i.e., your shopping cart) are EXACTLY the same. Don’t just look at the two and say, “oh yeah, they’re the same”.We recommend “copying” the product name that you set up in DAP, and then “pasting” it when creating your “buy” button. If you are using Paypal, then this is the “Item Name” when you are creating your Paypal “buy” button. If you are using 1ShoppingCart, then this is the “Product Name” when creating a new product.
(Paypal users, skip ahead)
1ShoppingCart/ClickBank:
1) Make sure you have set up the “Email Order Processing” correctly.
2) Is your Cron Job dap-emailorder.php set up and running correctly?
3) Make sure you have not “removed” the 1Shoppingcart or ClickBank payment notification email from your server. Log in to your email server, and make sure that the email is still there, and also it needs to be “Unread”. If your email client (like Outlook or Thunderbird, or Gmail) already accessed it and marked it as read, then simply mark it unread, and the next time DAP runs (which should be in 10 minutes) it will pick up the email and process it.
Paypal Users:
1. If you are using Paypal IPN, then make sure you have enabled IPN within your Paypal account.
2. Make sure you put the correct IPN “notify_url” text in your button.
3. Make sure the Paypal button you set up is a “Buy Now” or “Subscribe” or “Add to Cart” button.
Also see these troubleshooting guides:
DAP can process Paypal payments using Paypal IPN (Instant Payment Notification). All you need to basically do is to enable IPN within your Paypal account and create your Buy button with a few extra parameters. It’s all explained below.
So here’s what you need to do to process orders through Paypal using IPN, and have your buyers automatically added to DAP on your site.
Follow this post to enable IPN first, and then come back here to this post.
On the Create New Button Page:
1: Choose any one of the following button types based on the type of product you wish to sell.
* Shopping Cart (for multiple-item purchases)
* Buy Now (for one-time products)
* Subscriptions (for subscription-based recurring products)
2: After selecting the button type, enter item name and price.
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).
notify_url=http://YourSite.com/dap/dap-paypal.php
4. Copy the HTML code for this button
5. Publish the code on your web site’s sales page
..or WP page or post.
That’s it!
So when someone subscribes to, or purchases your product using this button, Paypal will send an IPN notification to your web site to the above link. DAP will then verify the product and payment status, and then will automatically add give the buyer/subscriber access to that product.
If the email id used in this purchase is not already associated with an account on your site, then DAP automatically creates a new account, and sends the buyer an “activation” email that requires them to click on a link to confirm and activate their account.
But If this email id belongs to someone who already has an account in DAP (existing buyer, purchased a different product this time), then DAP doesn’t create a new account for this user. It simply gives the existing account access to this new product.
So when the user logs in, they will see that they now have access to TWO products, with each product and the available URL’s listed separately.
Note: If you’re going to be using Paypal to process payments, then you don’t need to set up the Email Processing info in your DAP Admin > Config > Payment Processing screen. You don’t need to set up the DAP Email Order cron job either.