Sephpa [sefa] is a PHP class that creates SEPA XML files. The created XML files fulfill the specifications of Electronic Banking Internet Communication Standard (EBICS).
- SEPA Credit Transfer
- pain.001.001.03
- pain.001.002.03
- pain.001.003.03
- SEPA Direct Debit
- pain.008.001.02
- pain.008.001.02.austrian.003
- pain.008.002.02
- pain.008.003.02
Sephpa was created for PHP >=7.1 including PHP 8 and requires SepaUtilities 1.3.4+ and SimpleXML. Sephpa should also work with PHP <=5.6, but since these versions are very old and don't get any security updates, it is strongly recommended not to use PHP older than 5.6.
If you want to download correctly sorted files, you also need the zip library and for documentation files you need SepaDocumentor.
Just add
{
"require": {
"abcaeffchen/sephpa": "^2.0"
}
}
to your composer.json
and include the Composer autoloader to your script.
You can download Sephpa from this GitHub page. Make sure you also download SepaUtilities. You should store the files in a structure that looks like this:
your project root
├── your_code
│ └── ...
└── vendor
├── Sephpa (the Sephpa project go here)
├── SepaUtilities (the SepaUtilities files go here)
└── ...
In your code you can include the Sephpa autoloader by including the file
vendor/Sephpa/src/autoloader.php
You also need to include the SepaUtilities file which should be
vendor/SepaUtilities/src/SepaUtilities.php
In total your code should look something like this:
require PROJECT_ROOT . '/vendor/Sephpa/src/autoloader.php';
require PROJECT_ROOT . '/vendor/abcaeffchen/sepa-utilities/src/SepaUtilities.php';
You need to define PROJECT_ROOT
by yourself.
Sephpa uses SepaDocumentor to create File Routing Slips and Control Lists. If you are interested in this files you need to add
{
"require": {
"abcaeffchen/sepa-documentor": "^1.0"
}
}
to your composer file or download it from the website and make it available to Sephpa.
Sephpa is not meant to teach you SEPA. If you want to learn more about SEPA or SEPA files, you should ask your bank for help. You use this library at your own risk and I assume no liability if anything goes wrong. You are supposed to check the files before handing them to your bank.
Have a look at the wiki pages for the documentation and examples.
Thanks to Hermann Herz who supported me debugging and with great
ideas to improve Sephpa and SepaUtilities.
Thanks to sargac for the help with the wiki pages and for creating
the nice logo.
If you use and like Sephpa, drop me a note on what project you use it. I'm really curious. If you like it a lot, consider buying me a coffee :)
Licensed under the LGPL v3.0 License.