https://github.com/webgriffe/SyliusHeyLightPlugin
https://github.com/webgriffe/SyliusHeyLightPlugin
Last synced: 9 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/webgriffe/SyliusHeyLightPlugin
- Owner: webgriffe
- Created: 2024-01-22T16:54:12.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2025-05-20T09:21:00.000Z (about 1 year ago)
- Last Synced: 2025-10-09T04:09:27.281Z (9 months ago)
- Language: PHP
- Size: 229 KB
- Stars: 0
- Watchers: 5
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
Sylius HeyLight Plugin
Sylius plugin for HeyLight payment gateway (ex PagoLight BNPL and PagoLight PRO).
## Installation
1. Run:
```bash
composer require webgriffe/sylius-heylight-plugin
```
2. Add `Webgriffe\SyliusHeylightPlugin\WebgriffeSyliusHeylightPlugin::class => ['all' => true]` to your `config/bundles.php`.
Normally, the plugin is automatically added to the `config/bundles.php` file by the `composer require` command. If it is not, you have to add it manually.
3. Create a new file config/packages/webgriffe_sylius_heylight_plugin.yaml:
```yaml
imports:
- { resource: "@WebgriffeSyliusHeylightPlugin/config/config.php" }
```
4. Import the routes needed for cancelling the payments. Add the following to your config/routes.yaml file:
```yaml
webgriffe_sylius_heylight_plugin_shop:
resource: "@WebgriffeSyliusHeylightPlugin/config/shop_routing.php"
prefix: /{_locale}
requirements:
_locale: ^[A-Za-z]{2,4}(_([A-Za-z]{4}|[0-9]{3}))?(_([A-Za-z]{2}|[0-9]{3}))?$
webgriffe_sylius_heylight_plugin_ajax:
resource: "@WebgriffeSyliusHeylightPlugin/config/shop_ajax_routing.php"
sylius_shop_payum_cancel:
resource: "@PayumBundle/Resources/config/routing/cancel.xml"
```
**NB:** The file shop_routing needs to be after the prefix _locale, so that messages can be displayed in the right
language. You should also include the cancel routes from the Payum bundle if you do not have it already!
5. Add the WebhookToken entity. Create a new file `src/Entity/Payment/WebhookToken.php` with the following content:
```php
window.afterUrl = "{{ afterUrl }}";
window.paymentStatusUrl = "{{ paymentStatusUrl }}";
{{ encore_entry_script_tags('webgriffe-sylius-heylight-entry', null, 'sylius.shop') }}
{% endblock %}
```
## Usage
Access to the admin panel and go to the `Payment methods` section. Create a new payment method and select `HeyLight BNPL`
or `HeyLight Financing` as the gateway. Then, configure the payment method with the required parameters.
Automatically, the plugin will hide the payment method if the currency is not EUR, GBP or CH or if the country is not
Italy or Switzerland. HeyLight Financing will also be visible only if the order total amount is greater than 100 EUR.
## Contributing
For a comprehensive guide on Sylius Plugins development please go to Sylius documentation,
there you will find the Plugin Development Guide, that is full of examples.