Metadata-Version: 1.1
Name: niteoweb.ipn.jvzoo
Version: 1.5
Summary: JVZoo IPN support in Plone.
Home-page: http://pypi.python.org/pypi/niteoweb.ipn.jvzoo
Author: NiteoWeb Ltd.
Author-email: info@niteoweb.com
License: BSD
Description: ==================
        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 @ GitHub <https://github.com/niteoweb/niteoweb.ipn.jvzoo>`_
        * `Releases @ PyPI <http://pypi.python.org/pypi/niteoweb.ipn.jvzoo>`_
        * `Continuous Integration @ Travis-CI <http://travis-ci.org/niteoweb/niteoweb.ipn.jvzoo>`_
        
        
        How it works
        ============
        
        #. Visitor comes to your site and clicks an Order link.
        
        #. Visitor is sent to JVZoo's order form (on http://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 ``@@jvzoo`` view parses this POST data from JVZoo and verifies it
           against the `Secret Key` you've set in the `Plone control panel`.
        
        #. If all checks out, ``@@jvzoo`` calls an appropriate action provided by the
           ``niteoweb.ipn.core`` package (on which this package depends on).
        
        
        Transaction type to ``niteoweb.ipn.core`` action mapping
        ========================================================
        
        JVZoo supports different `Transaction types`, like `Sale`, `Cancellation`,
        `Refund`, etc. These are mapped to actions provided by ``niteoweb.ipn.core``.
        
        Mapping:
         * SALE -> enable_member
         * BILL -> enable_member
         * RFND -> disable_member
         * CGBK -> disable_member
         * INSF -> disable_member
         * CANCEL-REBILL -> disable_member
         * UNCANCEL-REBILL -> enable_member
        
        Transaction types are explained in the JVZoo IPN documentation available on
        http://support.jvzoo.com/Knowledgebase/Article/View/17/0/jvzipn.
        
        Installation
        ============
        
        To install `niteoweb.ipn.jvzoo` you simply add ``niteoweb.ipn.jvzoo``
        to the list of eggs in your buildout, run buildout and restart Plone.
        Then, install `niteoweb.ipn.jvzoo` using the Add-ons control panel.
        
        Configuration
        =============
        
        JVZoo
        -----
        
        Go to `JVZoo.com <http://jvzoo.com>`_ and use ``Sellers`` ->
        ``Add a Product`` to add a new `Product`.
        
        Then check the option ``External Program Integration``. For `URL`
        set ``http://yoursite.com/@@jvzoo``. Under the ``My Account`` page
        set the ``JVZIPN Secret Key``.
        
        
        Plone
        -----
        
        Go to ``Site Setup`` -> ``Configuration Registry`` control panel form and
        configure the ``Secret Key`` field by pasting it in the `niteoweb ipn jvzoo
        interfaces IJVZooSettings secretkey` field.
        
        
        Test it
        =======
        
        You are now ready to do a test buy! Go back to ``Sellers`` and click
        ``Test Purchases``. Select a product, click ``Create Test Purchase Code`` and
        finish by clicking the link in ``Buy / Link`` column in the table below. In
        order for the purchase link to work, the product needs to be activated in
        ``Sellers Dashboard`` (select a product and check ``Allow 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 to http://jvzoo.com and checking to see if there were any
        purchases (on ``Sellers`` tab). Also check if your received an email with
        username and password for accessing your site and try to login with them.
        
        
        Tips & Tricks
        =============
        
        JVZoo IPN API documentation
        ---------------------------
        
        Available at http://support.jvzoo.com/Knowledgebase/Article/View/17/0/jvzipn.
        
        
        Mocked request
        --------------
        
        If 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/@@jvzoo
        
        The command above assumes you have set your `Secret Key` in Plone to
        ``secret`` and you have created a group with ``ipn_1`` id.
        
        Changelog
        =========
        
        1.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]
        
        - Use ``ipn_`` 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.
        
        
Keywords: Plone IPN JVZoo
Platform: UNKNOWN
Classifier: Framework :: Plone
Classifier: Programming Language :: Python
