Benutzer-Werkzeuge

Webseiten-Werkzeuge


develop:xmlrpc:sammelauftrag

Dies ist eine alte Version des Dokuments!


XML-RPC: Sammel-Aufträge

  • Namen der Services
    • hibiscus.xmlrpc.sammelüberweisung Für den Zugriff auf Sammel-Überweisungen
    • hibiscus.xmlrpc.sammellastschrift Für den Zugriff auf Sammel-Lastschriften
    • hibiscus.xmlrpc.sepasammelüberweisung Für den Zugriff auf SEPA-Sammel-Überweisungen
    • hibiscus.xmlrpc.sepasammellastschrift Für den Zugriff auf SEPA-Sammel-Lastschriften

Die Funktionen für Sammel-Überweisungen und -Lastschriften sind identisch, lediglich die Service-Namen unterscheiden sich.

Schlüssel-Namen des Auftragskopfes

Bezeichnung Beschreibung
name Bezeichnung des Sammelauftrages (Freitext)
konto ID des Kontos
termin Ausführungstermin im Format dd.mm.yyyy
buchungen Liste der enthaltenden Buchungen (Array)
Schlüssel-Namen der enthaltenen Buchungen
betrag Betrag der Buchung im Format „0,00“
blz Bankleitzahl oder BIC des Gegenkontos
kontonummer Kontonummer oder IBAN des Gegenkontos
name Inhaber-Name des Gegenkontos
textschluessel Text-Schlüssel (Auftragsart) (bei SEPA nicht möglich)

Mögliche Werte:
04: Lastschrift - Abbuchungsverfahren
05: Lastschrift - Einzugsermächtigung
51: Überweisung (muss nicht explizit angegeben werden)
53: Überweisung - Lohn/Gehalt/Rente
54: Überweisung - Vermögenswirksame Leistungen
59: Überweisung Rücküberweisung
verwendungszweck Verwendungszweck (Array)

Für die enthaltenen Buchungen bei SEPA-Sammelüberweisungen existieren zusätzlich noch die folgenden Schlüssel-Namen:

Bezeichnung Beschreibung
endtoendid Ende-zu-Ende Referenz
batchbook Legt fest, ob die Buchungen als Einzelaufträge in den Kontoauszügen erscheinen sollen (Werte: null/true/false)

Für die enthaltenen Buchungen bei SEPA-Sammellastschriften existieren zusätzlich noch die folgenden Schlüssel-Namen:

Bezeichnung Beschreibung
endtoendid Ende-zu-Ende Referenz
mandateid Mandats-Referenz
creditorid Gläubiger-Identifikation
sigdate Unterschriftsdatum des Mandats im Format dd.mm.yyyy
sequencetype Sequenz-Typ (FRST,RCUR,FNAL,OOFF)
sepatype Lastschrift-Art (CORE,COR1,B2B)
targetdate Fälligkeitsdatum im Format dd.mm.yyyy (Vorlaufzeit beachten!)
batchbook Legt fest, ob die Buchungen als Einzelaufträge in den Kontoauszügen erscheinen sollen (Werte: null/true/false)

Generell gilt bei SEPA-Aufträgen: Nur eine Zeile Verwendungszweck mit maximal 140 Zeichen. Beachte bitte ausserdem, dass ggf. eine extra Vereinbarung mit der Bank nötig ist, um den Parameter „batchbook“ mit den Wert „false“ (für Einzelbuchung in den Kontoauszügen) verwenden zu dürfen. Normalerweise sollte hier kein Wert eingetragen werden. Das Batchbook-Flag wird dann nicht an die Bank übertragen. Diese entscheidet dann nach ihren Standardvorgaben, wie die Buchungen im Kontoauszug erscheinen.

Verfügbare Funktionen

Liste der Schlüsselnamen ermitteln

public Map<String,String> createParams() throws RemoteException;
  • Name der Funktion: createParams
  • Liste der Parameter <keine>
  • Rückgabe-Wert: struct Ein leeres Struct, welches lediglich die o.g. Schlüssel, jedoch noch keine Werte enthält. Das Struct kann als Vorlage für neue Aufträge verwendet werden

Auftrag anlegen

public String create(Map<String,String> auftrag) throws RemoteException;
  • Name der Funktion: create
  • Liste der Parameter
    1. struct Struct mit den Eigenschaften des Auftrages. Als Schlüssel sind die o.g. Schlüssel-Namen zu verwenden.
  • Rückgabe-Wert

Code-Beispiele

Java
import java.util.Map;
import java.util.HashMap;
import java.util.List;
import java.util.ArrayList;
 
Map params = new HashMap();
params.put("name","Test");
params.put("termin","15.01.2011");
params.put("konto","1");
 
List buchungen = new ArrayList();
 
for (....) {
  Map buchung = new HashMap();
  buchung.put("betrag","1,50");
  buchung.put("name","Max Mustermann");
  buchung.put("blz","12345678");
  buchung.put("kontonummer","1234567890");
  buchung.put("textschluessel","53");
 
  buchung.put("verwendungszweck","Test");
  // alternativ
  // List zweck = new ArrayList();
  // zweck.add("Zeile 1");
  // zweck.add("Zeile 2");
  // buchung.put("verwendungszweck",zweck);
 
  buchungen.add(buchung);
}
params.put("buchungen",buchungen);
 
Object result = client.execute("hibiscus.xmlrpc.sammelueberweisung.create",new Object[]{params});
// Object result = client.execute("hibiscus.xmlrpc.sammellastschrift.create",new Object[]{params});
System.out.println(result);
PHP
$buchungen = array();
 
for (...)
{
  $buchung = new xmlrpcval(array(
               "betrag"           => new xmlrpcval("1,50","string"),
               "name"             => new xmlrpcval("Max Mustermann","string"),
               "blz"              => new xmlrpcval("12345678","string"),
               "kontonummer"      => new xmlrpcval("1234567890","string"),
               "textschluessel"   => new xmlrpcval("53","string"),
               "verwendungszweck" => new xmlrpcval("Test","string")
               // alternativ
               // "verwendungszweck" => new xmlrpcval(array(new xmlrpcval("Zweck 1","string"),new xmlrpcval("Zweck 2","string")),"array")
             ),"struct");
  array_push($buchungen,$buchung);
}
 
$params = new xmlrpcval(
  array(
    "name"      => new xmlrpcval("Test","string"),
    "termin"    => new xmlrpcval("15.01.2011","string"),
    "konto"     => new xmlrpcval("1","string"),
    "buchungen" => new xmlrpcval($buchungen,"array"),
  ),"struct");
 
$msg = new xmlrpcmsg("hibiscus.xmlrpc.sammelueberweisung.create",array($params));
$response = $client->send($msg);
print($response->faultString());
print($response->value()->scalarval());

Auftrag löschen

public String delete(String id) throws RemoteException;
  • Name der Funktion: delete
  • Liste der Parameter
    1. String ID des zu löschenden Auftrages
  • Rückgabe-Wert

Code-Beispiele

Java
Object result = client.execute("hibiscus.xmlrpc.sammelueberweisung.delete",new Object[]{"13"});
// Object result = client.execute("hibiscus.xmlrpc.sammellastschrift.delete",new Object[]{"13"});
System.out.println(result);
PHP
$msg = new xmlrpcmsg("hibiscus.xmlrpc.sammelueberweisung.delete",array(new xmlrpcval("13","string")));
// $msg = new xmlrpcmsg("hibiscus.xmlrpc.sammellastschrift.delete",array(new xmlrpcval("13","string")));
$response = $client->send($msg);
print($response->value()->scalarval());


Impressum | Datenschutz
develop/xmlrpc/sammelauftrag.1395959178.txt.gz · Zuletzt geändert: d.m.Y H:i von willuhn