Product support

Visit this product's website for support.


TPV Virtual Payment Gateway Plugin

This plugin is payment gateway addon for JKshop plugin so JKshop must be installed before that.

What is a Payment gateway?

Payment gateway or Virtual POS terminal is a technology whose main functions are to accept and process online payments being a link between a website and acquiring partner. Theoretically it is a software app that assures secure exchange of buyer´s credit card information through data encryption. The examples of this information can be credit card number, CVV, secret code for online purchases.

The term “Virtual POS” means Virtual Point of Sale, point of sale that allows online stores accepting payments on websites and provides verification of client´s card information.

Payment gateway and Virtual POS terminals accept and process the payments of all major card brands such as Visa, MasterCard, Amex, Dinners Club, JCB, Discover, Maestro and Union Pay.

In order to use payment gateway or Virtual POS terminal it is essential to have a merchant account connected to it.

Types of payment gateways

The most requested Payment gateways for online sales are:

• High and low risk POS CMS for online stores OctoberCMS. • MOTO (Mail Order/Telephone Order) processing to accept remotely card-not-present payments.
• High-risk, non-contact virtual POS terminal for recurring payments or subscriptions. • "Buy now" buttons or payment links. • POS terminal for webcam sales. • Low risk payment gateway for I.V.R. (interactive voice response system). • High risk POS terminal for proxy reservations.

Security of payment gateways

Currently, payment gateway is the most secure way to accept and process online payments. In last 5 years anti-fraud protocols incorporated and upgraded constantly by major card brands have lowered considerably the rate of fraudulent operations that take place on Internet. Now all the payment gateways that follow 3D Secure protocol request a cardholder to identify himself by introducing a unique code in order to process the payment. This code can be either sent to the cell phone of the buyer at the moment of purchase or has been given to the cardholder when he was picking up his credit card from the bank.

The merchants that are connected to payment gateways also have its numerous rules to combat online fraud. The main merchant anti-fraud rules are:

The operation is declined if the debit card doesn’t have 3D Secure mode activated. Detected transactions whose origins are historically fraudulent countries, such as Nigeria, Senegal, Ivory Coast, Guinea, Cameroon, Turkey, Ukraine, Romania, Poland, Bulgaria, Brazil get automatically blocked and declined. Simultaneous transactions from the same IP are rejected. Uses of newly created e-mails and domains raise red flag. If the buyer uses a fake billing address his payment wont be processed. When transferring suspiciously high amounts the bank might request information about the origins of funds. Invalid phone numbers get detected and verified.

Payment gateway: Advantages for online stores

Apply for a Virtual POS Terminal to accept online payments over the Internet and enjoy the following advantages:

• The virtual POS terminal or Payment gateway is the fastest online payment method. It takes from 3 days to 3 weeks, depending on whether your business activity is considered HIGH or LOW risk, to collet the revenue from the sales and have it on your bank account. • Usage of payment gateway as an online payments processing stimulates compulsory purchases. Buyers who tend to do online shopping spend less time when deciding whether they want to proceed with the purchase or not. • High level of security due to the use of SSL protocols and Fraud Scrubbing anti-fraud rules. Easy and fast refunds. Payment gateway allows returning money to the client whenever requested. Usually the client receives the money on his card in 1-3 working days. • Relatively low payment gateway fees comparing to traditional payment methods such as wire transfers, Checks or Western Union. • The integration and configuration of the payment gateway for your online store is simple and intuitive process.

Add cms page

How to get API token and API secret

  • Create your account on TPV Virtual.
  • You can also create sandbox/testing account. Requires account approval Contact us
  • After confirming your email, navigate to Dashboard > My Profile section and go to bottom of that page (see 5th screenshot) and you can see your API token and API secret.

Plugin installation

  • Go to Backend > Settings and search for Updates & Plugins and click on it. you will see a button + Install plugin so click on it and type Javier.TPVvirtual and Install plugin.

Required configuration

  • You can also see screenshots of all the below steps.

  • After installation of this plugin, go in CMS section and create a new page and put it's title = TPV virtual and url = /tpv-virtual/:slug and save it and if your website used multi-language plugin(i.e. RainLab.Translate) then make sure to save url = /tpv-virtual/:slug in all languages.

  • A component TPVvirtualPayment is automatically registered by this plugin so add this component on above cms page and save it.

  • If you open that page in file editor then code on this page should have look like this.

    title = "TPV virtual"
    url = "/tpv-virtual/:slug"
  • Now navigate to JKshop > Payment Gateways and click on + New Payment Gateway button.

  • Now on Payment Page field, select the above created CMS page.

  • Now select TPVvirtual as your payment method in Omnipay Gateway field and it will generate some dynamic fields below it.

  • Now put TPVvirtual payment API information in these dynamic fields.

  • Also select the appropriate order status for awaiting,success and cancel order field.

For developers only


  • There are 2 events fired by the plugin and you can listen them in your custom plugin in boot method of Plugin.php
  • 1) When payment successfully done

    \Event::listen('javier.tpvvirtual.payment_success', function($order,$transaction){
        //Write your code here
    Here $order will have all the order information and $transaction will have all the transaction information
  • 2) When payment cancelled

    \Event::listen('javier.tpvvirtual.payment_cancel', function($order,$transaction){
        //Write your code here
    Here $order will have all the order information and $transaction will have all the transaction information

Make it compatible with new changes in Omnipay Payment Gateway.

Mar 10, 2020


Add tpv_link_expired and tpv_transaction field in jiri_jkshop_orders table

Jul 06, 2019


Add order cancel status field in jiri_jkshop_payment_gateways table

Jul 06, 2019


Initialize plugin.

Jul 06, 2019