Where to find it:WP Admin › functions.php

Before you start

How action hooks work

What one is and how to read the list.

How action hooks work

Run your own code when something happens

What an action is. WP EasyCart tells WordPress when something happens, such as an item going into the cart or an order being updated. Your code can listen and do something at that moment. It does not change what WP EasyCart does; use a filter for that.

Where to put your code. In a small plugin or your child theme’s functions.php. Never edit the WP EasyCart files; an update would remove your change.

A first example.
add_action( 'wpeasycart_cartitem_added', 'my_cart_watcher' );
function my_cart_watcher( $tempcart_id ) { /* your code */ }

Each entry below shows the hook name, what triggers it, and the values it hands to your function, in order. If your function needs more than the first value, say how many to pass: add_action( 'hook_name', 'my_function', 10, 2 );.

Reading the list

Names, tags and where hooks fire

Names. Names start with wp_easycart_, wpeasycart_ or ec_. A name with a word in braces, such as wpeasycart_admin_order_{type}_update, stands for a family of hooks: replace the braces with the value described in the entry.

Tags. An entry with no tag is in the free WP EasyCart plugin. A PRO tag means it works only when WP EasyCart PRO is active. Other tags name the extension that provides it.

Fires in. The plugin file, and the function, where the hook is called. Use it to understand the context or to search the plugin when you need more detail. Hooks in admin screens work only in the WordPress admin.

Areas. The list is grouped by what the hook is about: cart, orders, products, admin screens and so on. Use your browser’s find box to look for a name.

💡 Note: Looking for a way to change a value instead of reacting to an event? See the WordPress Filters Reference.

The action hooks

By area

692 action hooks, grouped by what they are about.

Cart and checkout

Grouped by what they are about

55 actions

wp_easycart_abandoned_cart_captured
Fires after a new abandoned-cart record is created for a shopper’s cart session.
Parameters
$id abandoned_cart_id of the new record (int)
$row Columns written to the ec_abandoned_cart table (array)
Fires in inc/classes/core/ec_abandoned_carts.php · capture()
wp_easycart_abandoned_cart_code_minted PRO
Fires after a recovery coupon code is created for an abandoned cart and saved on its record.
Parameters
(int) $cart->abandoned_cart_id Abandoned cart id
$id Id of the new offer code
$code The coupon code string
(int) $offer->offer_id Id of the offer the code belongs to
Fires in inc/classes/core/ec_abandoned_sequence.php · code_for()
wp_easycart_abandoned_cart_coupon_applied
Fires after a recovery coupon code is applied to a restored shopper session from an abandoned-cart email link.
Parameters
$sid Cart session id the code was applied to
$code The coupon code
Fires in inc/classes/core/ec_abandoned_carts.php · apply_code_to_session()
wp_easycart_abandoned_cart_recovered
Fires when an order is matched to an open abandoned cart and the cart is marked recovered.
Parameters
(int) $row->abandoned_cart_id Abandoned cart id
$order_id Id of the order that recovered the cart
Fires in inc/classes/core/ec_abandoned_carts.php · attribute_order()
wp_easycart_abandoned_cart_restored
Fires after a shopper opens an abandoned-cart restore link and their cart session has been restored, before the redirect to the cart.
Parameters
$new New (rotated) session id
$sid Session id from the restore link
$coupon Coupon code from the link, or an empty string
Fires in inc/classes/core/ec_abandoned_carts.php · restore_session()
wp_easycart_abandoned_cart_step_sent PRO
Fires after a step of the abandoned-cart reminder sequence has been sent and the cart record advanced.
Parameters
(int) $cart->abandoned_cart_id Abandoned cart id
$n Sequence step number that was sent
$coupon Coupon details included in the email (array with a code), or empty
Fires in inc/classes/core/ec_abandoned_sequence.php · send_step()
wp_easycart_abandoned_cart_unsubscribed
Fires when a shopper’s email is unsubscribed from abandoned-cart reminders, only if it was not already suppressed.
Parameters
(int) $id Abandoned cart id used to unsubscribe
$row->email Email address unsubscribed
Fires in inc/classes/core/ec_abandoned_carts.php · unsubscribe()
wp_easycart_abandoned_cart_updated
Fires after an existing abandoned-cart record is updated with a fresh snapshot of the shopper’s cart.
Parameters
$id abandoned_cart_id (int)
$row Columns just written; status, sequence_step and next_send_at only when they changed (array)
Fires in inc/classes/core/ec_abandoned_carts.php · capture()
wp_easycart_cart_after_checkout_button
Fires on the cart page right after the checkout button, before the continue shopping area.
Parameters
$this The cart page object (classic cart), or the cart page object in the v2 cart template.
Fires in design/layout/base-responsive-v3/ec_cart.php +1 more place
wp_easycart_cart_before_continue_shopping
Fires on the cart page right before the Continue Shopping button.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart.php +1 more place
wp_easycart_cart_link_deleted
Fires after a cart link and its items have been deleted from the database.
Parameters
(int) $cart_link_id ID of the cart link that was deleted.
Fires in inc/classes/core/class-wp-easycart-cart-link.php · delete_link()
wp_easycart_cart_link_rejected
Fires when a shopper opens a cart link that is missing, inactive, expired or used up, before they are sent to the cart page.
Parameters
$link ? $link : $token The cart link record (object) when found, otherwise the link token that was requested.
Fires in inc/classes/core/class-wp-easycart-cart-link.php · resolve()
wp_easycart_cart_link_resolved
Fires after a valid cart link has been applied to the shopper’s cart, before they are redirected to the cart or checkout.
Parameters
$link The cart link record (object).
$added Whether the link’s items were added to the cart.
Fires in inc/classes/core/class-wp-easycart-cart-link.php · resolve()
wp_easycart_cart_link_saved
Fires after a cart link and its items have been saved.
Parameters
$cart_link_id ID of the cart link that was saved.
Fires in inc/classes/core/class-wp-easycart-cart-link.php · save_link()
wp_easycart_cart_payment_after_edit_shipping_link
Fires on the checkout payment page after the Edit Shipping Address link and before the shipping method heading.
Parameters
$this The cart page object.
Fires in design/layout/base-responsive-v3/ec_cart_payment.php +1 more place
wp_easycart_cart_payment_after_payment_table
Fires on the v2 checkout payment page after the payment method table and the pay-later minimum message.
Parameters
$cartpage The cart page object.
Fires in design/layout/base-responsive-v3/ec_cart_payment_v2.php · ec_checkout_with_affirm()
wp_easycart_cart_payment_end
Fires at the very end of the checkout payment page template, before the closing spacer and media size marker.
Parameters
$this The cart page object.
Fires in design/layout/base-responsive-v3/ec_cart_payment.php · ec_stripe_3ds_waiting_for_response()
wp_easycart_cart_template_end
Fires at the very end of the cart template, after the cart section and the media size marker.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart.php
wp_easycart_cartitem_deleted
Fires after a line item has been deleted from the temporary cart and its option items removed.
Parameters
$tempcart_id ID of the cart line item that was deleted.
$session_id The shopper’s cart session ID.
Fires in inc/classes/core/ec_db.php · delete_cartitem()
wp_easycart_cartitem_post_optionitems
Fires for each cart line item after its options and custom details are printed, in the cart and checkout order summary.
Parameters
$this->cart->cart[$cartitem_index] The cart line item (object); the invoice item object in the invoice template.
Fires in design/layout/base-responsive-v3/ec_cart.php +8 more places
wp_easycart_checkout_details_left_end
Fires at the end of the left column of the checkout details page, after the checkout error messages.
Parameters
$cartpage The cart page object (passed as $this in the classic template).
Fires in design/layout/base-responsive-v3/ec_cart_information_v2.php +1 more place
wp_easycart_checkout_details_right_end
Fires at the end of the right column of the checkout details page, after the continue button or the cart totals.
Parameters
$this The cart page object.
Fires in design/layout/base-responsive-v3/ec_checkout_details.php +1 more place
wp_easycart_checkout_field_html PRO
Fires after PRO prints a checkout field’s input, so extensions can add markup for a custom field type.
Parameters
$field The checkout field definition (array).
$value The shopper’s current answer (string).
Fires in inc/classes/core/wp_easycart_checkout_fields_pro.php · print_field()
wp_easycart_checkout_fields_order_saved PRO
Fires after checkout field answers have been saved on a newly created order.
Parameters
$order_id ID of the new order (int).
Fires in inc/classes/core/wp_easycart_checkout_fields_pro.php · order_inserted()
wp_easycart_checkout_fields_order_updated PRO
Fires after checkout field answers on an existing order have been changed, by staff on the order screen or by the customer after payment.
Parameters
$order_id ID of the order (int).
$who Who made the change: staff or customer (string).
Fires in inc/classes/core/wp_easycart_checkout_fields_pro.php · update_order_answers()
wp_easycart_checkout_form_inner
Fires inside the opening tag of the checkout details form, so a callback can echo extra HTML attributes for the form.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · display_page_one_form_start()
wp_easycart_display_cart_after
Fires after the cart or the cart contents have been displayed.
Parameters
$this->cart The cart object.
$this->order_totals The order totals object.
Fires in inc/classes/cart/ec_cartpage.php · display_cart() +1 more place
wp_easycart_display_cart_before
Fires before the cart or the cart contents are displayed.
Parameters
$this->cart The cart object.
$this->order_totals The order totals object.
Fires in inc/classes/cart/ec_cartpage.php · display_cart() +1 more place
wp_easycart_display_checkout_details_post
Fires after the checkout details (contact information) step has been displayed.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · display_checkout_details()
wp_easycart_display_checkout_details_pre
Fires before the checkout details (contact information) step is displayed.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · display_checkout_details()
wp_easycart_end_live_payment_box_inner
Fires at the end of the live payment box on the checkout payment step, after the payment fields.
Parameters
$this / $cartpage The cart page object (passed as $this in one template and $cartpage in the other)
Fires in design/layout/base-responsive-v3/ec_cart_payment.php · ec_stripe_3ds_waiting_for_response() +1 more place
wp_easycart_onepage_checkout_top
Fires at the top of the one-page checkout template, after the tabbed form start and before the express checkout buttons.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart_information_v2.php
wp_easycart_totals_after
Fires on the checkout page after the cart totals lines are printed.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart.php
wpeasycart_billing_after
Fires in the checkout after the billing information section, before the payment method section.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart_information_v2.php +3 more places
wpeasycart_cart_added
Fires when a new cart session record is created for a shopper who did not have one yet.
Parameters
$session_id Cart session ID of the new cart
Fires in inc/classes/core/ec_db.php · get_cart_data()
wpeasycart_cart_item_added
Fires after a product is added to the shopper’s cart, with the quantity added and unit price, so tracking and marketing integrations can record the add.
Parameters
$tempcart_id ID of the cart line (ec_tempcart row)
$product_id ID of the product added
$quantity_added Quantity added by this action
$unit_price (float) The line’s unit price, including variant price, options, tiers and role prices
$args (array) Extra details: optionitemquantity_id, content_id, source (details, list, link, cart_link, deconetwork or other), event_id, content_name and browser (true if the storefront script already fired AddToCart)
Fires in inc/classes/core/class-wp-easycart-meta.php · announce_add()
wpeasycart_cart_updated Facebook & Instagram PRO
Fires after the shopper’s cart changes, such as items added, removed or adjusted for stock, so tax services and integrations can refresh.
No parameters.
Fires in includes/class-wp-easycart-facebook-checkout.php · maybe_handle() +63 more places
wpeasycart_cartitem_added PRO
Fires after a new cart item row is inserted into the cart table.
Parameters
$tempcart_id ID of the new cart line (ec_tempcart row)
Fires in inc/classes/core/ec_db.php · add_to_cart() +5 more places
wpeasycart_cartitem_deleted
Fires after a cart item row is deleted, for example when stock runs out or an item is removed.
Parameters
$tempcart_id ID of the deleted cart line
Fires in inc/classes/core/ec_db.php · update_temp_cart_inventory() +3 more places
wpeasycart_cartitem_deleting
Fires just before a cart item row is deleted from the cart table.
Parameters
$tempcart_id ID of the cart line about to be deleted
Fires in inc/classes/core/ec_db.php · update_temp_cart_inventory() +4 more places
wpeasycart_cartitem_updated
Fires after an existing cart item is changed, such as its quantity being merged with a new add or reduced to available stock.
Parameters
$tempcart_id ID of the updated cart line
Fires in inc/classes/core/ec_db.php · update_temp_cart_inventory() +8 more places
wpeasycart_checkout_details_after
Fires in the checkout details template after the details columns, before the form closes.
No parameters.
Fires in design/layout/base-responsive-v3/ec_checkout_details.php +1 more place
wpeasycart_checkout_fields
Fires in the checkout at points where extra checkout fields can be output; the first argument names the section, such as contact.
Parameters
$section (string) Checkout section the fields belong to, such as ‘contact’
$cartpage The cart page object
Fires in design/layout/base-responsive-v3/ec_cart_information_v2.php +17 more places
wpeasycart_checkout_protection_attack_ended
Fires when checkout protection attack mode ends.
Parameters
$summary (array) Counts for the attack
Fires in inc/classes/core/class-wp-easycart-checkout-guard.php · end_attack()
wpeasycart_checkout_protection_attack_started
Fires when checkout protection attack mode starts, either manually or after a burst of declines.
Parameters
(bool) $manual True if the store owner started attack mode
(int) $recent Number of declines in the last 15 minutes
Fires in inc/classes/core/class-wp-easycart-checkout-guard.php · start_attack()
wpeasycart_item_added_to_cart
Fires after a product is added to the cart from the product details page, before the cart updated action.
Parameters
$tempcart_id ID of the cart line that was added
$cart_id ID of the cart session
Fires in inc/classes/cart/ec_cartpage.php · process_add_to_cart_v3()
wpeasycart_order_notes_after
Fires in the checkout right after the order notes box, where extra checkout content can be added.
Parameters
$cartpage The cart page object (only passed by the one-page checkout template)
Fires in design/layout/base-responsive-v3/ec_cart_information_v2.php +1 more place
wpeasycart_order_success
Fires when the checkout success page starts to display, before the order details are loaded.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · display_cart_success_page() +1 more place
wpeasycart_payment_order_notes_after
Fires on the payment review step of checkout, right after the shopper’s order notes and before the order totals heading.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart_payment.php · ec_stripe_3ds_waiting_for_response()
wpeasycart_save_checkout_info_complete
Fires after the checkout information step is saved through AJAX, once the cart and totals are loaded.
Parameters
$cart the cart object (ec_cart)
$order_totals the calculated order totals object
$cartpage->shipping->get_selected_shipping_method() the selected shipping method
Fires in wpeasycart.php · ec_ajax_save_checkout_info()
wpeasycart_save_checkout_info_process
Fires while the checkout information step is being saved, after the guest or account details are set and before the session is saved.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · process_save_checkout_info_helper()
wpeasycart_save_checkout_shipping_process
Fires when the classic checkout shipping method step is posted, so extensions can save extra fields from it.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · process_save_checkout_shipping()
wpeasycart_shipping_after
Fires on the checkout information page after the shipping section, before the checkout fields and order notes.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart_information_v2.php +1 more place
wpeasycart_submit_order_complete
Fires after the order is submitted and payment is processed in the checkout, before the shopper is sent to the success page.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · submit_square_quick_payment() +1 more place
wpeasycart_submit_order_process
Fires when Place order is posted, before any payment runs, so extensions can save what the payment step asked for.
No parameters.
Fires in wpeasycart.php · ec_ajax_cart_validate_stock() +1 more place

Products

Grouped by what they are about

109 actions

wp_easycart_admin_ecv2_advanced_pricing_slideout_extras PRO
Fires at the end of the product advanced-pricing slideout body in the admin product table, so extensions can add sections.
No parameters.
Fires in admin/inc/wp_easycart_admin_products_pro.php · render_ecv2_advanced_pricing_slideout()
wp_easycart_admin_ecv2_price_editor_extra_sections
Fires inside the admin product table’s price editor popover, before the footer buttons, so extra sections can be added.
Parameters
$result Product row being edited
Fires in admin/inc/wp_easycart_admin_product_table.php · print_price_editor_menu()
wp_easycart_admin_ecv2_product_image_edit_trigger
Fires after a product thumbnail is printed in the admin product list so an image edit trigger can be added.
Parameters
$product_id Product id
'table' or 'card' Which view is being shown: table row or card
Fires in admin/inc/wp_easycart_admin_product_table.php · print_product_image() +1 more place
wp_easycart_admin_ecv2_render_advanced_pricing_slideout
Fires when the admin product table prints its custom modals, to render the advanced pricing slideout.
No parameters.
Fires in admin/inc/wp_easycart_admin_product_table.php · print_custom_modals()
wp_easycart_admin_ecv2_render_b2b_pricing_manager
Fires when the admin product table prints its custom modals, to render the B2B pricing manager.
No parameters.
Fires in admin/inc/wp_easycart_admin_product_table.php · print_custom_modals()
wp_easycart_admin_ecv2_render_image_manager
Fires when the admin product table prints its custom modals, to render the image manager.
No parameters.
Fires in admin/inc/wp_easycart_admin_product_table.php · print_custom_modals()
wp_easycart_admin_ecv2_render_variant_manager
Fires when the admin product table prints its custom modals, to render the variant manager.
No parameters.
Fires in admin/inc/wp_easycart_admin_product_table.php · print_custom_modals()
wp_easycart_admin_ecv2_render_volume_pricing_manager
Fires when the admin product table prints its custom modals, to render the volume pricing manager.
No parameters.
Fires in admin/inc/wp_easycart_admin_product_table.php · print_custom_modals()
wp_easycart_admin_ecv2_save_price_extras
Fires when a product’s prices are saved from the admin price editor, letting PRO save its own POST data in the same request.
Parameters
$product_id Product id
Fires in admin/inc/wp_easycart_admin_product_table.php · ecv2_product_save_prices()
wp_easycart_admin_product_advanced_option_row_end
Fires for each advanced option row after the advanced option list is printed following an add or delete in the product editor.
Parameters
$advanced_option Advanced option row for the product (ec_option_to_product joined to ec_option)
Fires in admin/inc/wp_easycart_admin_products.php · ec_admin_ajax_product_details_add_advanced_option() +1 more place
wp_easycart_admin_product_details_advanced_pricing_fields
Fires in the admin product editor Advanced Pricing card so extensions can add fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_after_images
Fires in the admin product editor images area when legacy PRO provides the media panel, so extensions can output image fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php +1 more place
wp_easycart_admin_product_details_basic_fields
Fires in the admin product editor Product Details card so extensions can add basic fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_basic_start
Fires in the admin product editor at the start of the Product Details card.
Parameters
$product Product row
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_buttons_pre
Fires in the admin product editor header, before the action buttons.
Parameters
$product Product row
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_categories_fields
Fires in the admin product editor Categories section so category fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_customs_fields
Fires in the admin product editor Customs and packing section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_deconetwork_fields
Fires in the admin product editor Deconetwork section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_downloads_fields
Fires in the admin product editor Digital Download section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_featured_products_fields
Fires in the admin product editor Featured Products section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_general_options_fields
Fires in the admin product editor in the Visibility & Sorting and Product Behaviors sections so general option fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php +2 more places
wp_easycart_admin_product_details_googlemerchant_fields
Fires to render the Google Merchant feed attribute fields in the admin product editor.
No parameters.
Fires in admin/inc/wp_easycart_admin_details_products_v2.php · capture_google_merchant_fields() +1 more place
wp_easycart_admin_product_details_images_pro_start PRO
Fires at the start of the PRO product images panel in the admin product editor.
Parameters
$product Product row
Fires in admin/template/products/products/product-images-pro.php +1 more place
wp_easycart_admin_product_details_menus_fields
Fires in the admin product editor Menu Locations section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_modifiers_pro_start PRO
Fires at the start of the Modifiers (advanced options) card in the PRO product editor.
Parameters
$product Product row
Fires in admin/template/products/products/product-options-pro-v2.php · wpeasycart_pro_v2_modal_row() +1 more place
wp_easycart_admin_product_details_optionitem_quantity_fields
Fires in the admin product editor variation inventory card so fields such as stock notifications can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_options_pro_start PRO
Fires at the start of the Basic option sets card in the PRO product editor.
Parameters
$product Product row
Fires in admin/template/products/products/product-options-pro-v2.php · wpeasycart_pro_v2_modal_row() +1 more place
wp_easycart_admin_product_details_order_completed_details_note_fields
Fires in the admin product editor Order Details Note section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_order_completed_email_note_fields
Fires in the admin product editor Order Email Note section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_order_completed_note_fields
Fires in the admin product editor Receipt Page Note section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_packaging_fields
Fires in the admin product editor Packaging Dimensions section so fields can be added.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_pricing_fields
Fires in the admin product editor Pricing section so pricing fields can be added.
Parameters
$product Product row
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_pricing_start
Fires in the admin product editor at the start of the Pricing area, before the Pricing section opens.
Parameters
$product Product row
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_qr_code
Fires in the admin product editor’s actions menu so a QR code or video help item can be printed.
Parameters
$is_new ? 0 : $product->product_id Product id, or 0 for a new product
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_quantity_fields
Fires in the admin product editor Stock & Purchase Limits section so fields can be added.
Parameters
$product Product row
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_quantity_start
Fires at the top of the Inventory & Shipping panel on the admin product edit screen, before the Stock & Purchase Limits section.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_sections_pre
Fires on the admin product edit screen after the header and new-product notice, before the section rail and panels are printed.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_seo_fields
Fires inside the Search Engine Listing section of the admin product edit screen, only when Yoast SEO is not handling SEO fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_shipping_fields
Fires inside the Shipping section of the admin product edit screen so extensions can add shipping fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_short_description_fields
Fires inside the Short Description section of the admin product edit screen so extensions can add fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_specifications_fields
Fires inside the Specifications section of the admin product edit screen so extensions can add fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_tags_fields
Fires inside the Badges & Image Effects section of the admin product edit screen so extensions can add fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_v2_activity_end
Fires at the end of the Activity panel on the admin product edit screen, after the activity content placeholder.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_v2_behavior_cards
Fires in the Product Behaviors tab of the admin product edit screen so extensions can print additional behavior cards.
Parameters
$product The product being edited (object); it has no product_id yet for a new product.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_v2_header_menu
Fires in the header menu of the admin product edit screen, after the Documentation link, so extensions can add menu items.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_v2_marketing_cards
Fires in the SEO & Marketing tab of the admin product edit screen so extensions can print additional marketing cards.
Parameters
$product The product being edited (object); it has no product_id yet for a new product.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_v2_media_pro
Fires inside the Media panel of the admin product edit screen when WP EasyCart PRO’s media panel is active, so PRO can print the image gallery.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_v2_options_pro
Fires inside the Options & Variants panel of the admin product edit screen when PRO’s options panel is active, so PRO can print the option editor.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_v2_stock_history_pro
Fires when the admin product Inventory panel renders and the PRO stock history panel is enabled, so PRO can print the stock change history.
Parameters
$this->product The product being edited (object).
Fires in admin/inc/wp_easycart_admin_details_products_v2.php · print_stock_history_v2()
wp_easycart_admin_product_details_variants_pro_start PRO
Fires at the start of the Variations card in the PRO options panel of the admin product edit screen, so a managing service can cover the card.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-options-pro-v2.php · wpeasycart_pro_v2_modal_row()
wp_easycart_admin_product_list_cell_{col}
Fires when the admin product list prints a cell for a custom column; {col} is the column’s format value, so a callback prints that column’s cell content.
Parameters
$result The product row (object) from the list query, including the column’s own select.
$col The column definition (array).
Fires in admin/inc/wp_easycart_admin_product_table.php · print_cell_content()
wp_easycart_admin_product_slideout_option_types
Fires inside the Choices on this product select in the admin product slideout, so extensions can add extra option-type choices.
No parameters.
Fires in admin/template/products/products/product-slideout-v2.php · ecpsv2_money_input()
wp_easycart_ecv2_cart_link_card_end
Fires at the end of the Cart Links card on the admin product edit screen.
No parameters.
Fires in admin/template/products/products/product-cart-links-card.php
wp_easycart_ecv2_cart_link_card_modifiers
Fires in the Cart Links card on the admin product edit screen, before the Create Link button, so PRO can add modifier preselect inputs.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-cart-links-card.php
wp_easycart_ecv2_cart_link_card_row_actions
Fires for each existing cart link in the Cart Links card of the admin product edit screen, after the Copy button, so extra row actions can be added.
Parameters
$ecdv2_cl_link The cart link record for this row (object).
Fires in admin/template/products/products/product-cart-links-card.php
wp_easycart_inventory_tracking_changed
Fires after stock tracking is turned on or off for a product or option item from the admin inventory screen.
Parameters
$product_id Product ID
$oiq_id Option item quantity ID, or 0 when the change applies to the product itself
$tracked 1 when tracking was turned on, 0 when turned off
Fires in admin/inc/wp_easycart_admin_inventory.php · ajax_set_qty()
wp_easycart_modifier_to_product_created PRO
Fires after an option (modifier) is added to a product in the admin.
Parameters
(int) $_POST['option_id'] Option ID
(int) $_POST['product_id'] Product ID
Fires in admin/inc/wp_easycart_admin_products_pro.php · add_modifier()
wp_easycart_modifier_to_product_deleted PRO
Fires just before an option (modifier) link is removed from a product in the admin.
Parameters
(int) $_POST['option_to_product_id'] ID of the option-to-product link being removed
Fires in admin/inc/wp_easycart_admin_products_pro.php · remove_modifier()
wp_easycart_option_to_product_created
Fires after an option set is linked to a product, when assigning an option set to products or when duplicating a product’s options.
Parameters
$option_id Option set ID
$pid Product ID the option set was linked to (the duplicate product ID when duplicating)
Fires in admin/inc/wp_easycart_admin_option_editor_v2.php · ecv2_option_assign() +4 more places
wp_easycart_option_to_product_deleted
Fires after an option set is unlinked from a product in the admin.
Parameters
$option_to_product_id ID of the option-to-product link that was deleted (int)
Fires in admin/inc/wp_easycart_admin_products.php · delete_advanced_option()
wp_easycart_optionitem_created
Fires after an option item (choice) is created, by duplicating it or saving an option set in the admin.
Parameters
$new_optionitem_id ID of the new option item
$option_id ID of the option set it belongs to
Fires in admin/inc/wp_easycart_admin_option.php · duplicate_optionitem() +1 more place
wp_easycart_optionitem_deleted
Fires after an option item is deleted in the admin, once per item for bulk deletes.
Parameters
$optionitem_id ID of the deleted option item
$option_id ID of the option set it belonged to
Fires in admin/inc/wp_easycart_admin_option.php · delete_optionitem() +1 more place
wp_easycart_optionitem_deleting
Fires just before an option item is deleted in the admin, once per item for bulk deletes.
Parameters
$optionitem_id ID of the option item about to be deleted
$option_id ID of the option set it belongs to
Fires in admin/inc/wp_easycart_admin_option.php · delete_optionitem() +1 more place
wp_easycart_optionset_created
Fires after an option set is created in the admin, either new or by duplicating an existing set.
Parameters
$option_id ID of the new option set (when duplicating, the code passes the ID of the last duplicated option item)
Fires in admin/inc/wp_easycart_admin_option.php · insert_option() +2 more places
wp_easycart_optionset_deleted
Fires after an option set is deleted through the safe delete process, once the set and its items are removed.
Parameters
$option_id ID of the deleted option set
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_option()
wp_easycart_optionset_deleting
Fires during safe deletion of an option set, after products are updated and before the set and its items are removed.
Parameters
$option_id ID of the option set about to be deleted
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_option()
wp_easycart_optionset_updated
Fires after an option set is saved in the admin option editor, or after it is assigned to products.
Parameters
$option_id ID of the option set that changed
Fires in admin/inc/wp_easycart_admin_option_editor_v2.php · ecv2_option_save() +5 more places
wp_easycart_product_details_advanced_option_set_after
Fires on the product details page after an advanced option set is displayed.
Parameters
$optionset Advanced option set object.
$optionitems Option items in that set.
$this->product The product being displayed.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php
wp_easycart_product_details_advanced_option_set_before
Fires on the product details page before an advanced option set is displayed.
Parameters
$optionset Advanced option set object.
$optionitems Option items in that set.
$this->product The product being displayed.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php
wp_easycart_product_details_after_description
Fires on the product details page after the product title area and short description block.
Parameters
$this->product->product_id Product id.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php
wp_easycart_product_details_after_description_below
Fires on the product details page after the short description that is shown below the add to cart area.
Parameters
$this->product->product_id Product id.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php
wp_easycart_product_details_after_left_content_area
Fires on the product details page after the left column holding the product images.
Parameters
$product_id Product id.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php +1 more place
wp_easycart_product_details_after_title
Fires on the product details page directly after the product title.
Parameters
$product_id Product id.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php
wp_easycart_product_details_after_title_divider
Fires on the product details page directly after the divider line under the product title.
Parameters
$product_id Product id.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php
wp_easycart_product_details_before
Fires when a product details page starts rendering, before its content and tracking events, in both the standard and Elementor layouts.
Parameters
$product The product being displayed.
Fires in admin/elementor/modules/product-info/includes/class-wp-easycart-product-info.php · view_events() +3 more places
wp_easycart_product_details_end
Fires at the end of the product details output, in both the standard and Elementor layouts.
Parameters
$product The product being displayed.
Fires in admin/elementor/modules/templates/class-wp-easycart-elementor-templates.php · render_product() +1 more place
wp_easycart_product_details_image_holder_post
Fires on the product details page right after the main product image, inside the image holder.
Parameters
$product The product being displayed.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php +1 more place
wp_easycart_product_details_image_holder_pre
Fires on the product details page before the main product image, inside the image holder.
Parameters
$product The product being displayed.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php +1 more place
wp_easycart_product_details_post_add_to_cart
Fires on the product details page after the add to cart controls, before the form closes.
Parameters
$product_id Product id.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php
wp_easycart_product_details_pre_add_to_cart
Fires on the product details page and the add to cart shortcode just before the add to cart controls and their quantity error messages.
Parameters
$product_id Product id.
Fires in design/layout/base-responsive-v3/ec_add_to_cart_shortcode.php +2 more places
wp_easycart_product_details_thumbnail_item
Fires after each product image thumbnail is output in the product details gallery.
Parameters
$product_image_id Image slot name, such as image1 or image2.
$this->product->product_id Product id.
$wpeasycart_addtocart_shortcode_rand Number identifying this product block on the page.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php +39 more places
wp_easycart_product_details_thumbnail_items_simple
Fires in the product details gallery after the basic set of thumbnails is printed.
Parameters
$this->product The product being displayed.
$wpeasycart_addtocart_shortcode_rand Number identifying this product block on the page.
Fires in design/layout/base-responsive-v3/ec_product_details_page.php +6 more places
wp_easycart_product_image_holder_post
Fires in a product listing item and the featured product layout right after the product image holder.
Parameters
$product The product object.
Fires in design/layout/base-responsive-v3/ec_product.php +1 more place
wp_easycart_product_image_holder_pre
Fires in a product listing item and the featured product layout at the start of the product image holder, before the product image link.
Parameters
$product The product object.
Fires in design/layout/base-responsive-v3/ec_product.php +1 more place
wp_easycart_product_search_ai_saved
Fires after a product’s Search AI attributes are saved in the admin.
Parameters
$product_id Product id.
$attributes The saved attribute values.
Fires in admin/inc/wp_easycart_admin_search_ai.php · ajax_save_product()
wp_easycart_product_updated PRO
Fires after a product is changed in the admin, for example by a stock quantity edit, tracking change or manufacturer assignment.
Parameters
$product_id Product id.
Fires in admin/inc/wp_easycart_admin_inventory.php · ajax_set_qty() +8 more places
wp_easycart_product_yoast_seo_saved
Fires after a product’s Yoast SEO fields are saved from the product details screen.
Parameters
$product_id Product id.
$post_id Id of the WordPress post linked to the product.
$values Submitted SEO values.
Fires in admin/inc/wp_easycart_admin_products.php · ec_admin_ajax_save_product_details_yoast_seo()
wp_easycart_tabs_saved Tabs
Fires after a product’s tab is saved in the Tabs extension.
Parameters
$product_id Product id.
$tab_id Tab id.
Fires in includes/class-wp-easycart-tabs.php · save_tab()
wp_easycart_tabs_shared_saved Tabs
Fires after a shared tab is saved in the Tabs extension.
Parameters
$id Shared tab id.
Fires in includes/class-wp-easycart-tabs.php · save_shared()
wp_easycart_updated_optionitem_quantity_value PRO
Fires after the stock quantity of an option item combination is updated, including when a restock adjusts it.
Parameters
$quantity New quantity.
$product_id Product id.
$optionitem_id_1 Option item 1 id.
$optionitem_id_2 Option item 2 id.
$optionitem_id_3 Option item 3 id.
$optionitem_id_4 Option item 4 id.
$optionitem_id_5 Option item 5 id.
Fires in inc/classes/core/ec_db.php · update_quantity_value() +1 more place
wp_easycart_updated_product_stock PRO
Fires after a product’s stock quantity is updated, including when an order restock adjusts it.
Parameters
$product_id Product id.
$quantity Stock quantity or the amount removed.
Fires in inc/classes/core/ec_db.php · update_product_stock() +1 more place
wp_easycart_variants_rebuilt
Fires after a product’s variants are rebuilt.
Parameters
$product_id Product id.
self::$last Summary of the rebuild: counts and row ids kept, moved, deleted and added.
Fires in inc/classes/core/class-wp-easycart-variants.php · rebuild()
wp_easycart_view_product_list
Fires when a product list is displayed to a shopper, so tracking code can record the list view.
Parameters
$list Product list object.
$category_list Category list (null in the Elementor archive).
$menu_id Menu id.
$submenu_id Submenu id.
$subsubmenu_id Sub-submenu id.
$manufacturer_id Manufacturer id or a placeholder.
$group_id Category id or a placeholder.
$atts Shortcode or widget settings.
Fires in admin/elementor/modules/shop/widgets/class-wp-easycart-elementor-shop-archive-widget.php · ec_track() +1 more place
wpeasycart_addon_product_details_tab
Fires where extensions add their own tab heading to the product details tabs.
Parameters
$product_id Product id.
$rand Number identifying this product block on the page.
Fires in admin/elementor/modules/product-info/includes/class-wp-easycart-product-info.php · extension_tab_hook() +2 more places
wpeasycart_addon_product_details_tab_content
Fires where extensions add the content panel for their own product details tab.
Parameters
$product_id Product id.
$rand Number identifying this product block on the page.
Fires in admin/elementor/modules/product-info/includes/class-wp-easycart-product-info.php · extension_panel_hook() +2 more places
wpeasycart_admin_product_details_general_saved
Fires after a product’s general options are saved from the product details screen.
Parameters
$product_id Product id.
Fires in admin/inc/wp_easycart_admin_products.php · save_product_details_general_options()
wpeasycart_admin_product_inserted API plugin
Fires after a product is created in the admin or through the API.
Parameters
$product_id Product id.
$model_number Model number (SKU) of the new product.
Fires in wp-easycart-api/inc/wpeasycart-api-products.php · endpoint_add_product() +3 more places
wpeasycart_inquiry_sent
Fires after a product inquiry form has been sent, before the shopper is redirected back to the product page.
Parameters
$product Product row; model_number is the chosen variant’s SKU when it has one
$filter_options The inquiry: name, email, message and options
Fires in inc/classes/cart/ec_cartpage.php · process_send_inquiry()
wpeasycart_inventory_stock_changed
Fires after a product or variant stock quantity is changed, so inventory logs and outside systems can record it.
Parameters
$change (array) Details of the change: product_id, optionitemquantity_id, old_quantity, new_quantity, delta, reason, source, note and user_id
Fires in admin/inc/wp_easycart_admin_inventory.php · apply_stock_change() +3 more places
wpeasycart_post_sync_event
Fires when the product and category post sync records an event in its log, such as a failed insert, a blocked delete or a repaired link.
Parameters
$event event key, such as insert_failed, update_failed, link_broken, link_repaired or delete_blocked
$type kind of store item being synced
$entity_id id of the store item
$post_id linked WordPress post id (0 if none)
$detail short text detail for the event
Fires in inc/classes/core/class-wp-easycart-post-sync.php · log()
wpeasycart_pricepoints_updated
Fires after the store’s price point filter list is saved in the admin.
No parameters.
Fires in admin/inc/wp_easycart_admin_pricepoint_v2.php · save()
wpeasycart_product_activated
Fires after a product is activated in the store, singly or in bulk.
Parameters
$product_id product id
Fires in admin/inc/wp_easycart_admin_products.php · deactivate_product() +5 more places
wpeasycart_product_added API plugin PRO
Fires after a new product is created in the admin quick add or through the API.
Parameters
$product_id id of the new product
$model_number the product’s model number (SKU)
Fires in wp-easycart-api/inc/wpeasycart-api-products.php · endpoint_add_product() +5 more places
wpeasycart_product_deactivated
Fires after a product is deactivated in the store, singly or in bulk.
Parameters
$product_id product id
Fires in admin/inc/wp_easycart_admin_products.php · deactivate_product() +5 more places
wpeasycart_product_deleted PRO
Fires after a product and its related rows are deleted in the admin, singly or in bulk.
Parameters
$product_id id of the deleted product
Fires in admin/inc/wp_easycart_admin_products.php · delete_product() +4 more places
wpeasycart_product_deleting
Fires just before a product is deleted in the admin, singly or in bulk.
Parameters
$product_id id of the product about to be deleted
Fires in admin/inc/wp_easycart_admin_products.php · delete_product() +2 more places
wpeasycart_product_duplicated PRO
Fires after a product is duplicated, so extensions can copy their own data to the new product.
Parameters
(int) $newid id of the new product (the copy)
(int) $product_id id of the product it was copied from
Fires in admin/inc/wp_easycart_admin_products.php · duplicate_product() +1 more place
wpeasycart_product_restored
Fires after a deleted product is restored from the admin undo snapshot.
Parameters
$product_id id of the restored product
Fires in admin/inc/wp_easycart_admin_products.php · restore_products()
wpeasycart_product_updated PRO
Fires after a product is changed in the admin, such as when it is added to or removed from a menu.
Parameters
$product_id product id
$p->model_number the product’s model number
Fires in admin/inc/wp_easycart_admin_menu_editor_v2.php · ecv2_menu_add_product() +10 more places

Categories, menus and manufacturers

Grouped by what they are about

25 actions

wp_easycart_admin_category_editor_v2_cards
Fires in the admin category editor after the built-in cards, before the Danger card, so extensions can add their own cards.
Parameters
$c Category row (ec_category object)
Fires in admin/template/products/categories/category-editor-v2.php
wp_easycart_catalog_yoast_seo_saved
Fires after Yoast SEO values for a catalog item are saved from the admin catalog screen, before the AJAX response is sent.
Parameters
$type The catalog record type, taken from the request.
$id ID of the catalog record.
$post_id ID of the WordPress post that stores the Yoast meta.
$values Array of Yoast meta keys and the values that were written.
Fires in admin/inc/wp_easycart_admin_catalog_v2.php · ecv2_catalog_save_yoast()
wp_easycart_category_view
Fires before the category view of the store is printed, or before featured categories are shown on the first page of a product list.
Parameters
$this->group_id The product group ID being viewed.
$this->category_list The category list object.
$this->product_list The product list object.
Fires in inc/classes/store/ec_storepage.php · display_category_view() +1 more place
wp_easycart_smart_category_synced PRO
Fires after a smart category’s product membership is synced.
Parameters
(int) $category_id Category id.
(int) $added Number of products added.
(int) $removed Number of products removed.
Fires in inc/classes/core/ec_smart_categories.php · after_change()
wpeasycart_category_activated
Fires after a category is activated in the admin, singly or in bulk.
Parameters
$category_id (int) ID of the activated category
Fires in admin/inc/wp_easycart_admin_category.php · deactivate_category() +1 more place
wpeasycart_category_added PRO
Fires after a new category is created in the admin, either added directly or by duplicating an existing category.
Parameters
$category_id ID of the new category (the new copy when duplicated)
Fires in admin/inc/wp_easycart_admin_category.php · duplicate_category() +4 more places
wpeasycart_category_created_inline
Fires after a category is created (or found existing) from the product details screen and assigned to the product.
Parameters
$category_id ID of the category
$product_id ID of the product it was assigned to
$existed Whether the category already existed
Fires in admin/inc/wp_easycart_admin_products.php · ec_admin_ajax_product_details_create_category()
wpeasycart_category_deactivated
Fires after a category is deactivated in the admin, singly or in bulk.
Parameters
$category_id (int) ID of the deactivated category
Fires in admin/inc/wp_easycart_admin_category.php · deactivate_category() +1 more place
wpeasycart_category_deleted PRO
Fires after a category is deleted, from the admin safe-delete tool or the mobile app API.
Parameters
$category_id ID of the deleted category
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_category() +1 more place
wpeasycart_category_deleting
Fires during a safe delete of a category, just before the category is removed and its children are re-parented or deleted.
Parameters
$category_id ID of the category being deleted
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_category()
wpeasycart_category_item_added PRO
Fires after a product is added to a category through the mobile app API.
Parameters
$productid ID of the product
$categoryid ID of the category
Fires in inc/amfphp/Amfphp/Services/ec_admin_categories.php · addcategoryitem()
wpeasycart_category_item_deleted PRO
Fires after a single category item link is deleted through the mobile app API.
Parameters
$categoryitemid ID of the deleted category item (ec_categoryitem row)
Fires in inc/amfphp/Amfphp/Services/ec_admin_categories.php · deleteindividualcategoryitem()
wpeasycart_category_items_deleted PRO
Fires after a product is removed from a category through the mobile app API.
Parameters
$productid ID of the product
$categoryid ID of the category
Fires in inc/amfphp/Amfphp/Services/ec_admin_categories.php · deletecategoryitem()
wpeasycart_category_updated PRO
Fires after a category is updated in the admin, including when it is bulk set as featured.
Parameters
$category_id ID of the updated category
Fires in admin/inc/wp_easycart_admin_category.php · update_category() +9 more places
wpeasycart_manufacturer_added
Fires after a manufacturer is created in the admin.
Parameters
$manufacturer_id ID of the new manufacturer
Fires in admin/inc/wp_easycart_admin_manufacturers.php · insert_manufacturer() +1 more place
wpeasycart_manufacturer_deleted
Fires after a manufacturer is deleted through the admin safe-delete tool.
Parameters
$id ID of the deleted manufacturer
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_manufacturer()
wpeasycart_manufacturer_deleting
Fires during a safe delete of a manufacturer, just before its products are reassigned and the manufacturer is removed.
Parameters
$id ID of the manufacturer being deleted
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_manufacturer()
wpeasycart_manufacturer_updated
Fires after a manufacturer is updated in the admin, by an inline name edit or a full save.
Parameters
$id ID of the updated manufacturer
Fires in admin/inc/wp_easycart_admin_manufacturer_table.php · ecv2_manufacturer_inline_update() +1 more place
wpeasycart_menu_added
Fires after a new menu item is created in the admin.
Parameters
$id ID of the new menu item
$level Menu level of the item (1, 2 or 3)
Fires in admin/inc/wp_easycart_admin_menu_table.php · ecv2_menu_create()
wpeasycart_menu_deleted
Fires after a menu item is deleted through the admin safe-delete tool.
Parameters
$id ID of the deleted menu item
$level Menu level of the item
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_menu()
wpeasycart_menu_deleting
Fires during a safe delete of a menu item, before its children and product paths are moved or removed.
Parameters
$id ID of the menu item being deleted
$level Menu level of the item
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_menu()
wpeasycart_menu_relocated
Fires after a menu item is moved to a new parent or level and its old rows have been deleted.
Parameters
$map (array) Map of old ‘level:id’ keys to the new level and ID of each moved item
$level Original menu level of the moved item
$id Original ID of the moved item
Fires in admin/inc/wp_easycart_admin_menu_table.php · ecv2_menu_relocate()
wpeasycart_menu_updated
Fires after a menu item is saved or moved in the admin.
Parameters
$id ID of the menu item
$level Menu level of the item
Fires in admin/inc/wp_easycart_admin_menu_editor_v2.php · ecv2_menu_save() +1 more place
wpeasycart_product_to_category_added
Fires after a product is added to a category in bulk from the admin.
Parameters
$category_id category id
(int) $bulk_id product id
Fires in admin/inc/wp_easycart_admin_category.php · bulk_add_category_product()
wpeasycart_product_to_category_deleted
Fires just before a product is removed from a category in the admin, singly or in bulk.
Parameters
$category_id category id
$product_id product id
Fires in admin/inc/wp_easycart_admin_category.php · delete_category_product() +1 more place

Orders

Grouped by what they are about

97 actions

wp_easycart_admin_ecv2_order_render_modals
Fires after the admin order table’s built-in modals are printed, so extra order modals can be rendered.
Parameters
$this->table_id Id of the order table
Fires in admin/inc/wp_easycart_admin_order_table.php · print_custom_modals()
wp_easycart_admin_order_created PRO
Fires after an order is created from the admin order builder, before redirecting to the order screen.
Parameters
$order_id Id of the new order
$mode How it was created: draft, awaiting or send
Fires in inc/classes/core/wp_easycart_order_builder_pro.php · ajax_create()
wp_easycart_admin_order_date_updated
Fires after an order’s date is changed from the admin order screen.
Parameters
$order_id Order id
$storage_ts New order date as a Unix timestamp in the storage timezone
Fires in admin/inc/wp_easycart_admin.php · wp_easycart_ecv2_save_order_date()
wp_easycart_admin_order_details_after_customer_notes
Fires on the admin order details screen after the customer notes, where the checkout fields card is shown.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_after_address1
Fires on the admin order details screen after the billing address line 1.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_after_address2
Fires on the admin order details screen after the billing address line 2.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_after_city
Fires on the admin order details screen after the billing city, state and zip line.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_after_company_name
Fires on the admin order details screen after the billing company name.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_after_country_name
Fires on the admin order details screen after the billing country.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_after_name
Fires on the admin order details screen after the billing name.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_after_phone
Fires on the admin order details screen after the billing phone.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_after_title
Fires on the admin order details screen at the start of the billing address block, after the title.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_billing_content_end
Fires at the end of the billing address block on the admin order details screen, before the billing edit form is included.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_button_row_post
Fires on the admin order details screen after the button-row-pre action, so plugins can output buttons that appear in the items More menu.
Parameters
$this->order->order_id Order id
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_button_row_pre
Fires on the admin order details screen before the button-row-post action, so plugins can output buttons that appear in the items More menu.
Parameters
$this->order->order_id Order id
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_item
Fires in each order line item on the admin order details screen after the subscription details, so extra item information can be printed.
Parameters
$line_item Order line item row
Fires in admin/template/orders/orders/order-item.php
wp_easycart_admin_order_details_items_end
Fires after the last line item on the admin order details screen.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_left_content_end
Fires inside the order history wrapper on the admin order details screen, where activity entries are listed.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_line_item_end
Fires at the end of each line item on the admin order details screen, near the edit and delete line buttons.
Parameters
$line_item Order line item row
Fires in admin/template/orders/orders/order-item.php
wp_easycart_admin_order_details_shipping_after_address1
Fires on the admin order details screen after the shipping address line 1.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_shipping_after_address2
Fires on the admin order details screen after the shipping address line 2.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_shipping_after_city
Fires on the admin order details screen after the shipping city, state and zip line.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_shipping_after_company_name
Fires on the admin order details screen after the shipping company name.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_shipping_after_country_name
Fires on the admin order details screen after the shipping country.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_shipping_after_name
Fires on the admin order details screen after the shipping name.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_shipping_after_phone
Fires on the admin order details screen after the shipping phone.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_shipping_after_title
Fires on the admin order details screen at the start of the shipping address block, after the title.
Parameters
$this->order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_shipping_content_end
Fires at the end of the shipping address block on the admin order details screen, before the shipping edit form is included.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_details_totals_content_end
Fires at the end of the totals card on the admin order details screen.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_fields_card_actions
Fires in the header of the Checkout fields card on the admin order details screen so action buttons can be added.
Parameters
$order Order object
$rows Checkout field answers shown on the card (array)
Fires in inc/classes/core/class-wp-easycart-order-fields.php · admin_card()
wp_easycart_admin_order_fields_card_end
Fires at the end of the Checkout fields card on the admin order details screen.
Parameters
$order Order object
$rows Checkout field answers shown on the card (array)
Fires in inc/classes/core/class-wp-easycart-order-fields.php · admin_card()
wp_easycart_admin_order_line_added PRO
Fires after a line item is added to an existing order from the admin order screen.
Parameters
$order_id Order id
$orderdetail_id Id of the new order line
Fires in admin/inc/wp_easycart_admin_details_orders_pro_v2.php · ajax_order_add_line_full()
wp_easycart_admin_order_list_cell_{col}
Fires to print a custom column cell in the admin order list; {col} is the column format. Fires only for non-built-in columns.
Parameters
$result Order row
$col Column definition (array)
Fires in admin/inc/wp_easycart_admin_order_table.php · print_cell_content()
wp_easycart_admin_order_source_card
Fires in the Source card on the admin order screen, letting an extension print its own order source card.
Parameters
$row Order source row from order_row()
$order The order shown on the screen
Fires in inc/classes/core/class-wp-easycart-order-source.php · admin_card()
wp_easycart_admin_order_status_box_right
Fires in the order status area on the admin order details screen, next to the status control.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_admin_order_user_changed
Fires after an order is reassigned to a different customer account in admin.
Parameters
$order_id Order id
$user_id Account id the order belongs to now (0 for a guest checkout)
$previous_user_id Account id it belonged to before (0 for a guest checkout)
Fires in admin/inc/wp_easycart_admin_orders.php · ec_admin_ajax_update_order_user() +1 more place
wp_easycart_admin_orders_details_shipment
Fires in the shipment fields grid of the ship order drawer on the admin order details screen.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_credit_note_issued PRO
Fires after a credit note is issued for an invoice because the order was refunded.
Parameters
$record The ec_invoice row for the new credit note (object).
$invoice The invoice the credit note corrects (object).
$order_id ID of the order (int).
Fires in inc/classes/core/wp_easycart_invoices_pro.php · refunded()
wp_easycart_credit_note_pdf_after
Fires in the credit note PDF after the amounts table and before the closing block, so extra content can be added to the document.
Parameters
$document The credit note document object being built.
Fires in design/layout/base-responsive-v3/ec_credit_note_pdf.php
wp_easycart_ecv2_order_details_customer_card
Fires in the customer card of the admin order details screen, to print extra content such as lifetime stats and quick links, and again when the order’s customer account is changed.
Parameters
$order The order object being displayed
Fires in admin/inc/wp_easycart_admin_orders.php · ec_admin_ajax_update_order_user() +1 more place
wp_easycart_ecv2_order_details_fulfillment_banner
Fires while building the ‘next step’ fulfillment banner on the admin order details screen; output is captured and added to the banner.
Parameters
$order The order object
$state The order’s current fulfillment state
Fires in admin/inc/wp_easycart_admin_order_screen.php · next_panel_html()
wp_easycart_ecv2_order_details_header_chips
Fires in the header of the admin order details screen to print extra chips such as tags and insights, and again when the order’s customer account is changed.
Parameters
$order The order object being displayed
Fires in admin/inc/wp_easycart_admin_orders.php · ec_admin_ajax_update_order_user() +1 more place
wp_easycart_ecv2_order_details_header_menu
Fires at the end of the header actions menu on the admin order details screen, so extensions can add menu items.
Parameters
$order The order object being displayed
Fires in admin/template/orders/orders/order-details.php
wp_easycart_ecv2_order_details_main_top
Fires at the top of the main column of the admin order details screen, before the items and shipping card.
Parameters
$order The order object being displayed
Fires in admin/template/orders/orders/order-details.php
wp_easycart_ecv2_order_details_modals
Fires at the end of the admin order details screen so extensions can print their modal dialogs, such as tags, refund, fulfill and pickup.
Parameters
$order The order object being displayed
Fires in admin/template/orders/orders/order-details.php
wp_easycart_ecv2_order_details_packages
Fires in the items and shipping card of the admin order details screen to print the order’s packages, labels and tracking.
Parameters
$order Order row
$fulfillment_state Fulfillment state (string): fulfilled, partial, pickup, unfulfilled, digital or none
Fires in admin/template/orders/orders/order-details.php
wp_easycart_ecv2_order_details_payment_meta
Fires inside the coupon and gift card codes section of the payment drawer on the admin order details screen, so extensions can add payment meta fields.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_ecv2_order_details_payment_panel
Fires inside the payment method block of the admin order details screen so an extension can print its own payment panel in place of the default method line.
Parameters
$order The order object being displayed
Fires in admin/template/orders/orders/order-details.php
wp_easycart_ecv2_order_details_print_menu
Fires at the end of the print menu on the admin order details screen so extensions can add print or document links.
Parameters
$order Order row
Fires in admin/template/orders/orders/order-details.php
wp_easycart_ecv2_order_details_timeline_pre
Fires at the top of the Activity card body on the admin order details screen, before the order history list.
Parameters
$order The order object being displayed
Fires in admin/template/orders/orders/order-details.php
wp_easycart_ecv2_order_duplicate_fields
Fires in the duplicate order slide-out in the admin, after the keep options section, so extensions can add fields.
No parameters.
Fires in admin/template/orders/orders/order-duplicate-slideout.php
wp_easycart_ecv2_order_duplicated
Fires after an order is duplicated from the admin, once the new order is created and its status logged.
Parameters
$new_order_id ID of the newly created order
$order_id ID of the original order that was duplicated
$_POST The submitted duplicate form data
Fires in admin/inc/wp_easycart_admin_order_table.php · ecv2_order_duplicate_create()
wp_easycart_ecv2_order_fulfillment_cell_end
Fires at the end of the fulfillment cell in the admin orders table. Kept for backward compatibility; newer code uses wp_easycart_ecv2_order_row_actions_start.
Parameters
$result The order row being printed
$gate Pro feature gate information for the order table
Fires in admin/inc/wp_easycart_admin_order_table.php · print_fulfillment_cell()
wp_easycart_ecv2_order_quick_edit_fields
Fires in the order quick edit slide-out in the admin, after the shipping section and before the notify section, so extensions can add fields.
No parameters.
Fires in admin/template/orders/orders/order-quick-edit-slideout.php
wp_easycart_ecv2_order_quick_edit_saved
Fires after an order’s quick edit is saved in the admin, once any shipping confirmation email has been sent.
Parameters
$order_id Order ID
$status_id Order status ID
$expedited Whether expedited shipping is set
$method Shipping method
$carrier Shipping carrier
$tracking Tracking number
$email_sent Whether a shipping email was sent (bool)
Fires in admin/inc/wp_easycart_admin_order_table.php · ecv2_order_quick_edit_save()
wp_easycart_ecv2_order_row_actions_start
Fires at the start of each order’s row actions area in the admin orders list (table row and card view), left of the row menu, so extensions can add row tools.
Parameters
$result The order row being printed
ecv2_get_order_pro_gate() Pro feature gate information for the order table
Fires in admin/inc/wp_easycart_admin_order_table.php · print_table_row() +1 more place
wp_easycart_invoice_issued PRO
Fires after an invoice record is issued for an order.
Parameters
$record The ec_invoice row (object)
$order_id Order ID (int)
$source What triggered the invoice (string): placed, paid, sent or manual
Fires in inc/classes/core/wp_easycart_invoices_pro.php · issue()
wp_easycart_order_cancelled
Fires after an order is cancelled.
Parameters
$order_id Order ID (int)
$status_id The order’s status ID now (int)
$previous The status ID before the change, 0 when unknown (int)
Fires in inc/classes/core/class-wp-easycart-fulfillment.php · cancelled()
wp_easycart_order_delivered
Fires after every package on an order is delivered and the order moves to the Delivered status.
Parameters
$order_id Order ID (int)
Fires in inc/classes/core/class-wp-easycart-shipments.php · maybe_mark_delivered() +1 more place
wp_easycart_order_detail_inserted
Fires after an order line item (order detail row) is inserted, including subscription order lines.
Parameters
$orderdetail_id ID of the new order detail row
$cart_item The cart item or line object the row was created from
Fires in inc/classes/core/ec_db.php · insert_order_detail() +1 more place
wp_easycart_order_details_order_bottom_information
Fires at the end of the order information card on the admin order details screen, after the placed-from and terms details.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_order_details_order_date
Fires in the header of the admin order details screen, right after the order date.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_order_details_order_information
Fires in the customer section of the admin order details screen, before the contact edit form.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_order_details_refund_panel
Fires at the top of the items and refund card on the admin order details screen, before the line items.
No parameters.
Fires in admin/template/orders/orders/order-details.php
wp_easycart_order_fulfillment_lines_added
Fires when an order line is added to an order’s fulfillment tracking.
Parameters
(int) $line->order_id Order ID
array( (int) $orderdetail_id ) IDs of the order lines added (array of ints)
Fires in inc/classes/core/class-wp-easycart-fulfillment.php · on_line_added()
wp_easycart_order_lines_fulfillment_updated
Fires after the fulfillment status of one or more order lines is updated.
Parameters
(int) $order_id Order ID
$ids Order detail (line) IDs that were updated (array of ints)
$clean What changed: fulfillment_status and fulfillment_ref (array)
Fires in inc/classes/core/class-wp-easycart-fulfillment.php · set_lines()
wp_easycart_order_lines_refunded PRO
Fires after a refund is processed for an order from the admin, listing the lines refunded.
Parameters
$order_id Order ID
$refunded_lines Array of orderdetail_id => quantity refunded now
(float) $refund_amount Amount refunded now, lines, shipping, tax and fees together
Fires in admin/inc/wp_easycart_admin_details_orders_pro_v2.php · ajax_process_refund()
wp_easycart_order_marked_paid
Fires after an order is marked as paid, such as from the admin.
Parameters
$order_id Order ID (int)
$args Array with source, source_label, status, reference, amount, payment, date, receipt and balance (true for a payment toward the balance of an already paid order)
Fires in inc/classes/core/class-wp-easycart-order-pay.php · mark_paid()
wp_easycart_order_ready_to_fulfill
Fires once per order when it is paid and released to its fulfillment partners.
Parameters
$order_id Order ID (int)
Fires in inc/classes/core/class-wp-easycart-fulfillment.php · release()
wp_easycart_order_receipt_resent
Fires after a receipt email is resent for an order from the admin.
Parameters
$order_id Order ID
Fires in admin/inc/wp_easycart_admin_orders.php · ecv2_order_resend_receipt() +1 more place
wp_easycart_order_transaction_recorded
Fires after a payment or refund transaction is written to an order’s ledger.
Parameters
(int) $order_id Order ID
(string) $type Transaction type: payment or refund
round( (float) $row['amount'], 2 ) Amount (negative for an adjustment)
$row Array with source, gateway, reference, reason and details
Fires in inc/classes/core/class-wp-easycart-order-ledger.php · write_if_unchanged()
wp_easycart_packing_slip_line_item
Fires for each line item on the printable packing slip, after the item’s option and gift card details and before its quantity and prices.
Parameters
$ec_ps_line Order line item object.
$document The packing slip document being built.
Fires in design/layout/base-responsive-v3/ec_admin_packaging_slip.php
wp_easycart_print_receipt_optionitems
Fires for each line item on the printable receipt and the invoice PDF, after the item’s option and subscription details and before offer savings and prices.
Parameters
$ec_pr_item Order line item object (named $ec_in_item in the invoice PDF).
Fires in design/layout/base-responsive-v3/ec_account_print_receipt.php +1 more place
wpeasycart_account_order_details_right_top
Fires at the top of the right column of the account order details page.
Parameters
$this->order->order_id Order id.
$this->order Order object.
Fires in design/layout/base-responsive-v3/ec_account_order_details.php · initMap()
wpeasycart_admin_order_billing_update PRO
Fires when an admin updates an order’s billing address, before the change is saved.
Parameters
$order_id Order id.
$billing_first_name First name.
$billing_last_name Last name.
$billing_company_name Company.
$billing_address_line_1 Address line 1.
$billing_address_line_2 Address line 2.
$billing_city City.
$billing_state State.
$billing_country Country.
$billing_zip Postal code.
$billing_phone Phone.
Fires in admin/inc/wp_easycart_admin_orders_pro.php · update_billing_address()
wpeasycart_admin_order_customer_notes_update
Fires when an admin updates an order’s customer notes, before the change is saved.
Parameters
$order_id Order id.
$order_customer_notes New customer notes text.
Fires in admin/inc/wp_easycart_admin_orders.php · update_notes()
wpeasycart_admin_order_shipping_update PRO
Fires when an admin updates an order’s shipping address, before the change is saved.
Parameters
$order_id Order id.
$shipping_first_name First name.
$shipping_last_name Last name.
$shipping_company_name Company.
$shipping_address_line_1 Address line 1.
$shipping_address_line_2 Address line 2.
$shipping_city City.
$shipping_state State.
$shipping_country Country.
$shipping_zip Postal code.
$shipping_phone Phone.
Fires in admin/inc/wp_easycart_admin_orders_pro.php · update_shipping_address()
wpeasycart_admin_order_{type}_update
Fires when an admin updates an order’s address. {type} is the address type, billing or shipping.
Parameters
$order_id Order id.
$values['first_name'] First name.
$values['last_name'] Last name.
$values['company_name'] Company.
$values['address_line_1'] Address line 1.
$values['address_line_2'] Address line 2.
$values['city'] City.
$values['state'] State.
$values['country'] Country.
$values['zip'] Postal code.
$values['phone'] Phone.
Fires in admin/inc/wp_easycart_admin_order_screen.php · save_address()
wpeasycart_full_order_refund PRO
Fires after an order is fully refunded, whether through the admin, the mobile app API or a Stripe refund webhook.
Parameters
$order_id ID of the refunded order
Fires in wpeasycart.php · wp_easycart_stripe_charge_refunded() +12 more places
wpeasycart_order_deleted PRO
Fires after an order and its related rows are deleted in the admin, singly or in bulk.
Parameters
$order_id ID of the deleted order
Fires in admin/inc/wp_easycart_admin_orders.php · delete_order() +2 more places
wpeasycart_order_deleting
Fires just before an order is deleted in the admin, singly or in bulk.
Parameters
$order_id ID of the order about to be deleted
Fires in admin/inc/wp_easycart_admin_orders.php · delete_order() +1 more place
wpeasycart_order_detail_line_added PRO
Fires after an admin adds a line item to an existing order.
Parameters
$order_id ID of the order
$orderdetail_id ID of the new order line (ec_orderdetail row)
Fires in admin/inc/wp_easycart_admin_details_orders_pro_v2.php · ajax_order_add_line_full() +1 more place
wpeasycart_order_detail_line_delete PRO
Fires just before an admin deletes a line item from an order.
Parameters
$order_id ID of the order
$orderdetail_id ID of the order line being deleted
Fires in admin/inc/wp_easycart_admin_orders_pro.php · delete_line_item()
wpeasycart_order_detail_line_update PRO
Fires just before an admin’s edits to an order line item are saved, with the new values.
Parameters
$order_id ID of the order
$orderdetail_id ID of the order line
$title New line title
$model_number New model number
$quantity New quantity
$unit_price New unit price
$total_price New line total
$giftcard_id Gift card ID on the line
$gift_card_email Gift card recipient email
$gift_card_from_name Gift card sender name
$gift_card_to_name Gift card recipient name
$gift_card_message Gift card message
$optionitem_name_1 Name of option choice 1
$optionitem_name_2 Name of option choice 2
$optionitem_name_3 Name of option choice 3
$optionitem_name_4 Name of option choice 4
$optionitem_name_5 Name of option choice 5
Fires in admin/inc/wp_easycart_admin_orders_pro.php · edit_line_item()
wpeasycart_order_inserted
Fires after a new order and its line items are saved during checkout, whether or not the payment is complete.
Parameters
$order_id ID of the new order
$cart The cart object the order was built from
$order_totals The order totals object
$user The customer object placing the order
$payment_type Payment type used for the order
Fires in inc/classes/core/ec_order.php · submit_order() +1 more place
wpeasycart_order_paid PRO
Fires when an order becomes paid, such as after a successful payment, a webhook confirmation or an admin status change to a paid status.
Parameters
$order_id ID of the paid order
Fires in wpeasycart.php · load_ec_pre() +35 more places
wpeasycart_order_restored
Fires after each deleted order is restored (undone) in the admin.
Parameters
$order_id ID of the restored order
Fires in admin/inc/wp_easycart_admin_orders.php · restore_orders()
wpeasycart_order_shipped PRO ShipStation
Fires after an order is set to the shipped status, from the admin or when a shipment is recorded.
Parameters
$order_id ID of the shipped order
Fires in admin/inc/wp_easycart_admin_orders.php · set_order_status() +4 more places
wpeasycart_order_status_added
Fires after a custom order status is added in the admin.
Parameters
$status_id ID of the new order status
Fires in admin/inc/wp_easycart_admin_order_statuses.php · add_order_status()
wpeasycart_order_status_deleted
Fires after a custom order status is deleted (archived) in the admin.
Parameters
$status_id ID of the deleted order status
Fires in admin/inc/wp_easycart_admin_order_statuses.php · archieve_order_status()
wpeasycart_order_status_update PRO ShipStation
Fires after an order’s status changes, including from webhooks, refunds and shipments.
Parameters
$order_id ID of the order
$status The new order status ID
$previous The previous order status ID, passed where it is known
Fires in wpeasycart.php · wp_easycart_stripe_charge_refunded() +19 more places
wpeasycart_order_status_updated
Fires after an order status definition (its name, color or paid flag) is edited in the admin.
Parameters
$status_id ID of the edited order status
Fires in admin/inc/wp_easycart_admin_order_statuses.php · update_order_status() +1 more place
wpeasycart_order_success_pre
Fires when a completed order is confirmed for the current shopper, with the order row and its details available.
Parameters
$order_id order id (int)
$order_row order database row (object)
$order->orderdetails the order’s line item rows
Fires in wpeasycart.php · wpeasycart_order_completed()
wpeasycart_order_updated PRO ShipStation
Fires after an order is changed in the admin, such as customer notes, status, or shipping and tracking details.
Parameters
$order_id id of the order that changed (int)
Fires in admin/inc/wp_easycart_admin_orders.php · update_notes() +31 more places
wpeasycart_partial_order_refund PRO
Fires when an order is partially refunded, from the admin, a Stripe refund event, or a webhook.
Parameters
$order_id order id
$amount amount refunded in this action (0 when only the status changed)
$new_total total amount refunded on the order after this refund (float)
Fires in wpeasycart.php · wp_easycart_stripe_charge_refunded() +7 more places
wpeasycart_print_receipt_order_notes_after
Fires near the bottom of a printed receipt or invoice PDF, before the closing lines, so extra content can be added.
Parameters
$order_id order id
Fires in design/layout/base-responsive-v3/ec_account_print_receipt.php +1 more place
wpeasycart_tracking_info_update ShipStation
Fires just before an order’s shipping method, carrier and tracking number are saved in the admin.
Parameters
$order_id order id
$use_expedited_shipping 1 if expedited shipping is used (int)
$shipping_method shipping method name
$shipping_carrier carrier name
$tracking_number tracking number
Fires in admin/inc/wp_easycart_admin_orders.php · update_shipping_method_info() +4 more places

Customers and accounts

Grouped by what they are about

73 actions

wp_easycart_admin_subscriber_list_cell_{col}
Fires when the admin subscriber list prints a cell for a custom column; {col} is the column’s format value, so a callback prints that column’s cell content.
Parameters
$result The subscriber’s row (object).
$col The column definition (array).
Fires in admin/inc/wp_easycart_admin_subscriber_table.php · print_cell_content()
wp_easycart_admin_user_card_kpis
Fires inside each customer card on the admin customer list, before the card footer, so PRO can print the orders, spend and lifecycle KPI strip.
Parameters
$result The customer row (object).
$this The admin user table instance.
Fires in admin/inc/wp_easycart_admin_user_table.php · print_card()
wp_easycart_admin_user_details_loaded
Fires after the admin customer details screen has loaded a customer and their default billing and shipping addresses.
Parameters
$this The admin customer details object, holding the user, billing_info and shipping_info.
Fires in admin/inc/wp_easycart_admin_details_user.php · init_data()
wp_easycart_admin_user_details_v2_activity
Fires in the Activity panel of the admin customer details screen when PRO’s activity panel is available, so PRO can print the live activity.
Parameters
$this The admin customer details object.
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_details_v2_addresses_pro
Fires at the end of the Addresses panel on the admin customer details screen, after the billing and shipping address sections.
Parameters
$this The admin customer details object.
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_details_v2_advanced_pro
Fires in the Advanced panel of the admin customer details screen, after the Data Export section and before the Danger Zone.
Parameters
$this The admin customer details object.
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_details_v2_general_meta
Fires after the general readouts, such as Last Login, in the General panel of the admin customer details screen for an existing customer.
Parameters
$user The customer being edited (object).
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_details_v2_header_meta
Fires in the header line of the admin customer details screen, after the email, role and ID, for an existing customer.
Parameters
$user The customer being edited (object).
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_details_v2_menu
Fires in the header menu of the admin customer details screen, after the Export Customer CSV link, so extensions can add menu items.
Parameters
$user The customer being edited (object).
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_details_v2_notes_pro
Fires at the top of the Notes panel on the admin customer details screen, before the Admin Notes section.
Parameters
$this The admin customer details object.
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_details_v2_prefs_pro
Fires at the end of the Tax & Preferences panel on the admin customer details screen, after the VAT registration field.
Parameters
$this The admin customer details object.
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_details_v2_wordpress_account
Fires in the WordPress account area of the General panel on the admin customer details screen, where the linked WordPress user is shown.
Parameters
$user The customer (object).
$wp_user The linked WordPress user (WP_User), or false when none is linked.
Fires in admin/template/users/users/user-details-v2.php
wp_easycart_admin_user_list_views PRO
Fires above the customer list table, on both the Accounts list and the PRO Guest Checkouts list, so PRO can print an Accounts / Guest Checkouts view switcher.
No parameters.
Fires in admin/template/users/users/user-list.php +1 more place
wp_easycart_admin_user_quick_edit_fields
Fires at the end of the fields in the customer quick edit slideout, after the Send Password Reset Email button.
No parameters.
Fires in admin/template/users/users/quick-edit-user-slideout.php
wp_easycart_login_success_account
Fires on the account dashboard page right after a shopper logs in, when the URL carries account_success=login_success.
No parameters.
Fires in admin/elementor/wp-easycart-elementor-account-dashboard-messages-widget.php +2 more places
wp_easycart_order_connected
Fires after a customer claims a guest order into their store account.
Parameters
$order_id Order ID (int)
$user_id ID of the store account (ec_user) the order now belongs to (int)
Fires in inc/classes/account/ec_accountpage.php · process_order_claim()
wp_easycart_privacy_erased
Fires after a customer’s store data is erased through the WordPress personal data eraser, so extensions can remove copies held elsewhere.
Parameters
$email Email address of the erased customer.
Fires in inc/classes/core/class-wp-easycart-privacy.php · erase_personal_data()
wp_easycart_user_activity_logged
Fires after a customer activity entry is logged.
Parameters
$activity_id Id of the new activity row.
$user_id Customer id.
$type Activity type.
$args Extra details about the activity.
Fires in inc/classes/core/ec_user_activity.php · log()
wp_easycart_user_imported
Fires after a customer is created or updated by the customer import.
Parameters
$uid Customer id.
'create' or 'update' Whether the customer was created or updated.
Fires in admin/inc/wp_easycart_admin_user_import.php · apply() +1 more place
wp_easycart_usersync_access_granted Enable WP Users
Fires after a WordPress user is granted a role by User Sync.
Parameters
(int) $wp_user->ID WordPress user id.
$role Role granted.
$source What granted it, such as order:N, sub:N or store_role:label.
Fires in includes/class-wp-easycart-usersync-roles.php · grant()
wp_easycart_usersync_access_revoked Enable WP Users
Fires after a role is removed from a WordPress user by User Sync.
Parameters
(int) $wp_user->ID WordPress user id.
$role Role removed.
$source What granted the role.
Fires in includes/class-wp-easycart-usersync-roles.php · revoke()
wp_easycart_wordpress_user_email_copied
Fires after a WordPress user’s email change is copied to the linked store account.
Parameters
$store_user_id Store customer id.
$email New email.
$old_email Previous email.
Fires in inc/classes/core/class-wp-easycart-wordpress-users.php · wp_profile_update()
wp_easycart_wordpress_user_linked
Fires after a WordPress user is linked to a store account.
Parameters
$wp_user_id WordPress user id.
$store_user_id Store customer id.
$how How it was linked: made, email, confirmed, admin, login or wordpress.
Fires in inc/classes/core/class-wp-easycart-wordpress-users.php · link()
wp_easycart_wordpress_user_store_account_created
Fires after a store account is created for a WordPress user.
Parameters
$store_user_id New store customer id.
$wp_user WordPress user object.
Fires in inc/classes/core/class-wp-easycart-wordpress-users.php · resolve_store_account()
wp_easycart_wordpress_user_unlinked
Fires after a WordPress user is unlinked from a store account.
Parameters
(int) $wp_user_id WordPress user id.
$store_user_id Store customer id.
Fires in inc/classes/core/class-wp-easycart-wordpress-users.php · unlink_store()
wpeasycart_account_added PRO
Fires after a customer account is created at checkout or subscription sign-up.
Parameters
$user_id New customer id.
sanitize_email( $_POST['ec_contact_email'] ) Customer email.
$_POST['ec_contact_password'] Password the customer entered.
'checkout' Where the account was created, such as checkout or subscription.
Fires in wpeasycart.php · ec_ajax_subscription_create_account() +7 more places
wpeasycart_account_deleted PRO
Fires after a customer account is deleted.
Parameters
$id Customer id.
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_customer() +3 more places
wpeasycart_account_deleting
Fires just before a customer account is deleted.
Parameters
$id Customer id.
Fires in admin/inc/wp_easycart_admin_safe_delete.php · execute_customer() +2 more places
wpeasycart_account_links
Fires in the account page navigation menu, before the built-in links.
No parameters.
Fires in design/layout/base-responsive-v3/ec_account_billing_information.php +13 more places
wpeasycart_account_links_after_billing
Fires in the account page navigation menu, after the billing information link.
No parameters.
Fires in design/layout/base-responsive-v3/ec_account_billing_information.php +13 more places
wpeasycart_account_links_after_password
Fires in the account page navigation menu, after the password link.
No parameters.
Fires in design/layout/base-responsive-v3/ec_account_billing_information.php +13 more places
wpeasycart_account_links_after_personal
Fires in the account page navigation menu, after the personal information link.
No parameters.
Fires in design/layout/base-responsive-v3/ec_account_billing_information.php +13 more places
wpeasycart_account_links_after_shipping
Fires in the account page navigation menu, after the shipping information link.
No parameters.
Fires in design/layout/base-responsive-v3/ec_account_billing_information.php +13 more places
wpeasycart_account_links_after_subscriptions
Fires in the account page navigation menu, after the subscriptions link.
No parameters.
Fires in design/layout/base-responsive-v3/ec_account_billing_information.php +13 more places
wpeasycart_account_links_end
Fires in the account page navigation menu, after the sign out link, at the end of the menu.
No parameters.
Fires in design/layout/base-responsive-v3/ec_account_billing_information.php +13 more places
wpeasycart_account_login_post
Fires after the account login page is displayed.
No parameters.
Fires in inc/classes/account/ec_accountpage.php · display_account_login_page()
wpeasycart_account_note_added PRO
Fires after an admin adds a note to a customer account.
Parameters
$user_id Customer id.
$note Note text.
Fires in admin/inc/wp_easycart_admin_user_pro.php · add_user_note()
wpeasycart_account_page_pre
Fires on the account page before it is displayed, when the customer is not forced to a login or password page.
No parameters.
Fires in inc/classes/account/ec_accountpage.php · display_account_page()
wpeasycart_account_personal_information_fields
Fires in the account personal information form, above the buttons, so extensions can add fields.
Parameters
$this Account page object (null in the Elementor widget).
Fires in admin/elementor/wp-easycart-elementor-account-personal-widget.php +2 more places
wpeasycart_account_pre_login_failed_redirect
Fires when a customer login fails, just before the shopper is redirected back with a login failed error.
Parameters
$email Email entered.
$password Password entered.
Fires in inc/classes/account/ec_accountpage.php · process_login()
wpeasycart_account_restored
Fires after a deleted customer account is restored.
Parameters
$user_id Restored customer id.
Fires in admin/inc/wp_easycart_admin_safe_delete.php · restore() +1 more place
wpeasycart_account_top
Fires at the top of the account page, after any error and success messages.
No parameters.
Fires in admin/elementor/modules/account/includes/class-wp-easycart-elementor-account.php · print_account_top() +1 more place
wpeasycart_account_updated PRO
Fires after a customer account is updated in the admin, for example when it is edited or approved.
Parameters
$user_id Customer id.
Fires in admin/inc/wp_easycart_admin_details_user_v2.php · ecudv2_user_approve() +8 more places
wpeasycart_activation_email_resent
Fires after an admin resends the account activation email to a pending customer.
Parameters
$user->email Customer email.
Fires in admin/inc/wp_easycart_admin_users.php · resend_activation() +2 more places
wpeasycart_admin_login_as_user
Fires when an admin logs in as a customer, before the switch, for audit use.
Parameters
(int) $user->user_id Customer id.
get_current_user_id() Id of the admin acting.
Fires in admin/inc/wp_easycart_admin_users.php · login_as_user()
wpeasycart_admin_user_anonymized PRO
Fires after an admin anonymizes a customer account, once the personal data has been cleared.
Parameters
$user_id ID of the anonymized customer (ec_user.user_id)
Fires in admin/inc/wp_easycart_admin_user_details_pro_v2.php · ecudv2_user_anonymize()
wpeasycart_admin_user_anonymizing PRO
Fires just before an admin anonymizes a customer account, while the original email is still stored.
Parameters
$user_id ID of the customer being anonymized (ec_user.user_id)
(string) $user->email The customer’s email address before anonymizing
Fires in admin/inc/wp_easycart_admin_user_details_pro_v2.php · ecudv2_user_anonymize()
wpeasycart_admin_user_merged PRO
Fires after an admin merges one customer account into another, once orders, subscriptions and other records have moved.
Parameters
$source_id ID of the customer account that was merged away
$target_id ID of the customer account that received the records
Fires in admin/inc/wp_easycart_admin_user_details_pro_v2.php · ecudv2_user_merge()
wpeasycart_admin_user_updated
Fires after a customer record is changed in the admin, by an inline edit in the customer table or a bulk edit.
Parameters
$user_id ID of the updated customer (ec_user.user_id)
$data (array) The changed fields, column name => new value
Fires in admin/inc/wp_easycart_admin_user_table.php · ecv2_user_inline_update() +2 more places
wpeasycart_change_password_top
Fires at the top of the change password form on the account page, so extra fields or notices can be added.
No parameters.
Fires in admin/elementor/wp-easycart-elementor-account-password-widget.php +1 more place
wpeasycart_custom_verify_new_password_failed
Fires when a new password is rejected by a custom validator (the wpeasycart_custom_verify_new_password filter) during a password reset or password change.
Parameters
$new_password The rejected new password, unsanitized
Fires in inc/classes/account/ec_accountpage.php · process_reset_password() +1 more place
wpeasycart_dashboard_recent_order_item
Fires for each item in the recent orders list on the customer account dashboard, so extra content can be added after the item title.
Parameters
$order_item The order item (order detail display) object being shown
Fires in admin/elementor/wp-easycart-elementor-account-dashboard-orders-widget.php +1 more place
wpeasycart_dashboard_top
Fires at the top of the left column of the account dashboard, before the recent orders heading.
No parameters.
Fires in design/layout/base-responsive-v3/ec_account_dashboard.php
wpeasycart_insert_subscriber
Fires when an email address is about to be added to the newsletter subscriber list.
Parameters
$email Subscriber email address
$first_name Subscriber first name
$last_name Subscriber last name
Fires in inc/classes/core/ec_db.php · insert_subscriber()
wpeasycart_login_failed
Fires when a customer login attempt fails, on the account page or in the cart login.
Parameters
$email Email address entered on the failed login
Fires in inc/classes/account/ec_accountpage.php · process_login() +1 more place
wpeasycart_login_success PRO
Fires after a customer signs in successfully, including when an admin uses Login as Customer.
Parameters
$email Email address of the signed in customer
Fires in admin/inc/wp_easycart_admin_users.php · login_as_user() +3 more places
wpeasycart_logout
Fires when a signed in customer logs out, from the account page or the cart.
Parameters
$user_id (int) ID of the customer who is logging out
Fires in inc/classes/account/ec_accountpage.php · process_logout() +1 more place
wpeasycart_password_changed
Fires after a customer’s store password is changed, either through the password reset form or the account password update.
Parameters
$user_id store customer id
$password_hash the new hashed password
Fires in inc/classes/account/ec_accountpage.php · process_reset_password() +1 more place
wpeasycart_password_rehashed
Fires after a customer’s stored password hash is upgraded to a newer hash during a successful login.
Parameters
$user_id store customer id
$rehashed the new password hash
Fires in inc/classes/core/ec_db.php · get_user_login()
wpeasycart_password_reset_complete
Fires after a customer completes the password reset form and the new password hash is saved.
Parameters
$user->user_id store customer id
Fires in inc/classes/account/ec_accountpage.php · process_reset_password()
wpeasycart_password_reset_forced
Fires when the merchant forces a password reset on a store customer account.
Parameters
(int) $store_user_id store customer id
Fires in inc/classes/core/class-wp-easycart-wordpress-users.php · password_reset_forced()
wpeasycart_password_reset_requested
Fires after a password reset email is sent to a customer who requested one.
Parameters
$user->user_id store customer id
Fires in inc/classes/account/ec_accountpage.php · process_retrieve_password()
wpeasycart_password_set
Fires whenever a store customer’s password is set, so it can be carried to a linked WordPress user.
Parameters
$store_user_id store customer id (int)
$password the password as typed, slashed the way WordPress forms post it
$context how it was set: change, reset, or admin
Fires in inc/classes/core/class-wp-easycart-wordpress-users.php · password_set()
wpeasycart_password_updated
Fires after a signed-in customer changes their password on the My Account password page, once the current password was verified.
Parameters
$user_id store customer id
Fires in inc/classes/account/ec_accountpage.php · process_update_password()
wpeasycart_pre_login_attempt
Fires just before a login attempt is checked against the store’s customer accounts, from My Account or checkout.
Parameters
$email email address entered
Fires in inc/classes/account/ec_accountpage.php · process_login() +1 more place
wpeasycart_pre_login_password_display
Fires just before the password field is displayed on the store login form.
No parameters.
Fires in admin/elementor/wp-easycart-elementor-account-login-widget.php +6 more places
wpeasycart_pre_password_display
Fires just before the new password field is displayed on the account change password form.
No parameters.
Fires in admin/elementor/wp-easycart-elementor-account-password-widget.php +5 more places
wpeasycart_user_added
Fires after a new customer is created by the admin customer import.
Parameters
$uid id of the new customer
Fires in admin/inc/wp_easycart_admin_user_import.php · apply()
wpeasycart_user_role_added
Fires after a new customer role is created in the admin.
Parameters
$id id of the new role
Fires in admin/inc/wp_easycart_admin_user_role_table.php · ecv2_role_create()
wpeasycart_user_role_deleted
Fires after a customer role is deleted in the admin.
Parameters
$id id of the deleted role
Fires in admin/inc/wp_easycart_admin_user_role_table.php · ecv2_role_delete()
wpeasycart_user_role_deleting
Fires just before a customer role is deleted in the admin.
Parameters
$id id of the role about to be deleted
Fires in admin/inc/wp_easycart_admin_user_role_table.php · ecv2_role_delete()
wpeasycart_user_role_updated
Fires after a customer role is saved or its admin access is toggled in the admin.
Parameters
$id role id
Fires in admin/inc/wp_easycart_admin_user_role_table.php · ecv2_role_toggle_access() +1 more place
wpeasycart_user_updated
Fires after a customer is updated by the admin import or when their role is changed.
Parameters
$uid customer id
Fires in admin/inc/wp_easycart_admin_user_import.php · apply() +4 more places

Subscriptions

Grouped by what they are about

40 actions

wp_easycart_admin_product_details_subscription_fields
Fires inside the Subscription section of the admin product edit screen so extensions can add recurring billing fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_subscription_details_basic_fields PRO
Fires in the Subscription Information section of the admin subscription details screen so PRO can print the basic fields.
No parameters.
Fires in admin/template/orders/subscriptions/subscriptions-details.php
wp_easycart_admin_subscription_details_customer_info_fields PRO
Fires in the Customer Information section of the admin subscription details screen so PRO can print the customer fields.
No parameters.
Fires in admin/template/orders/subscriptions/subscriptions-details.php
wp_easycart_admin_subscription_details_paypal_info_fields PRO
Fires in the PayPal information section of the admin subscription details screen so PRO can print PayPal-specific subscription fields.
No parameters.
Fires in admin/template/orders/subscriptions/subscriptions-details.php
wp_easycart_admin_subscription_details_product_info_fields PRO
Fires in the Product Information section of the admin subscription details screen so PRO can print the product fields.
No parameters.
Fires in admin/template/orders/subscriptions/subscriptions-details.php
wp_easycart_admin_subscription_details_stripe_info_fields PRO
Fires in the Stripe Information section of the admin subscription details screen so PRO can print Stripe-specific subscription fields.
No parameters.
Fires in admin/template/orders/subscriptions/subscriptions-details.php
wp_easycart_admin_subscription_details_subscription_terms_fields PRO
Fires in the Subscription Terms & Dates section of the admin subscription details screen so PRO can print the terms and date fields.
No parameters.
Fires in admin/template/orders/subscriptions/subscriptions-details.php
wp_easycart_admin_subscription_plans_details
Fires when the subscription plans admin page is showing the add-new or edit plan form, so PRO can print the plan details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_subscription_plans.php · load_subscription_plans_list()
wp_easycart_admin_subscription_plans_details_basic_fields PRO
Fires in the Subscription Plan Setup section of the subscription plan edit form so PRO can print the basic plan fields.
No parameters.
Fires in admin/template/products/subscriptions/subscription-plans-details.php
wp_easycart_admin_subscription_plans_list
Fires when the subscription plans admin page shows the plan list rather than the add-new or edit form.
No parameters.
Fires in admin/inc/wp_easycart_admin_subscription_plans.php · load_subscription_plans_list()
wp_easycart_admin_subscriptions_details
Fires when the subscriptions admin page is showing the add-new or edit subscription form, so PRO can print the subscription details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_subscriptions.php · load_subscriptions_list()
wp_easycart_admin_subscriptions_list
Fires when the subscriptions admin page shows the subscription list rather than the details form.
No parameters.
Fires in admin/inc/wp_easycart_admin_subscriptions.php · load_subscriptions_list()
wp_easycart_cart_subscription_after_grand_total
Fires in the subscription checkout totals right after the grand total row, before the sign-up fee notice.
Parameters
$product The subscription product being purchased (object).
Fires in design/layout/base-responsive-v3/ec_cart_subscription.php · ec_admin_save_cart_options() +1 more place
wp_easycart_product_details_subscription_button_onclick
Fires inside the onclick attribute of a subscription sign-up button, so callbacks can echo JavaScript that runs before the button’s own handler.
Parameters
$product The subscription product.
Fires in admin/elementor/modules/product-buy/includes/class-wp-easycart-product-buy-area.php · render() +2 more places
wp_easycart_product_subscription_button
Fires inside the opening tag of the sign-up link for a subscription product in product listings, so callbacks can echo extra HTML attributes.
Parameters
$product The subscription product.
Fires in design/layout/base-responsive-v3/ec_product.php +3 more places
wp_easycart_product_subscription_qv_button
Fires inside the opening tag of the subscription link in the product quick view, so callbacks can echo extra HTML attributes.
Parameters
$product The subscription product.
Fires in design/layout/base-responsive-v3/ec_product.php +1 more place
wp_easycart_stripe_subscription_onchange
Fires inside the Stripe card field’s change handler on the subscription checkout page, so callbacks can echo JavaScript.
Parameters
$product The subscription product.
Fires in design/layout/base-responsive-v3/ec_cart_subscription.php · ec_admin_save_cart_options()
wp_easycart_subscription_admin_action PRO
Fires after an admin changes a subscription from the subscriptions list, such as changing its plan or canceling it.
Parameters
$subscription_id Subscription id.
$action Action taken: change_plan, cancel_period_end or cancel_now.
$details Extra details, such as the old and new plan or the refund flag (array).
Fires in admin/inc/wp_easycart_admin_subscription_table.php · ecv2_sub_change_plan() +2 more places
wp_easycart_subscription_ended
Fires when Stripe reports a subscription has ended and the store has canceled it and sent the ended email.
Parameters
$subscription Subscription object.
$user Store customer.
$webhook_data Stripe webhook data.
Fires in wpeasycart.php · wp_easycart_webhook_catch()
wp_easycart_subscription_modifier_post_db_insert
Fires after an advanced option chosen for a subscription order is saved to the database.
Parameters
$order_option_id Id of the saved order option row.
$advanced_option The advanced option that was saved.
Fires in inc/classes/core/ec_db.php · insert_subscription_order()
wp_easycart_subscription_reactivated
Fires when a Stripe payment webhook brings a failed or canceled subscription back to Active.
Parameters
$subscription Subscription object.
$webhook_data Stripe webhook data.
Fires in wpeasycart.php · wp_easycart_webhook_catch()
wp_easycart_subscription_refunded PRO
Fires after a Stripe refund is issued while canceling a subscription from the admin.
Parameters
$id Subscription id.
$charge Stripe charge id.
$amt Amount refunded.
Fires in admin/inc/wp_easycart_admin_subscription_table.php · ecv2_sub_cancel()
wp_easycart_subscription_started
Fires after a new subscription is created at checkout.
Parameters
$subscription_id Id of the new subscription.
Fires in inc/classes/cart/ec_cartpage.php · submit_stripe_quick_subscription() +1 more place
wp_easycart_subscription_status_synced
Fires after a Stripe webhook updates a subscription’s status in the store.
Parameters
$subscription_row The subscription row before the change.
$status_map[ $webhook_data->status ] The new WP EasyCart status.
$webhook_data Stripe webhook data.
Fires in wpeasycart.php · wp_easycart_webhook_catch()
wp_easycart_subscription_top
Fires at the top of the subscription checkout page, before the subscription form.
Parameters
$product The subscription product.
Fires in design/layout/base-responsive-v3/ec_cart_subscription.php · ec_admin_save_cart_options()
wp_easycart_subscription_upcoming_payment
Fires after Stripe warns of an upcoming subscription payment and the store sends the upcoming payment email.
Parameters
$subscription Subscription object.
$user Store customer.
$webhook_data Stripe webhook data.
Fires in wpeasycart.php · wp_easycart_webhook_catch()
wpeasycart_account_subscription_details_after
Fires at the end of the account subscription details page.
Parameters
$ec_sub Subscription object.
Fires in design/layout/base-responsive-v3/ec_account_subscription_details.php
wpeasycart_account_subscription_details_before
Fires on the account subscription details page, before the subscription information.
Parameters
$ec_sub Subscription object.
Fires in design/layout/base-responsive-v3/ec_account_subscription_details.php
wpeasycart_cart_subscription_updated
Fires when the subscription page or its AJAX totals are built, after the product’s weight and quantity are set for shipping and before shipping is calculated.
Parameters
$product The subscription product object
$subscription_quantity Quantity of the subscription
Fires in wpeasycart.php · wp_easycart_subscription_output_ajax_totals() +4 more places
wpeasycart_custom_subscription_order_email
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the subscription trial start or trial ending email.
Parameters
$from From email address (order from email option)
$to Subscriber email address
$bcc BCC email addresses option
$subject Email subject
$message Email body
Fires in inc/classes/core/ec_subscription.php · send_trial_start_email() +3 more places
wpeasycart_subscription_canceled PRO
Fires after a subscription is canceled by the merchant in the admin.
Parameters
$subscription->subscription_id subscription id
Fires in admin/inc/wp_easycart_admin_subscriptions_pro.php · cancel_subscription() +3 more places
wpeasycart_subscription_cancelled
Fires when a customer cancels their own subscription from My Account.
Parameters
$this->user->user_id store customer id
$subscription_id subscription id
Fires in inc/classes/account/ec_accountpage.php · process_cancel_subscription() +1 more place
wpeasycart_subscription_deleting PRO
Fires just before a subscription is deleted in the admin, singly or in bulk.
Parameters
$subscription_id id of the subscription about to be deleted
Fires in admin/inc/wp_easycart_admin_subscriptions_pro.php · delete_subscription() +2 more places
wpeasycart_subscription_first_order_inserted
Fires after the first order for a new subscription is created at checkout.
Parameters
$order_id id of the new order
Fires in inc/classes/cart/ec_cartpage.php · submit_stripe_quick_subscription_payment() +1 more place
wpeasycart_subscription_paid
Fires when a Stripe webhook reports a paid subscription renewal and the order is recorded.
Parameters
$order_id order id for the paid renewal
Fires in wpeasycart.php · wp_easycart_webhook_catch()
wpeasycart_subscription_plan_added PRO
Fires after a new subscription plan is created in the admin.
Parameters
$subscription_plan_id id of the new plan
Fires in admin/inc/wp_easycart_admin_subscription_plans_pro.php · insert_subscription_plan() +1 more place
wpeasycart_subscription_plan_deleted PRO
Fires after a subscription plan is deleted in the admin.
Parameters
$subscription_plan_id id of the deleted plan
Fires in admin/inc/wp_easycart_admin_subscription_plans_pro.php · delete_subscription_plan() +1 more place
wpeasycart_subscription_plan_deleting PRO
Fires just before a subscription plan is deleted in the admin.
Parameters
$subscription_plan_id id of the plan about to be deleted
Fires in admin/inc/wp_easycart_admin_subscription_plans_pro.php · delete_subscription_plan() +1 more place
wpeasycart_subscription_plan_updated PRO
Fires after a subscription plan is saved in the admin.
Parameters
$subscription_plan_id plan id
Fires in admin/inc/wp_easycart_admin_subscription_plans_pro.php · update_subscription_plan() +2 more places
wpeasycart_subscription_updated PRO
Fires after a subscription is changed in the admin, such as a product swap, a Stripe sync or a scheduled cancel.
Parameters
$subscription_id subscription id
Fires in admin/inc/wp_easycart_admin_subscriptions_pro.php · update_subscription() +3 more places

Shipping

Grouped by what they are about

28 actions

wp_easycart_cart_shipping_post_methods
Fires on the checkout shipping method page right after the list of shipping methods.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart_shipping_method.php
wp_easycart_display_shipping_method_post
Fires after the checkout shipping method step has been displayed.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · display_shipping_method()
wp_easycart_display_shipping_method_pre
Fires before the checkout shipping method step is displayed.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · display_shipping_method()
wp_easycart_live_rate_pre_rates
Fires when live-rate shipping options are being built, before the rates are listed.
No parameters.
Fires in inc/classes/core/ec_shipping.php · get_live_based_shipping_options()
wp_easycart_method_rate_pre_rates
Fires when method-based shipping options are being built, before the rates are listed.
No parameters.
Fires in inc/classes/core/ec_shipping.php · get_method_based_shipping_options()
wp_easycart_order_packages_saved
Fires after an order’s packages are saved.
Parameters
$order_id Order ID
Fires in inc/classes/core/class-wp-easycart-shipments.php · save_packages()
wp_easycart_order_shipment_added
Fires after a shipment (package) with its tracking is recorded for an order, before the shipping email is sent.
Parameters
$order_id Order ID (int)
$shipment_id Package ID (0 before the database update) (int)
$args What was recorded (array)
Fires in inc/classes/core/class-wp-easycart-shipments.php · record()
wp_easycart_order_shipment_tracking
Fires when a package’s tracking status is updated.
Parameters
(int) $row->order_id Order ID
(int) $shipment_id Package ID
$status Tracking status (string), such as delivered
(string) $detail The carrier’s status text
Fires in inc/classes/core/class-wp-easycart-shipments.php · track()
wp_easycart_order_shipment_voided
Fires after a package’s shipment is voided.
Parameters
(int) $row->order_id Order ID
(int) $shipment_id Package ID
$row The package row as it was before it was voided (object)
Fires in inc/classes/core/class-wp-easycart-shipments.php · void()
wp_easycart_order_shipping_groups_recorded
Fires after an order’s shipping groups (one per shipping provider) are recorded.
Parameters
$order_id Order ID (int)
$entries One entry per provider (array)
Fires in inc/classes/core/class-wp-easycart-shipping-groups.php · record()
wp_easycart_shipping_email_after_tracking
Fires in the shipping confirmation email after the tracking information block.
Parameters
$ec_ship_order Order being shipped.
Fires in design/layout/base-responsive-v3/ec_shipping_email.php
wp_easycart_shipping_print_custom_shipping_options
Fires in place of the built-in shipping options when the wp_easycart_shipping_should_print_custom_options filter returns true, so a callback can print its own options.
No parameters.
Fires in inc/classes/core/ec_shipping.php · print_store_shipping_options()
wp_easycart_shippo_label_bought Shippo
Fires after a shipping label is bought through Shippo.
Parameters
$order_id Order id.
(int) $shipment_id Package id.
$transaction Shippo transaction data (array).
Fires in includes/class-wp-easycart-shippo-labels.php · buy()
wp_easycart_shippo_order_sent Shippo
Fires after an order is sent to Shippo successfully.
Parameters
$order_id Order id.
$shippo_id Shippo’s id for the order.
$result['body'] Response body from Shippo.
Fires in includes/class-wp-easycart-shippo-orders.php · send()
wp_easycart_shipstation_order_touched ShipStation
Fires when an order changes in a way ShipStation should see.
Parameters
$order_id Order id.
Fires in includes/class-wp-easycart-shipstation.php · touch()
wp_easycart_shipstation_stock_updated ShipStation
Fires after a product or option combination’s stock is updated from a ShipStation inventory sync.
Parameters
(int) $row->product_id Product id.
(int) $stock[ $sku ] New stock quantity (int).
Fires in includes/class-wp-easycart-shipstation-inventory.php · sync() +1 more place
wp_easycart_stamps_label_bought Stamps.com
Fires after a shipping label is bought through Stamps.com.
Parameters
$order_id Order id.
(int) $shipment_id Package id.
$label Stamps.com response data (array).
Fires in includes/class-wp-easycart-stamps-labels.php · buy()
wpeasycart_shipping_rate_added PRO
Fires after a shipping rate is added in the admin, including live carrier rates.
Parameters
$id id of the new shipping rate
Fires in admin/inc/wp_easycart_admin_shipping_rates_v2.php · ajax_add() +1 more place
wpeasycart_shipping_rate_deleting PRO
Fires just before a shipping rate is deleted in the admin.
Parameters
$id id of the shipping rate about to be deleted
Fires in admin/inc/wp_easycart_admin_shipping_rates_v2.php · ajax_delete() +1 more place
wpeasycart_shippingrate_deleted
Fires for each shipping rate after all live carrier rates are cleared for a carrier from the store status screen.
Parameters
(int) $id id of the deleted shipping rate
Fires in admin/inc/wp_easycart_admin_store_status.php · ajax_clear_carrier_rates()
wpeasycart_shippingrate_deleting
Fires for each shipping rate just before all live carrier rates are cleared for a carrier from the store status screen.
Parameters
(int) $id id of the shipping rate about to be deleted
Fires in admin/inc/wp_easycart_admin_store_status.php · ajax_clear_carrier_rates()
wpeasycart_zone_added
Fires after a new shipping zone is created in the admin.
Parameters
$zone_id id of the new zone
Fires in admin/inc/wp_easycart_admin_shipping_settings_v2.php · ajax_zone_add()
wpeasycart_zone_deleted
Fires after a shipping zone is deleted in the admin.
Parameters
$zone_id id of the deleted zone
Fires in admin/inc/wp_easycart_admin_shipping_settings_v2.php · ajax_zone_delete()
wpeasycart_zone_deleting
Fires just before a shipping zone is deleted in the admin.
Parameters
$zone_id id of the zone about to be deleted
Fires in admin/inc/wp_easycart_admin_shipping_settings_v2.php · ajax_zone_delete()
wpeasycart_zone_location_added
Fires after a place (country or state) is added to a shipping zone in the admin shipping settings.
Parameters
$item_id (int) ID of the new zone-to-location row.
Fires in admin/inc/wp_easycart_admin_shipping_settings_v2.php · ajax_zone_item_add()
wpeasycart_zone_location_deleted
Fires after a zone-to-location row is deleted, either individually or as part of deleting a whole zone.
Parameters
$item_id (int) ID of the deleted zone-to-location row.
Fires in admin/inc/wp_easycart_admin_shipping_settings_v2.php · ajax_zone_delete() +1 more place
wpeasycart_zone_location_deleting
Fires just before a zone-to-location row is deleted, either individually or as part of deleting a whole zone.
Parameters
$item_id (int) ID of the zone-to-location row about to be deleted.
Fires in admin/inc/wp_easycart_admin_shipping_settings_v2.php · ajax_zone_delete() +1 more place
wpeasycart_zone_updated
Fires after a shipping zone is renamed in the admin shipping settings.
Parameters
$zone_id (int) ID of the renamed zone.
Fires in admin/inc/wp_easycart_admin_shipping_settings_v2.php · ajax_zone_rename()

Taxes and fees

Grouped by what they are about

21 actions

wp_easycart_admin_fee_details
Fires on the admin fees page when adding or editing a fee, to render the fee details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_fee.php · load_fee_list()
wp_easycart_admin_fee_details_basic_fields PRO
Fires inside the Flex-Fee Setup section of the fee details form in admin so fields can be added.
No parameters.
Fires in admin/template/settings/fee/fee-details.php
wp_easycart_admin_fee_list
Fires on the admin fees page, when not adding or editing, to render the fee list.
No parameters.
Fires in admin/inc/wp_easycart_admin_fee.php · load_fee_list()
wp_easycart_admin_product_details_tax_fields
Fires inside the Tax section of the admin product edit screen so extensions can add tax-related fields.
No parameters.
Fires in admin/template/products/products/product-details-v2.php
wpeasycart_cart_subscription_pre_tax
Fires while totals are calculated for a subscription product, just before tax services set up the subscription for tax.
Parameters
$product The subscription product object
$subscription_quantity Quantity of the subscription
$shipping_total Shipping total for the subscription
$handling_total Handling total for the subscription
$discount_amount Discount amount applied to the subscription
Fires in wpeasycart.php · wp_easycart_subscription_output_ajax_totals() +4 more places
wpeasycart_country_added
Fires after a country is added in the admin.
Parameters
$id_cnt ID of the new country (ec_country.id_cnt)
Fires in admin/inc/wp_easycart_admin_country.php · insert_country() +2 more places
wpeasycart_country_deleted
Fires after a country is deleted in the admin, singly or in bulk.
Parameters
$id_cnt ID of the deleted country
Fires in admin/inc/wp_easycart_admin_country.php · delete_country() +2 more places
wpeasycart_country_deleting
Fires just before a country is deleted in the admin, singly or in bulk.
Parameters
$id_cnt ID of the country about to be deleted
Fires in admin/inc/wp_easycart_admin_country.php · delete_country() +2 more places
wpeasycart_country_updated
Fires after a country is updated in the admin, including bulk enabling for shipping.
Parameters
$id_cnt ID of the updated country
Fires in admin/inc/wp_easycart_admin_country.php · update_country() +4 more places
wpeasycart_fee_added PRO
Fires after a flex fee is created in the admin.
Parameters
$fee_id ID of the new fee (ec_fee.fee_id)
Fires in admin/inc/wp_easycart_admin_fee_pro.php · insert_fee() +3 more places
wpeasycart_fee_deleted PRO
Fires after a flex fee is deleted in the admin, singly or in bulk.
Parameters
$fee_id ID of the deleted fee
Fires in admin/inc/wp_easycart_admin_fee_pro.php · delete_fee() +2 more places
wpeasycart_fee_deleting PRO
Fires just before a flex fee is deleted in the admin, singly or in bulk.
Parameters
$fee_id ID of the fee about to be deleted
Fires in admin/inc/wp_easycart_admin_fee_pro.php · delete_fee() +2 more places
wpeasycart_fee_updated PRO
Fires after an existing flex fee is updated in the admin.
Parameters
$fee_id ID of the updated fee
Fires in admin/inc/wp_easycart_admin_fee_pro.php · update_fee() +1 more place
wpeasycart_state_added
Fires after a state or region is added to a country in the admin.
Parameters
$id id of the new state or region
Fires in admin/inc/wp_easycart_admin_country_table.php · save_region() +2 more places
wpeasycart_state_deleted
Fires after a state or region is deleted in the admin, singly or in bulk.
Parameters
$id_sta id of the deleted state or region
Fires in admin/inc/wp_easycart_admin_states.php · delete_states() +1 more place
wpeasycart_state_deleting
Fires just before a state or region is deleted in the admin, singly or in bulk.
Parameters
(int) $s->id_sta id of the state or region about to be deleted
Fires in admin/inc/wp_easycart_admin_country_table.php · ecv2_region_delete() +2 more places
wpeasycart_state_updated
Fires after a state or region is saved or its ship-to setting is toggled in the admin.
Parameters
$id state or region id
Fires in admin/inc/wp_easycart_admin_country_table.php · save_region() +4 more places
wpeasycart_taxrate_added
Fires after a tax rate is added in the admin.
Parameters
$id id of the new tax rate
Fires in admin/inc/wp_easycart_admin_tax_v2.php · ajax_rate_add() +3 more places
wpeasycart_taxrate_deleted
Fires after a tax rate is deleted in the admin.
Parameters
$id id of the deleted tax rate
Fires in admin/inc/wp_easycart_admin_tax_v2.php · ajax_rate_delete() +3 more places
wpeasycart_taxrate_deleting
Fires just before a tax rate is deleted in the admin.
Parameters
$id id of the tax rate about to be deleted
Fires in admin/inc/wp_easycart_admin_tax_v2.php · ajax_rate_delete() +3 more places
wpeasycart_taxrate_updated
Fires after a tax rate is changed in the admin.
Parameters
$id tax rate id
Fires in admin/inc/wp_easycart_admin_tax_v2.php · ajax_rate_update() +3 more places

Payments

Grouped by what they are about

23 actions

wp_easycart_admin_order_details_payments
Fires on the admin order details screen in the payments area, letting extensions print payment details.
Parameters
$this->order Order row
$wpec_pay_sum Payment summary from wp_easycart_order_payments::summary() (array)
Fires in admin/template/orders/orders/order-details.php
wp_easycart_cart_payment_payment_methods_end
Fires on the checkout payment page after the payment method boxes have been printed, for orders that need payment.
Parameters
$this The cart page object (the $cartpage object in the v2 template).
Fires in design/layout/base-responsive-v3/ec_cart_payment.php · ec_stripe_3ds_waiting_for_response() +1 more place
wp_easycart_display_payment_post
Fires after the checkout payment step, including the PayPal Express payment step, has been displayed.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · display_payment() +1 more place
wp_easycart_display_payment_pre
Fires before the checkout payment step, including the PayPal Express payment step, is displayed.
No parameters.
Fires in inc/classes/cart/ec_cartpage.php · display_payment() +1 more place
wp_easycart_display_stripe_payment_pre
Fires on the checkout payment page just before the Stripe card field is printed, when Stripe or Stripe Connect is the payment processor.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart_payment.php · ec_checkout_with_affirm()
wp_easycart_invoice_paid
Fires after an order is marked paid: from a Stripe invoice payment on the cart page, or from the order’s pay link.
Parameters
$invoice_id / $order_id The ID of the order that was paid
Fires in inc/classes/cart/ec_cartpage.php · submit_stripe_invoice_payment() +2 more places
wp_easycart_order_pay_complete
Fires after an order is paid from its pay link, including payments toward the balance of an already paid order.
Parameters
$order_id Order ID (int)
$payment Payment details such as gateway, status, method and transaction; amount and balance (true) are added when it paid the balance of an already paid order (array)
Fires in inc/classes/core/class-wp-easycart-order-pay.php · complete() +1 more place
wp_easycart_order_payment_recorded
Fires after a payment is recorded against an order.
Parameters
(int) $order_id Order ID
round( (float) $amount, 2 ) Amount paid (float)
(array) $args source (approved, pay_link, admin or an extension’s own), source_label, gateway, reference and balance (true for a payment toward the balance of an already paid order)
Fires in inc/classes/core/class-wp-easycart-order-payments.php · announce()
wp_easycart_payment_gateway_mode
Fires after a payment gateway is switched between test and live mode on the Payments admin screen.
Parameters
$key Gateway key.
(bool) $test True when the gateway is now in test mode, false when live.
$gw Gateway definition array (label, settings keys and role).
Fires in admin/inc/wp_easycart_admin_payment_v2.php · set_mode()
wp_easycart_payment_gateway_saved
Fires after a payment gateway’s settings are saved by the Payments admin screen’s AJAX save.
Parameters
$key Gateway key.
$values Submitted setting values.
$gw Gateway definition array (label, settings keys and role).
Fires in admin/inc/wp_easycart_admin_payment_v2.php · ajax_gateway_save()
wp_easycart_payment_gateway_toggled
Fires after a payment gateway is switched on or off on the Payments admin screen.
Parameters
$key Gateway key.
(bool) $on True when the gateway is now enabled.
$gw Gateway definition array (label, settings keys and role).
Fires in admin/inc/wp_easycart_admin_payment_v2.php · set_enabled()
wp_easycart_paypal_standard_updated
Fires after the PayPal Standard or PayPal Express settings are saved in the admin.
No parameters.
Fires in admin/inc/wp_easycart_admin_payments.php · update_paypal() +1 more place
wp_easycart_stripe_payment_method_complete
Fires after a Stripe payment method update is completed at checkout, in the AJAX request that confirms it.
Parameters
$cartpage->cart The cart object.
$cartpage->order_totals The order totals object.
Fires in wpeasycart.php · ec_ajax_update_payment_complete()
wpeasycart_live_gateway_updated PRO
Fires after a live payment gateway connection is saved, such as connecting Stripe or Square through the admin.
Parameters
$payment_process_method (string) The store’s current payment process method option, such as stripe_connect or square
Fires in admin/inc/wp_easycart_admin_payments.php · onboard_stripe() +4 more places
wpeasycart_manual_billing_updated
Fires after the manual (bill later or direct deposit) payment settings are saved.
Parameters
$use_direct_deposit (int) Value of the direct deposit option, 1 when manual billing is on
Fires in admin/inc/wp_easycart_admin_payments.php · update_manual_billing_settings() +2 more places
wpeasycart_order_complete
Fires after a Stripe or free quick payment creates an order whose status is not paid yet, instead of the order paid action.
Parameters
$order_id ID of the new order
$order_status Status ID the order was created with
Fires in inc/classes/cart/ec_cartpage.php · submit_v2_free_quick_payment() +4 more places
wpeasycart_order_pay_before_button
Fires on the order pay link page before the payment methods are shown.
Parameters
$order The order being paid
Fires in design/layout/base-responsive-v3/ec_order_pay.php
wpeasycart_payment_failed
Fires when a payment fails, just before the pending order is removed.
Parameters
$this->order->order_id order id about to be removed (the order_id property)
(string) $this->process_result the gateway’s answer or failure code, such as paypal_capture_failed
$order_gateway payment gateway name
$this the order object (ec_order)
Fires in inc/classes/cart/ec_cartpage.php · process_submit_order() +1 more place
wpeasycart_payment_processed_successfully
Fires after a card payment is accepted by the gateway, either approved or held for review, and the order status is set.
Parameters
$this->payment the payment gateway object
$this->user the customer user object
Fires in inc/classes/core/ec_order.php · submit_order() +1 more place
wpeasycart_stripe_webhook
Fires after a Stripe webhook event has been handled, with the event details.
Parameters
$webhook_id Stripe event id
$webhook_type Stripe event type
$webhook_data the event data object
Fires in wpeasycart.php · wp_easycart_webhook_catch()
wpeasycart_stripe_webhook_order_refunded
Fires after a Stripe refund has been recorded on an order, from a charge refunded event.
Parameters
$order_id order id
Fires in wpeasycart.php · wp_easycart_stripe_charge_refunded() +1 more place
wpeasycart_third_party_checkout_box
Fires in the third-party checkout button area of the cart, after the built-in options like Affirm, so extensions can add a button.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart_invoice.php · ec_checkout_with_affirm() +2 more places
wpeasycart_third_party_payment_updated PRO
Fires after the selected third-party payment method is changed in the admin.
Parameters
$third_party key of the selected third-party gateway (0 if none)
Fires in admin/inc/wp_easycart_admin_payments.php · update_third_party_selection() +5 more places

Email and notifications

Grouped by what they are about

31 actions

wp_easycart_document_branding_saved
Fires after branding settings for a document type and profile (such as receipts or invoices) are saved.
Parameters
$type The document type (string).
$id The profile ID (string).
$clean The sanitized branding values that were saved (array).
Fires in inc/classes/core/class-wp-easycart-documents.php · save_branding()
wp_easycart_document_email_links
Fires in the receipt and shipping emails where links to download the order’s documents can be printed.
Parameters
'receipt' The email type, receipt or shipping (string).
(int) $this->order_id ID of the order (int).
$is_admin ? 'admin' : 'customer' Who receives the email: admin or customer (string).
Fires in design/layout/base-responsive-v3/ec_cart_email_receipt.php +1 more place
wp_easycart_document_profile_deleted
Fires after a document profile (such as a receipt or invoice layout profile) is deleted.
Parameters
$type The document type (string).
$id The ID of the deleted profile (string).
Fires in inc/classes/core/class-wp-easycart-documents.php · delete_profile()
wp_easycart_document_profile_saved
Fires after a document profile (such as a receipt or invoice layout profile) is saved.
Parameters
$type The document type (string).
$id The profile ID (string).
$values The profile values that were saved (array).
Fires in inc/classes/core/class-wp-easycart-documents.php · save_profile()
wp_easycart_email_logged
Fires after an email attempt is recorded in the email log.
Parameters
$id ID of the new email log row (int)
$status Send status, such as sent or failed
$transport Transport used to send the email
$type Email type
$order_id Related order ID
Fires in inc/classes/core/ec_email.php · record()
wp_easycart_email_receipt_optionitems
Fires inside each item of the order receipt and invoice emails, after the item’s details, so extensions can add detail rows for the item.
Parameters
$ec_invoice_item The order line item object (the receipt template passes $ec_receipt_item)
Fires in design/layout/base-responsive-v3/ec_cart_email_invoice.php +2 more places
wp_easycart_email_receipt_pre_items
Fires in the receipt and refund emails before the items list, so extensions can print whole table rows into the email.
Parameters
$this->order_id Order ID
$is_admin Whether the email is the admin copy
Fires in design/layout/base-responsive-v3/ec_cart_email_receipt.php +1 more place
wp_easycart_email_receipt_top
Fires at the top of the receipt and invoice emails, so extensions can print whole table rows into the email.
Parameters
$this->order_id Order ID
$is_admin Whether the email is the admin copy
Fires in design/layout/base-responsive-v3/ec_cart_email_invoice.php +2 more places
wp_easycart_gift_receipt_after
Fires at the end of the gift receipt document, before the closing footer.
Parameters
$document The gift receipt document object
Fires in design/layout/base-responsive-v3/ec_gift_receipt.php
wp_easycart_gift_receipt_line_item
Fires inside each line item of the gift receipt document, after the item’s options.
Parameters
$ec_gr_line The order line item
$document The gift receipt document object
Fires in design/layout/base-responsive-v3/ec_gift_receipt.php
wp_easycart_invoice_email_after
Fires at the end of the invoice email document, before the closing footer.
Parameters
$document The invoice email document object
Fires in design/layout/base-responsive-v3/ec_invoice_email.php
wp_easycart_invoice_email_line_item
Fires inside each line item of the invoice email, after the item’s options.
Parameters
$ec_ie_line The order line item
$document The invoice email document object
Fires in design/layout/base-responsive-v3/ec_invoice_email.php
wp_easycart_invoice_pdf_after
Fires at the end of the invoice PDF document, before the closing footer.
Parameters
$document The invoice PDF document object
Fires in design/layout/base-responsive-v3/ec_invoice_pdf.php
wp_easycart_order_email_receipt_after_success_lines
Fires in the receipt and refund emails right after the opening success lines, so extensions can add content.
Parameters
$this The order display object building the email
Fires in design/layout/base-responsive-v3/ec_cart_email_receipt.php +1 more place
wp_easycart_packing_slip_after
Fires at the end of the packing slip document, before the closing footer.
Parameters
$document The packing slip document object
Fires in design/layout/base-responsive-v3/ec_admin_packaging_slip.php
wp_easycart_subscriber_changed
Fires when a newsletter subscriber is subscribed, unsubscribed or updated, at most once per address and state in a request.
Parameters
string $email Subscriber email address.
string $state One of subscribed, unsubscribed or updated.
array $context Extra details about where the change came from.
Fires in inc/classes/core/class-wp-easycart-subscribers.php · fire()
wpeasycart_custom_admin_inquiry_email
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the admin’s product inquiry email.
Parameters
$from From email address (order from email option)
$inquiry_email Email address of the shopper who sent the inquiry
$store_email Store email address to notify
$admin_subject Subject of the admin email
$admin_message Body of the admin email
Fires in inc/classes/cart/ec_cartpage.php · process_send_inquiry()
wpeasycart_custom_forgot_password_email API plugin
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the forgot password email.
Parameters
$from From email address (password from email option)
$email Recipient customer email
$cc Empty string, unused
$subject Email subject
$message Email body
Fires in wp-easycart-api/inc/wpeasycart-api-users.php · send_new_password_email() +2 more places
wpeasycart_custom_inquiry_email
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the shopper’s copy of a product inquiry.
Parameters
$from From email address (order from email option)
$inquiry_email Email address of the shopper who sent the inquiry
$store_email Store email address
$subject Email subject
$message Email body
Fires in inc/classes/cart/ec_cartpage.php · process_send_inquiry()
wpeasycart_custom_order_claim_email
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the order claim (Connect order link) email.
Parameters
$from From email address (password from email option)
$order_email Recipient email address
$cc Empty string, unused
$title Email subject
$message Email body
Fires in inc/classes/account/ec_accountpage.php · send_order_claim_email()
wpeasycart_custom_order_email PRO
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the customer’s order shipped email; fires once per recipient address.
Parameters
$from From email address (order from email option)
$to Recipient customer email
$admin_email Store admin email address
$subject Email subject
$message Email body
$customer_files (array) Attachments for the customer
Fires in admin/inc/wp_easycart_admin_orders.php · send_customer_shipping_email() +8 more places
wpeasycart_custom_refund_email
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the refund email; fires once per recipient address.
Parameters
$from From email address (order from email option)
$to Recipient customer email
$admin_email Store admin email address
$customer_title Email subject
$message Email body
Fires in inc/classes/account/ec_orderdisplay.php · send_refund_email() +1 more place
wpeasycart_custom_register_verification_email
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the account verification email.
Parameters
$from From email address (password from email option)
$email Recipient email address
$cc Empty string, unused
$subject Email subject
$message Email body
Fires in wpeasycart.php · wp_easycart_send_activation_email()
wpeasycart_custom_store_email
Fires when the email transport is set to custom, so a listener can deliver any store email itself.
Parameters
$from From email address
$to Recipient email address
$cc Empty string, unused
$subject Email subject
$message Email body
$attachments (array) File attachments
Fires in inc/classes/core/ec_email.php · deliver()
wpeasycart_email_receipt_line_item
Fires for each line item in the receipt or invoice email, where extra detail rows (table rows) can be added under the item.
Parameters
$model_number Model number of the order item
$orderdetail_id ID of the order detail row (order line)
Fires in design/layout/base-responsive-v3/ec_cart_email_invoice.php +3 more places
wpeasycart_email_receipt_order_notes_after
Fires in the receipt and refund emails after the order notes, before the closing lines of the message.
Parameters
$order_id ID of the order
Fires in design/layout/base-responsive-v3/ec_cart_email_receipt.php +1 more place
wpeasycart_remove_subscriber
Fires just before an email address is removed from the newsletter subscriber list, from the admin or the store.
Parameters
$email subscriber email address
Fires in admin/inc/wp_easycart_admin_subscriber_table.php · ecv2_subscriber_bulk() +1 more place
wpeasycart_subscriber_added
Fires after a visitor is added to the newsletter subscriber list from a signup form or popup.
Parameters
sanitize_email( $_POST['ec_newsletter_email'] ) the subscriber email address
$newsletter_name name of the newsletter signed up for
Fires in wpeasycart.php · load_ec_pre() +3 more places
wpeasycart_subscriber_deleted
Fires after a subscriber is deleted from the subscribers admin table.
Parameters
$email subscriber email address
(int) $r['subscriber_id'] subscriber id
Fires in admin/inc/wp_easycart_admin_subscriber_table.php · ecv2_subscriber_bulk()
wpeasycart_subscriber_deleting
Fires just before a subscriber is deleted from the subscribers admin table.
Parameters
(int) $r['subscriber_id'] subscriber id
Fires in admin/inc/wp_easycart_admin_subscriber_table.php · ecv2_subscriber_bulk()
wpeasycart_subscriber_updated
Fires after a subscriber’s email or name is edited inline in the admin.
Parameters
$id subscriber id
Fires in admin/inc/wp_easycart_admin_subscriber_table.php · ecv2_subscriber_inline_update()

Offers and coupons

Grouped by what they are about

39 actions

wp_easycart_admin_coupon_details
Fires on the admin coupons page when adding or editing a coupon, to render the coupon details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_coupons.php · load_coupons_list()
wp_easycart_admin_coupon_details_stepfour_fields PRO
Fires inside the Step Four section of the admin coupon details form so fields can be added.
No parameters.
Fires in admin/template/marketing/coupons/coupon-details.php
wp_easycart_admin_coupon_details_stepone_fields PRO
Fires inside the Step One section of the admin coupon details form so fields can be added.
No parameters.
Fires in admin/template/marketing/coupons/coupon-details.php
wp_easycart_admin_coupon_details_stepthree_fields PRO
Fires inside the Step Three section of the admin coupon details form so fields can be added.
No parameters.
Fires in admin/template/marketing/coupons/coupon-details.php
wp_easycart_admin_coupon_details_steptwo_fields PRO
Fires inside the Step Two section of the admin coupon details form so fields can be added.
No parameters.
Fires in admin/template/marketing/coupons/coupon-details.php
wp_easycart_admin_coupon_list
Fires on the admin coupons page, when not adding or editing a coupon, to render the coupon list.
No parameters.
Fires in admin/inc/wp_easycart_admin_coupons.php · load_coupons_list()
wp_easycart_admin_offers_hub
Fires when the admin Offers hub page loads, so the hub can be rendered.
No parameters.
Fires in admin/inc/wp_easycart_admin_offers.php · load_offers_hub()
wp_easycart_admin_product_details_v2_offers_end
Fires at the end of the Offers panel on the admin product edit screen, after the offers list.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-details-v2.php
wp_easycart_admin_product_details_v2_offers_pro
Fires when the admin product Offers panel renders and the PRO offers panel is enabled, so PRO can print the live offers list.
Parameters
$this->product The product being edited (object).
Fires in admin/inc/wp_easycart_admin_details_products_v2.php · print_offers_v2()
wp_easycart_admin_promotion_details
Fires when the promotions admin page is showing the add-new or edit promotion form, so PRO can print the promotion details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_promotions.php · load_promotions_list()
wp_easycart_admin_promotion_details_stepfour_fields PRO
Fires in step four of the promotion edit form, where the discount amount is set, so PRO can print those fields.
No parameters.
Fires in admin/template/marketing/promotions/promotion-details.php
wp_easycart_admin_promotion_details_stepone_fields PRO
Fires in step one of the promotion edit form, where the name and start and end dates are set, so PRO can print those fields.
No parameters.
Fires in admin/template/marketing/promotions/promotion-details.php
wp_easycart_admin_promotion_details_stepthree_fields PRO
Fires in step three of the promotion edit form, where the products or price threshold are chosen, so PRO can print those fields.
No parameters.
Fires in admin/template/marketing/promotions/promotion-details.php
wp_easycart_admin_promotion_details_steptwo_fields PRO
Fires in step two of the promotion edit form, where the promotion type is chosen, so PRO can print those fields.
No parameters.
Fires in admin/template/marketing/promotions/promotion-details.php
wp_easycart_admin_promotion_list
Fires when the promotions admin page shows the promotions list rather than the add-new or edit form.
No parameters.
Fires in admin/inc/wp_easycart_admin_promotions.php · load_promotions_list()
wp_easycart_coupon_created PRO
Fires after a coupon is created in the admin, whether or not it was a duplicate.
Parameters
$promocode_id ID of the coupon (promo code).
Fires in admin/inc/wp_easycart_admin_coupons_pro.php · insert_coupon()
wp_easycart_coupon_deleted PRO
Fires after a coupon has been deleted from the admin and from Stripe when Stripe is the processor.
Parameters
$promocode_id ID of the deleted coupon (promo code).
Fires in admin/inc/wp_easycart_admin_coupons_pro.php · delete_coupon()
wp_easycart_coupon_deleting PRO
Fires just before a coupon is deleted from the database in the admin.
Parameters
$promocode_id ID of the coupon (promo code) about to be deleted.
Fires in admin/inc/wp_easycart_admin_coupons_pro.php · delete_coupon()
wp_easycart_coupon_updated PRO
Fires after a coupon has been updated in the admin and synced to Stripe when Stripe is the processor.
Parameters
$promocode_id ID of the updated coupon (promo code).
Fires in admin/inc/wp_easycart_admin_coupons_pro.php · update_coupon()
wp_easycart_offer_code_applied PRO
Fires after an offer code is applied to a shopper’s cart session.
Parameters
$offer The offer object
$code The code that was applied
$session_id The cart session ID
Fires in inc/classes/core/ec_offer_engine.php · apply_code()
wp_easycart_offer_code_deleted PRO
Fires after an offer code is deleted.
Parameters
(int) $offer_code_id The deleted offer code ID
(int) $offer_id The offer it belonged to
(string) $code The code text
Fires in inc/classes/core/ec_offer_bootstrap.php · wp_easycart_offers_fire_code_deleted()
wp_easycart_offer_code_removed PRO
Fires after an offer code is removed from a shopper’s cart session.
Parameters
$code The removed code (sanitized)
$session_id The cart session ID
Fires in inc/classes/core/ec_offer_engine.php · remove_code()
wp_easycart_offer_codes_changed PRO
Fires when an offer’s list of codes changes, once per offer per request.
Parameters
(int) $offer_id The offer whose codes changed
Fires in inc/classes/core/ec_offer_bootstrap.php · wp_easycart_offers_fire_codes_changed()
wp_easycart_offer_codes_deactivated PRO
Fires after an offer’s codes are deactivated.
Parameters
$offer_id Offer ID
$result What deactivate() returned (array)
Fires in inc/classes/core/ec_offer_codes.php · deactivate()
wp_easycart_offer_codes_imported PRO
Fires after codes are imported into an offer, or generated for it.
Parameters
$offer_id Offer ID
$result What import() returned (array); for generated codes it holds added and generated
$args The import’s arguments (array), including its source
Fires in inc/classes/core/ec_offer_codes.php · import() +1 more place
wp_easycart_offer_codes_moved PRO
Fires after codes are moved from one offer to another.
Parameters
$from_offer_id Offer the codes came from
$to_offer_id Offer the codes went to
$moved How many codes were moved (int)
$which Which codes were moved (string): available or all
Fires in inc/classes/core/ec_offer_codes.php · move()
wp_easycart_offer_deleted PRO
Fires after an offer is deleted. Offers with redemptions are archived instead and fire wp_easycart_offer_saved.
Parameters
(int) $offer_id The deleted offer ID
Fires in inc/classes/core/ec_offer_bootstrap.php · wp_easycart_offers_fire_deleted()
wp_easycart_offer_order_placed PRO
Fires after an order is placed and its offer results are processed.
Parameters
$order_id Order ID
$result The offer engine result for the order (object), including any pending rewards
Fires in inc/classes/core/ec_offer_integration.php · order_placed()
wp_easycart_offer_redemptions_recorded PRO
Fires after offer redemptions for an order are recorded and the cart’s applied codes are cleared.
Parameters
$order_id Order ID
$result The offer engine result for the order
Fires in inc/classes/core/ec_offer_engine.php · record_redemptions()
wp_easycart_offer_redemptions_reversed PRO
Fires after an order’s offer redemptions are reversed, when the order is canceled or fully refunded.
Parameters
$order_id Order ID
Fires in inc/classes/core/ec_offer_engine.php · reverse_redemptions()
wp_easycart_offer_reward_code PRO
Fires after a next-order reward code is created for a customer as an offer reward.
Parameters
$order The order object
$code The new reward code
(int) $reward['next_order_offer_id'] ID of the offer the code belongs to
Fires in inc/classes/core/ec_offer_integration.php · deliver_reward()
wp_easycart_offer_reward_giftcard PRO
Fires after a gift card is created as an offer reward for an order.
Parameters
$order The order object
$giftcard_id The new gift card code
(float) $reward['value'] The gift card amount
Fires in inc/classes/core/ec_offer_integration.php · deliver_reward()
wp_easycart_offer_saved PRO
Fires after an offer is saved (including being archived), once per offer per request.
Parameters
(int) $offer_id The offer ID
Fires in inc/classes/core/ec_offer_bootstrap.php · wp_easycart_offers_fire_saved()
wp_easycart_offer_subscription_redeemed PRO
Fires after an offer code is redeemed on a subscription order.
Parameters
(int) $order->order_id Order ID
(int) $offer->offer_id Offer ID
(int) $code_row->offer_code_id Offer code ID
(string) $code_row->code The code text
Fires in inc/classes/core/ec_offer_subscriptions.php · record()
wp_easycart_offers_loaded PRO
Fires once the Pro offers system has finished loading its classes and registering hooks.
No parameters.
Fires in inc/classes/core/ec_offer_bootstrap.php · wp_easycart_offers_bootstrap()
wpeasycart_promotion_added PRO
Fires after a new promotion is saved in the admin.
Parameters
$promotion_id id of the new promotion
Fires in admin/inc/wp_easycart_admin_promotions_pro.php · insert_promotion()
wpeasycart_promotion_deleted PRO
Fires after a promotion is deleted in the admin, singly or in bulk.
Parameters
$promotion_id id of the deleted promotion
Fires in admin/inc/wp_easycart_admin_promotions_pro.php · delete_promotion() +1 more place
wpeasycart_promotion_deleting PRO
Fires just before a promotion is deleted in the admin, singly or in bulk.
Parameters
$promotion_id id of the promotion about to be deleted
Fires in admin/inc/wp_easycart_admin_promotions_pro.php · delete_promotion() +1 more place
wpeasycart_promotion_updated PRO
Fires after an existing promotion is updated in the admin.
Parameters
$promotion_id promotion id
Fires in admin/inc/wp_easycart_admin_promotions_pro.php · update_promotion()

Reviews

Grouped by what they are about

11 actions

wp_easycart_admin_product_details_v2_reviews_end
Fires at the end of the Reviews panel on the admin product edit screen, after the reviews list.
Parameters
$product The product being edited (object).
Fires in admin/template/products/products/product-details-v2.php
wpeasycart_custom_review_email
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send a review request email.
Parameters
$from From email address
$to Recipient email address
$subject Email subject
$message Email body
Fires in inc/classes/core/ec_reviews.php · send_mail()
wpeasycart_review_added
Fires after a shopper’s new product review is saved, before the store notification email is sent.
Parameters
$review_id id of the new review
Fires in inc/classes/core/ec_db.php · submit_customer_review()
wpeasycart_review_approved
Fires after a review is approved in the admin, singly or in bulk.
Parameters
$review_id review id
Fires in admin/inc/wp_easycart_admin_reviews.php · approve_review() +1 more place
wpeasycart_review_deleting
Fires just before a review is deleted in the admin, singly or in bulk.
Parameters
$review_id id of the review about to be deleted
Fires in admin/inc/wp_easycart_admin_reviews.php · delete_review() +3 more places
wpeasycart_review_processed
Fires after a new review has been processed by the reviews engine (verified purchase, moderation rules) and its updated fields are saved.
Parameters
$review_id review id
$update array of review columns that were updated
Fires in inc/classes/core/ec_reviews.php · on_review_submitted()
wpeasycart_review_replied
Fires after the merchant’s reply to a review is saved or cleared.
Parameters
(int) $review_id review id
$text the sanitized reply text (empty when the reply was removed)
Fires in inc/classes/core/ec_reviews.php · set_reply()
wpeasycart_review_status_updated
Fires after a review’s approved status is changed from the admin product screen.
Parameters
$review_id review id
$approved 1 if approved, 0 if not (int)
Fires in admin/inc/wp_easycart_admin_products.php · ec_admin_ajax_ecdv2_review_status()
wpeasycart_review_submitted
Fires once for each new customer review saved, before wpeasycart_review_added, so the reviews engine can claim request links and apply moderation.
Parameters
$review_id id of the new review
Fires in inc/classes/core/ec_db.php · submit_customer_review()
wpeasycart_review_unapproved
Fires after a review is unapproved in the admin, singly or in bulk.
Parameters
$review_id review id
Fires in admin/inc/wp_easycart_admin_reviews.php · unapprove_review() +1 more place
wpeasycart_review_updated
Fires after a review is changed in the admin review screen, either an approve toggle or a saved edit.
Parameters
(int) $id review id
Fires in admin/inc/wp_easycart_admin_review_table.php · ecv2_review_set_approved() +1 more place

Reports and analytics

Grouped by what they are about

7 actions

wp_easycart_admin_reports_order_sources
Fires when the reports page is ready to print the Sales by source card, so PRO can print it.
No parameters.
Fires in inc/classes/core/class-wp-easycart-order-source.php · reports_card()
wp_easycart_dashboard_reports_links_end
Fires at the end of the report download list in the dashboard export modal, so extra report download rows can be added.
No parameters.
Fires in admin/template/dashboard.php · wpeasycart_admin_report_download_modal()
wp_easycart_dashboard_reports_links_start
Fires at the start of the report download list in the dashboard export modal, so extra report download rows can be added.
No parameters.
Fires in admin/template/dashboard.php · wpeasycart_admin_report_download_modal()
wp_easycart_order_source_saved
Fires after an order’s source attribution (where the order came from) is saved.
Parameters
$order_id Order ID
$row The source values saved on the order (array)
Fires in inc/classes/core/class-wp-easycart-order-source.php · stamp()
wp_easycart_reports_filters_post
Fires at the end of the filter bar on the Reports dashboard, after the built-in filters.
No parameters.
Fires in admin/template/dashboard.php
wp_easycart_reports_filters_pre
Fires at the start of the filter bar on the Reports dashboard, before the built-in filters.
No parameters.
Fires in admin/template/dashboard.php
wp_easycart_store_activity_daily_done
Fires after the daily store activity housekeeping finishes.
No parameters.
Fires in inc/classes/core/class-wp-easycart-store-activity.php · daily()

Admin screens and settings

Grouped by what they are about

54 actions

wp_easycart_admin_abandon_cart_load
Fires when the admin Abandoned Carts page loads, so the page content can be rendered.
No parameters.
Fires in admin/inc/wp_easycart_admin_abandon_cart.php · load_abandon_cart()
wp_easycart_admin_dashboard_post
Fires at the end of the admin dashboard page, after the reports content and before its scripts.
No parameters.
Fires in admin/template/dashboard.php
wp_easycart_admin_dashboard_pre_chart
Fires at the top of the admin dashboard page, before the reports chart is set up.
No parameters.
Fires in admin/template/dashboard.php
wp_easycart_admin_ecv2_render_modals
Fires after an admin V2 list table prints its built-in modals, and before the toast container.
Parameters
$this->table_id Id of the table being printed
Fires in admin/inc/wp_easycart_admin_table_v2.php · print_table()
wp_easycart_admin_head_navigation
Fires inside the Help dropdown in the admin top bar so extra links can be added.
No parameters.
Fires in admin/template/shell.php · ecsh_renewal_snooze()
wp_easycart_admin_inventory_cell_{col}
Fires to print a custom column cell in the admin inventory table; {col} is the column name. Only fires when a callback is attached.
Parameters
$result Inventory row for the product or variant
$this->pro_enabled Whether PRO is enabled (bool)
Fires in admin/inc/wp_easycart_admin_inventory_table.php · print_cell_content()
wp_easycart_admin_inventory_qty_pop
Fires inside the quantity adjustment popover in the admin inventory table so extra fields, such as a reason, can be added.
Parameters
$result Inventory row
$this->pro_gate PRO gate details for the feature (array)
Fires in admin/inc/wp_easycart_admin_inventory_table.php · print_quantity_cell()
wp_easycart_admin_inventory_row_menu
Fires inside the row action menu of the admin inventory table, only when PRO is enabled, so menu items can be added.
Parameters
$result Inventory row
Fires in admin/inc/wp_easycart_admin_inventory_table.php · print_row_actions()
wp_easycart_admin_inventory_toolbar
Fires in the admin inventory page toolbar so PRO buttons such as Import, Activity and Alerts can be added.
Parameters
$this->pro_gate PRO gate details (array)
Fires in admin/inc/wp_easycart_admin_inventory_table.php · print_page_header()
wp_easycart_admin_left_navigation
Fires inside the admin sidebar navigation so menu items can be added.
No parameters.
Fires in admin/template/shell.php · ecsh_renewal_snooze()
wp_easycart_admin_location_details
Fires on the admin locations page when adding or editing a location, to render the location details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_location.php · load_location_list()
wp_easycart_admin_location_list
Fires on the admin locations page, when not adding or editing, to render the location list after the tabs.
No parameters.
Fires in admin/inc/wp_easycart_admin_location.php · load_location_list()
wp_easycart_admin_messages
Fires at the top of the admin content area so notices and messages can be printed.
No parameters.
Fires in admin/template/shell.php · ecsh_renewal_snooze()
wp_easycart_admin_mobile_navigation
Fires after the admin shell content, so the mobile navigation can be printed.
No parameters.
Fires in admin/template/shell.php · ecsh_renewal_snooze()
wp_easycart_admin_readiness_acknowledged
Fires after a store readiness checklist item is marked as acknowledged, or the acknowledgement is taken back, on the store status screen.
Parameters
$key The readiness item key that was acknowledged.
$on ? 1 : 0 1 when the item was acknowledged, 0 when the acknowledgement was removed.
Fires in admin/inc/wp_easycart_admin_store_status.php · set_acknowledged()
wp_easycart_admin_shell_content
Fires inside the main content area of the WP EasyCart admin shell, after admin messages, so the current admin page can print its content.
No parameters.
Fires in admin/template/shell.php · ecsh_renewal_snooze()
wp_easycart_admin_upsell_popup
Fires at the top of the WP EasyCart admin shell, before the license renewal popup, so the upsell popup markup can be printed.
No parameters.
Fires in admin/template/shell.php
wp_easycart_admin_wizard_content
Fires inside the main card of the setup wizard shell so the current wizard step can print its content.
No parameters.
Fires in admin/template/settings/wizard/shell.php
wp_easycart_admin_wizard_navigation
Fires in the setup wizard shell after the header bar and before the wizard content grid, so the step navigation can be printed.
No parameters.
Fires in admin/template/settings/wizard/shell.php
wp_easycart_ecv2_cart_link_drawer_fields
Fires inside the cart link builder drawer in the admin, between the product items section and the ‘When the link is opened’ section, so extensions can add fields.
No parameters.
Fires in admin/template/marketing/cart-links/cart-links.php
wp_easycart_ecv2_cart_link_drawer_items_end
Fires at the end of the Product section of the cart link builder drawer, right after the product items list.
No parameters.
Fires in admin/template/marketing/cart-links/cart-links.php
wp_easycart_ecv2_cart_link_enqueue
Fires at the end of enqueueing the admin scripts and styles for the cart links page, so extensions can enqueue their own assets.
No parameters.
Fires in admin/inc/wp_easycart_admin_cart_links.php · enqueue_assets()
wp_easycart_ecv2_cart_link_page_end
Fires at the end of the cart links admin page, after the links table and pagination and before the builder drawer markup.
No parameters.
Fires in admin/template/marketing/cart-links/cart-links.php
wp_easycart_ecv2_cart_link_row_contents
Fires inside the product summary cell of each row of the cart links table, after the product names are printed.
Parameters
$link Cart link row object (cart_link_id, url, summary, item_count, destination, use_count and so on)
Fires in admin/inc/wp_easycart_admin_cart_links.php · print_link_row()
wp_easycart_ecv2_cart_link_row_menu
Fires inside each cart link row’s actions menu, after the Edit and Copy link items, so extensions can add menu items.
Parameters
$link Cart link row object
Fires in admin/inc/wp_easycart_admin_cart_links.php · print_link_row()
wp_easycart_ecv2_cart_link_row_uses
Fires inside the ‘uses’ cell of each cart link row, right after the use count is printed.
Parameters
$link Cart link row object
Fires in admin/inc/wp_easycart_admin_cart_links.php · print_link_row()
wp_easycart_ecv2_cart_link_saved_banner
Fires in the banner shown after a cart link is created or updated, after the Copy link button, so extensions can add banner buttons.
Parameters
$ecv2_cl_saved_link The cart link object that was just saved
Fires in admin/template/marketing/cart-links/cart-links.php
wp_easycart_extension_page_{sub}
Renders a custom extension admin page. {sub} is the extension page slug from the URL; the hook fires when an extension registers a callback for that slug.
No parameters.
Fires in admin/inc/wp_easycart_admin_extensions.php · render_page()
wp_easycart_extensions_page_notice
Fires above the catalog on the Extensions admin page so notices can be printed.
No parameters.
Fires in admin/template/extensions/extensions-v2.php
wp_easycart_main_nav_left_end
Fires at the end of the admin left navigation, so extensions can add navigation items.
No parameters.
Fires in admin/template/left_nav.php · ecsh_nav_sublink()
wp_easycart_process_get_form_action
Fires in the admin when a request carries ec_admin_form_action in the query string and the user is an administrator or store manager.
No parameters.
Fires in admin/inc/wp_easycart_admin_actions.php · process_action()
wp_easycart_process_post_form_action
Fires in the admin when a form post carries ec_admin_form_action and the user is an administrator or store manager.
No parameters.
Fires in admin/inc/wp_easycart_admin_actions.php · process_action()
wp_easycart_settings_elementor_status
Fires after the Elementor status panel is printed in the store settings.
No parameters.
Fires in admin/template/settings/elementor.php · ecst_elementor_render_status() +1 more place
wp_easycart_settings_home_after_groups
Fires after all setting groups are printed on the store settings home screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_settings_home.php · render()
wp_easycart_settings_home_before_groups
Fires before the setting groups are printed on the store settings home screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_settings_home.php · render()
wp_easycart_settings_page_after_sections
Fires after all sections of a store settings page are rendered.
Parameters
$page Settings page definition array.
Fires in admin/inc/wp_easycart_admin_settings_page_v2.php · render()
wp_easycart_settings_page_before
Fires before the body of a store settings page is rendered, after the page header and health banner.
Parameters
$page Settings page definition array.
Fires in admin/inc/wp_easycart_admin_settings_page_v2.php · render()
wp_easycart_settings_page_enqueue
Fires while enqueueing scripts and styles for a store settings page, so extensions can add their own assets.
Parameters
$slug Settings page slug.
$page Settings page definition array.
Fires in admin/inc/wp_easycart_admin_settings_page_v2.php · enqueue_early()
wp_easycart_settings_saved
Fires after each setting is saved from a store settings page.
Parameters
$key Option name.
$clean Sanitized new value.
$old Previous value.
$slug Settings page slug.
Fires in admin/inc/wp_easycart_admin_settings_page_v2.php · ajax_save()
wp_easycart_upsell_after
Fires at the end of an upgrade prompt box shown for a locked feature in the admin.
Parameters
$ecv2_upsell Upsell definition array.
Fires in admin/template/upgrade/upgrade-screen.php
wp_easycart_upsell_locked_page_end
Fires at the end of a locked feature’s preview page in the admin.
Parameters
$e Locked feature definition array.
Fires in admin/inc/wp_easycart_admin_upsell.php · print_locked_page()
wpeasycart_admin_demo_data_installed
Fires after the demo data is installed from the initial setup screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_initial_setup.php · install_demo_data()
wpeasycart_admin_load_complete
Fires after the WP EasyCart admin files are loaded.
No parameters.
Fires in admin/admin-init.php
wpeasycart_admin_load_init
Fires at the start of loading the WP EasyCart admin files.
No parameters.
Fires in admin/admin-init.php
wpeasycart_admin_store_status
Fires inside the Store Status admin screen where the status cards are rendered; add-ons hook it to add their own cards.
No parameters.
Fires in admin/template/status/store-status/settings.php
wpeasycart_admin_usage_tracking_accepted
Fires after the store owner accepts usage tracking and the tracking option is saved.
No parameters.
Fires in admin/inc/wp_easycart_admin.php · ec_admin_ajax_allow_tracking() +2 more places
wpeasycart_deactivated
Fires when the store owner deactivates the plugin through the deactivation feedback dialog.
No parameters.
Fires in admin/inc/wp_easycart_admin.php · ec_admin_ajax_custom_deactivate()
wpeasycart_order_details_shipping_address_pre
Fires on the admin order screen after the Ship to card, so add-ons can print their own cards such as accounting or fulfillment partner cards.
Parameters
$order The order row object
Fires in admin/template/orders/orders/order-details.php
wpeasycart_order_details_shipping_address_pre_ship_to
Fires on the admin order screen just before the Ship to card is printed.
Parameters
$order The order row object
Fires in admin/template/orders/orders/order-details.php
wpeasycart_page_options_updated
Fires after the store page display options are saved from the admin screen.
No parameters.
Fires in wpeasycart.php · ec_ajax_save_page_options() +8 more places
wpeasycart_perpage_added
Fires after a new products-per-page choice is added to the store settings list.
Parameters
(int) $wpdb->insert_id id of the new per-page value
Fires in admin/inc/wp_easycart_admin_perpage_v2.php · add()
wpeasycart_perpage_deleting
Fires before a products-per-page choice is deleted from the store settings list.
Parameters
(int) $id id of the per-page value being removed
Fires in admin/inc/wp_easycart_admin_perpage_v2.php · remove()
wpeasycart_store_status_bubble_list_end
Fires at the end of the Extensions card on the store status screen, so add-ons can print their own status bubbles.
No parameters.
Fires in admin/template/license-status.php
wpeasycart_store_status_bubble_list_start
Fires at the start of the Extensions card on the store status screen, so add-ons can print their own status bubbles.
No parameters.
Fires in admin/template/license-status.php

Storefront templates and design

Grouped by what they are about

30 actions

wp_easycart_add_to_cart_click_before
Fires inside the add-to-cart button’s onclick handler on product listings, letting you output JavaScript that runs when the button is clicked.
Parameters
$product->product_id Product id
Fires in design/layout/base-responsive-v3/ec_product.php +5 more places
wp_easycart_add_to_cart_js_validation_end
Fires inside the add-to-cart JavaScript validation function, letting you output JavaScript that runs before the function returns its errors.
Parameters
$product->product_id Product id
Fires in design/layout/base-responsive-v3/ec_add_to_cart_shortcode.php +2 more places
wp_easycart_after_add_to_cart_button
Fires on the product details page right after the Add to Cart button area, before the out-of-stock message.
Parameters
$product The product being displayed (object).
Fires in design/layout/base-responsive-v3/ec_product.php +1 more place
wp_easycart_after_quick_add_to_cart_button
Fires in the product quick view, right after the quick add to cart button area.
Parameters
$product The product being displayed (object).
Fires in design/layout/base-responsive-v3/ec_product.php +1 more place
wp_easycart_order_detail_item_optionitems
Fires in each item of the account order details page, after the item’s options, so extensions can print more option details.
Parameters
$order_item The order line item being displayed
Fires in design/layout/base-responsive-v3/ec_account_order_details_item_display.php
wp_easycart_order_details_header_right
Fires at the start of the actions row above an order on the account order details page, before the Pay now link.
Parameters
$this->order The order object being displayed
Fires in design/layout/base-responsive-v3/ec_account_order_details.php
wpeasycart_after_product_title
Fires in the product listing item template right after the product title, so extra content can be added under the title.
Parameters
$product The product object being displayed
Fires in design/layout/base-responsive-v3/ec_product.php +3 more places
wpeasycart_cart_item_row_pre
Fires in the cart template before each cart item row is output.
Parameters
$cartitem The cart item object for this row
$cartitem_index (int) Position of the item in the cart
Fires in design/layout/base-responsive-v3/ec_cart.php +1 more place
wpeasycart_cart_post_minimum_notice
Fires in the cart template just after the backorder message, where a minimum order notice can be shown.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart.php +1 more place
wpeasycart_cart_top_left
Fires at the top of the left column of the cart page, before the backorder message and item table.
Parameters
$cartpage The cart page object (passed as $this or $cartpage depending on the template)
Fires in design/layout/base-responsive-v3/ec_cart.php +1 more place
wpeasycart_checkout_button_ahref
Fires inside the opening tag of the cart page checkout button link, so extra HTML attributes can be echoed onto it.
No parameters.
Fires in design/layout/base-responsive-v3/ec_cart.php +1 more place
wpeasycart_order_detail_line_item
Fires for each item in the account order details template, where extra detail can be added under the item.
Parameters
$model_number Model number of the order item
$orderdetail_id ID of the order line
Fires in design/layout/base-responsive-v3/ec_account_order_details_item_display.php
wpeasycart_order_details_after_basic_info
Fires on the account order details page after the basic order information, where extra rows can be added.
Parameters
$order The order display object
Fires in design/layout/base-responsive-v3/ec_account_order_details.php · initMap()
wpeasycart_order_details_after_billing
Fires on the account order details page after the billing address block.
Parameters
$order The order display object
Fires in design/layout/base-responsive-v3/ec_account_order_details.php · initMap()
wpeasycart_order_details_after_shipping
Fires on the account order details page after the shipping address block.
Parameters
$order The order display object
Fires in design/layout/base-responsive-v3/ec_account_order_details.php · initMap()
wpeasycart_order_details_after_totals
Fires on the account order details page after the order totals.
Parameters
$order The order display object
Fires in design/layout/base-responsive-v3/ec_account_order_details.php · initMap()
wpeasycart_order_detials_order_notes_after
Fires on the account order details page after the customer’s order notes.
Parameters
$order The order display object
Fires in design/layout/base-responsive-v3/ec_account_order_details.php · initMap()
wpeasycart_pre_customer_reviews_tab
Fires in the product details tab list just before the customer reviews tab, so extensions can add their own tab.
Parameters
$product_id product id
$rand random id of this product display, used in tab element ids
Fires in admin/elementor/modules/product-info/includes/class-wp-easycart-product-info.php · extension_tab_hook() +2 more places
wpeasycart_pre_description_tab
Fires in the product details tab list just before the description tab, so extensions can add their own tab.
Parameters
$product_id product id
$rand random id of this product display, used in tab element ids
Fires in admin/elementor/modules/product-info/includes/class-wp-easycart-product-info.php · extension_tab_hook() +2 more places
wpeasycart_pre_specifications_tab
Fires in the product details tab list just before the specifications tab, so extensions can add their own tab.
Parameters
$product_id product id
$rand random id of this product display, used in tab element ids
Fires in admin/elementor/modules/product-info/includes/class-wp-easycart-product-info.php · extension_tab_hook() +2 more places
wpeasycart_product_description_top
Fires at the top of the product details page, before the option sets are set up.
Parameters
$this->product->product_id product id
Fires in design/layout/base-responsive-v3/ec_product_details_page.php
wpeasycart_sidebar_position1
Fires at the top of the product page filter sidebar, right after the clear filters button.
Parameters
$this the product page object (ec_productpage)
Fires in design/layout/base-responsive-v3/ec_product_page.php · ec_admin_reorder_products()
wpeasycart_sidebar_position2
Fires in the product page filter sidebar after the first categories block and before the category filters.
Parameters
$this the product page object (ec_productpage)
Fires in design/layout/base-responsive-v3/ec_product_page.php · ec_admin_reorder_products()
wpeasycart_sidebar_position3
Fires in the product page filter sidebar after the category filters and before the option filters.
Parameters
$this the product page object (ec_productpage)
Fires in design/layout/base-responsive-v3/ec_product_page.php · ec_admin_reorder_products()
wpeasycart_sidebar_position4
Fires in the product page filter sidebar after the option filters and before the categories block that shows when it is not listed first.
Parameters
$this the product page object (ec_productpage)
Fires in design/layout/base-responsive-v3/ec_product_page.php · ec_admin_reorder_products()
wpeasycart_sidebar_position5
Fires in the product page filter sidebar after the later categories block and before the price point filters.
Parameters
$this the product page object (ec_productpage)
Fires in design/layout/base-responsive-v3/ec_product_page.php · ec_admin_reorder_products()
wpeasycart_sidebar_position6
Fires at the end of the product page filter sidebar, after the last filter block.
Parameters
$this the product page object (ec_productpage)
Fires in design/layout/base-responsive-v3/ec_product_page.php · ec_admin_reorder_products()
wpeasycart_success_page_content_bottom
Fires at the bottom of the checkout success page, after the customer order notes.
Parameters
$order_id order id
$order the order display object (ec_orderdisplay)
Fires in design/layout/base-responsive-v3/ec_cart_success.php · initMap()
wpeasycart_success_page_content_middle
Fires in the middle of the checkout success page, after the continue shopping link and before the order notes.
Parameters
$order_id order id
$order the order display object (ec_orderdisplay)
Fires in design/layout/base-responsive-v3/ec_cart_success.php · initMap()
wpeasycart_success_page_content_top
Fires at the top of the checkout success page content, after any conversion tracking pixels.
Parameters
$order_id order id
$order the order display object (ec_orderdisplay)
Fires in design/layout/base-responsive-v3/ec_cart_success.php

Pickup and scheduling

Grouped by what they are about

11 actions

wp_easycart_admin_schedule_details
Fires when the schedule admin page is showing the add-new or edit schedule form, so PRO can print the schedule details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_schedule.php · load_schedule_list()
wp_easycart_admin_schedule_details_basic_fields PRO
Fires in the Schedule Setup section of the schedule edit form so PRO can print the basic schedule fields.
No parameters.
Fires in admin/template/settings/schedule/schedule-details.php
wp_easycart_admin_schedule_list
Fires when the schedule admin page shows the schedule list rather than the add-new or edit form.
No parameters.
Fires in admin/inc/wp_easycart_admin_schedule.php · load_schedule_list()
wpeasycart_location_added PRO
Fires after a store location is created in the admin.
Parameters
$location_id ID of the new location (ec_location.location_id)
Fires in admin/inc/wp_easycart_admin_location_pro.php · insert_location()
wpeasycart_location_deleted PRO
Fires after a store location is deleted in the admin, singly or in bulk.
Parameters
$location_id ID of the deleted location
Fires in admin/inc/wp_easycart_admin_location_pro.php · delete_location() +2 more places
wpeasycart_location_deleting PRO
Fires just before a store location is deleted in the admin, singly or in bulk.
Parameters
$location_id ID of the location about to be deleted
Fires in admin/inc/wp_easycart_admin_location_pro.php · delete_location() +2 more places
wpeasycart_location_updated PRO
Fires after a store location is updated in the admin.
Parameters
$location_id ID of the updated location
Fires in admin/inc/wp_easycart_admin_location_pro.php · update_location()
wpeasycart_schedule_added PRO
Fires after a new pickup or ordering schedule is created in the admin.
Parameters
$schedule_id id of the new schedule
Fires in admin/inc/wp_easycart_admin_schedule_pro.php · insert_schedule() +3 more places
wpeasycart_schedule_deleted PRO
Fires after a schedule is deleted in the admin, singly or in bulk.
Parameters
$schedule_id id of the deleted schedule
Fires in admin/inc/wp_easycart_admin_schedule_pro.php · delete_schedule() +2 more places
wpeasycart_schedule_deleting PRO
Fires just before a schedule is deleted in the admin, singly or in bulk.
Parameters
$schedule_id id of the schedule about to be deleted
Fires in admin/inc/wp_easycart_admin_schedule_pro.php · delete_schedule() +2 more places
wpeasycart_schedule_updated PRO
Fires after a schedule is saved or its open or closed channel is toggled in the admin.
Parameters
$id schedule id
Fires in admin/inc/wp_easycart_admin_schedule_table.php · ecv2_schedule_sanitize() +1 more place

Downloads and gift cards

Grouped by what they are about

18 actions

wp_easycart_admin_downloads_details
Fires on the admin downloads page when adding or editing a download, to render the details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_downloads.php · load_downloads_list()
wp_easycart_admin_downloads_details_basic_fields PRO
Fires inside the download details form in admin so extra basic fields can be added.
No parameters.
Fires in admin/template/orders/downloads/downloads-details.php
wp_easycart_admin_downloads_list
Fires on the admin downloads page, when not adding or editing, to render the downloads list.
No parameters.
Fires in admin/inc/wp_easycart_admin_downloads.php · load_downloads_list()
wp_easycart_admin_giftcard_details
Fires on the admin gift cards page when adding or editing a gift card, to render the details screen.
No parameters.
Fires in admin/inc/wp_easycart_admin_giftcards.php · load_giftcards_list()
wp_easycart_admin_giftcard_list
Fires on the admin gift cards page, when not adding or editing, to render the gift card list.
No parameters.
Fires in admin/inc/wp_easycart_admin_giftcards.php · load_giftcards_list()
wp_easycart_customer_upload_failed
Fires when a customer file upload is rejected, before the failure is logged.
Parameters
$reason The reason code for the rejection (string).
$name The sanitized name of the uploaded file (string).
$detail Technical detail about the failure (string).
Fires in inc/classes/core/class-wp-easycart-customer-uploads.php · failed()
wp_easycart_giftcard_code_changed PRO
Fires after a gift card’s code is changed in the admin and its order history is moved to the new code.
Parameters
$old The previous gift card code
$row['giftcard_id'] The new gift card code
Fires in admin/inc/wp_easycart_admin_giftcard_table.php · ecv2_gc_sanitize()
wp_easycart_giftcard_created PRO
Fires after a gift card is created in the admin.
Parameters
$giftcard_id Gift card code
Fires in admin/inc/wp_easycart_admin_giftcards_pro.php · insert_gift_card() +2 more places
wp_easycart_giftcard_deleted PRO
Fires after a gift card is deleted from the admin, once per card for bulk deletes.
Parameters
$giftcard_id Code of the deleted gift card
Fires in admin/inc/wp_easycart_admin_giftcards_pro.php · delete_gift_card() +2 more places
wp_easycart_giftcard_deleting PRO
Fires just before a gift card is deleted from the admin, once per card for bulk deletes.
Parameters
$giftcard_id Code of the gift card about to be deleted
Fires in admin/inc/wp_easycart_admin_giftcards_pro.php · delete_gift_card() +2 more places
wp_easycart_giftcard_updated PRO
Fires after a gift card is updated in the admin.
Parameters
$giftcard_id Gift card code (the new code if it was changed)
Fires in admin/inc/wp_easycart_admin_giftcards_pro.php · update_gift_card() +1 more place
wpeasycart_custom_gift_card_email
Fires instead of the built-in mailer when the store email method is custom, so a custom handler can send the gift card email.
Parameters
$from From email address (order from email option)
$to Gift card recipient email
$bcc BCC email addresses option
$subject Email subject
$message Email body
Fires in admin/inc/wp_easycart_admin_orders.php · send_gift_card_email() +1 more place
wpeasycart_download_added PRO
Fires after a download record is created in the admin.
Parameters
$download_id ID of the new download (ec_download.download_id)
Fires in admin/inc/wp_easycart_admin_downloads_pro.php · insert_download() +1 more place
wpeasycart_download_deleting PRO
Fires just before a download record is deleted in the admin, singly or in bulk.
Parameters
$download_id ID of the download about to be deleted
Fires in admin/inc/wp_easycart_admin_downloads_pro.php · delete_download() +1 more place
wpeasycart_download_updated PRO
Fires after an existing download record is updated in the admin.
Parameters
$download_id ID of the updated download
Fires in admin/inc/wp_easycart_admin_downloads_pro.php · update_download() +4 more places
wpeasycart_downloads_bulk_updated PRO
Fires after the admin download fix tool bulk updates the Amazon settings of downloads matching a record.
Parameters
$r->download_id ID of the download record used as the match
$data (array) The values applied, including is_amazon_download and amazon_key
(int) $more Number of download rows updated
Fires in admin/inc/wp_easycart_admin_download_table.php · ecv2_dl_fix()
wpeasycart_gift_card_purchased
Fires after a new gift card is created for a purchase.
Parameters
$giftcard_id The new gift card code
$amount Value of the gift card
Fires in inc/classes/core/ec_db.php · insert_new_giftcard()
wpeasycart_void_gift_card_redemption
Fires when a card payment fails on an order that used a gift card, so the gift card redemption can be voided.
Parameters
$this->discount->giftcard_code the gift card code used
$this->order_id order id
Fires in inc/classes/core/ec_order.php · submit_order()

Integrations and extensions

Grouped by what they are about

14 actions

wp_easycart_admin_pro_ready
Fires once the admin has finished loading its PRO hooks and the installed PRO version is not outdated.
No parameters.
Fires in admin/inc/wp_easycart_admin.php · setup_pro_hooks()
wp_easycart_bluecheck_photo_finished BlueCheck
Fires in the Bluecheck extension after a customer’s photo record has been synced, with the record as it is now and as it was before.
Parameters
$after The photo record after the sync (array).
$record The photo record before the sync (array).
Fires in includes/class-wp-easycart-bluecheck-checkout.php · sync_photo()
wp_easycart_facebook_checkout_link Facebook & Instagram
Fires when a Facebook or Instagram checkout link has filled the cart, before the shopper is redirected on.
Parameters
$added Number of lines added to the cart (int)
$skipped Number of lines skipped (int)
$origin Array of cart_origin, utm_* and fbclid values
Fires in includes/class-wp-easycart-facebook-checkout.php · maybe_handle()
wp_easycart_facebook_checkout_order Facebook & Instagram
Fires after an order created from a Facebook or Instagram checkout link is inserted.
Parameters
$order_id Order ID (int)
$origin Array of cart_origin, utm_* and fbclid values
Fires in includes/class-wp-easycart-facebook-checkout.php · order_inserted()
wp_easycart_facebook_connected Facebook & Instagram
Fires after a store is connected to Facebook and Instagram, so the sync can send the catalog.
Parameters
$data Connection details (array)
Fires in includes/class-wp-easycart-facebook-connection.php · after_connect()
wp_easycart_facebook_disconnected Facebook & Instagram
Fires after the store is disconnected from Facebook and Instagram.
Parameters
$data The connection details as they were before disconnecting (array)
Fires in includes/class-wp-easycart-facebook-connection.php · disconnect()
wp_easycart_facebook_product_changed Facebook & Instagram
Fires when a product’s Facebook and Instagram details change, so the sync and feed pick it up.
Parameters
$product_id Product ID (int)
Fires in includes/class-wp-easycart-facebook-install.php · resolve_review() +1 more place
wp_easycart_google_feed_address_changed PRO
Fires after the Google product feed address key is regenerated, so the Merchant API connection can move its data source to the new address.
Parameters
$new_url The new feed URL
$old_url The previous feed URL
Fires in inc/classes/core/wp_easycart_google_feed_pro.php · new_key()
wp_easycart_google_feed_built PRO
Fires after a Google product feed build finishes and its state is saved.
Parameters
$state The feed build state (array), including file sizes and error
Fires in inc/classes/core/wp_easycart_google_feed_pro.php · finish()
wp_easycart_google_feed_hour_changed PRO
Fires after the nightly Google feed build hour changes and the next build is rescheduled.
Parameters
self::hour() The new build hour
Fires in inc/classes/core/wp_easycart_google_feed_pro.php · reschedule()
wp_easycart_groupon_deal_created Groupon
Fires after a Groupon deal is created.
Parameters
$deal_id Deal ID (int)
$deal The deal’s cleaned settings (array)
Fires in includes/class-wp-easycart-groupon-deals.php · create()
wp_easycart_groupon_deal_switched Groupon
Fires after Groupon codes are moved from one deal to another.
Parameters
(int) $deal->deal_id Deal ID
$moved Number of codes moved (int)
Fires in includes/class-wp-easycart-groupon-deals.php · switch_deal()
wp_easycart_meta_event
Fires whenever a Meta (Facebook) Pixel storefront event is tracked, so WP EasyCart Pro can send the same event from the server with the same ID.
Parameters
$event_name Meta event name, such as ViewContent, Search, AddToCart or InitiateCheckout
$custom_data Event data such as value, content ids, num_items and search_string (array)
$event_id Event ID shared with the browser (string)
$context Array with source_url, product_id, order_id, user_id, email and browser
Fires in inc/classes/core/class-wp-easycart-meta.php · track()
wpeasycart_pro_activated PRO
Fires when the WP EasyCart Pro plugin is activated, including when the admin activates it automatically.
No parameters.
Fires in admin/inc/wp_easycart_admin.php · ensure_pro_active() +1 more place

Import and export

Grouped by what they are about

1 action

wp_easycart_admin_shopify_import_end
Fires at the end of the Shopify panel in the cart importer on the Integrations settings page, after the notice that the Shopify importer is discontinued.
No parameters.
Fires in admin/template/settings/integrations.php · wp_easycart_settings_integrations_render_cart_importer()

API and mobile app

Grouped by what they are about

1 action

wpeasycart_amf_complete PRO
Fires at the end of an AMFPHP request from the mobile app, after the gateway has produced its output.
No parameters.
Fires in inc/amfphp/Amfphp/index.php

Other

Grouped by what they are about

4 actions

wp_easycart_startup
Fires once WP EasyCart has loaded and run any pending database update at startup.
No parameters.
Fires in wpeasycart.php · wpeasycart_load_startup()
wpeasycart_activated
Fires when WP EasyCart is activated.
No parameters.
Fires in wpeasycart.php · ec_activate()
wpeasycart_config_loaded
Fires once the plugin’s configuration and globals have finished loading.
No parameters.
Fires in inc/ec_config.php · wp_easycart_maybe_load_elementor()
wpeasycart_session_rotated
Fires after a shopper’s cart session id is rotated, such as when they sign in or out.
Parameters
$old_id previous session id (string)
$new_id new session id (string)
Fires in inc/classes/core/wpeasycart_session.php · rotate_session_id()

Keep going

Related panels

Installing Extensions

Installing the extensions that add their own hooks.

Ready to run your store on WP EasyCart?

Everything in this guide works with the free plugin. PRO and Premium add subscriptions, memberships, wholesale pricing and more. Try every PRO feature free for 14 days.

The WP EasyCart admin: orders and offers
Updated on September 30, 2026