Sie wollen mit Ihrer Bank sprechen?

Können Sie, mit dem smart ebics client!

EBICS 2.5 PHP Client

SEPA Direct Debit

SEPA Credit Transfer

Balance and Bankstatements

PHP Class Features

tested with PHP 5.6, 7.1, 7.2, 7.3, 7.4, 8.1

licensed limited Version with ION Cube Binary

unlimited sourcecode Version for Integrators

EBICS API Features

HTTP API TLS secured

low monthly fee

unlimited Version for professionall use

Software

PHP Klasse, leicht integrierbar


SEPA Lastschrift/Überweisung


Umsatzabruf / CAMT / MT940


Verteilte Elektronische Unterschrift VEU



Lizenzen

Limited max. 1 Bank und User


unlimited developer Version


API Limited max. 1 Bank and User


API unlimited Version


Support

Ticket System


Live Chat


E-Mail Support





Include Class:

	
$data_path = getcwd(). "/.ebics_client_data/";
$work_dir = getcwd();


error_reporting(E_ALL);
ini_set('display_errors', 1);
set_include_path(get_include_path().PATH_SEPARATOR .$work_dir."/phpseclib");

include_once("Crypt/RSA.php");
include_once('Crypt/Rijndael.php');
include_once('mt940/autoload.php');		
		

define('CLASSES_ROOT',$work_dir);

include("ebics_client.class.php");
include("sepa.class.php");
	
	
Examples - EBICS Initialization:

	
1. What this software does

This software is intended to be used as a class for programming EBICS clients written in
PHP. With this software you can upload or download data from EBICS servers (normally hosted
at a datacenter owned or managed by a bank).

2. Requirements

- PHP 5.6 or greater

- php5-curl php5-gmp php5-mcrypt openssl php5-xmlrpc php-pear

- run in isolated vm and connect your app via vpn tunnel


3. Tested bank institutes

This client has been tested with.

- Sparkasse 

- Volks + Raiffeisenbank

- Commerzbank

- Postbank

- Deutsche Bank

- UBS Schweiz

- procredit Bank

- Banken mit ebics.multivia-suite.de
 
- St. Galler Kantonalbank sgkb.ch !!! crippled EBICS implementation 
  -> https://www.sgkb.ch/download/online/EBICS_Verbindungsparameter.pdf

3. Setup a user

How EBICS Initialization works:

1. The customer (you) requests an EBICS account from your bank and receive User ID, Partner ID, EBICS Host ID,
EBICS URL and the fingerprints of the public keys of the bank.

2. with this code you create your encryption keys and submit them to the bank:


$ebics = new ebics_client($user_id,$partner_id,$host_id,$host_url,$data_dir);
$ebics->initUser(); // creates a005,x002 and e002 keys...
$ebics->loadUser();

$request = $ebics->INI_request();
$result = $ebics->send_request($request);

$request = $ebics->HIA_request();
$result = $ebics->send_request($request);

$letter = $ebics->getINIHIA_letter();

echo $letter;

3. INI + HIA Letter must be printed and signed and sent back to the bank to activate the EBICS account. After the
bank has activated the account continue with step 4.

4. Get the banks public keys with this call:

$ebics = new ebics_client($user_id,$partner_id,$host_id,$host_url,$data_dir);
$ebics->loadUser();

$result = $ebics->HPB_request();
$result = $ebics->send_request($result);
$parsed = $ebics->parse_response($result,"HPB");


5. EBICS successfully initialized.


	
	
SEPA Lastschrift:

	
$creditor = array("initiator_name" => "Smart Weblications GmbH",
					"id" => "DE52ZZZ00000012516",
					"bic" => "BYLADEM1HOF",
					"iban" => "DE44780500000220626666",
);

$debitor = array("debitor_name" => "Florian Wiessner",
				"id" => "00001337",
				"bic" => "BYLADEM1HOF",
				"iban" => "DE95780500000220696666",
				"verwendungszweck" => "Test SEPA Lastschrift",
				"refnum" => date("YmdHis"),
				"amount" => 23.42,
				"mandate_date_of_sig" => "2011-10-01",
				"payment_id" => "00001337"

);



$sepa = new sepa;
$sepa->loadXML("debitnote");
$sepa->add_debitnote($debitor, $creditor,true);
$sepa_cdd = $sepa->getXML("debitnote",$creditor);


$dom = new DOMDocument('1.0','UTF-8');
$dom->loadXML($sepa_cdd);
$sepa_cdd = preg_replace("/\r|\n/"," ",$dom->C14N());
$sepa_cdd = preg_replace("/\s+/", " ", $sepa_cdd);


$result = $ebics->Upload_init_request("CDD",$sepa_cdd);

print $result;

	
	
SEPA Transfer:

	
$from = array("initiator_name" => "Smart Weblications GmbH",
					"id" => "DE52ZZZ00000012516",
					"bic" => "BYLADEM1HOF",
					"iban" => "DE44780500000220626666",
);

$to = array("name" => "Max Mustermann",
				"bic" => "BYLADEM1HOF",
				"iban" => "DE26244444334444833333",
				"verwendungszweck" => "SEPA Ueberweisung",
				"ref-nummer" => date("YmdHis"),
				"amount" => "23.42"

);

$sepa = new sepa;
$sepa->loadXML("transfer");
$sepa->addPosition($to);
$sepa_transfer = $sepa->getXML("transfer",$from);



$dom = new DOMDocument('1.0','UTF-8');
$dom->loadXML($sepa_transfer);
$sepa_transfer = preg_replace("/\r\n/"," ",$dom->C14N());
$sepa_transfer = preg_replace("/\s+/", " ", $sepa_transfer);


$result = $ebics->Upload_init_request("CCT",$sepa_transfer);

print $result;

	
	
Bankstatements / Balance:

	
$Auftrag = "STA"; // STA, PTK, C53, C54
if (isset($_GET["start"])) { $start = $_GET["start"]; } else { $start = date("Y-m-d",mktime(0,0,0,date("m"),date("d")-7,date("Y"))); } 
if (isset($_GET["end"])) { $end = $_GET["end"]; } else { $end = date("Y-m-d"); } 

$result = $ebics->ebics_request($Auftrag, $start, $end );
$result = $ebics->send_request($result);
$result = $ebics->parse_response($result,$Auftrag);
print $result;

	
	

News

News und Updates

28.10.2024 - Florian Wiessner

Ioncube Loader Update

Ioncube Loader Update:

Am 15.10.2024 gab es ein Update für den Ioncube Loader der einen Bug behebt, der manchmal auch mit unserem EBICS Client auftrat. Bitte aktualiseren sie den Loader auf Version 14

29.11.2023 - Florian Wiessner

Neues PHP EBICS Client Release 1.3.0

Neues PHP EBICS Client Release 1.3.0

dieses Release unterstützt A006 Verschlüsselung

01.02.2023 - Florian Wiessner

Neues PHP EBICS Client Release 1.2.23

Neues PHP EBICS Client Release 1.2.23

Minor Bug-Fixes, Support fuer IonCube Binary mit PHP 8.1, Umstellung fuer SEPA-PAIN 008.001.002 da 008.003.002 von einigen Banken nicht mehr bereitgestellt wird.

29.06.2020 - Florian Wiessner

Neues PHP EBICS Client Release 1.2.13

Neues PHP EBICS Client Release 1.2.13

Wir unterstuetzen nun die St Galler Kantonalbank. Diese Bank hat keine vollstaendige EBICS Implementierung, Uploads muessen ueber OrderType XE2 erfolgen, einige OrderTypes werden von dieser Bank nicht unterstuetzt.

12.05.2020 - Florian Wiessner

Neues PHP EBICS Client Release 1.2.12

Neues PHP EBICS Client Release 1.2.12

Wir haben das php mcrypt requirement gedropped um bessere Kompatibilitaet mit php 7.2 und 7.3 zu ermoeglichen, bitte upgraden Sie auf die neue Version.

Alle News anzeigen
Copyright © 2023 smart-weblications.de | Impressum