Welcome to the heidelpay payment api for php
This is the php payment api for heidelpay. The library will help you to easily integrate heidelpay into your application.
Currently supported payment methods:
- credit card
- debit card
- direct debit
- PostFinance Card
- PostFinance EFinance
- invoice secured b2c
- direct debit secured b2c
- Santander invoice
- Santander hire purchase
- Payolution invoice
php-payment-api requires PHP 5.6 or higher; we recommend using the latest stable PHP version whenever possible.
If you want to store the output of this library e.g. into a database, please make sure that your application takes care of sql injection, cross-site-scripting (xss) and so on. There is currently no build-in protection.
You can find a copy of this license in LICENSE.txt.
Please visit http://dev.heidelpay.com/heidelpay-php-payment-api/ for the developer documentation.
Unit- and Integration tests
This library comes with a set of unit and integration tests. Please do not run the integration tests on each build.
Run prior to tests:
Run unit tests:
vendor/bin/codecept run unit
Run unit tests with code coverage report:
vendor/bin/codecept run unit --coverage --coverage-html
Run integration tests:
vendor/bin/codecept run integration
Run integration tests with debug output:
vendor/bin/codecept run integration --debug
Run all integration test of a specific class:
vendor/bin/codecept run tests/integration/PaymentMethods/EasyCreditPaymentMethodTest
Run a specific integration test:
vendor/bin/codecept run tests/integration/PaymentMethods/EasyCreditPaymentMethodTest:initialRequest
For coverage analysis results see:
Integration examples can be found in the example folder. Just open the
_enableExamples.php and change
Please make sure to switch it off again, after you launch your application.
To enable the easyCredit example you might have to change the file permissions for the file "example/EasyCredit/EasyCreditResponseParams.txt".
It will be used to store the post-parameters send asynchronously by the payment which otherwise would not be accessable in the client session.