What are Webhooks in Magento 2
Discover webhooks in Magento 2: a powerful tool to reduce manual workload for business owners. Learn how they work, their key features, and easy configuration tips.
Cookies help us enhance your experience on our site by storing information about your preferences and interactions. You can customize your cookie settings by choosing which cookies to allow. Please note that disabling certain cookies might impact the functionality and features of our services, such as personalized content and suggestions. Cookie Policy
Cookie PolicyThese cookies are strictly necessary for the site to work and may not be disabled.
InformationThese cookies are strictly necessary for the site to work and may not be disabled.
Cookie name | Description | Lifetime | Provider |
---|---|---|---|
_ce.clock_data | Store the difference in time from the server's time and the current browser. | 1 day | Crazy Egg |
_ce.clock_event | Prevent repeated requests to the Clock API. | 1 day | Crazy Egg |
_ce.irv | Store isReturning value during the session | Session | Crazy Egg |
_ce.s | Track a recording visitor session unique ID, tracking host and start time | 1 year | Crazy Egg |
_hjSessionUser_2909345 | Store a unique user identifier to track user sessions and interactions for analytics purposes. | 1 year | HotJar |
_hjSession_2909345 | Store session data to identify and analyze individual user sessions. | 1 day | HotJar |
apt.uid | Store a unique user identifier for tracking and personalization. | 1 year | Mageplaza |
cebs | Store user preferences and settings. | Session | Mageplaza |
cf_clearance | Store a token that indicates a user has passed a Cloudflare security challenge. | 1 year | Cloudflare |
crisp-client | The crisp-client/session cookie is used to identify and maintain a user session within the Crisp platform. It allows the live chat system to recognize returning users, maintain chat history, and ensure continuity in customer service interactions. | Session | Crisp |
_ga | Store a unique client identifier (Client ID) for tracking user interactions on the | 2 years | |
_ga_7B0PZZW26Z | Store session state information for Google Analytics 4. | 2 years | |
_ga_JTRV42NV3L | Store session state information for Google Analytics 4. | 2 years | |
_ga_R3HWQ50MM4 | Store a unique client identifier (Client ID) for tracking user interactions on the website. | 2 years | |
_gid | Store a unique client identifier (Client ID) for tracking user interactions on the website. | 1 day | |
_gat_UA-76130628-1 | Throttle the request rate to Google Analytics servers. | 1 day |
Advertising cookies deliver ads relevant to your interests, limit ad frequency, and measure ad effectiveness.
InformationAdvertising cookies deliver ads relevant to your interests, limit ad frequency, and measure ad effectiveness.
Cookie name | Description | Lifetime | Provider |
---|---|---|---|
_gcl_au | The cookie is used by Google to track and store conversions. | 1 day | |
__Secure-3PAPISID | This cookie is used for targeting purposes to build a profile of the website visitor's interests in order to show relevant and personalized Google advertising. | 2 years | |
HSID | This security cookie is used by Google to confirm visitor authenticity, prevent fraudulent use of login data and protect visitor data from unauthorized access. | 2 years | |
__Secure-1PSID | This cookie is used for targeting purposes to build a profile of the website visitor's interests in order to show relevant and personalized Google advertising. | 2 years | |
SID | This security cookie is used by Google to confirm visitor authenticity, prevent fraudulent use of login data and protect visitor data from unauthorized access. | 2 years | |
APISID | This cookie is used by Google to display personalized advertisements on Google sites, based on recent searches and previous interactions. | 2 years | |
__Secure-1PAPISID | This cookie is used for targeting purposes to build a profile of the website visitor's interests in order to show relevant and personalized Google advertising. | 2 years | |
__Secure-3PSID | This cookie is used for targeting purposes to build a profile of the website visitor's interests in order to show relevant and personalized Google advertising. | 2 years | |
SSID | This cookie is used by Google to display personalized advertisements on Google sites, based on recent searches and previous interactions. | 2 years | |
SAPISID | This cookie is used by Google to display personalized advertisements on Google sites, based on recent searches and previous interactions. | 2 years | |
__Secure-3PSIDTS | This cookie collects information about visitor's interactions with Google services and ads. It is used to measure advertising effectiveness and deliver personalised content based on interests. The cookie contains a unique identifier. | 2 years | |
__Secure-1PSIDTS | This cookie collects information about visitor's interactions with Google services and ads. It is used to measure advertising effectiveness and deliver personalised content based on interests. The cookie contains a unique identifier. | 2 years | |
SIDCC | This security cookie is used by Google to confirm visitor authenticity, prevent fraudulent use of login data, and protect visitor data from unauthorized access. | 3 months | |
__Secure-1PSIDCC | This cookie is used for targeting purposes to build a profile of the website visitor's interests in order to show relevant and personalized Google advertising. | 1 year | |
__Secure-3PSIDCC | This cookie is used for targeting purposes to build a profile of the website visitor's interests in order to show relevant and personalized Google advertising. | 1 year | |
1P_JAR | This cookie is a Google Analytics Cookie created by Google DoubleClick and used to show personalized advertisements (ads) based on previous visits to the website. | 1 month | |
NID | Show Google ads in Google services for signed-out users. | 6 months |
Analytics cookies collect information and report website usage statistics without personally identifying individual visitors to Google.
InformationAnalytics cookies collect information and report website usage statistics without personally identifying individual visitors to Google.
Cookie name | Description | Lifetime | Provider |
---|---|---|---|
_dc_gtm | Manage and deploy marketing tags through Google Tag Manager. | 1 year | |
1P_JAR | Gather website statistics and track conversion rates for Google AdWords campaigns. | 1 month | |
AEC | 1 month | ||
ar_debug | Debugging purposes related to augmented reality (AR) functionalities. | 1 month | Doubleclick |
IDE | The IDE cookie is used by Google DoubleClick to register and report the user's actions after viewing or clicking on one of the advertiser's ads with the purpose of measuring the effectiveness of an ad and to present targeted ads to the user. | 1 year | Doubleclick |
ad_storage | Enables storage, such as cookies (web) or device identifiers (apps), related to advertising. | 1 year | |
ad_user_data | Sets consent for sending user data to Google for online advertising purposes. | 1 year | |
ad_personalization | Sets consent for personalized advertising. | 1 year | |
analytics_storage | Enables storage, such as cookies (web) or device identifiers (apps), related to analytics, for example, visit duration. | 1 year |
Vinh Jacker | 09-09-2024
Adding a custom amount with PayPal Express Checkout in Magento 2 is essential when you want to charge extra fees or offer discounts based on specific conditions. This might include applying a handling fee, gift wrapping charge, or promotional discount.
In this article, we’ll explore two effective methods to add custom amount with PayPal express checkout in Magento 2: overriding the payment model and using an observer to customize the amount.
First of all, you need a registered module. Then, to add the amount with PayPal Express Checkout in Magento 2, follow these steps with 2 methods.
Create file app/code/Vendor/Module/etc/di.xml
Add the following content to di.xml:
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<preference for="Magento\Paypal\Model\Express\Checkout" type="Vendor\Module\Model\PayPal\Express\Checkout"/>
</config>
Create file app/code/Vendor/Module/Model/PayPal/Express/Checkout.php
Add the below-mentioned code:
<?php
namespace Vendor\Module\Model\PayPal\Express;
class Checkout extends \Magento\Paypal\Model\Express\Checkout
{
public function start(
$token,
$returnUrl,
$cancelUrl,
$customerId = null,
$cartId = null
) {
// Customize the amount here
$this->_quote->setBaseGrandTotal($customAmount);
$this->_quote->setGrandTotal($customAmount);
// Call parent method
return parent::start($token, $returnUrl, $cancelUrl, $customerId, $cartId);
}
}
Run the following commands to clear cache and Di Compile:
bin/magento c:f
bin/magento s:d:c
Create file app/code/Vendor/Extension/etc/events.xml
Add the following content to events.xml:
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Event/etc/events.xsd">
<event name="paypal_express_checkout_prepare_line_items">
<observer name="vendor_extension_add_custom_fee" instance="Vendor\Extension\Observer\AddCustomFee"/>
</event>
</config>
Create file app/code/Vendor/Extension/Observer/AddCustomFee.php
Run the below code to clear cache and Di Compile:
php bin/magento c:f
php bin/magento s:d:c
<?php
namespace Vendor\Extension\Observer;
use Magento\Framework\Event\Observer;
use Magento\Framework\Event\ObserverInterface;
class AddCustomFee implements ObserverInterface
{
/**
* Execute observer
*
* @param Observer $observer
* @return void
*/
public function execute(Observer $observer)
{
/** @var \Magento\Payment\Model\Cart $cart */
$cart = $observer->getEvent()->getCart();
$customAmount = 100; // Set your custom amount here
$cart->addCustomItem(__('Custom Amount'), 1, -1.00 * $customAmount, 'customfee');
}
}
By following either of these methods, you can successfully add custom amounts with PayPal Express Checkout in Magento 2. Remember to thoroughly test your implementation to ensure accurate calculations and a seamless checkout experience for your customers.
Related Posts:
How To Install And Configure PayPal For Shopware Store
With over a decade of experience crafting innovative tech solutions for ecommerce businesses built on Magento, Jacker is the mastermind behind our secure and well-functioned extensions. With his expertise in building user-friendly interfaces and robust back-end systems, Mageplaza was able to deliver exceptional Magento solutions and services for over 122K+ customers around the world.
Related Post
What are Webhooks in Magento 2
Discover webhooks in Magento 2: a powerful tool to reduce manual workload for business owners. Learn how they work, their key features, and easy configuration tips.
Discover Shopify App Store – A Comprehensive Handbook 2024
Explore the Shopify App Store for tailored solutions to grow your business. Discover your perfect app today!
Top 10+ Shopify Store Name Generators: Ultimate Review Guide
By exploring the top 10+ Shopify store name generators, we aim to help you create unique and meaningful store names.
Should I Hire A Shopify Expert? Reasons, How-tos
This article will focus on the question “Should I hire a Shopify expert?”, unlock major reasons & practical tips to find the perfect fit for your business.
How to Make FAQ Page Shopify For SEO: A Comprehensive Guide
Confused by customer questions? This article aims to guide you how to make faq page Shopify that saves your time and boosts sales.
What are Webhooks in Magento 2
Discover webhooks in Magento 2: a powerful tool to reduce manual workload for business owners. Learn how they work, their key features, and easy configuration tips.
Discover Shopify App Store – A Comprehensive Handbook 2024
Explore the Shopify App Store for tailored solutions to grow your business. Discover your perfect app today!
Top 10+ Shopify Store Name Generators: Ultimate Review Guide
By exploring the top 10+ Shopify store name generators, we aim to help you create unique and meaningful store names.
Should I Hire A Shopify Expert? Reasons, How-tos
This article will focus on the question “Should I hire a Shopify expert?”, unlock major reasons & practical tips to find the perfect fit for your business.
How to Make FAQ Page Shopify For SEO: A Comprehensive Guide
Confused by customer questions? This article aims to guide you how to make faq page Shopify that saves your time and boosts sales.
Make sure your store is not only in good shape but also thriving with a professional team yet at an affordable price.
Get Started