Package: niteoweb.ipn.jvzoo
A Plone add-on that integrates JVZoo digital products retailer system with
Plone to enable paid memberships on your site.Source code @ GitHubReleases @ PyPIContinuous Integration @ Travis-CIHow it worksVisitor comes to your site and clicks an Order link.Visitor is sent to JVZoo’s order form (onhttp://jvzoo.com), where she
enters her personal information and performs payment.If payment was successful, JVZoo sends a POST request to a special view on
your Plone site (/@@jvzoo).The@@jvzooview parses this POST data from JVZoo and verifies it
against theSecret Keyyou’ve set in thePlone control panel.If all checks out,@@jvzoocalls an appropriate action provided by theniteoweb.ipn.corepackage (on which this package depends on).Transaction type toniteoweb.ipn.coreaction mappingJVZoo supports differentTransaction types, likeSale,Cancellation,Refund, etc. These are mapped to actions provided byniteoweb.ipn.core.Mapping:SALE -> enable_memberBILL -> enable_memberRFND -> disable_memberCGBK -> disable_memberINSF -> disable_memberCANCEL-REBILL -> disable_memberUNCANCEL-REBILL -> enable_memberTransaction types are explained in the JVZoo IPN documentation available onhttp://support.jvzoo.com/Knowledgebase/Article/View/17/0/jvzipn.InstallationTo installniteoweb.ipn.jvzooyou simply addniteoweb.ipn.jvzooto the list of eggs in your buildout, run buildout and restart Plone.
Then, installniteoweb.ipn.jvzoousing the Add-ons control panel.ConfigurationJVZooGo toJVZoo.comand useSellers->Add a Productto add a newProduct.Then check the optionExternal Program Integration. ForURLsethttp://yoursite.com/@@jvzoo. Under theMy Accountpage
set theJVZIPN Secret Key.PloneGo toSite Setup->Configuration Registrycontrol panel form and
configure theSecret Keyfield by pasting it in theniteoweb ipn jvzoo
interfaces IJVZooSettings secretkeyfield.Test itYou are now ready to do a test buy! Go back toSellersand clickTest Purchases. Select a product, clickCreate Test Purchase Codeand
finish by clicking the link inBuy / Linkcolumn in the table below. In
order for the purchase link to work, the product needs to be activated inSellers Dashboard(select a product and checkAllow Sales).Before you finish the transaction, you of course need to set up your Plone
site to receive JVZoo server notifications.Confirm by logging-in tohttp://jvzoo.comand checking to see if there were any
purchases (onSellerstab). Also check if your received an email with
username and password for accessing your site and try to login with them.Tips & TricksJVZoo IPN API documentationAvailable athttp://support.jvzoo.com/Knowledgebase/Article/View/17/0/jvzipn.Mocked requestIf you want to mock a request from JVZoo in your local development environment,
run a command like this:$ curl -d "ccustname=JohnSmith&ccuststate=&ccustcc=&ccustemail=test@email.com&cproditem=1&cprodtitle=TestProduct&cprodtype=STANDARD&ctransaction=SALE&ctransaffiliate=affiliate@email.com&ctransamount=1000&ctranspaymentmethod=&ctransvendor=&ctransreceipt=1&cupsellreceipt=&caffitid=&cvendthru=&cverify=AACDD10E&ctranstime=1350388651" http://localhost:8080/Plone/@@jvzooThe command above assumes you have set yourSecret Keyin Plone tosecretand you have created a group withipn_1id.Changelog1.5 (2013-12-19)Support for billing email address (this is the users PayPal email address).
Prior to enable and disable code, this feature searches for username
(which is in fact users email address) and billing email address.
[matejc]1.4 (2013-06-11)Previous version was a brown-bag release.
[zupo]1.3 (2013-06-11)Support for utf-8 fullnames.
[zupo]1.2 (2013-01-08)Prefix log entries with current user’s username.
[zupo]1.1 (2013-01-02)Depend on latest release of niteoweb.ipn.core.
[zupo]Abort transaction if something fails.
[zupo]Useipn_as a prefix for product group IDs.
[zupo]1.0 (2012-12-27)Initial release.
[zupo]License (3-clause BSD)Copyright (c) 2013, NiteoWeb Ltd.. All rights reserved.Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.Neither the name of NiteoWeb Ltd.. nor the names of its contributors may
be used to endorse or promote products derived from this software
without specific prior written permission.THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS”
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL NITEOWEB LTD. BE LIABLE FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.