Skip to main content

Event index

This page lists every event that Alfa Commerce 2.2.0 sends to plugins. It was built from the code: every place where the component hands an event to a plugin was opened and read. Use it to find an event by name, then follow the link in the last column to the page that explains it.

Read How events reach a plugin first. To see events in the order they fire, read Event flows.

What it does​

One table per area. Every row is one event name.

ColumnWhat it tells you
EventThe name your plugin lists or declares
ClassThe class of the object your handler receives, with its folder under administrator/src/Event/. The namespace is Alfa\Component\Alfa\Administrator\Event\ plus the folder.
DeliveredAnnounced: to everyone who listed it in getSubscribedEvents() (broadcast). One plugin: addressed to one plugin, which declares it as a targeted handler. Each in turn: addressed to each enabled plugin of the alfa group that the customer's access levels admit, one after the other, each as a targeted handler.
Can refuseYes: a handler can stop what was asked, and the cell says how. No: an error in a handler is written to the log and the work goes on. No veto: the handler does the work itself, so an error in it is the failure of the request.
FiresBefore the save: nothing is stored yet. After the save is final: the change is stored for good (after the commit). While a page is drawn. On request: whenever Alfa needs the answer.
Sent inThe file and line where the event is handed to plugins, from the root of the repository. The line numbers are those of the code of 2.2.1, which is not released. In the 2.2.0 code a call can sit at another line.
Documented onThe page that explains the event

When it is used​

  • You know an event's name and want its page.
  • You want to know whether an event is announced to everyone or addressed to one plugin, before you decide where to declare it.
  • You are reading Alfa's code and want the line where an event is sent.

The totals​

What was countedCount
Files under administrator/src/Event/134
Event classes that can be created (not abstract)100
Of those, sent to plugins in 2.2.097
Of those, defined and not sent in 2.2.03
Abstract bases, interfaces and traits22
Other helper classes and enums in the folder12
Different event names sent in 2.2.088
Lines of code that hand an event to plugins (outside the plugin helper itself)62, in 38 files

Eight names are sent with more than one class, because a payment plugin, a shipping plugin and an item field plugin each get their own class under the same name. That is why 88 names use 97 classes.

Planned for 2.2.1, which is not released: one more event, onInventoryRestored (InventoryRestoredEvent in Inventory/), so 89 names use 98 classes. The folder Orders/ also gains OrderPlaceRefusedException, an exception a listener of onOrderPlaceValidate may throw, not an event.

No event is sent from api/src, from the modules or from the shipped plugins. All of them are sent from administrator/src, site/src and one layout, site/layouts/list/filter_form.php.

Administrator screens​

All fifteen are announced after the plugins of the group alfa are loaded. A screen sends them only when its entity has a name in the code and at least one plugin listens. The classes are in Admin/. Every one is handed over in administrator/src/Event/Admin/AlfaAdminAware.php: line 91 for the three that can refuse, line 85 for the others. The column below gives the line that raises each one.

EventClassDeliveredCan refuseFiresSent inDocumented on
onAlfaAdminListQueryAdminListQueryEventAnnouncedNoWhile a page is drawnadministrator/src/Model/AlfaListModel.php:156Extending Admin Screens
onAlfaAdminListFiltersAdminListFiltersEventAnnouncedNoWhile a page is drawnadministrator/src/Model/AlfaListModel.php:226Extending Admin Screens
onAlfaAdminListRowDataAdminListRowDataEventAnnouncedNoWhile a page is drawnadministrator/src/Model/AlfaListModel.php:296Extending Admin Screens
onAlfaAdminListColumnsAdminListColumnsEventAnnouncedNoWhile a page is drawnadministrator/src/Model/AlfaListModel.php:319Extending Admin Screens
onAlfaAdminListRowActionsAdminListRowActionsEventAnnouncedNoWhile a page is drawnadministrator/src/View/HasAdminEvents.php:278Extending Admin Screens
onAlfaAdminListBulkActionsAdminListBulkActionsEventAnnouncedNoWhile a page is drawnadministrator/src/View/HasAdminEvents.php:300Extending Admin Screens
onAlfaAdminToolbarAdminToolbarEventAnnouncedNoWhile a page is drawnadministrator/src/View/HasAdminEvents.php:201Extending Admin Screens
onAlfaAdminRenderAdminRenderEventAnnouncedNoWhile a page is drawnadministrator/src/View/HasAdminEvents.php:154Extending Admin Screens
onAlfaAdminFormAdminFormEventAnnouncedNoWhile a page is drawnadministrator/src/Model/AlfaAdminModel.php:271Extending Admin Screens
onAlfaAdminPrepareDataAdminPrepareDataEventAnnouncedNoWhile a page is drawnadministrator/src/Model/AlfaAdminModel.php:306Extending Admin Screens
onAlfaAdminValidateAdminValidateEventAnnouncedYes, by throwing an errorBefore the saveadministrator/src/Model/AlfaAdminModel.php:378Extending Admin Screens
onAlfaAdminBeforeSaveAdminBeforeSaveEventAnnouncedYes, by throwing an errorBefore the saveadministrator/src/Model/AlfaAdminModel.php:684Extending Admin Screens
onAlfaAdminAfterSaveAdminAfterSaveEventAnnouncedNoAfter the save of the record's own row is final. Planned for 2.2.1, which is not released: for an item, a discount, a tax, a cart rule, a payment method and a shipping method, after the whole save is finaladministrator/src/Model/AlfaAdminModel.php:478Extending Admin Screens
onAlfaAdminBeforeDeleteAdminBeforeDeleteEventAnnouncedYes, by throwing an errorBefore the saveadministrator/src/Model/AlfaAdminModel.php:772Extending Admin Screens
onAlfaAdminAfterDeleteAdminAfterDeleteEventAnnouncedNoAfter the save is finaladministrator/src/Model/AlfaAdminModel.php:565Extending Admin Screens
EventClassDeliveredCan refuseFiresSent inDocumented on
onAlfaBuildMenuBuildMenuEvent in Menu/AnnouncedNoWhile a page is drawnadministrator/src/Menu/MenuBuilder.php:127Creating an Admin Panel
onAlfaGetAccessActionsGetAccessActionsEvent in Access/AnnouncedNoWhile a page is drawnadministrator/src/Field/AlfarulesField.php:74Creating an Admin Panel
onAlfaCollectCardsCollectCardsEvent in Card/AnnouncedNoWhile a page is drawnadministrator/src/Card/CardRegistry.php:362Notification and setup events
onAlfaCollectSetupChecksCollectSetupChecksEvent in Setup/AnnouncedNoOn requestadministrator/src/Helper/SetupHelper.php:466Notification and setup events
onGetToolActionsGetToolActionsEvent in Tools/Announced. The plugin a tool is claimed for is then asked once more, alone.NoWhile a page is drawnadministrator/src/Helper/ToolRegistry.php:152 and :588Extending Admin Screens
onExecuteToolActionExecuteToolActionEvent in Tools/One pluginNo vetoOn requestadministrator/src/Helper/ToolRegistry.php:362Extending Admin Screens
onClearDataClearDataEvent in Tools/One pluginNoOn requestadministrator/src/Service/ClearData/ClearDataExtensions.php:493Payment plugins, Shipping plugins, Item field plugins, Search engine plugins

The two menu and permission events are handed over in administrator/src/Panel/PanelDispatcher.php:114.

Admin panels​

All six are addressed to the one plugin that owns the panel, through administrator/src/Panel/PanelDispatcher.php:86. The classes are in Panel/.

EventClassDeliveredCan refuseFiresSent inDocumented on
onAlfaPanelToolbarPanelToolbarEventOne pluginNoWhile a page is drawnadministrator/src/View/Panel/HtmlView.php:268Creating an Admin Panel
onAlfaPanelListQueryPanelListQueryEventOne pluginNoWhile a page is drawnadministrator/src/Model/PanelModel.php:322Creating an Admin Panel
onAlfaPanelViewPanelViewEventOne pluginNoWhile a page is drawnadministrator/src/View/Panel/HtmlView.php:143Creating an Admin Panel
onAlfaPanelSavePanelSaveEventOne pluginNo vetoOn request. The plugin does the save.administrator/src/Controller/PanelController.php:128Creating an Admin Panel
onAlfaPanelDeletePanelDeleteEventOne pluginNo vetoOn request. The plugin does the delete.administrator/src/Controller/PanelController.php:174Creating an Admin Panel
onAlfaPanelTaskPanelTaskEventOne pluginNo vetoOn requestadministrator/src/Controller/PanelController.php:218Creating an Admin Panel

Payment and shipping plugins​

All of these are addressed to one plugin. The classes are in Payments/ and in Shipments/. Where a row names two classes, the first goes to a payment plugin and the second to a shipping plugin.

EventClassDeliveredCan refuseFiresSent inDocumented on
onItemViewItemViewEvent in Payments/, ItemViewEvent in Shipments/One pluginNoWhile a page is drawnsite/src/View/Item/HtmlView.php:256Payment plugins, Shipping plugins
onCartViewAssetsCartViewAssetsEvent in Payments/, CartViewAssetsEvent in Shipments/One pluginNoWhile a page is drawnsite/src/Service/Cart/CartPluginDispatch.php:454Payment plugins, Shipping plugins
onCartViewCartViewEvent in Payments/, CartViewEvent in Shipments/One pluginNoWhile a page is drawnsite/src/Service/Cart/CartPluginDispatch.php:365Payment plugins, Shipping plugins
onCalculateShippingCostCalculateShippingCostEvent in Shipments/One pluginYes. setUnavailable(), or an error, takes the method off the cart.On request, each time the cart is totalledsite/src/Service/Cart/CartPluginDispatch.php:152Shipping plugins
onOrderBeforePlaceOrderBeforePlaceEvent in Payments/, OrderBeforePlaceEvent in Shipments/One pluginYes, by throwing an errorBefore the savesite/src/Service/Checkout/OrderPlacement.php:975Payment plugins, Shipping plugins
onOrderAfterPlaceOrderAfterPlaceEvent in Payments/, OrderAfterPlaceEvent in Shipments/One pluginNoAfter the save is finalsite/src/Service/Checkout/OrderPlacement.php:975Payment plugins, Shipping plugins
onOrderProcessViewOrderProcessViewEvent in Payments/One pluginNoWhile a page is drawnsite/src/View/Cart/HtmlView.php:354Payment plugins
onOrderCompleteViewOrderCompleteViewEvent in Payments/One pluginNoWhile a page is drawnsite/src/View/Cart/HtmlView.php:354Payment plugins
onPaymentResponsePaymentResponseEvent in Payments/One pluginNo vetoOn request, when the shopper comes backsite/src/Controller/PaymentController.php:87Payment plugins
onPaymentWebhookPaymentWebhookEvent in Payments/One pluginNo veto. An error is answered "500" so that the provider tries again.On request, when the provider callssite/src/Controller/ProviderCallbacks.php:82Payment plugins
onShipmentResponseShipmentResponseEvent in Shipments/One pluginNo vetoOn request, when the shopper comes backsite/src/Controller/ShipmentController.php:98Shipping plugins
onShipmentWebhookShipmentWebhookEvent in Shipments/One pluginNo veto. An error is answered "500" so that the carrier tries again.On request, when the carrier callssite/src/Controller/ProviderCallbacks.php:82Shipping plugins
onGetActionsGetPaymentActionsEvent in Payments/, GetShipmentActionsEvent in Shipments/One pluginNoWhile a page is drawnadministrator/src/Helper/ActionRegistry.php:1843Payment plugins, Shipping plugins
onExecuteActionExecutePaymentActionEvent in Payments/, ExecuteShipmentActionEvent in Shipments/One pluginNo vetoOn request, when staff press a buttonadministrator/src/Helper/ActionRegistry.php:643 and :701Payment plugins, Shipping plugins
onAdminOrderDeleteAdminOrderDeleteEvent in Payments/, AdminOrderDeleteEvent in Shipments/One pluginYes. setResult(false) keeps the order.Before the saveadministrator/src/Model/OrderModel.php:3470Payment plugins, Shipping plugins
onPaymentCheckupPaymentCheckupEvent in Payments/One pluginNoOn request, from the method's settings pageadministrator/src/Helper/PaymentCheckupHelper.php:102Payment plugins

Cart and orders​

EventClassDeliveredCan refuseFiresSent inDocumented on
onCartTotalsCartTotalsEvent in Cart/Each in turnNoOn request, each time the cart is totalledsite/src/Service/Cart/CartPluginDispatch.php:284Order and cart events
onCartItemDisplayCartItemDisplayEvent in Items/Each in turnNoWhile a page is drawnsite/src/Service/Cart/CartLinePresenter.php:143Order and cart events
onOrderPlaceValidateOrderPlaceValidateEvent in Orders/Each in turnYes. reject(), or an error, refuses the order. Planned for 2.2.1, which is not released: also OrderPlaceRefusedException, read in its own words.Before the savesite/src/Service/Checkout/OrderPlacement.php:1222Order and cart events
onAlfaOrderPlacedOrderPlacedEvent in Orders/AnnouncedNoAfter the save is finalsite/src/Service/Checkout/OrderPlacement.php:700Order and cart events
onOrderStatusChangeOrderStatusChangeEvent in Orders/Announced. Each listener is called on its own and its result is recorded.NoAfter the save is finaladministrator/src/Service/Order/Task/OrderStatusEvent.php:148Order and cart events

Item fields and form fields​

The item field classes are in ItemFields/. Each event goes to the plugin of one field, except onItemsListPrepare.

EventClassDeliveredCan refuseFiresSent inDocumented on
onItemViewItemViewEvent in ItemFields/One pluginNo vetoWhile a page is drawnsite/src/Model/ItemModel.php:343 and administrator/src/Model/OrderModel.php:2221Item field plugins
onItemListPrepareItemListPrepareEventOne pluginNoWhile a page is drawnsite/src/Model/ItemsModel.php:2247Item field plugins
onItemsListPrepareItemsListPrepareEventAnnounced, after the plugins of alfa-item-fields are loadedNoWhile a page is drawnsite/src/Model/ItemsModel.php:2199Item field plugins
onItemFieldValueFacetGroupsValueFacetGroupsEventOne pluginNoWhile a page is drawnsite/src/Model/ItemsModel.php:2981Item field plugins
onValidateCartAddValidateCartAddEventOne pluginYes. setError(), or an error, refuses the selection.Before the save, when an item is added to the cartadministrator/src/Helper/ItemConfigurationHelper.php:161Item field plugins
onPrepareForCartPrepareForCartEventOne pluginYes. setError(), or an error, refuses the selection.Before the save, when an item is added to the cartadministrator/src/Helper/ItemConfigurationHelper.php:651Item field plugins
onCalculateItemPriceCalculateItemPriceEventOne pluginNoOn request, each time a price is worked outsite/src/Helper/VariantHelper.php:504Item field plugins
onCartItemViewCartItemViewEventOne pluginNo vetoWhile a page is drawnsite/src/Service/Cart/CartLinePresenter.php:106Item field plugins
onGetFieldActionsGetFieldActionsEventOne pluginNoWhile a page is drawnadministrator/src/Helper/ActionRegistry.php:1752Item field plugins
onExecuteFieldActionExecuteFieldActionEventOne pluginNo vetoOn request, when staff press a buttonadministrator/src/Controller/ItemController.php:1211 and administrator/src/Helper/ActionRegistry.php:517Item field plugins
onAlfaFormFieldsPrepareDomPrepareDomEvent in Fields/One plugin. It is not declared as a handler: Alfa calls the plugin's prepareDom() method and hands it this object.NoWhile a form is builtadministrator/src/Helper/FieldsHelper.php:295Form field plugins

onCalculateItemPrice has one exception. When Joomla's debug mode is on, an error in the handler is thrown again, so that a developer sees it.

Items and the catalogue​

EventClassDeliveredCan refuseFiresSent inDocumented on
onItemDisplayItemDisplayEvent in Items/AnnouncedNoWhile a page is drawnsite/src/Model/ItemModel.php:393Item and catalogue events
onItemPrepareFormItemPrepareFormEvent in Items/AnnouncedNoWhile a page is drawnadministrator/src/Model/ItemModel.php:410Item and catalogue events
onItemAfterSaveItemAfterSaveEvent in Items/AnnouncedNoAfter the save is final, as the last step of an item save. Planned for 2.2.1, which is not released: after the whole item's save is final, never for a save that was undoneadministrator/src/Model/ItemModel.php:1246Item and catalogue events
onAlfaPricesChangedPricesChangedEvent in Catalog/AnnouncedNoAfter the save is finaladministrator/src/Service/PriceIndexSyncService.php:1602Item and catalogue events
onAlfaCatalogEntityChangedCatalogEntityChangedEvent in Catalog/Announced, after alfa-search and alfa are loadedNoRight after the record is written. It does not wait for a bigger save around it.administrator/src/Service/Catalog/EntityChangeNotifier.php:73Search engine plugins
onCatalogVisibilityChangedVisibilityChangedEvent in Catalog/Announced, after alfa-search and alfa are loadedNoRight after the record is written. It does not wait for a bigger save around it.administrator/src/Service/Catalog/VisibilityNotifier.php:113Search engine plugins
onCollectCatalogProjectionsCollectCatalogProjectionsEvent in Catalog/Announced, after alfa-search and alfa are loadedNoOn requestadministrator/src/Service/Projection/ProjectionManager.php:119Search engine plugins

The classes are in Search/.

EventClassDeliveredCan refuseFiresSent inDocumented on
onCollectSearchEnginesCollectSearchEnginesEventAnnounced, after alfa-search is loadedNoOn requestadministrator/src/Service/Search/SearchEngineRegistry.php:225Search engine plugins
onAlfaSearchInputLayoutSearchInputLayoutEventOne pluginNoWhile a page is drawnsite/layouts/list/filter_form.php:114Search engine plugins
onAlfaResultSetRenderResultSetRenderEventAnnounced, after alfa-search is loadedNoWhile a page is drawnsite/src/View/Items/HtmlView.php:357Search engine plugins

Media​

All five are announced after the plugins of alfa-media are loaded, in administrator/src/Helper/MediaHelper.php:2232. The classes are in Media/. The column gives the line that builds each one. They fire while a record is being saved. A media event does not tell you whether that save is final.

EventClassDeliveredCan refuseFiresSent inDocumented on
onAlfaMediaValidateValidateEventAnnouncedYes. setValid(false) skips the file. An error does not.Before the image is storedadministrator/src/Helper/MediaHelper.php:2065Media plugins
onAlfaMediaBeforeProcessBeforeProcessEventAnnouncedNoBefore the image is storedadministrator/src/Helper/MediaHelper.php:2138Media plugins
onAlfaMediaThumbnailThumbnailEventAnnouncedNoWhen a thumbnail is madeadministrator/src/Helper/MediaHelper.php:2138Media plugins
onAlfaMediaAfterProcessAfterProcessEventAnnouncedNoAfter the file is stored, before the image's row is writtenadministrator/src/Helper/MediaHelper.php:2167Media plugins
onAlfaMediaBeforeDeleteBeforeDeleteEventAnnouncedNoBefore the files and rows of an image are removedadministrator/src/Helper/MediaHelper.php:2206Media plugins

Stock​

All nine are sent from administrator/src/Service/Inventory/InventoryService.php. The classes are in Inventory/. The first eight are announced after the plugins of alfa are loaded: the "before" events at line 5632, the "after" events at line 5647. The column gives the line of each command.

EventClassDeliveredCan refuseFiresSent inDocumented on
onInventoryBeforeReserveInventoryBeforeReserveEventAnnouncedYes, by throwing an error. Planned for 2.2.1, which is not released: InventoryRefusedException refuses; another error is a failure that is tried again.Before the stock is set asideInventoryService.php:443Stock events
onInventoryBeforeCommitInventoryBeforeCommitEventAnnouncedYes, by throwing an error. Planned for 2.2.1, which is not released: InventoryRefusedException refuses; another error is a failure that is tried again.Before goods are taken from stockInventoryService.php:2053Stock events
onInventoryBeforeReleaseInventoryBeforeReleaseEventAnnouncedYes, by throwing an error. Planned for 2.2.1, which is not released: InventoryRefusedException refuses; another error is a failure that is tried again.Before the reservations of an order are let goInventoryService.php:730Stock events
onInventoryReservedInventoryReservedEventAnnouncedNoAfter the save is finalInventoryService.php:620Stock events
onInventoryCommittedInventoryCommittedEventAnnouncedNoAfter the save is finalInventoryService.php:2454Stock events
onInventoryReleasedInventoryReleasedEventAnnouncedNoAfter the save is finalInventoryService.php:793 and :909Stock events
onInventoryAdjustedInventoryAdjustedEventAnnouncedNoAfter the save is finalInventoryService.php:3738, :4057 and :7807Stock events
onInventoryTransferredInventoryTransferredEventAnnouncedNoAfter the save is finalInventoryService.php:3909Stock events
onInventoryRestoredInventoryRestoredEventAnnouncedNoPlanned for 2.2.1, which is not released: after stock was put back, or taken off again when a credit note is voided, and the save is finalInventoryService.php:3222Stock events
onCollectStockAllocationProvidersCollectStockAllocationProvidersEventAnnounced, after alfa-inventory is loadedNoOn request, the first time a stock service object must choose a location. Planned for 2.2.1, which is not released: once per requestInventoryService.php:5677Stock events

Documents​

The classes are in Documents/.

EventClassDeliveredCan refuseFiresSent inDocumented on
onCollectDocumentTypeProvidersCollectDocumentTypeProvidersEventAnnouncedNoOn request, when the Document Types screen is shown and when staff press its sync buttonadministrator/src/Service/DocumentTypes/DocumentTypeRegistry.php:555Document events
onDocumentBeforeIssueDocumentBeforeIssueEventAnnouncedYes, by throwing an errorBefore the save, with no save openadministrator/src/Service/Document/DocumentIssuer.php:3057Document events
onDocumentIssuedDocumentIssuedEventAnnouncedNoAfter the save is finaladministrator/src/Service/Document/DocumentIssuer.php:615, handed over at :3875Document events
onDocumentVoidedDocumentVoidedEventAnnouncedNoAfter the save is finaladministrator/src/Service/Document/DocumentIssuer.php:1064, handed over at :3875Document events

Notifications​

EventClassDeliveredCan refuseFiresSent inDocumented on
onAlfaNotificationPushedNotificationPushedEvent in Notifications/AnnouncedNoAfter the save is finaladministrator/src/Helper/NotificationHelper.php:475Notification and setup events

Joomla events Alfa raises or relies on​

Joomla's own events are not Alfa events and are not listed above. These are the ones Alfa's code touches.

Joomla eventWhat Alfa does with itWhere
onContentAfterSave, onContentAfterDeleteJoomla announces them when a record is saved or deleted. When Alfa's save runs inside a bigger save or under one of Alfa's locks, Alfa holds them back and announces them itself once the save is final, never for a change that was undone (since 2.1.4).administrator/src/Model/AlfaAdminModel.php:730
The model's before-delete event (onContentBeforeDelete unless a model names another)A model that deletes inside a save or a lock of its own asks this event itself, before it opens them. A listener that answers false, or throws, refuses the delete.administrator/src/Model/AlfaAdminModel.php:616
onContentBeforeSave and Joomla's other save eventsAnnounced by Joomla itself, inside the record's write. Alfa does not send them. Planned for 2.2.1, which is not released: inside an item's save, which is one unit, so what a listener writes to the shop's database there is undone with a save that fails.Joomla's AdminModel
onTableBeforeStoreAlfa listens to it, last of all listeners, while an item's row is stored. It sends nothing.administrator/src/Table/ItemTable.php:155
onPageCacheIsExcludedAlfa listens to it and answers "yes", so that the cart and filtered listings are not served from Joomla's page cache. Planned for 2.2.1, which is not released: "System - Alfa Commerce Sync" answers for the cart and a visitor with a cart, typed checkout details, or a currency or place of their own; the pages that keep themselves out (the cart page in every form, the item page opened to change a line of the cart, a page whose cart module shows items, the registration page showing a refusal, a listing marked responseSpecific, the items module's recently viewed list, a page priced in a currency or place of the visitor's own) answer through one helper that needs no Alfa plugin. The easy articles module answers with a listener of its own while it shows a visitor's recently read list.plugins/system/alfasync/src/Extension/Alfasync.php:379, site/src/Helper/PageCache.php:58, modules/mod_easy_articles/src/Helper/EasyArticlesHelper.php:433
onAfterDispatchAlfa listens to it to place its menu in the administrator's sidebar.administrator/src/Extension/AlfaComponent.php:118

Two more names appear in the code and are not events for plugins: onAlfaContentAfterTheCommit and onAlfaContentDeleteAskedBeforeTheLock. Alfa gives Joomla's model these private names for the length of one call, so that it can hold Joomla's own event back as the first two rows describe. Do not listen to them.

Defined, not dispatched in 2.2.0​

These classes exist in administrator/src/Event/, but no code in the core repository of 2.2.0 creates them or sends them.

ClassEvent nameWhat the code says
StoreReferenceEvent in Payments/onPaymentStoreReferenceDefined, not dispatched in 2.2.0. The name is in the payment plugins' list of targeted events. See Payment plugins.
ChargeReferenceEvent in Payments/onPaymentChargeReferenceDefined, not dispatched in 2.2.0. As above.
StoredCredentialIntentEvent in Payments/None in the codeDefined, not dispatched in 2.2.0. No event name is given to it anywhere.

Building blocks, not events​

These files are in the same folder, but a plugin never receives them as an event of their own.

KindFiles
Abstract bases (14)AlfaAdminEvent in Admin/. FieldsEvent in Fields/. GeneralEvent, RedirectEvent and LayoutEvent in General/. InventoryAfterEvent in Inventory/. MediaEvent in Media/. PanelResultEvent in Panel/. PaymentsEvent, PaymentsRedirectEvent and PaymentsLayoutEvent in Payments/. ShipmentsEvent, ShipmentsRedirectEvent and ShipmentsLayoutEvent in Shipments/.
Interface (1)ScopedFieldEvent in ItemFields/
Traits (7)AlfaAdminAware in Admin/. HasMethodArgumentTrait in General/Traits/. ContributedSurfaces, HasCartLayout, HasSelections and HasSurfaces in ItemFields/Concern/. HasColumns in Lists/.
Helper classes (9)ActionBuilder, AdminActions, AdminColumns and AlfaAdminContext in Admin/. PriceChange in Catalog/. SelectorDescriptor, SurfaceBuilder and Surfaces in ItemFields/. ColumnBuilder in Lists/.
Enums (3)CartSurface, ItemListSurface and ItemSurface in ItemFields/

What you must provide​

Nothing. This page is a list. How to declare an event is on How events reach a plugin.

What happens next​

Follow the link in the last column of the event's row.

What can go wrong​

What you seeThe usual cause
An event in this list never reaches your pluginIt is addressed to one plugin and you listed it in getSubscribedEvents(), or it is announced and you declared it as a targeted handler. Check the column "Delivered".
The same name appears in two tablesonItemView is sent to payment plugins, shipping plugins and item field plugins, each with its own class.
A line number does not match your copy of the codeThe lines are those of version 2.2.0.

Not documented yet​

  • onGetToolActions and onExecuteToolAction have no card of their own. One line each on Extending Admin Screens gives the call.
  • StoredCredentialIntentEvent is not documented anywhere, because nothing sends it.