Metadata-Version: 2.4
Name: flexcommerce-notifications
Version: 1.0.0
Summary: Signal-driven email, SMS, push and in-app notifications with an outbox and retries
Author-email: NzeStan <nnamaniifeanyi10@gmail.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/NzeStan/flex_commerce
Project-URL: Documentation, https://github.com/NzeStan/flex_commerce#readme
Project-URL: Repository, https://github.com/NzeStan/flex_commerce
Project-URL: Issues, https://github.com/NzeStan/flex_commerce/issues
Project-URL: Changelog, https://github.com/NzeStan/flex_commerce/blob/main/CHANGELOG.md
Keywords: django,ecommerce,flexcommerce,nigeria,africa,drf,notifications,sms,email,push,termii,fcm
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 4.2
Classifier: Framework :: Django :: 5.0
Classifier: Framework :: Django :: 5.1
Classifier: Framework :: Django :: 5.2
Classifier: Framework :: Django :: 6.0
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Office/Business :: Financial :: Point-Of-Sale
Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: flexcommerce-core<2,>=1.0.0
Provides-Extra: fcm
Requires-Dist: google-auth>=2.20; extra == "fcm"
Requires-Dist: requests>=2.28; extra == "fcm"
Dynamic: license-file

# flexcommerce-notifications

Signal-driven notifications on email, SMS, push and an in-app inbox — with an outbox, retries, deduplication, per-user preferences and admin-editable templates.

Part of **[FlexCommerce](https://github.com/NzeStan/flex_commerce/blob/main/README.md)** — a complete, modular e-commerce and marketplace backend for
Django + DRF, built for Nigeria and Africa. Every app is optional.

## Features

- Zero wiring: order, payment, shipping, refund, cart-recovery, stock, vendor and staff messages
- SMS: Termii, Africa's Talking, Twilio, Kudisms; push: FCM HTTP v1, OneSignal
- Default messages for every event; override per channel in the admin
- Per-event switches and channel routing in settings
- In-app inbox and device-token APIs

## Install

```bash
pip install flexcommerce-notifications
```

```python
INSTALLED_APPS = [..., "rest_framework", "flexcommerce_core", "flexcommerce_notifications"]
urlpatterns = [path("api/", include("flexcommerce_core.urls"))]
```

```bash
python manage.py migrate
```

Example: `GET /api/notifications/inbox/`

## Documentation

- [Integration guide](https://github.com/NzeStan/flex_commerce/blob/main/INTEGRATION.md)
- [Settings](https://github.com/NzeStan/flex_commerce/blob/main/docs/settings.md) · [API](https://github.com/NzeStan/flex_commerce/blob/main/docs/api.md) · [Events & notifications](https://github.com/NzeStan/flex_commerce/blob/main/docs/events.md)
- [Extending](https://github.com/NzeStan/flex_commerce/blob/main/docs/extending.md) · [Operations](https://github.com/NzeStan/flex_commerce/blob/main/docs/operations.md) · [Changelog](https://github.com/NzeStan/flex_commerce/blob/main/CHANGELOG.md)

Requires Python 3.10+, Django 4.2+, Django REST framework 3.14+. MIT licensed.
