PublishPress Cart – eCommerce for Digital Products

Description

PublishPress Cart helps you sell digital products, programs, events, or services from your WordPress website. It provides checkout pages, payment settings, customer account pages, order records, and integration settings for common payment and marketing workflows.

Features

  • Thank You Pages and Redirects:
    Display a custom thank you page or redirect customers to another website after they complete their purchase.

  • Embed an order form anywhere:
    Use the included shortcode to turn any page on your website into a checkout page.

  • Product launch settings:
    Schedule cart open dates, manually turn a checkout page on or off, close a checkout after a configured number of sales, and redirect closed-cart visitors to a selected page.

  • One-time payments, installment plans and subscriptions:
    Set up multiple payment options for a product so customers can choose from the payment plans you configure.

  • Mailing list integrations:
    Choose which mailing list or tag to add a buyer to on a per-product basis when a supported marketing service is configured.

How to Use PublishPress Cart

Want product updates and support resources? Visit PublishPress Cart.

External services

PublishPress Cart can connect to third-party services when you enable and configure the related feature. These connections are optional unless you choose the related payment gateway, spam-protection feature, analytics feature, or marketing integration.

Stripe

Stripe is used to process card payments when Stripe is enabled. During checkout, PublishPress Cart sends order, customer, amount, currency, and payment metadata needed to create and confirm Stripe payments. Stripe may return payment, charge, refund, subscription, and webhook event data to the site. When a Stripe publishable key is saved, checkout and product pages also load Stripe.js from https://js.stripe.com/v3/.

Service: Stripe, Inc. Terms: https://stripe.com/legal. Privacy: https://stripe.com/privacy.

Stripe Connect (PublishPress)

The optional Stripe Connect button uses a PublishPress connection service at https://publishpress.com to complete Stripe OAuth. When you start Connect from plugin settings, the plugin sends the site URL, return URL, connection state, and an encrypted site credential needed to finish account linking. PublishPress returns Stripe account identifiers used to process payments. This happens only when you choose Connect Stripe.

When Stripe Connect is used without PublishPress Cart Pro, Stripe applies a 2% application fee on those connected payments. That fee is not applied when PublishPress Cart Pro is active.

Service: PublishPress LLC. Terms: https://publishpress.com/terms-of-service/. Privacy: https://publishpress.com/privacy-policy/.

PayPal

PayPal is used to process PayPal payments and subscriptions when PayPal is enabled. During checkout and subscription management, PublishPress Cart sends order, customer, amount, currency, subscription, and transaction data needed to create, verify, refund, pause, resume, or cancel PayPal transactions.

Service: PayPal, Inc. Terms: https://www.paypal.com/legalhub/useragreement-full. Privacy: https://www.paypal.com/privacy.

Google reCAPTCHA

Google reCAPTCHA is used to help validate checkout form submissions when reCAPTCHA is enabled. PublishPress Cart sends the reCAPTCHA response token and the visitor IP address to Google for verification. When a reCAPTCHA site key is saved, checkout forms also load https://www.google.com/recaptcha/api.js from Google.

Service: Google LLC. Terms: https://policies.google.com/terms. Privacy: https://policies.google.com/privacy.

SendFox

SendFox is used to add buyers to configured mailing lists when the SendFox integration is enabled. PublishPress Cart sends subscriber and order-related data required by the configured integration, such as email address, name, and selected list information.

Service: SendFox / Sumo Group, Inc. Terms: https://sendfox.com/tos. Privacy: https://sendfox.com/privacy.

ActiveCampaign

ActiveCampaign is used to sync buyers to configured lists and tags when the ActiveCampaign integration is enabled. PublishPress Cart sends subscriber and order-related data required by the configured integration, such as email address, name, and selected list or tag information.

Service: ActiveCampaign, LLC. Terms: https://www.activecampaign.com/legal/terms-of-service. Privacy: https://www.activecampaign.com/legal/privacy-policy.

Mailchimp

Mailchimp is used to sync buyers to configured audiences, groups, or tags when the Mailchimp integration is enabled. PublishPress Cart sends subscriber and order-related data required by the configured integration, such as email address, name, audience, group, and tag information.

Service: The Rocket Science Group LLC d/b/a Mailchimp. Terms: https://mailchimp.com/legal/terms/. Privacy: https://www.intuit.com/privacy/statement/.

Kit

Kit is used to sync buyers to configured forms and tags when the Kit integration is enabled. PublishPress Cart sends subscriber and order-related data required by the configured integration, such as email address, name, selected form, selected tag, and mapped custom field information.

Service: ConvertKit LLC d/b/a Kit. Terms: https://kit.com/terms. Privacy: https://kit.com/privacy.

MemberVault

MemberVault is used to grant buyer access to configured products when the MemberVault integration is enabled. PublishPress Cart sends customer and product access data required by the configured integration, such as email address, name, and selected MemberVault product information.

Service: MemberVault. Terms: https://membervault.co/terms. Privacy: https://membervault.co/privacy.

Google Analytics and Facebook Ads

When analytics or ads tracking integrations are enabled, PublishPress Cart can output the tracking data needed for purchase and lead events, such as order amount, currency, product information, and transaction identifiers. These services are only used when you configure the related tracking IDs or settings.

Google terms: https://policies.google.com/terms. Google privacy: https://policies.google.com/privacy.
Meta terms: https://www.facebook.com/legal/terms. Meta privacy: https://www.facebook.com/privacy/policy/.

Development and source code

Human-readable Gutenberg sources ship in this plugin. The files in includes/integrations/gutenberg/build/ are minified with npm and @wordpress/scripts 35.0.0, which runs webpack.

To rebuild them, use Node.js 20.19 or newer on the 20 line, or Node.js 22.13 or newer. From the plugin directory:

  1. npm install @wordpress/scripts@35.0.0
  2. npx wp-scripts build includes/integrations/gutenberg/blocks/checkout-form/order-form.js includes/integrations/gutenberg/blocks/account-page-builder/account-blocks.js includes/integrations/gutenberg/blocks/account-page-builder/account-page-view.js --output-path=includes/integrations/gutenberg/build

A development checkout that includes package.json can run npm install and then npm run build:gutenberg for the same output. npm run start:gutenberg rebuilds those files while you edit.

  • includes/integrations/gutenberg/blocks/checkout-form/order-form.js builds includes/integrations/gutenberg/build/order-form.js.
  • includes/integrations/gutenberg/blocks/account-page-builder/account-blocks.js builds includes/integrations/gutenberg/build/account-blocks.js.
  • includes/integrations/gutenberg/blocks/account-page-builder/account-page-view.js builds includes/integrations/gutenberg/build/account-page-view.js.

Shared helpers are under includes/integrations/gutenberg/blocks/_shared/.

Third-party assets

  • Montserrat by The Montserrat Project Authors, SIL Open Font License 1.1. License: public/fonts/OFL.txt. https://github.com/JulietaUla/Montserrat
  • balloon.css 1.2.0 by Claudio Holanda, MIT. License: admin/assets/libs/balloon.LICENSE.txt. https://github.com/kazzkiq/balloon.css
  • flatpickr 4.6.13, MIT. License: admin/assets/libs/flatpickr.js. https://github.com/flatpickr/flatpickr
  • DataTables 3.0.4 by SpryMedia Ltd, MIT. License: admin/js/jquery.dataTables.js, admin/css/jquery.dataTables.css. https://datatables.net/license
  • jquery.daterangepicker by Chunlong Liu, MIT. License: admin/js/ppcart-daterangepicker.js, admin/css/ppcart-daterangepicker.css. https://github.com/longbill/jquery-date-range-picker
  • Selectize 0.15.2, Apache License 2.0. JavaScript: admin/js/selectize.js, public/js/selectize.js. Minified theme CSS: admin/css/selectize.default.css, public/css/selectize.default.css. https://github.com/selectize/selectize.js
  • Font Awesome Free 7.3.1 by Fonticons, Inc. Icons: CC BY 4.0; fonts: SIL Open Font License 1.1; code: MIT. License: includes/assets/font-awesome-all.js, includes/assets/font-awesome-all.min.js, includes/assets/font-awesome-svg-with-js.css, includes/assets/font-awesome-svg-with-js.min.css. https://fontawesome.com/license/free
  • Stripe PHP SDK 20.3.1, MIT. License: lib/vendor/publishpress/stripe-php/lib/stripe/stripe-php/LICENSE. https://github.com/stripe/stripe-php
  • Dompdf 3.1.6 (publishpress/dompdf-dompdf 3.1.6.2), LGPL-2.1-or-later. License: lib/vendor/publishpress/dompdf-dompdf/lib/dompdf/dompdf/LICENSE.LGPL. https://github.com/dompdf/dompdf
  • php-font-lib, LGPL-2.1-or-later. License: lib/vendor/publishpress/dompdf-dompdf/lib/dompdf/php-font-lib/LICENSE. https://github.com/dompdf/php-font-lib
  • php-svg-lib, LGPL-3.0-or-later. License: lib/vendor/publishpress/dompdf-dompdf/lib/dompdf/php-svg-lib/LICENSE. https://github.com/dompdf/php-svg-lib
  • Masterminds HTML5, MIT. License: lib/vendor/publishpress/dompdf-dompdf/lib/masterminds/html5/LICENSE.txt. https://github.com/Masterminds/html5-php
  • sabberworm/php-css-parser, MIT. License: lib/vendor/publishpress/dompdf-dompdf/lib/sabberworm/php-css-parser/LICENSE. https://github.com/sabberworm/PHP-CSS-Parser
  • Pimple 3.5.0 (publishpress/pimple-pimple 3.5.0.11), MIT. License: lib/vendor/publishpress/pimple-pimple/lib/pimple/pimple/LICENSE. https://github.com/silexphp/Pimple
  • psr/container 2.0.2 (publishpress/psr-container 2.0.2.1), MIT. License: lib/vendor/publishpress/psr-container/LICENSE. https://github.com/php-fig/container
  • PublishPress Bundled Translations 1.0.3, GPL-3.0-or-later. License: lib/vendor/publishpress/bundled-translations/LICENSE. https://github.com/publishpress/library-bundled-translations
  • PublishPress Instance Protection 2.1.0, GPL-3.0-or-later. License: lib/vendor/publishpress/instance-protection/LICENSE. https://github.com/publishpress/library-instance-protection
  • PublishPress WordPress Reviews 1.2.2, GPL-3.0-or-later. License: lib/vendor/publishpress/wordpress-reviews/LICENSE. https://github.com/publishpress/library-wordpress-reviews
  • PublishPress WordPress Version Notices 2.2.1, GPL-3.0-or-later. License: lib/vendor/publishpress/wordpress-version-notices/LICENSE. https://github.com/publishpress/library-wordpress-version-notices
  • Composer autoloader (Composer), MIT. License: lib/vendor/composer/LICENSE. https://getcomposer.org/

Screenshots

Blocks

This plugin provides 10 blocks.

  • Account Navigation Display customer account navigation tabs and sortable account sections.
  • Account Profile Display the customer profile account section.
  • Account Downloads Display the customer downloads account section when downloads are available.
  • Account Subscriptions Display the customer subscriptions account section.
  • Account Tab Group account component blocks inside one account navigation tab.
  • Account Orders Display the customer order history account section.
  • Checkout Display a checkout form.
  • Account Page Builder Build a customer account page from sortable account component blocks.
  • Account Installment Plans Display the customer installment plans account section.
  • Account Login Display the customer account login and password reset form.

Installation

  1. Upload the plugin files to the /wp-content/plugins directory, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the Plugins screen in WordPress.
  3. Use the Settings -> PublishPress Cart screen to configure the plugin.

FAQ

What payment processors can I use with PublishPress Cart?

PublishPress Cart supports Stripe and PayPal. PublishPress Cart Pro is a separate plugin with additional payment gateway options.

Does PublishPress Cart work in my language?

PublishPress Cart can be translated with WordPress translation files or a translation plugin such as Loco Translate.

What integrations are available?

PublishPress Cart works with ActiveCampaign, Mailchimp, MemberVault, SendFox, MailPoet, Facebook Ads events, and Google Analytics. PublishPress Cart Pro is a separate plugin with additional integrations.

I have a question not listed here.

Contact us via PublishPress support.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“PublishPress Cart – eCommerce for Digital Products” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

The full changelog can be found on GitHub.