Laravel EnsoLaravel Enso
Guide
Back End
Front End
GitHub
Guide
Back End
Front End
GitHub
  • Back End

    • Action Logger
    • Addresses
    • Alfa Sign
    • Algolia
    • Algolia Webshop
    • API
    • Audit
    • Avatars
    • BTRL (Banca Transilvania iPay)
    • Cache Chain
    • Calendar
    • Cargo Partner
    • Categories
    • Charts
    • CI/CD
    • Cli
    • CNP Validator
    • Comments
    • Commercial
    • Companies
    • Core
    • Countries
    • Currencies
    • Data Export
    • Data Import
    • Discounts
    • Documents
    • Dynamic Methods
    • EAV
    • Emag
    • Emag Checker
    • Enums
    • Excel
    • Facebook
    • Files
    • Filters
    • Financials
    • Forms
    • Frisbo
    • Google
    • Helpers
    • Holidays
    • How-to
    • Image Transformer
    • Impersonate
    • Interactions
    • Inventory
    • IO
    • Localisation
    • Lockable Models
    • Logs
    • Mails
    • Measurement Units
    • Meili Search
    • Meili Search Webshop
    • Menus
    • Migrator
    • Monitored Emails
    • Notifications
    • Packaging Units
    • PDF
    • People
    • Permissions
    • Product Eav
    • Product Lots
    • Products
    • Projects
    • Questionnaires
    • Rememberable
    • Roles
    • Sale Channels
    • Searchable
    • Select
    • Send SMS (Sendsms.ro)
    • Sentry
    • Services
    • Smart Bill
    • Sms Advert
    • Stripe
    • Sunrise Sunset
    • System Notifications
    • Tables
    • Tasks
    • Teams
    • Ticketing
    • Track Who
    • Tutorials
    • Typesense
    • Typesense Webshop
    • Unit Conversion
    • Upgrade
    • UPS
    • User Groups
    • Users
    • Versions
    • Virtual Call Center
    • Vouchers
    • Webshop
    • Webshop Commercial

Emag Checker

LicenseStablePHPIssuesMerge Requests

Description

eMag Checker extends the Enso eMag integration with competitive-price checking and auto-pricing workflows.

The package tracks long-running check operations, augments eMag offers with checker-specific pricing metadata, can automatically adjust client product discounts to defend the buy button, and exposes endpoints for enabling or disabling auto-pricing per offer.

It is designed to run on top of laravel-enso/emag, not as a standalone integration, and is intended for private Enso deployments that operate on eMag.

Installation

This is a proprietary package distributed through the private Enso registry.

Run the package migrations:

php artisan migrate

Default configuration:

return [
    'enabled' => (bool) env('EMAG_CHECKER_ENABLED', true),
    'overdue' => (int) env('EMAG_CHECK_OVERDUE', 30),
];

When enabled in production, the package schedules enso:emag:checker:check-overdue every 30 minutes.

Features

  • Full-page competitive-price checks queued as IO operations.
  • Offer-level auto-pricing flags, competitor state tracking, and historical check snapshots.
  • Discount dropping and discount recalculation services for active eMag offers.
  • Auto-pricing activation and deactivation endpoints under the existing eMag offers API.
  • Overdue-check notifications for admin users plus recovery tooling for stuck check runs.

Usage

Operational commands:

php artisan enso:emag:check --pages=5 --skip=0 --readonly
php artisan enso:emag:drop-discounts --strong-competitors
php artisan enso:emag:checker:check-overdue
php artisan enso:emag:finalize-in-progress

Core offer helpers:

  • activateAutoPricing()
  • deactivateAutoPricing()
  • tryGoingBelow(Remote $remote)
  • checks()

The checker processes approved active marketplace offers page by page, snapshots the remote price state for each checked offer, and can either reprice local discounts or drop them entirely depending on the detected scenario.

When a check remains stuck past the configured overdue threshold, the package notifies active admin users and finalizes the pending operation automatically.

API

HTTP routes

  • POST api/integrations/emag/offers/{offer}/activateAutoPricing
  • POST api/integrations/emag/offers/{offer}/deactivateAutoPricing

Route names:

  • integrations.emag.offers.activateAutoPricing
  • integrations.emag.offers.deactivateAutoPricing

Artisan commands

  • enso:emag:check
  • enso:emag:drop-discounts
  • enso:emag:checker:check-overdue
  • enso:emag:finalize-in-progress

Configuration

  • enso.emag-checker.enabled
  • enso.emag-checker.overdue

Depends On

Required Enso packages:

  • laravel-enso/emag ↗

Runtime companion packages:

  • laravel-enso/discounts ↗
  • laravel-enso/io ↗
  • laravel-enso/track-who ↗

Contributions

are welcome. Pull requests are great, but issues are good too.

Thank you to all the people who already contributed to Enso!

Edit this page on GitHub
Last Updated: 4/20/2026, 12:06:58 PM
Prev
Emag
Next
Enums