Author Archives: samir

Rounding up Order total using X-Feepro

If you want to round up the final using X-Feepro, you have to do following:

  1. You must set the `Sort Order` value to X-Feepro to a value that is closer to `Total` so that X-Feepro displays just before the final Total

2. Now Create a Fee/Discount and name it whatever you want e.g. Rounding Up

3. In the `Price-Setting` tab, On the Final Equation Field, Enter following Equation:

{roundedGrandTotal} – {grandTotal} > 0 ? {roundedGrandTotal} – {grandTotal} : ({grandTotal} – {roundedGrandTotal}) * -1

Displaying a form created with x-form via Design -> Layout

Unfortunately, it is not possible to add the form directly from the Design -> layout.

But here is a workaround:

1. First, copy the iframe code of a form from the form Setting -> Shorcode/Url tab

2. Now add an `HTML Content` module from Extension -> Modules -> Html Content

3. Please click the `Code View` icon to switch into `Code mode` and paste the copied iframe code

4. Now You can add this module from Design -> Layout

Cookie Consent By X-Notice

Here are the steps:

  1. X-Notice -> Global Setting -> Integration, On the field `Custom CSS`, enter following CSS:
.cookie-consent {
    background-color: #f2f2f2;
    color: #111;
    padding: 0px 15px 5px 15px;
    bottom: 10px;
    position: fixed;
    z-index: 10000;
    margin: 0 15px;
    border-radius: 5px;
   border: 1px solid #ddd;
}
button.xnotice-close {
    display: block;
    float: right;
    margin-top: 5px;
    background: #21ab0a;
    border: 1px solid #21ab0a;
    padding: 4px 15px;
    color: #fff;
    border-radius: 3px;
}

2. Now Create a new notice and enter the consent text. For example:

<h3>We use cookies</h3>
We use cookies and other tracking technologies to improve your browsing experience on our website, to show you personalized content and targeted ads, to analyze our website traffic, and to understand where our visitors are coming from.

<div class="consent-btns">
<button class="xnotice-dissent" onclick="consentClose()">I do not accept</button><button class="xnotice-close">I accept</button>
</div>

3. Under the `Notice Setting tab, Select the `Display Type to `Sticky`

4. Tick the checkbox `Don’t show once closed`

5. Pick the `Token Storage Type to `Cookie`

6. On the Custom Layout Field, enter following custom layout

<div {attr}  class="cookie-consent">{notice}</div>

7. On the `Custom Javascript` field, enter following:

var  consentClose = function() {
       location = "about:blank";                  
 }
window.consentClose = consentClose;

8. Now click `Click and Stay` button and that’s all.

X-Feepro Vs X-Discount

Both are independent modules and has a different purpose.
X-Fee/Discount Pro is an `Order total` module that deals with shopping cart products and their values like cart weight, cart quantity, etc.  This fee/discount will appear on the `Order Total Section`. You can create a discount/fee based on the various parameters with it. For example, Payment processing fee, any surcharge, etc. Also, you can create Order discounts based on the various cart parameters.

image.png

On the contrary, `X-Discount/Special Price` is intended to creating a product special price and quantity discount. It works exactly the same as the OC default Special Price and Quantity discount but it gives an option to control special price and qty disocunt from a single place in a convenient way.

image.png

In a nutshell, X-Feepro is intended to create an Order Discount/Fee and X-Discount is intended to create a Product discount.

How to overwrite the default contact us form with a form created by xform?

You will have to do the following steps if you want to overwrite the default contact form with a form created by xform.

  • Please navigate to X-Form and click the Cog icon of the form you want to overwrite with.
  • Now navigates to the Integration tab. Tick the checkbox Enable For Layout Position
  • On the Custom CSS section, add the following CSS rules
#information-contact form.form-horizontal {
    display: none;
}
#information-contact h2 {
   display: none;
}
  • Click the Save and Continue button to store the changes.
  • Now navigate to Design -> Layout, Now edit Contact Layout. Finally, add the Form under the X-Form to the Content Bottom position.

That’s all.

How to sum the cost up of the two methods?

To sum up the cost of several methods, you can use the Grouping Option. Here are the steps to be followed:

  1. Go to X-Shippingpro -> Global setting -> Grouping, Now select a group e.g. Group1 to SUM

2. Now we have a group1 and we have to assign group method/member for this group.

3. To assign a method into a group, go to the general tab of a method, select the Group to Group1.

4. When X-Shippingpro finds several methods belongs to the same group during checkout,  X-Shippingpro takes the appropriate action and shows one method instead of showing them all.

For example, you have a `Method-1` and `Method-2` methods.  If customer want to purchase only from the `Method-2` or `Method-2`, group mode will not come into action. 

But when a customer wants to purchase from both `Method-1` and `Method-2`, it meets the group criteria and grouping will come into action. So shipping cost will be summed up and it displays the summed cost instead of showing separately.

Custom Age Verification Example

To integrate the custom verification popup, first copy the Layout html and paste in the field Custom layout and copy the Required CSS and paste in the field Custom CSS

Example -1

Required Layout

<div class="rps-wrapper">
<div class="rps-title">{title}</div>
<div class="rps-description">{description}</div>
<div class="rps-form">{form}</div>
<div class="rps-action">{close}{submit}</div>
</div>

Required CSS

.rps-wrapper {
    padding: 20px;
}
.rps-title {
    text-align: center;
    font-size: 25px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #dedede;
}
.rps-action {
    margin: 10px auto;
    text-align: center;
}
.rps-action button {
    padding: 10px 50px;
    margin-right: 5px;
    font-size: 15px;
    text-transform: uppercase;
    outline: 0;
}
button.rps-action.rps-no {
    background: #dcdcdc;
    border: 1px solid #dcdcdc;
}
button.rps-action.rps-yes {
    background: #68bb40;
    color: #fff;
    border: 1px solid #3da20d;
    outline: 0;
}

Example -2

Please must enter Popup width to 680 and Popup Max Height to 0 for this layout

Required Layout

<div class="rps-wrapper">
    <img src="https://opencartmart.com/image/rps.jpg" />
     <div class="rps-info">
        <div class="rps-title">{title}</div>
        <div class="rps-description">{description}</div>
        <div class="rps-form">{form}</div>
       <div class="rps-action">{close}{submit}</div>
     </div>
</div>

Required CSS

.rps-wrapper {
    padding: 20px;
}
.rps-wrapper img {
    width: 300px;
    float: left;
    height: 300px;
}
.rps-info {
    width: 48%;
    float: left;
    margin-left: 15px;
}
.rps-title {
    text-align: center;
    font-size: 25px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #dedede;
}
.rps-action {
    margin: 10px auto;
    text-align: center;
}
.rps-action button {
    padding: 10px 40px;
    margin-right: 5px;
    font-size: 15px;
    text-transform: uppercase;
    outline: 0;
}
button.rps-action.rps-no {
    background: #dcdcdc;
    border: 1px solid #dcdcdc;
}
button.rps-action.rps-yes {
    background: #68bb40;
    color: #fff;
    border: 1px solid #3da20d;
    outline: 0;
}
@media only screen and (max-width: 768px) {
    .rps-wrapper img {
        width: 100%;
        float: none;
        height: auto;
    }
    .rps-info {
        width: 100%;
        float: none;
        margin-left: 0;
        margin-top: 15px;
    }
}

Example – 3

Required Layout

<div class="rps-wrapper">
<div class="rps-title">{title}</div>
<div class="rps-description">{description}</div>
<div class="rps-action">{close}{submit}</div>
</div>

Required CSS


.ocm-popup-body {
    background: rgb(10 10 10 / 70%) !important;
}
.ocm-popup-wrapper {
   background: rgba(0, 0, 0, 0.1) !important;
}
.rps-wrapper {
    padding: 20px;
}
.rps-title {
    text-align: center;
    font-size: 30px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    color: #fff;
    text-transform: uppercase;
    margin-top: 15px;
}
.rps-description {
    font-size: 14px;
    color: #eaeaea;
}
.rps-action {
    text-align: center;
   margin: 15px 0px 5px 0px;
}
.rps-action button {
    padding: 10px 50px;
    margin-right: 5px;
    font-size: 15px;
    text-transform: uppercase;
    outline: 0;
     color: #fff;
}
button.rps-action.rps-no {
    background: #dc1010;
    border: 1px solid #dc1010;
}
button.rps-action.rps-yes {
    background: #68bb40;
    border: 1px solid #3da20d;
    outline: 0;
}

Creating Complex Discount using X-Feepro Equation

Buy two and get third one free.

  • In the price-setting tab, Select the Fee/Discount By to Quantity
  • Now add a quantity range as like the screenshot

  • On the Final Equation field, please enter one of the following equations

If you want to apply the discount to the least expensive product,

-{priceAscByNoOfBlock}

If you want to apply the discount to the average price of the products,

-({subTotalAsPerProductRule}/{quantityAsPerProductRule}) * {noOfBlock}

If you want to apply a discount equal to the lowest product price,

-{lowest} * {noOfBlock}

That’s all

Buy two at a fixed cost of $100

  • In the price-setting tab, Select the Fee/Discount By to Quantity
  • Now add a quantity range as follows as like the screenshot
  • On the Final Equation field, please enter the following equation

{noOfBlock} * 100 – {blockPriceAsc}

That’s all

10% Discount on all products when purchase quantity > 2

  • In the price-setting tab, Select the Fee/Discount By to Flat Amount
  • On the Final Equation field, please enter the following equation

@{anyProductQuantity} >= 2 ? -{anyProductPrice} * {anyProductQuantity} * 0.1 : 0

That’s all

(P.S: if you find any problem, please replace the dash with a minus sign in the equation as HTML replaces the minus sign to a dash that may cause a problem)

Examples of X-Combination

Example 1: Buy two and get one free to specific Categories

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose the applicable categories
  3. Enter The number of purchases required of a product to 2

That’s all.


Attention

The number of purchases required of a product represents the minimum quantity of a single product that is required to purchase to avail offer. For example, if you enter The number of purchases required of a product to 2, that indicates the minimum quantity of a particular product is 2. It does NOT mean any two items out of any products of the given categories. Please check example 2 that is different than example 1 .

Example 2: Buy ANY two from category A and get one free

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose category A and Enter The number of purchases required of a product to 1
  3. In the Product Combination tab, click the Add Category button and choose category A and Enter The number of purchases required of a product to 1
  4. Under the Offer Products tab, Enter Number of offer products to 1
  5. Under the Offer Products tab, define the offers products you want to pick out one of them. To add Offer products, simply click the button Add offer products and choose the applicable products.

That’s all.

Note: Please check the step 2 and 3, I have added the same steps twice that indicate one item of any product of Category A and another item of any products of category A as well. So it will give the freedom to customers to pick any two items from any number of products of category A.

Example 3: Buy two from category A or B and get one free

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose category A, B and Enter The number of purchases required of a product to 2
  3. Under the Offer Products tab, enter Number of offer products to 1
  4. Under the Offer Products tab, define the offers products you want to pick out one of them. To add Offer products, simply click the button Add offer products , and choose the applicable products.

That’s all.

Note: This indicates the offer is valid to the products of category A and B. The minimum purchase required of each product is 2.

Example 4: Buy ANY two from category A or B and get one free

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose category A, B and Enter The number of purchases required of a product to 1
  3. In the Product Combination tab, click the Add Category button and choose category A, B and Enter The number of purchases required of a product to 1
  4. Under the Offer Products tab, enter Number of offer products to 1
  5. Under the Offer Products tab, define the offers products you want to pick out one of them. To add Offer products, simply click the button Add offer products , and choose the applicable products.

That’s all.
[Similar to example 2]

Example 5: Buy one from category A and two from category B and get one discounted products.

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose category A and Enter The number of purchases required of a product to 1
  3. In the Product Combination tab, click the Add Category button and choose category B and Enter The number of purchases required of a product to 2
  4. Under the Offer Products tab, enter Number of offer products to 1
  5. Under the Offer Products tab, define the offers products you want to pick out one of them. To add Offer products, simply click the button Add offer products , and choose. Finally, adjust the discount amount you want to offer.

Example 6: Buy two and get 50% discount of one product to specific Categories

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose the applicable categories
  3. Enter The number of purchases required of a product to 2
  4. Under the Offer Products tab, Enter discount amount to 50%

That’s all.

Example 7: Buy One and get two free to specific Categories

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose the applicable categories
  3. Enter The number of purchases required of a product to 1
  4. Under the Offer Products tab, enter Number of offer products to 2

That’s all.

Example 8: Buy two from category A and pick a gift products from X, Y and Z

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose the category A
  3. Enter The number of purchases required of a product to 2
  4. Under the Offer Products tab, enter Number of offer products to 1
  5. Under the Offer Products tab, pick Select offer products type to Define offer products.
  6. Then click the Add offer Products button and choose the products X, Y, and Z.
  7. Finally, you can adjust the discount amount in percentage or a flat amount for each offered product.

That’s all.

Example 9: Buy One from category A and One from Brand B and pick a gift product from X, Y, and Z

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose the category A and Enter The number of purchases required of a product to 2
  3. In the Product Combination tab, click the Add Manufacturer button and choose the manufacturer B and Enter The number of purchases required of a product to 2
  4. Under the Offer Products tab, enter Number of offer products to 1
  5. Under the Offer Products tab, pick Select offer products type to Define offer products.
  6. Then click the Add offer Products button and choose the products X, Y, and Z.
  7. Finally, you can adjust the discount amount in percentage or a flat amount for each offered product.

That’s all.

Example 10: Buy two of a product regardless of the options, get one free.

  1. Create a new combination
  2. In the Product Combination tab, click the Add Product button and choose the applicable Products and Enter The number of purchases required of a product to 1
  3. In the Product Combination tab, click the Add Product button and choose the same products you’ve chosen above and Enter The number of purchases required of a product to 1
  4. Under the Offer Products tab, enter Number of offer products to 1
  5. Under the Offer Products tab, pick Select offer products type to Same as the purchased products.

That’s all.

Example 11: Buy two Large Pizza, get one Small pizza free.

Note: Large and Small represent the OC options

  1. Create a new combination
  2. In the Product Combination tab, click the Add Category button and choose the category Pizza and Enter The number of purchases required of a product to 1
  3. In the Product Combination tab, click the Add Category button and choose the category Pizza and Enter The number of purchases required of a product to 1
  4. In the Product Combination tab, click the Add Option button and choose the options Large and Enter The number of purchases required of a product to 0
  5. Under the Offer Products tab, enter Number of offer products to 1
  6. Under the Offer Products tab, pick the Select offer products type to Same as the purchased products.
  7. Under the the Offer Products tab, select the Discount on option price to Discount on some option price. Then choose the option Small

Note: Step 2 and Step 3 ensures the number of purchase required is two and it could be any two items from the category Pizza. The step-3 will make sure that the product must have the option `Large. We don't need to provide any quantity here. The module automatically would make sure the corresponding options were chosen if it sees the quantity for the option rule as 0.

That’s all.

How to integrate Web Money in X-Payment

You can integrate Web money in xpayment in following ways:

  1. Create a new payment method in x-payment
  2. On the General setting, Choose your Order status that you want to apply when the purchase is successful.
  3. On the integration tab, Select Integration Type “Redirect/Forward to Payment URL
  4. Enter URL to redirect is: https://merchant.wmtransfer.com/lmi/payment_utf.asp
  5. Select Method Type: POST
  6. On the Data(s) field, enter following JSON data and adjust your LMI_PAYEE_PURSE accordingly.
{
    "LMI_PAYEE_PURSE" : "ADD_YOUR_PAYEE_PURSE",
    "LMI_PAYMENT_DESC" : "Payment to {storeName}",
    "LMI_PAYMENT_NO" : "{orderId}",
    "LMI_PAYMER_EMAIL": "{email}",
    "LMI_PAYMENT_AMOUNT" : "{orderTotal}",
    "LMI_SUCCESS_URL" : "{returnURL}",
    "LMI_FAIL_URL": "{storeUrl}index.php?route=checkout/checkout",
    "LMI_SUCCESS_METHOD" : "POST"
}

7. On the Payment success condition field, enter the following condition:

LMI_PAYMENT_NO != ''
Complete Integration example of webmoney in X-payment

8. Please download this ocmod and install it through the extension installer and refresh your ocmod list. This is needed as WebMoney does not return to the success page properly.