/sylius-billogram-plugin

Adds a Sylius gateway for Billogram.

Primary LanguagePHPMIT LicenseMIT

Overview

This plugin allows you to integrate Billogram invoice with Sylius platform app. It includes all Sylius and Billogram invoice features.

The plugin was developed with inspiration from BitBagCommerce's SyliusMolliePlugin.

Installation

$ composer require debricked/sylius-billogram-plugin

Add plugin dependencies to your AppKernel.php file:

public function registerBundles()
{
    return array_merge(parent::registerBundles(), [
        ...
        
        new \Debricked\SyliusBillogramPlugin\DebrickedSyliusBillogramPlugin(),
    ]);
}

Import required config in your app/config/config.yml file:

# app/config/config.yml

imports:
    ...
    
    - { resource: "@DebrickedSyliusBillogramPlugin/Resources/config/config.yml" }

Import routing by adding the following to the top of your app/config/routing.yml file:

# app/config/routing.yml

debricked_sylius_billogram_plugin:
    resource: "@DebrickedSyliusBillogramPlugin/Resources/config/routing.yml"

Update your database

$ bin/console doctrine:migrations:diff
$ bin/console doctrine:migrations:migrate

Note: If you are running it on production, add the -e prod flag to this command.

Customization

Available services you can decorate and forms you can extend

Run the below command to see what Symfony services are shared with this plugin:

$ bin/console debug:container debricked_sylius_billogram_plugin

Testing

$ composer install
$ cd tests/Application
$ yarn install
$ yarn run gulp
$ bin/console assets:install web -e test
$ bin/console doctrine:database:create -e test
$ bin/console doctrine:schema:create -e test
$ bin/console server:run 127.0.0.1:8080 -d web -e test
$ open http://localhost:8080
$ billogram_api_username="your_sandbox_username" billogram_api_password="your_sandbox_api_key" bin/behat
$ billogram_api_username="your_sandbox_username" billogram_api_password="your_sandbox_api_key" bin/phpspec run

Contribution

Learn more about our contribution workflow on http://docs.sylius.org/en/latest/contributing/.