/

Adobe Commerce (Magento)

Adobe Commerce (Magento)

Integration type

eComm

What we solve

Adobe Commerce (Magento) merchants need a way to enforce identity verification and step-up checks as part of account registration and checkout—blocking high-risk purchases unless the customer meets an assurance threshold—without rebuilding their commerce stack. This integration adds a Magento Marketplace extension that hooks into Magento’s event/observer and checkout payment flow to require 1Kosmos IDV (e.g., IAL2) before order placement, supports step-up challenges for higher-value orders, and exposes verification status to the storefront via GraphQL/REST endpoints so identity signals can be used consistently across checkout and customer experiences.

Integration architecture

1Kosmos publishes a Magento Marketplace extension (1kosmos/module-blockid-verify). The Magento extension framework uses the Observer and Plugin (Interceptor) patterns:

Observer hooks:

<!-- etc/events.xml -->
<event name="customer_register_success">
    <observer name="blockid_trigger_idv" instance="OneKosmos\BlockIDVerify\Observer\CustomerRegisterObserver">
</observer></event>

<event name="sales_order_place_before">
    <observer name="blockid_stepup_check" instance="OneKosmos\BlockIDVerify\Observer\OrderStepUpObserver">
</observer></event>
<!-- etc/events.xml -->
<event name="customer_register_success">
    <observer name="blockid_trigger_idv" instance="OneKosmos\BlockIDVerify\Observer\CustomerRegisterObserver">
</observer></event>

<event name="sales_order_place_before">
    <observer name="blockid_stepup_check" instance="OneKosmos\BlockIDVerify\Observer\OrderStepUpObserver">
</observer></event>
<!-- etc/events.xml -->
<event name="customer_register_success">
    <observer name="blockid_trigger_idv" instance="OneKosmos\BlockIDVerify\Observer\CustomerRegisterObserver">
</observer></event>

<event name="sales_order_place_before">
    <observer name="blockid_stepup_check" instance="OneKosmos\BlockIDVerify\Observer\OrderStepUpObserver">
</observer></event>

Plugin on checkout payment processor:

// Plugin/CheckoutPaymentProcessorPlugin.php
public function beforeSavePaymentInformationAndPlaceOrder(
    \Magento\Checkout\Model\PaymentInformationManagement $subject,
    $cartId, $paymentMethod, $billingAddress = null
) {
    $customer = $this->customerSession->getCustomer();
    $ialLevel = $customer->getCustomAttribute('blockid_ial_level');

    if ($this->config->isIALRequired() && (!$ialLevel || $ialLevel->getValue() <

// Plugin/CheckoutPaymentProcessorPlugin.php
public function beforeSavePaymentInformationAndPlaceOrder(
    \Magento\Checkout\Model\PaymentInformationManagement $subject,
    $cartId, $paymentMethod, $billingAddress = null
) {
    $customer = $this->customerSession->getCustomer();
    $ialLevel = $customer->getCustomAttribute('blockid_ial_level');

    if ($this->config->isIALRequired() && (!$ialLevel || $ialLevel->getValue() <

// Plugin/CheckoutPaymentProcessorPlugin.php
public function beforeSavePaymentInformationAndPlaceOrder(
    \Magento\Checkout\Model\PaymentInformationManagement $subject,
    $cartId, $paymentMethod, $billingAddress = null
) {
    $customer = $this->customerSession->getCustomer();
    $ialLevel = $customer->getCustomAttribute('blockid_ial_level');

    if ($this->config->isIALRequired() && (!$ialLevel || $ialLevel->getValue() <

GraphQL query added to storefront:




REST API extension points:





Transform how you verify and authenticate

Secure onboarding, eliminate passwords, and stop fraud on one platform. Schedule a demo and see it in action.

Transform how you verify and authenticate

Secure onboarding, eliminate passwords, and stop fraud on one platform. Schedule a demo and see it in action.

Transform how you verify and authenticate

Secure onboarding, eliminate passwords, and stop fraud on one platform. Schedule a demo and see it in action.