Zum Hauptinhalt springen
Version: 1.0.0

PaymentTransaction

    paymentInformation

    object

    required

    Dieses Objekt enthält die Informationen vom Bezahldienst, die 1-zu-1 in den Antrag übernommen werden können. Die Antrags-API wird künftig angeglichen.

    transactionUrl urirequired

    Possible values: non-empty and <= 2082 characters

    Die Rest-URL der Payment Transaction für die Statusabfrage. Diese Information könnte aus den Informationen generiert werden. Eine explizite Ablage der URL dient der Robustheit der Schnittstelle.

    transactionRedirectUrl urirequired

    Possible values: non-empty and <= 5000 characters

    Die Redirect-URL an die der Online-Dienst den Benutzer weiterleiten soll. Diese URL öffnet die "Paypage" / "Bezahlseite" des Bezahldienstes. Diese URL muss nur im Status "INITIAL" (also bei der Post-Response oder Statusabfrage vor Abschluss / Abbruch der Transaktion) enthalten sein. Nach Abschluss der Transaktion sollte diese URL nicht enthalten sein.

    transactionId stringrequired

    Possible values: non-empty and <= 44 characters, Value must match regular expression ^[\w\d-]+$

    Eine vom Bezahldienst vergebene Transaktions-ID beim POST des Requests. Diese ID wird für die späteren Abfragen (GET) verwendet. Dies kann schon das Kassenzeichen sein. Sofern dies später vergeben wird, kann hier eine 'technische' ID des Bezahldienstes vergeben werden. Falls der Bezahldienst keine eigenen IDs hier verwendet, kann die Schnittstelle auch die Request-ID zurück geben.

    transactionReference string

    Possible values: non-empty and <= 36 characters, Value must match regular expression ^[\w\d-]+$

    Das "fachliche" Kennzeichen für eine Bezahlung. Dieses kann bei dem POST des Requests vom Bezahldienst vergeben werden oder erst nach der Autorisierung durch den Bezahler. Daher ist die relevante ID für diese Schnittstelle die transactionId, die durch den Bezahldienst bei der Anlage des Payment-Requests vergeben wird.

    transactionTimestamp date-time

    Zeitstempel der erfolgreichen Durchführung der Bezahlung.

    paymentMethod string

    Possible values: [GIROPAY, PAYDIRECT, CREDITCARD, PAYPAL, OTHER]

    Die vom Benutzer ausgewählte Zahlart. Das Feld ist nur bei einer erfolgreichen Zahlung vorhanden / befüllt.

    paymentMethodDetail string

    Possible values: non-empty and <= 36 characters, Value must match regular expression ^[\w\d-]+$

    Weitere Erläuterung zur gewählten Zahlart.

    status stringrequired

    Possible values: [INITIAL, PAYED, FAILED, CANCELED]

    Der Status der Transaktion soll dem EfA-Onlinedienst erkennbar machen, ob die Bezahlung erfolgreich durchgeführt wurde.

    • INITIAL - der Antrag hat einen Payment-Request ausgelöst und eine Payment-Transaction wurde angelegt. Der Nutzer hat aber im Bezahldienst noch keine Wirkung erzeugt. Der Benutzer kann mit dem Link zum Bezahldienst weitergeleitet werden. NEUE / Eränzende Info: Solange der Benutzer eine bestimmte Zahlart ausgewählt und abgebrochen hat - aber noch die Option hat, stattdessen eine andere Zahlart zu verwenden, so bleibt der Status auf INITIAL
    • PAYED - der Nutzer hat die Bezahlung im Bezahldienst erfolgreich durchgeführt.
    • FAILED - der Vorgang wurde vom Bezahldienst aufgrund der Nutzereingaben final abgebrochen.
    • CANCELED - der Nutzer hat die Bezahlung im Bezahldienst final abgebrochen.

    statusDetail string

    Possible values: <= 99 characters, Value must match regular expression ^[\w\d-]+$

    Optionale ergänzende Erläuterungen zum Status. Diese Informationen werden Teil des Antrags und bieten dem Bezahldienst die Möglichkeit Informationen an das Fachverfahren / Sachbearbeitung zu schicken. Grundsätzlich ist dieses Feld nicht notwendig - Inhalte sind zwischen Bezahldienst und Fachverfahren abzustimmen.

    paymentRequest

    object

    requestId stringrequired

    Possible values: non-empty and <= 36 characters, Value must match regular expression ^[\w\d-]+$

    Die Request-ID wird vom Online-Dienst vergeben und vom Bezahldienst abgelegt.

    requestTimestamp date-timerequired

    Zeitstempel des Online-Antrags / Payment-Requests.

    currency stringrequired

    Possible values: >= 3 characters and <= 3 characters, Value must match regular expression ^[\w]+$

    Im ersten Schritt ist hier nur 'EUR' vorgesehen. Perspektivisch sollte hier die entsprechende ISO-Norm referenziert werden.

    grosAmount doublerequired

    Possible values: <= 999999

    Der Gesamtbetrag dient dem Bezahldienst zur Validierung der einzelnen Positionen.

    purpose string

    Possible values: <= 27 characters, Value must match regular expression ^[\w\d\s-]+$

    Verwendungszweck / Buchungstext der Payment Transaction.

    description string

    Possible values: <= 250 characters, Value must match regular expression ^[\w\d\s-,\.\u00C0-\u017F]+$

    Die Beschreibung des Payment Requests. Kann auf der Paypage / PSP Seite angezeigt werden.

    redirectUrl urirequired

    Possible values: non-empty and <= 2082 characters

    Rücksprung-URL vom Bezahldienst zum Online-Dienst. Der Status (Erfolg / Abbruch) muss über die Statusabfrage (GET) abgefragt werden.

    items

    object[]

    required

    Possible values: >= 1, <= 99

  • Array [

  • id stringrequired

    Possible values: non-empty and <= 36 characters, Value must match regular expression ^[\w\d-]+$

    ID der Position vom Online-Dienst vergeben

    reference stringrequired

    Possible values: non-empty and <= 36 characters, Value must match regular expression ^[\w\d-]+$

    Eine fachliche Referenz auf den "Artikel" bzw. den Inhalt der Position.

    description string

    Possible values: non-empty and <= 250 characters, Value must match regular expression ^[\w\d\s-,\.\u00C0-\u017F]+$

    Beschreibung der Position vom Online-Dienst zur Verwendung z. B. auf der Pay-Page.

    taxRate doublerequired

    Possible values: <= 100

    Steuersatz als Prozentbetrag

    quantity int64required

    Possible values: >= 1 and <= 999999

    totalNetAmount doublerequired

    Possible values: <= 999999

    Nettobetrag der Position

    totalTaxAmount doublerequired

    Possible values: <= 999999

    Steuerbetrag der Position

    singleNetAmount doublerequired

    Possible values: <= 999999

    Nettobetrag der Position

    singleTaxAmount doublerequired

    Possible values: <= 999999

    Steuerbetrag der Position

    bookingData

    object

    Container für Key-Value-Paare für zusätzliche Informationen für die Verbuchung im Bezahldienst oder nachgelagerten Systemen

    property name* string
  • ]

  • requestor

    object

    name stringrequired

    Possible values: non-empty and <= 250 characters, Value must match regular expression ^[\w\d\s-,\.\u00C0-\u017F]+$

    Familienname des Bezahlers

    firstName stringrequired

    Possible values: non-empty and <= 250 characters, Value must match regular expression ^[\w\d\s-,\.\u00C0-\u017F]+$

    Vorname(n) des Bezahlers

    gender string

    Possible values: [M, F, D]

    Geschlecht des Bezahlers: (M)ale=Männlich, (F)emale=Weiblich, (D)iverse=Divers

    isOrganization boolean

    Wahr für Organisationen / juristische Personen, Falsch für 'natürliche' Antragsteller

    organizationName string

    Possible values: non-empty and <= 250 characters, Value must match regular expression ^[\w\d\s-,\.\u00C0-\u017F]+$

    Soll nur existieren, wenn isOrganization == true

    address

    object

    required

    street string

    Possible values: non-empty and <= 250 characters, Value must match regular expression ^[\w\d\s-,\.\u00C0-\u017F]+$

    Strasse

    houseNumber string

    Possible values: <= 20 characters, Value must match regular expression ^[\w\d-]+$

    Hausnummer

    addressLine string[]

    Possible values: <= 9

    Zum Abbilden von Internationalen Adressen werden generische "Adresszeilen" verwendet und nicht "Straße / Hausnummer".

    postalCode string

    Possible values: >= 5 characters and <= 5 characters, Value must match regular expression ^[\d]+$

    Postleitzahl

    city string

    Possible values: non-empty and <= 250 characters, Value must match regular expression ^[\w\d\s-,\u00C0-\u017F]+$

    Stadt

    country string

    Possible values: >= 2 characters and <= 2 characters, Value must match regular expression ^[\w]+$

    ISO 3166-1, Alpha-2 code, zwei Großbuchstaben