The Home for Magento 2 Excellence

Quality-tested Magento 2 modules. Explore. Evaluate. Elevate. #magento2

748 Modules
496 Ready
245 Need Help
🏆 Leaderboard
Actively Maintained v1.0.0

Utanvet Ellenor Risk Check

utanvet-ellenor/connector-magento

Integrates Utanvet Ellenor risk assessment into Magento 2 checkout, filtering available payment methods based on risk scores and sending order outcome signals on status transitions.

0
Downloads
0
GitHub Stars
1mo ago
Last Release
0
Open Issues
Build Passing
Ready to install

Build Tests

Composer Install
DI Compile
Templates

Code Quality

CS Coding Standard
70 warnings
PHPStan Failed

Tested on Magento 2.4.8-p4

Recent Test History

Each release is tested against the latest Magento version at that time.

v1.0.0 on Magento 2.4.8-p4
Mar 22, 2026

Share This Module's Status

Utanvet Ellenor Risk Check Magento compatibility status badge

README

Loaded from GitHub

Utanvet Ellenor Connector for Magento 2

Magento 2 module that integrates the Utanvet Ellenor risk check into checkout payment filtering and sends order outcome signals after status changes.

Features

  • Filters available payment methods during checkout based on Utanvet Ellenor sendRequest() response.
  • Sends sendSignal() outcome events on configured order status transitions.
  • Saves guest email early during one-page checkout flows to avoid missing email in risk checks.
  • Supports multiple checkout implementations (Luma, Hyva Checkout, common one-step checkouts) without checkout-specific module toggles.

How Payment Filtering Works

Plugin/Payment/MethodListPlugin.php intercepts MethodList::getAvailableMethods().

  1. If module is disabled, quote is missing, or no managed methods are configured: no filtering.
  2. Module calls Model/Service/RequestService::sendRequest($quote).
  3. If no valid API response arrives: no filtering (safe fallback).
  4. If result.blocked is true: configured managed_methods are removed.
  5. If result.blocked is false: configured fallback_methods are removed.

This means:

  • "managed methods" are shown only for non-blocked customers.
  • "fallback methods" are shown only for blocked customers.

How Outcome Signaling Works

Observer/OrderStatusSignalObserver.php listens to sales_order_save_after.

  • Signal is sent only when status actually changes.
  • Positive/negative status lists are configurable.
  • If a status exists in both lists, negative outcome (-1) wins.

Guest Email Autosave (Checkout)

The module injects view/frontend/web/js/guest-email-autosave.js via view/frontend/layout/default.xml.

What it does:

  • Runs only in one-page checkout contexts.
  • Explicitly skips multishipping checkout.
  • Watches email inputs (input, change, blur) and dynamic DOM updates.
  • Debounces requests and deduplicates already-saved values.
  • Saves email through custom REST endpoint using checkout session.
  • Triggers payment-info refresh only when needed, with dedupe to avoid double calls when checkout already refreshes itself.

Custom REST API Endpoints

Defined in etc/webapi.xml:

  • PUT /V1/utanvetellenor/guest-email
    • Saves guest email for current checkout session quote.
    • Service: UtanvetEllenor\ConnectorMagento\Api\GuestEmailManagementInterface::setForCurrentQuote
  • PUT /V1/utanvetellenor/guest-carts/:cartId/email
    • Saves guest email by masked cart id.
    • Service: UtanvetEllenor\ConnectorMagento\Api\GuestEmailManagementInterface::set

Both endpoints are anonymous resources and return bool.

Admin Configuration

Path: Stores -> Configuration -> Sales -> Utanvet Ellenor

Config key prefix: utanvetellenor/general/*

  • enabled
  • public_api_key
  • private_api_key (encrypted in config storage)
  • sandbox
  • threshold (float between -1 and 1)
  • managed_methods
  • fallback_methods
  • positive_statuses
  • negative_statuses
  • logging_enabled (default scope)

Logging

  • File: var/log/utanvetellenor.log
  • Logger level: info and above.
  • Controlled by logging_enabled config.

Installation

Example (composer-based):

composer require utanvet-ellenor/connector-magento
bin/magento module:enable UtanvetEllenor_ConnectorMagento
bin/magento setup:upgrade
bin/magento cache:flush

If your deployment mode requires static assets:

bin/magento setup:static-content:deploy -f

Compatibility Notes

  • Designed for Magento 2.4.x.
  • Uses utanvet-ellenor/client-php (^2.1).
  • Checkout autosave logic is frontend-agnostic, but still depends on checkout rendering an email input field.

Current Behavior and Limits

  • If request/signal API keys are missing or invalid, external calls are skipped safely.
  • If Utanvet Ellenor request fails or returns error, payment methods are not filtered (safe fallback).
  • No response cache layer is currently active in this module version.

Development Pointers

Main classes:

  • Model/Service/RequestService.php
  • Plugin/Payment/MethodListPlugin.php
  • Observer/OrderStatusSignalObserver.php
  • Model/Service/SignalService.php
  • Model/GuestEmailManagement.php
  • view/frontend/web/js/guest-email-autosave.js

This content is fetched directly from the module's GitHub repository. We are not the authors of this content and take no responsibility for its accuracy, completeness, or any consequences arising from its use.