artlounge/magento2-bento
Composer 安装命令:
composer require artlounge/magento2-bento
包简介
Magento 2 integration with Bento email marketing platform via async event queues
README 文档
README
Connect your Magento 2 store with Bento email marketing using reliable, non-blocking async event queues.
What It Does
This package automatically sends customer activity from your Magento store to Bento for email marketing automation. Events are processed through RabbitMQ queues so they never slow down your store.
Server-Side Events
| Magento Event | Bento Event | Trigger |
|---|---|---|
| Order Placed | $purchase |
Customer completes checkout |
| Order Shipped | $OrderShipped |
Shipment created |
| Order Refunded | $OrderRefunded |
Credit memo created |
| Customer Registered | $Subscriber |
New account created |
| Newsletter Subscribe | $subscribe |
Email subscribed |
| Newsletter Unsubscribe | $unsubscribe |
Email unsubscribed |
| Abandoned Cart | $cart_abandoned |
Cart idle for configured time |
Client-Side Events
| Event | Bento Event | Trigger |
|---|---|---|
| Product View | $view |
Customer views product page |
| Add to Cart | $addToCart |
Customer adds item to cart |
| Checkout Started | $checkoutStarted |
Customer enters checkout |
| Purchase (fallback) | $purchase |
Success page (deduplicated with server-side) |
Requirements
- PHP 8.1+
- Magento 2.4.4+
- RabbitMQ 3.8+ (or Magento database queue fallback)
- Aligent Async Events ^3.0
- Bento account with Site UUID, Publishable Key, and Secret Key
Installation
composer require artlounge/magento2-bento bin/magento module:enable ArtLounge_BentoCore ArtLounge_BentoEvents ArtLounge_BentoTracking bin/magento setup:upgrade bin/magento setup:di:compile bin/magento cache:flush
Configuration
Navigate to Stores > Configuration > Art Lounge > Bento Integration in Magento Admin.
Required Settings
| Setting | Path | Description |
|---|---|---|
| Enable | General > Enable | Master on/off switch |
| Site UUID | General > Site UUID | Your Bento site identifier |
| Publishable Key | General > Publishable Key | Client-side API key |
| Secret Key | General > Secret Key | Server-side API key (stored encrypted) |
Optional Settings
- Orders — Toggle tracking for placed, shipped, cancelled, refunded orders. Configure tax inclusion and currency multiplier.
- Customers — Toggle tracking for customer creation/updates. Add default tags.
- Newsletter — Toggle subscribe/unsubscribe tracking.
- Abandoned Cart — Set delay (minutes), minimum cart value, and whether email is required.
Test Your Connection
After entering your API keys, click Test Connection in the admin config to verify your credentials.
Queue Consumers
Start the async event consumers (production environments should use Supervisor):
bin/magento queue:consumers:start event.trigger.consumer bin/magento queue:consumers:start event.retry.consumer
Check queue status:
rabbitmqctl list_queues name messages consumers
CLI Commands
bin/magento bento:test # Test API connection bin/magento bento:status # Show config and queue status bin/magento bento:abandoned-cart:process # Manually process pending carts bin/magento bento:abandoned-cart:cleanup # Remove old schedule entries bin/magento bento:deadletter:replay # Replay failed events
Reliability Features
- Outbox fallback — If RabbitMQ is unreachable, events are stored in a database outbox and retried automatically when the broker recovers.
- Dead-letter replay — Events that fail after max retries can be replayed via CLI or monitored by cron.
- Smart retry prevention — Permanent failures (400, 401, 403) are not retried; transient failures (429, 5xx, network errors) are retried with exponential backoff.
- Abandoned cart detection — Configurable delay, minimum value, and HMAC-signed recovery links.
- Event deduplication — All events include unique keys to prevent duplicate processing.
Varnish / Full Page Cache Compatibility
All client-side tracking is Varnish-safe. Templates render no user-specific data in HTML — all customer identification happens via Magento's private content AJAX system (customerData).
Architecture
See docs/architecture.md for a detailed walkthrough of how the three modules work together, the event flow, retry system, and design decisions.
Contributing
See CONTRIBUTING.md for development setup, running tests, and pull request guidelines.
License
artlounge/magento2-bento 适用场景与选型建议
artlounge/magento2-bento 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 24 次下载、GitHub Stars 达 0, 最近一次更新时间为 2026 年 03 月 20 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「queue」 「email」 「events」 「async」 「marketing」 「magento2」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 artlounge/magento2-bento 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 artlounge/magento2-bento 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 artlounge/magento2-bento 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
PHP AMQP Binding Library
Библиотека для реализаций паттерна Pub/Sub
A Laravel package to monitor queue jobs.
Wireless Cross-Component Communication
A powerful event calendar Tool for Laravel's Nova 5.
Command bus implementation: Commands and domain events
统计信息
- 总下载量: 24
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 28
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-03-20