#2

Product support

Get help in the plugin support forum.

Categories

  • Marketing
  • Utility

JK Shop is fully powerful eCommerce plugin.

Benefits

  • Modern platform - OctoberCMS based on Laravel
  • Many properties on products
  • Shipping, Taxes integration
  • Generate Invoice from HTML template
  • Automatic sending emails after change order status
  • Many components for easy use
  • Easy customization

Payment Methods / Gateways

Live Demo

You can visit Live Demo site. You can create order, pay order by paypal (using sandbox). Or you can visit Backend and browse all sections (products, orders, categories, taxes, etc..)

Backend login as (demo | Demo)

Required Plugins

RainLab User

  • User Orders
  • User should have sale on category - in percent
  • User should have individual price on product

Other Plugins Support

RainLab Pages

  • Menu - allow generate dynamic menu by categories
  • Menu - allow generate dynamic menu by brands

RainLab Sitemap

  • Categories
  • Brands
  • Products

RainLab Translate

  • Translations

Offline SiteSearch

  • Site Search

Themes

General information

Categories

Tree of categories is most important for correct setup products.

  • Title & Slug - use good words for friendly URL
  • Sales - If you have installed RainLab User plugin you can set sale for current category and current user.

Categories

Brands

If you setup brand correctly you can filter products by brand.

  • Title & Slug - use good words for friendly URL

Brands

Taxes

Taxes when you can use fro products, shipping, etc.. Taxes

Carriers

System have to at least one active carrier. Important for correct setup is section Pricing:

  • Free Shipping - on / off
  • Tax - all prices here are without tax
  • Billing: According to total weight OR According to total price

Carriers

Order Statuses

Order statuses working with OctoberCMS mail templates. After instalation you have available this statuses with email templates. But you have to set created mail templates into statuses.

When Order change status (manual change from backend or automatic change - payment accepted paypal) it is generate event - sent email if is setup.

Orders can be filter by status.

Order Statuses

Products

Products have to many fields. Sections:

  • Detail - general information
  • Prices - if you have user plugin you can set individual price for current user
  • SEO
  • Categories - check all categories from root to current
  • Size - size of package
  • Quantities
  • Customization - can be add custom fields( label; value )
  • Properties - you can select properties for this product (size, color, etc..)
  • Accessories - select accessories (products)
  • Featured - select featured products
  • Images - list of image (first image use as primary image)
  • Attachments - list of files (fill title file)

Product detail

Orders

List of orders, you have full control on orders - edit, new, cancel, delete. Sections:

  • Detail - status, carrier, invoice
  • Products - product, quantity, price
  • Customer - addresses, email, phone
  • Prices - total prices
  • Payment methods - Payment method, paid date, payment detail - for paypal only

Orders

Properties

Properties extend products. Available property types:

  • Select - list of options
  • Select multiple - list of options with multiple select
  • Textbox - simple text input
  • Number - simple number input
  • Checkbox - simple checkbox input

Properties

Final result - product detail - frontend Properties-product

Coupons

You can create two main types discount coupons: global and per item.

Global vs Per Item coupons: If you select product or category this coupon will be used for each product in basket. If products and categories are empty coupon will be used one for basket.

Coupons have these properties:

  • Valid From
  • Valid To
  • Value
  • Type of Value (Money or Percentage)
  • Users (If empty, allow for all users)
  • Minimum value of basket (only global coupons)
  • Categories
  • Products

CouponDetail

Payment Gateway

You can simple add Payment Gateway into your system, if you need more info you can check backend on DEMO site.

Payment Gateway have these properties:

  • Order Status Before
  • Order Status After
  • Gateway Title - Title for customers
  • Payment Page - Payment page in default with :slug property and with payment gateway component
  • Currency - Currency Code
  • Omnipay Gateway - Choose one or leave empty for custom payment page
  • Parameters - Dynamic parameters for the gateway

PaymentGatewayDetail

Setting

In settings are this sections:

  • General - number formating, company email
  • OBSOLETE - Cash on delivery
  • OBSOLETE - Bank transfer
  • OBSOLETE - Paypal
  • OBSOLETE - Stripe
  • Invoice template

Settings

For more information you can visit JK Shop plugin page

These plugin(s) are required for the plugin:

The following themes use this plugin:

Orders

Components

Products by Category

Display list of products by category. Parameters:

  • URL Slug Category
  • URL Page
  • Products per page
  • Product detail page

Products by Category

Products by Brand

Display list of products by Brand. Parameters:

  • URL Slug Brand
  • URL Page
  • Products per page
  • Product detail page

Products by Brand

Products List

Display list of products, for example products on sale, etc.. Parameters:

  • Limit of products
  • Order By
  • Sort ASC or DESC
  • On Sale Only
  • Product detail page

Products List

Product Detail

Display detail of product. Parameters:

  • URL Slug
  • Brand page - List of products by brand

Products Detail

My Orders (Registered user)

Display list of my orders. You have to installed RainLab User plugin. Parameters:

  • URL Page number
  • Orders per page
  • My Order Detail Page

My Orders

My Order Detail (Registered user)

Display detail of my order. Parameters:

  • URL Order ID
  • Product detail page

My Order Detail

Basket

Basket is main component make all operation from add product to basket to finish (pay) order. The best solution is have it on the layout.

All operation is based on Ajax. Parameters:

  • ID Element Total Cart Price - This Element will be refresh after Ajax call - add product, etc.. (start with #)
  • ID Element Wrapper Basket Component - This Element will be refresh after ajax call - change quantity, etc.. (start with #)
  • Product detail page

Basket

Basket have 4 steps (views) and this steps are changed via Ajax call. If you want change components view, you have to implement your own Ajax controller.

Default Controllers

  • onRunBasket - show first page on basket
  • onRunBasketShippingPayment - show page for select shipment and payment methods
  • onRunBasketAddress - show page for add billing and delivery address
  • onRunBasketSummary - show summary page
  • onCompleteOrder - show thank you page

For developers - if you can use basket model, you can call getSessionBasket() method. All views for basket you can find here: /jkshop/components/partials/

Brand Detail

Display detail of brand. Parameters:

  • URL Slug

Brand Detail

Brands List

Display list of brands. Parameters:

  • URL Page
  • Brands per page
  • Order By Title or Slug
  • Sort ASC or DESC
  • On Sale Only
  • Brand detail page

Brands List

Breadcrumbs Category

Display Breadcrumbs for Categories. Parameters:

  • URL Slug Category

Breadcrumbs Category

Breadcrumbs Product

Display Breadcrumbs for Product Categories. Parameters:

  • URL Slug Product
  • URL Slug Category
  • Products Category page

Breadcrumbs Product

  • Found the plugin useful on 16 Jun, 2017

    Great commerce library! All the base functionality in play & well developed!

  • Found the plugin useful on 8 Jun, 2017

    A really good plugin, but need some love :) I agree on what Ramon Marti and Devin Green are saying, but i definitly recommend this plugin!

  • Found the plugin useful on 22 May, 2017

    This plugin is actually pretty awesome. The only thing I would change is the hard coded stuff in the code. A lot of the stuff that I needed to do with this plugin is hard coded and should be coded with a way to put it inside a partial and duplicate it so when the plugin updates, it doesn't shift the entire project (e.g. having to update the code after each update)

    4 out of 5 for me :)

  • Found the plugin useful on 30 Dec, 2016

    Very well done, well documented.

    The negative Things I found:

    • There are still old code "corpses" from the rainlab.blog.plugin
    • The new payment gateways have a major flaw, if you have the URL you can pay any order with it, even though you already received payment and/or it wasn't the payment gateway you chose.

    Because of this:

    • You can pay without being logged in
    • You can pay orders of other customers
    • You can pay the same order multiple times
    • If you leave the page the order status doesn't change to cancelled

    As an example: Click this link http://www.jkshopdemo.jiri-octobercms.com/custom-payment-stripe-checkout/463

    Just change the order number and voila you can pay another customers order.

    I know it is designed as an example and we should make our own gateways but I just thought I'll let you know.

  • Found the plugin useful on 1 Oct, 2016

    Great plugin. Lots of options. Took it for a first project. Need to have an option to choose tabs. TOO much and very lots are not in use.

  • Found the plugin useful on 8 Sep, 2016

    I think this plugin is amazing! It has a lot of features and briliant support from author. 5 stars review for that plugin :)

  • Found the plugin useful on 6 Sep, 2016

    Great Plugin! Easy to use and with a lots of features!!! Great work!

  • Found the plugin useful on 16 Jun, 2016

    updated quickly!

  • Found the plugin useful on 15 May, 2016

    A really good plugin! The coding is excellent! I hope that it will grow.

1.6.10

Update vendors (dompdf, omnipay, etc..), small fixes

Nov 06, 2017

1.6.9

Fixed Payment Gateway component issue - https://octobercms.com/plugin/support/jiri-jkshop/error-onpaymentsubmit

Jul 21, 2017

1.6.8

Fixed new installation issue

Jun 12, 2017

1.6.7

Add coupon - coupon_wrong_code update - error message about validation it shown only once

Jun 10, 2017

1.6.6

Add: Dutch translation (thanks Jeroen)

Jun 10, 2017

1.6.5

Orders: add security token - which allow to generate unique URL for a payment pages

Jun 10, 2017

1.6.4

Backend - Products: Add checkboxes, Add multi delete, Add multi duplicate

Jun 10, 2017

1.6.3

Fixed DB error - installation on PostgreSQL

Jun 10, 2017

1.6.2

Update: Italian translation

Jun 10, 2017

1.6.1

Add some features into basket and product details components: allow to add product into basket with qty and etc..

Apr 04, 2017

1.6.0

Add Extended Inventory Management. OrderStatus - add new fields: disallow for gateway, qty decrease, qty increase back

Jan 23, 2017

1.5.9

Add security checks for payment components

Jan 23, 2017

1.5.8

Add: French translation (thanks Théo Corée)

Jan 23, 2017

1.5.7

Small fixes: Product Detail component fixed URL for accessories and featured products

Jan 02, 2017

1.5.6

Small fixes: Product Detail component fixed URL for accessories and featured products; Fixed DB error on some MySQL databases

Jan 02, 2017

1.5.5

Add payment gateways: TwoCheckoutPlus, TwoCheckoutPlus_Token

Jan 02, 2017

1.5.4

Upgrade: Omnipay payment gateways, Small Fixes in Components

Dec 12, 2016

1.5.3

Basket Component: added method 'onGetSessionBasket' - now you can easy call this method and get complete basket as JSON

Nov 23, 2016

1.5.2

Small security fixes: MyOrderDetail component, MyOrders component - if user or id order is bad, return 404, Add Foreign keys

Nov 20, 2016

1.5.1

Basket component: moved htm files into basket folder, for easy overriding. Payment Gateways: gateway title is translatable.

Nov 14, 2016

1.5.0

Check upgrade guide before upgrading: Add payment gateways, remove previous payment system (https://octobercms.com/plugin/jiri-jkshop#upgrade)

Nov 13, 2016

1.4.7

Component BreadcrumbsProduct - fix URL

Nov 01, 2016

1.4.6

Add Components: BreadcrumbsCategory, BreadcrumbsProduct

Nov 01, 2016

1.4.5

Small Fix in Coupons - datepicker issue

Nov 01, 2016

1.4.4

Add Components: BrandDetails, BrandsList. Thanks to Nick Gavanozov

Oct 30, 2016

1.4.3

Add: German translation

Oct 30, 2016

1.4.2

Increased character limits (name, title, etc.) to 255

Oct 30, 2016

1.4.1

Small Fixes in Coupons

Oct 13, 2016

1.4.0

Coupons - discount coupons (https://octobercms.com/plugin/jiri-jkshop#Coupons)

Oct 13, 2016

1.3.2

Fix name of Users without surname

Oct 02, 2016

1.3.1

Small Fixes

Sep 25, 2016

1.3.0

Added translation support

Aug 29, 2016

1.2.4

Fix: order list - order by order status

Aug 21, 2016

1.2.3

Small fixes and improvements: add some language texts, page 404 for non-existent slug - products, categories, brands

Aug 11, 2016

1.2.2

Add: Settings - default image; Rainlab.User: save billing and delivery address into user; Products Components - add or extend order by

Jul 10, 2016

1.2.1

Add: Czech translation

Jun 29, 2016

1.2.0

Add: Stripe payment gateway

Jun 19, 2016

1.1.4

Add: Order - tracking number for tracking package

Jun 14, 2016

1.1.3

Fix: Advanced Properties - Options - Order by

Jun 13, 2016

1.1.2

Add: Product - Advanced Properties ( You can add property options with pivot data: title, description, price difference, image ); Update Components: Basket, Product Detail

Jun 13, 2016

1.1.1

Add: Order - note, county; New page variables for components (Products By Category, Products By Brand)

Jun 05, 2016

1.1.0

Properties - product properties: sizes, colors, etc.. (https://octobercms.com/plugin/jiri-jkshop#Properties)

May 27, 2016

1.0.15

Fix: Carrier - free shipping; Add: Italian translation

May 23, 2016

1.0.14

Fixes: Order detail - names on list of customers, Orers list - little UI bug

May 22, 2016

1.0.13

Orders - fix search, add hidden fields into order list (Email, Phone, First name, Address, Postcode, City, Country), all fields are searchable

May 18, 2016

1.0.12

Automatic rounding into order total price - Paypal allow max 2 decimal places

May 15, 2016

1.0.11

Backend - language files [EN], Fixes: Links featured + accesories, Basket - work with product minimum quantity, Complete Order - check stock before order

May 15, 2016

1.0.10

Fixes

May 12, 2016

1.0.9

First Release

May 11, 2016

1.0.8

Add support RainLab.User (sale for category, individual prices)

May 11, 2016

1.0.7

Add orders

May 11, 2016

1.0.6

Add Products

May 11, 2016

1.0.5

Add Order Statuses

May 11, 2016

1.0.4

Add Carriers

May 11, 2016

1.0.3

Add Taxes

May 11, 2016

1.0.2

Add brands

May 11, 2016

1.0.1

First version of JK Shop

May 11, 2016

Version 1.5.0 Add payment gateways, remove previous payment system

Old payment system was removed:

  • change Basket component
  • disabled payment setting (Cash on delivery, Bank transfer, Paypal, Stripe)

Add payment gateways

all removed function can be replaced by this new system, for easier upgrade are prepared this components:

  • Custom Payment Cash On Delivery - Custom payment component cash on delivery
  • Custom Payment Paypal IPN - Custom payment gateway by the IPN validation
  • Custom Payment Stripe Checkout - Custom payment gateway stripe implementation use one page checkout.

And if you need more informations you can visit LIVE demo site this www.jkshopdemo.jiri-octobercms.com/backend with correct set up a few payment gateways.