PHPackages                             mblsolutions/paypoint-notification - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. mblsolutions/paypoint-notification

ActivePackage[Payment Processing](/categories/payments)

mblsolutions/paypoint-notification
==================================

PayPoint Notification package

v1.0.0(9mo ago)074proprietaryPHPPHP ^8.1|8.2|8.3|8.4CI passing

Since Aug 22Pushed 9mo agoCompare

[ Source](https://github.com/mblsolutions/paypoint-notification)[ Packagist](https://packagist.org/packages/mblsolutions/paypoint-notification)[ RSS](/packages/mblsolutions-paypoint-notification/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (10)Versions (4)Used By (0)

PayPoint Notification
=====================

[](#paypoint-notification)

PayPoint notification package

Installation
------------

[](#installation)

The recommended method to install LaravelRepository is with composer

```
php composer require mblsolutions/paypoint-notification
```

### Laravel without auto-discovery

[](#laravel-without-auto-discovery)

If you don't use auto-discovery, add the ServiceProvider to the providers array in config/app.php

```
\MBLSolutions\Notification\NotificationServiceProvider::class,
```

### Package configuration

[](#package-configuration)

```
Copy the package configuration to your local config directory.
```

```
php artisan vendor:publish --tag=notification-config
```

### Database Driver

[](#database-driver)

If you would like to use the Database driver to store your notification logs, you will first need to create and run the database driver migration.

```
php artisan paypoint-notification:database:table
```

This will create a new migration in `database/migrations`, after creating this migration run the database migrations to create the new table.

```
php artisan migrate
```

Usage
-----

[](#usage)

The configuration and setup can be adjusted in the notification config file located in `config/notification.php`. We recommend reading through the config file before enabling notification to ensure you have the optimum setup.

### Enable Notification Service

[](#enable-notification-service)

In environment setting, you need to change MAIL\_MAILER from smtp to paypoint to enable the service. The endpoint and credentials is neede to add in your .env file.

```
MAIL_MAILER=paypoint
PP_NOTIFICATION_endpoint=https://ENDPOINT_URL
PP_NOTIFICATION_SUBSCRIPTION_KEY=xxxxxxxxxxx
```

### Template Setup

[](#template-setup)

The template should be generated manually via the endpoint and an existing template id that is needed. If any field in request body that needs to validate before sending it to endpoint, a rule needs to specify for that template.

```
'template' => [
        'default_id' => env('TEMPLATE_ID','xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx1'),
    ],
```

This can also be set in your .env file by using the corresponding environment variable

```
TEMPLATE_ID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx1
```

### Notification Setup

[](#notification-setup)

In application, you need to use or replace a new PayPointMailMessage which are wrapped the value of 'X-Template-Request-Body' and 'X-Template-Id'.

```
class SendEmail extends Notification implements ShouldQueue
{
    //... construct method

    public function toMail($notifiable)
    {
        return (new PayPointMailMessage(
                    //Change the template id if not default
                    config('notification.template.default_id'),
                    //Request Body
                    [
                        'CallbackUrl' => '',
                        'Model' =>
                            [
                            'NotificationModel' =>
                                [
                                    'Recipients' =>
                                    [
                                        [
                                            'Name' => 'Test Customer',
                                            'Email' => 'test@test.com'
                                        ]
                                    ],
                                    /* .. */
                                ]
                            ]
                        ]
                ));
    }
}
```

### Enable user information for logging in job

[](#enable-user-information-for-logging-in-job)

If you would like to have user information in notification logs, you need to set user in authentication as in the example below:

```
class SendEmail extends Notification implements ShouldQueue
{
    //... construct method

    public function toMail($notifiable)
    {
        return (new PayPointMailMessage(/* .. */))
                ->withUser($notifiable);
    }
}
```

### Optional validation for request body

[](#optional-validation-for-request-body)

If any field in request body that needs to validate before sending it to endpoint, a rule needs to add in notification.php config file as in the example below:

```
'template' => [
        //Optional validation array with template id as key
        //The rule depends on what is the matched validation field in array from the above example of notification setup. e.g. $data
        'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx1' => [
            'validation_rule' => [
                'Model.NotificationModel.Recipients.*.Name' => ['required', 'string', 'max:255'],
                'Model.NotificationModel.Recipients.*.Email' => ['required', 'email', 'max:255'],
            ],
        ]
    ],
```

License
-------

[](#license)

Notification is free software distributed under the terms of the MIT license.

###  Health Score

36

—

LowBetter than 82% of packages

Maintenance58

Moderate activity, may be stable

Popularity12

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 80% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

270d ago

Major Versions

v0.1.0 → v1.0.02025-08-22

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/610936?v=4)[Christian Innerbichler](/maintainers/lerouse)[@lerouse](https://github.com/lerouse)

---

Top Contributors

[![chun-yu-tang](https://avatars.githubusercontent.com/u/173277897?v=4)](https://github.com/chun-yu-tang "chun-yu-tang (8 commits)")[![lerouse](https://avatars.githubusercontent.com/u/610936?v=4)](https://github.com/lerouse "lerouse (2 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/mblsolutions-paypoint-notification/health.svg)

```
[![Health](https://phpackages.com/badges/mblsolutions-paypoint-notification/health.svg)](https://phpackages.com/packages/mblsolutions-paypoint-notification)
```

###  Alternatives

[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9682.1M97](/packages/roots-acorn)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)[dyrynda/laravel-model-uuid

This package allows you to easily work with UUIDs in your Laravel models.

4802.8M8](/packages/dyrynda-laravel-model-uuid)[psalm/plugin-laravel

Psalm plugin for Laravel

3274.9M308](/packages/psalm-plugin-laravel)[laravel-zero/framework

The Laravel Zero Framework.

3371.4M369](/packages/laravel-zero-framework)[laravel/cashier-paddle

Cashier Paddle provides an expressive, fluent interface to Paddle's subscription billing services.

264778.4k3](/packages/laravel-cashier-paddle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
