1 Über Kreditkartenzahlungen

1.1 Allgemeines zu Kreditkartenzahlungen

1.2 Ablauf von 3D-Secure-Zahlungen

1.2.1 Ablauf einer Transaktion mit 3D Secure über Formular-Schnittstelle

1.2.2 Ablauf einer Transaktion mit 3D Secure über Server-zu-Server-Verbindung

1.3 Kreditkartenmarken

1.3.1 Übersicht der Karten-Schemes je Zahlart

2 Kreditkarten – Allgemein per Formular

2.1 Kreditkarten – Kreditkartenformular

2.1.2 Vereinfachtes Sequenz-Diagramm

2.1.2 Zahlungsanfrage

2.1.3 HTTP POST an URLSuccess/URLFailure/URLNotify

2.1.4 Kreditkartenzahlung mit separater Autorisierung

2.1.5 Erweitertes Sequenz-Diagramm

2.2 Corporate Paypage

2.2.1 Dateiname

2.2.2 Feldnamen des Formulars

2.2.3 Hidden Fields

2.2.4 Sprachauswahl

2.2.5 XML-Struktur

2.2.6 Fehler-Mapping

2.2.7 JavaScript

2.2.8 Link zu Visa Secure und MasterCard Secure Code

2.2.9 Programmierung und Test des Formulars

3 Kreditkarten – Allgemein per Server-zu-Server

3.1 Kreditkarten – Server-2-Server Integration

3.2 Initiierung der Zahlung

3.2.1 Aufruf-Elemente

3.2.2 Antwort-Elemente

3.2.1 VersioningData

3.3 3DS Methode

3.3.1 3DS Method: ThreeDSMethodURL

3.3.2 3DS Method: Keine Issuer

3.3.3 3-D Secure Method Form Post

3.3.4 ACS Response Document

3.3.5 3-D Secure Method Notification Form

3.4 Authentisierung

3.4.1 Karteninhaber-Challenge: Browser-Antwort

3.4.2 Browser Challenge-Antwort

3.4.3 Authentisierungs-Benachrichtigung

3.4.4 Browser-Challenge

3.5 Autorisierung

3.5.1 Zahlungs-Benachrichtigung

3.5.2 Browser Zahlungs-Antwort

4 Kreditkarten – Buchung / Gutschrift / Storno / Batch

4.1 Buchung / Gutschrift / Storno

4.1.2 Buchung

4.1.3 Gutschrift mit Referenz

4.1.4 Gutschrift ohne Referenz

4.1.5 Storno

4.1.6 Storno einer Autorisierungsverlängerung

4.1.7 Kreditkartenzahlung über stationäre Terminals

4.1.8 Storno von stationären Kreditkartenzahlungen

5 PayNow

5.1 Silent Mode für Kreditkarten mit SSL und 3D-Secure-Verfahren

6 Batch-Nutzung der Schnittstelle

6.1 Batch-Aufrufe und Antworten

6.2 Stopp von Autorisierungsverlängerungen

6.3 PaymentAddData

6.3.1 Datemelemente

6.3.2 SenderData

6.3.3 RecipientData

6.3.4 Schema

6.3.5 Sample

7 CAPN: American Express

7.1 Einleitung

7.1.1 Acquirer und Verbindung

7.1.2 Integration mit 1cs OBS

7.1.3 Implementierung von 3-D Secure (2.x)

7.2 Spezifische Parameter für CAPN: American Express

1 Über Kreditkartenzahlungen

1.1 Allgemeines zu Kreditkartenzahlungen

Das 1cs Online Bezahlsystem verarbeitet alle weltweit wichtigen Kreditkarten und Währungen. Kreditkartendaten werden dabei durch TLS-Verschlüsselung vor unbefugtem Zugriff geschützt. Zusätzliche Funktionen für die Sicherheit sind integrierte Betrugsprävention und Risikomanagement. Unsere standardisierten Settlement Files gewährleisten einfache Reconcilation-Prozesse in Ihrer Buchhaltung.

Visa Secure und MasterCard SecureCode sichern Ihren Zahlungsanspruch durch ein Passwort, falls ein Kunde die Zahlung später bestreitet. Auch American Express SafeKey nutzt diese 3D Secure-Technologie, bei der der Karteninhaber seine Identität zusätzlich per Kennwort bestätigen muss.

Die Abwicklung von Transaktionen kann per Standardformular vom 1cs Online Bezahlsystem, per individuell gestaltetem Formular, per Server-zu-Server-Kommunikation oder per Batch-Übertragung erfolgen. Ebenso kann das 1cs Online Bezahlsystem Transaktionen von stationären Terminals verarbeiten.

Die Nutzung des Kreditkartenformulars bringt folgende Vorteile:

   1. Sie können die aufwendige PCI-Sicherheitszertifizierung umgehen

   2. Die Programmierung von 3DSecure ist mit Formularen viel einfacher und schneller als per Server-zu-Server-Verbindung.

InfoTyp
Das 1cs Online Bezahlsystem verarbeitet alle weltweit wichtigen Kreditkarten und Währungen. Die Abwicklung von Transaktionen kann per Standardformular vom 1cs Online Bezahlsystem, per individuell gestaltetem Formular, per Server-zu-Server-Kommunikation oder per Batch-Übertragung erfolgen. Ebenso kann das 1cs OBS Transaktionen von stationären Terminals verarbeiten.Zahlung per Kreditkarte

1.2 Ablauf von 3D-Secure-Zahlungen

Bei MasterCard SecureCode (UCAF), VISA Secure, Diners ProtectBuy, JCB-Card J/Secure und American Express SafeKey handelt es sich um Authentisierungsmethoden, die vor der Zahlung die Identität der Karteninhaber prüfen. Der unter Technikern bekannte Name 3-D Secure bezeichnet nur das Protokoll. Korrekte Markennamen sind Visa Secure, MasterCard SecureCode, Safekey, ProtectBuy und J/Secure.

Für Händler hat die Authentisierung mit 3D Secure den Vorteil, dass die Kartengesellschaften eine Haftungsverschiebung (englisch: lia-bility shift) verfügt haben: Wenn Sie Visa Secure, MasterCard SecureCode, Diners ProtectBuy, JCB-Card J/Secure oder American Express SafeKey einsetzen, verschiebt sich die Beweislast und somit i.d.R. auch die Haftung vom Händler zur kartenausgebenden Bank (englisch: Issuer), falls der Kunde die Zahlung bestreitet. Unabhängig davon, ob der Karteninhaber die Authentisierung tatsächlich nutzt, erhalten Sie einen sehr hohen Schutz vor Zahlungsausfällen / Chagebacks für den Fall, dass der Kunde behauptet, die Kreditkartenzahlung nicht selbst durchgeführt zu haben. Ihr Kreditkartenacquirer klärt Sie gern über die Vorteile und Bedingungen von 3-D Secure auf.

Aus technischer Sicht sind die Systeme von 3D Secure keine Zahlungsmethoden, sondern eine der Zahlung vorgelagerte Authentisierung: Nach der Eingabe der Kreditkartendaten prüft das 1cs Online Bezahlsystem die Identität des Karteninhabers und wickelt dann erst nach der Authentisierung die Zahlung ab.

Für den weiteren Ablauf ist entscheidend, ob die Kreditkartenanbindung über die Formular-Schnittstelle oder per Server-zu-Server-Kommunikation erfolgt. Im ersten Fall des 1cs Online Bezahlsystem-Formulars übernimmt das 1cs Online Bezahlsystem den weiteren Ablauf der Authentisierung, bei der Server-zu-Server-Anbindung muss hingegen der Händler selbst für die Authentisierung über eine separate Schnittstelle sorgen.

Hinweis: Bitte beachten Sie auch unsere EMV 3D Secure Spezifikation, um gemäß neuester Standards zu integrieren.

Hinweis: Bitte beachten Sie, dass der Aufruf der URLSuccess oder URLFailure bei einem Fallback zu 3-D Secure 1.0 mit GET stattfindet. Ihre Systeme sollten daher Parameter sowohl per GET als auch per POST entgegennehmen können.

1.2.1 Ablauf einer Transaktion mit 3D Secure über Formular-Schnittstelle

Bei Kartenzahlungen über beim 1cs OBS gehostete Formulare wird die Komplexität von 3-D Secure vollständig bei der Implementierung beim Händler entfernt.

Aus Sicht des Händlers unterscheidet sich die Sequenz nicht zwischen Zahlungen, die mit 3DS authentisiert sind, sowie nicht mit 3DS authentisierten Zahlungen, welche die Berücksichtigung zusätzlicher Parameter in Aufruf und Antwort erfordern.

Hinweis zum Cookie-/Session Handling: Bitte beachten Sie, dass einige Browser beim Rücksprung zu Ihrem Shop erforderliche Cookies blockieren könnten.

Vereinfachtes Sequenzdiagramm

Bei Kartenzahlungen über beim 1cs Online Bezahlsystem gehostete Formulare wird die Komplexität von 3-D Secure vollständig bei der Implementierung beim Händler entfernt.

Aus Sicht des Händlers unterscheidet sich die Sequenz nicht zwischen Zahlungen, die mit 3DS authentisiert sind, sowie nicht mit 3DS authentisierten Zahlungen, welche die Berücksichtigung zusätzlicher Parameter in Aufruf und Antwort erfordern.

Hinweis zum Cookie-/Session Handling: Bitte beachten Sie, dass einige Browser beim Rücksprung zu Ihrem Shop erforderliche Cookies blockieren könnten.

Wenn das Passwort korrekt ist, erhält das 1cs Online Bezahlsystem eine Bestätigung in Form einer Signatur. Erst nach dieser Bestätigung startet das 1cs OBS die Zahlung und sendet die Transaktion mit Signatur an den Acquirer.

1.2.2 Ablauf einer Transaktion mit 3-D Secure über Server-zuServer-Verbindung

Eine 3DS 2.0 Zahlungssequenz kann aus den folgenden verschiedenen Aktivitäten bestehen:

Versionierung: Anfrage von ACS- und DS-Protokol-Version(en), die mit dem Kartenkontenbereich korrespondieren sowie einer optionalen 3DS Method URL

3DS Methode: Verbindet den Browser des Karteninhabers mit dem ACS des Issuers, um zusätzliche Browserdaten zu erhalten

Authentisierung: Übermittlung der Authentisierungs-Anfrage an den ACS des Issuers

Challenge: Challenge des Karteninhabers, falls angeordnet 

Autorisierung: Autorisierung der authentisierten Transaktion beim Acquirer

Beachten Sie bitte, dass die Kommunikation zwischen Client und Access Control Server (ACS) über iFrames implementiert ist. Daher kommen die Antworten in einem HTML-Subdokument an und Sie können entsprechende Event-Listener in Ihrem Root-Dokument einrichten.

Alternativ könnten Sie alleinig auf die asynchronen Benachrichtigungen an ihr Backend vertrauen. In jenen Fällen müssen Sie eventuell Methoden wie Long Polling, SSE oder Websockets zum Update des Clients in Betracht ziehen.

Die anfängliche Anfrage an das 1cs Online Bezahlsystem ist unabhängig vom zugrundeliegenden 3DS-Protokoll gleich.

Um eine Server-zu-Server 3-D Secure Kartenzahlungssequenz zu starten, senden Sie bitte folgende Schlüssel-Wert-Paare an https://www.computop-paygate.com/direct.aspx.

1.3 Kreditkartenmarken

Folgend finden Sie eine Übersicht aller unterstützten Kartenmarken

1.3.1 Übersicht der Karten-Schemes je Zahlart

Kreditkarten:

Das 1cs Online Bezahlsystem verarbeitet alle weltweit wichtigen Kreditkarten und Währungen. Die Abwicklung von Transaktionen kann per Standardformular vom 1cs OBS, per individuell gestaltetem Formular, per Server-zu-Server-Kommunikation oder per Batch-Übertragung erfolgen. Ebenso kann das 1cs OBS Transaktionen von stationären Terminals verarbeiten.

Credit card brand correct spelling for CCBrand
1euro
AirPlus
AMEX
ARGENCARD
Aura
Bancontact
BC
CABAL
Carte 4Etoiles
Cartes Bancaires
CBN
CENCOSUD
cofidis3xcb
cofidis4xcb
CUP
Dankort
Diners
Discover
echequevacances
ELo
facilypay-3x
facilypay-3xsansfrais
facilypay-4x
Hipercard
HYUNDAI
JCB
KEB
KOOKMIN
LOTTEMaestro
MasterCard
NARANJA
RuPay
SAMSUNG
SHINHAN
SHOPPING
VISA

Bancontact 

Bancontact ist eine belgische Zahlungsmethode für Debit-Karten, bei der der Händler eine Zahlungsgarantie erhält und das Risiko von Chargebacks eliminiert ist. Beim Checkout mit Bancontact geben Kunden ihre Kartendetails ein und werden dann zum eigenen Online-Banking geleitet, wo sie die vorausgefüllte Zahlung nur noch autorisieren müssen.

Be2Bill

Be2bill ist besonders für die in Frankreich weit verbreiteten Kreditkarten „Cartes Bancaires“ optimiert.

Cofidis

Die 4-Sterne-Karte ist eine persönliche Karte, die Zahlungsfunktionen und Kundenvorteile kombiniert. Das Design der maßgeschneiderten Produkte und Dienstleistungen orientiert sich an den Erwartungen und Wünschen der Kunden. Zahlen Sie Ihre Käufe in mehreren Raten. Die 4-Sterne-Karte ist eine revolvierende Kreditkarte, die Ihnen je nach Betrag Ihrer Einkäufe und der Marke ermöglicht, in mehreren Raten zu bezahlen.

Korea CC

KoreaCC ist eine Zahlungsart, die es koreanischen Unternehmen (mit einem Firmensitz in Südkorea) ermöglicht, koreanischen Kunden (mit koreanischen Kreditkarten) Kreditkarte als Zahlungsart anzubieten.

MasaPay

Shanghai MasaPay Information Technology Co., Ltd. ist ein transnationaler Third-party-E-Zahlungsdienstleister, der im Juli 2012 gegründet wurde. Die Firmenzentrale befindet sich in Lujiazui Financial Service District, Shanghai, China.
MasaPay bietet eine Gateway für Online-Zahlungen, das Kreditkartenzahlungen mittels Visa, MasterCard, JCB, AMEX, Discover, Diners usw. unterstützt. MasaPay ermöglicht es, dass die grenzüberschreitenden Zahlungen von außerhalb Chinas in China akquiriert werden.

PagBrasil

Über das 1cs OBS lassen sich Zahlungen mit den brasilianischen Kreditkarten Hipercard, Elo und Aura verarbeiten. Das 1cs Online Bezahlsystem bietet dafür umfassende Unterstützung bei der Steueroptimierung sowie der Fremdwährungskonversion.
Mehr als 30% der Online-Zahlungen erfolgen in Brasilien über die Cash-In-Lösung Boleto Bancário. Mit einem Zahlschein können Kunden in Supermärkten, Postfilialen oder an einem von über 48.000 Bankterminals bar zahlen.

PayU India

Mit der Integration von PayU biz Indien öffnen Händler die Tür zu einem stark wachsenden E-Commerce-Markt. Aber nur 30% der online kaufenden Kunden in Indien haben Zugang zu international akzeptierten Zahlarten. Mit der Integration von PayU biz über das 1cs Online Bezahlsystem können Händler 76 lokale Zahlarten anbieten, um die große Mehrheit der Kunden bedienen zu können. Dieses Angebot umfasst Online-Überweisungen, Kredit- und Debitkarten sowie eWallets und Cash In-Zahlungen.

PayU LatAm

Im extrem heterogenen E-Commerce-Markt Lateinamerikas steht und fällt der Erfolg mit der Bereitstellung der richtigen Zahlarten. Mit der Integration von PayU erhalten Händler Zugriff auf 74 Zahlungsmethoden von Mexiko bis Argentinien. Neben allen wichtigen Online-Überweisungen sowie Kredit- und Debitkarten ermöglicht PayU auch die Zahlung mit modernen eWallets und den in Lateinamerika sehr beliebten Cash-In-Zahlscheinen.

2 Kreditkarten – Allgemein per Formular

2.1 Kreditkarten – Kreditkartenformular

Bei Kartenzahlungen über beim 1cs Online Bezahlsystem gehostete Formulare wird die Komplexität von 3-D Secure vollständig bei der Implementierung beim Händler entfernt.

Aus Sicht des Händlers unterscheidet sich die Sequenz nicht zwischen Zahlungen, die mit 3DS authentisiert sind, sowie nicht mit 3DS authentisierten Zahlungen, welche die Berücksichtigung zusätzlicher Parameter in Aufruf und Antwort erfordern.

Hinweis zum Cookie-/Session Handling: Bitte beachten Sie, dass einige Browser beim Rücksprung zu Ihrem Shop erforderliche Cookies blockieren könnten.

2.1.1 Vereinfachtes Sequenz-Diagramm

2.1.2 Zahlungsanfrage

Zum Abruf eines 1cs Online Bezahlsystem-Formulars für Kartenzahlungen übermitteln Sie bitte folgende Parameter über einen HTTP POST Aufruf an https://www.computop-paygate.com/payssl.aspx.

Hinweis: Aus Sicherheitsgründen lehnt das 1cs OBS alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

ParamterFormatCNDBescheribung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
MsgVerans..5MMessage-Version. Zulässige Werte:
Wert: 2.0
Beschreibung: Mit 3-D Secure 2.x wurde eine Vielzahl zusätzlicher Daten (Browser-Information, Rechnungs-/Versand-Adresse, …) erforderlich, um den Authentifizierungs-Prozess zu optimieren. Um diese Informationen zu handhaben, wurden die JSON-Objekte eingeführt. Der Parameter MsgVer zeigt an, dass diese Daten verwendet werden.
ReqIDans..32OUm Doppelzahlungen (z.B. durch ETM) zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion oder Aktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion oder Aktion mit derselben ReqID erneut eingereicht wird, führt das 1cs Online Bezahlsystem keine Zahlung oder weitere Aktion aus, sondern gibt nur den Status der ursprünglichen Transaktion oder Aktion zurück. Bitte beachten Sie, dass das 1cs Online Bezahlsystem für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom 1cs OBS gelöscht.
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
RefNr OEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das  1cs OBS Settlement File (CTSF) auch nicht zusätzlich angereichert werden. Informationen zum unterstützten Format finden Sie weiter unten in der zahlartspezifischen Beschreibung. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus.
Details finden Sie hier:
HMAC-Authentisierung (Anfrage)
HMAC-Authentisierung (Notify)
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent). Bitte wenden Sie sich an den Helpdesk, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle
Capturean..6OMBestimmt Art und Zeitpunkt der Buchung (engl. Capture).
AUTO Buchung sofort nach Autorisierung (Standardwert).
MANUAL Buchung erfolgt durch den Händler – in der Regel die Buchung zum Zeitpunkt der Warenauslieferung bzw. Leistungserbringung.
Zahl Verzögerung in Stunden bis zur Buchung (ganze Zahl; 1 bis 696).
PayTypesans..256OMit diesem Parameter können Sie die akzeptierten Schemes übersteuern, d.h. Sie können innerhalb dieses Parameters durch Pipe getrennt entscheiden, welche der verfügbaren Kreditkartenschemes angezeigt werden. Das Template muss diese Funktion unterstützen wie zum Beispiel das “Cards_v1”. Beispiel: PayTypes=VISA|MasterCard
BillingDescriptorans..22OEine Bezeichnung, die auf dem Kontoauszug des Karteninhbaers gedruckt wird. Beachten Sie bitte auch die zusätzliche Hinweise an anderer Stelle für weitere Informationen über Regeln und Vorschriften.
OrderDescans..768OBeschreibung der gekauften Waren, Einzelpreise etc.
AccVerifya3OIndikator für Anforderung einer Kontoverifizierung (alias Nullwert-Authorisierung). Bei einer angeforderten Kontoverifizierung ist der übermittelte Betrag optional und wird für die tatsächliche Zahlungstransaktion ignoriert (z.B. Autorisierung). Zulässiger Wert: Yes
ThreeDSPolicyJSONOObjekt, das Authentisierungs-Richtlinien und Vorgaben für die Ausnahmenbehandlung festlegt
PriorAuthenticationInfoJSONODas Objekt Prior Transaction Authentication Information enthält optionale Informationen über eine Authentisierung eines 3DS-Karteninhabers, die vor der aktuellen Transaktion erfolgt ist
AccountInfoJSONODas Objekt Kontoinformationen enthält optionale Informationen über das Kundenkonto beim Händler
BillingToCustomerJSONCDer Kunde, dem die Waren und / oder Dienstleistungen in Rechnung gestellt werden. Für EMV 3DS erforderlich, sofern nicht Markt- oder Regionalmandate die Übermittlung dieser Informationen beschränken.
ShipToCustomerJSONCDer Kunde, an den die Waren und / oder Dienstleistungen gesendet werden. Erforderlich, falls von billToCustomer abweichend.
BillingAddressJSONCRechnungsadresse. For EMV 3DS erforderlich (falls verfügbar), sofern nicht Markt- oder Regionalmandate die Übermittlung dieser Informationen beschränken.
ShippingAddressJSONCLieferadresse. Falls von billingAddress abweichend; für EMV 3DS erforderlich (falls verfügbar), sofern nicht Markt- oder Regionalmandate die Übermittlung dieser Informationen beschränken.
CredentialOnFileJSONCObjekt, das Art und Reihe von Transaktionen mittels Zahlungskonto-Zugangsdaten festlegt (z.B. Kontonummer oder Zahlungs-Token), die bei einem Händler für die Verarbeitung zukünftiger Einkäufe für einen Kunden gespeichert sind. Erforderlich, falls zutreffend.
MerchantRiskIndicatorJSONODer Händler-Risikoindikator enthält optionale Informationen über den bestimmten Einkauf des Kunden. Falls shippingAddress nicht vorhanden ist, ist es dringend empfohlen, das Merkmal shippingAddressIndicator mit einem entsprechenden Wert wie shipToBillingAddress, digitalGoods oder noShipment auszufüllen.
SubMerchantPFJSONOObjekt, das die Details des SubMerchant (Payment Facilitator) angibt. Wird ausschließlich von SafeCharge unterstützt.
URLSuccessans..256MVollständige URL, die das 1cs Online Bezahlsystem aufruft, wenn die Zahlung erfolgreich war. Die URL darf nur über Port 443 aufgerufen werden. Diese URL darf keine Parameter enthalten: Um Parameter durchzureichen nutzen Sie stattdessen den Parameter UserData.
Allgemeine Hinweise: Wir empfehlen, den Parameter “response=encrypt” zu verwenden, um eine verschlüsselte Antwort von 1cs OBS zu erhalten Betrüger könnten das verschlüsselte DATA-Element kopieren, welches an URLFailure gesendet wurde, und betrügerisch dasselbe DATA an URLSuccess senden. Überprüfen Sie daher unbedingt den “code”-Wert des DATA-Elements. Nur eine Antwort mit “code=00000000” sollte als erfolgreich angesehen werden.
URLFailureans..256MVollständige URL, die das 1cs Online Bezahlsystem aufruft, wenn die Zahlung gescheitert ist. Die URL darf nur über Port 443 aufgerufen werden. Diese URL darf keine Parameter enthalten: Um Parameter durchzureichen nutzen Sie stattdessen den Parameter UserData.
Allgemeine Hinweise: Wir empfehlen, den Parameter “response=encrypt” zu verwenden, um eine verschlüsselte Antwort vom 1cs OBS zu erhalten Betrüger könnten das verschlüsselte DATA-Element kopieren, welches an URLFailure gesendet wurde, und betrügerisch dasselbe DATA an URLSuccess/URLNotify senden. Überprüfen Sie daher unbedingt den “code”-Wert des DATA-Elements. Nur eine Antwort mit “code=00000000” sollte als erfolgreich angesehen werden.
URLBackans..256OVollständige URL, die das 1cs OBS aufruft, wenn der Kunde auf Abbruch klickt. Der Parameter “URLBack” kann sowohl unverschlüsselt ans 1cs OBS übermittelt werden (Kompabilitätsmodus) als auch in den verschlüsselten Übergabeparametern (bevorzugte Variante) Wenn Sie Parameter/Werte in der URLBack übergeben möchten, so können Sie folgende Methode verwenden: URLBack=https://your.shop.com/back.php?param1%3Dvalue1%26param2%3Dvalue3%26status%3Dcancelled Wenn der Kunde auf Abbruch klickt, so wird die URL genauso aufgerufen, so dass Sie URL Decode verwenden können, um Parameter und Werte zu extrahieren.
Responsea7ODie Status-Rückmeldung, die das 1cs OBS an URLSuccess und URLFailure sendet, sollte verschlüsselt werden. Dazu übergeben Sie den Parameter Response=encrypt.
URLNotifyans..256MVollständige URL, die das 1cs Online Bezahlsystem aufruft, um den Shop zu benachrichtigen. Die URL darf nur über Port 443 aufgerufen werden. Sie darf keine Parameter enthalten: Nutzen Sie stattdessen den Parameter UserData.
Allgemeine Hinweise: Wir empfehlen, den Parameter “response=encrypt” zu verwenden, um eine verschlüsselte Antwort vom 1cs OBS zu erhalten Betrüger könnten das verschlüsselte DATA-Element kopieren, welches an URLFailure gesendet wurde, und betrügerisch dasselbe DATA an URLSuccess/URLNotify senden. Überprüfen Sie daher unbedingt den “code”-Wert des DATA-Elements. Nur eine Antwort mit “code=00000000” sollte als erfolgreich angesehen werden.
UserDataans..1024OWenn beim Aufruf angegeben, übergibt das 1cs OBS die Parameter mit dem Zahlungsergebnis an den Shop.
Customans..1024ODer “Custom”-Parameter wird vor der Verschlüsselung an den Aufruf angehängt und ist Teil des verschlüsselten “Data” im 1cs Online Bezahlsystem Aufruf. Dadurch ist der Wert gegen Manipulation geschützt.  Der Custom-Wert wird dann in Klartext an die 1cs OBS-Antwort angehängt und dabei wird “|” durch “&” ersetzt. Dadurch können Sie einen Custom-Wert übergeben und bekommen mehrere Key-Value-Paare zu Ihrer eigenen Verwendung in der Antwort zurück.
Plainans..50OEin einzelner Wert, der von Ihnen gesetzt werden kann, um Informationen wieder unverschlüsselt in der Antwort bzw. im Notify zurückzugeben, z.B. die MID. Da der “Plain”-Parameter Teil des verschlüsselten “Data” im 1cs Online Bezahlsystem ist, ist dieser vor Manipulationen geschützt.
ExpirationTimeans..19OZeitstempel für den Endzeitpunkt der Transaktionsverarbeitung, Angabe in UTC. Format: YYYY-MM-ddTHH:mm:ss

Das 1cs Online Bezahlsystem gibt in der Antwort ein HTML-Dokument zurück, welches das angeforderte Kartenzahlungsformular darstellt. Das Formular kann in die Checkout-Seite des Händlers integriert oder als selbständige Seite verwendet werden, auf die der Karteninhaber weitergeleitet wird.

Die Authentisierung des Karteninhabers sowie die Zahlungsautorisierung erfolgen, nachdem der Karteninhaber aller erforderlichen Kartendetails eingegeben und das Formular an das 1cs Online Bezahlsystem übermittelt hat.

Hinweis: Falls Sie ein eigenes Zahlungsformular verwenden (Corporate 1cs OBS Page), achten Sie darauf, dass der Name des Karteninhabers auf dem Formular enthalten ist. Der Name das Karteninhabers wird auf den 1cs OBS API-Parameter “CreditCardHolder” abgebildet. Das Feld Cardholder name darf keine Sonderzeichen enthalten und muss eine Mindestlänge von 2 Zeichen und eine Maximallänge von 45 Zeichen haben.

Wenn die Zahlung abgeschlossen ist, sendet das 1cs OBS eine Benachrichtigung an den Server des Händlers (d.h. URLNotify) und leitet den Browser an URLSuccess beziehungsweise URLFailure weiter.

Die per Blowfish verschlüsselten Parameter laut folgender Tabelle werden per HTTP POST an URLNotify und URLSuccess/URLFailure übertragen.

Hinweis: Bitte beachten Sie, dass der Aufruf der URLSuccess oder URLFailure bei einem Fallback zu 3-D Secure 1.0 mit GET stattfindet. Ihre Systeme sollten daher Parameter sowohl per GET als auch per POST entgegennehmen können.

Das Kreditkarten-Formular kann mittels eines eigenen Templates sehr stark angepasst werden.

2.1.3 HTTP POST an URLSuccess/URLFailure/URLNotify

Die folgende Tabelle beschreibt die Ergebnis-Parameter, die das 1cs Online Bezahlsystem an Ihre URLSuccess, URLFailure und URLNotify übergibt. Wenn Sie den Parameter Response=encrypt angegeben haben, werden die folgenden Parameter mit Blowfish verschlüsselt an Ihr System übergeben:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
ParameterFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
MsgVerans..5MMessage-Version. Zulässige Werte:
Wert: 2.0
Beschreibung: Mit 3-D Secure 2.x wurde eine Vielzahl zusätzlicher Daten (Browser-Information, Rechnungs-/Versand-Adresse, …) erforderlich, um den Authentifizierungs-Prozess zu optimieren. Um diese Informationen zu handhaben, wurden die JSON-Objekte eingeführt. Der Parameter MsgVer zeigt an, dass diese Daten verwendet werden.
PayIDan32MVom 1cs OBS vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs OBS vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
SchemaReferenceIDans..64CSpezifische Transaktions-ID des Kartenschemas, die für nachfolgende Zahlungen mit gespeicherten Zugangsdaten, verzögerte Autorisierungen und Wiedereinreichungen erforderlich ist.
Pflicht: CredentialOnFile – initial false – unschedule MIT / recurring schemeReferenceID wird bei 3DS2-Zahlungsvorgängen zurückgegeben. Bei einem Fallback auf 3DS1 prüfen Sie bitte zusätzlich auf TransactionId. Die SchemeReferenceID ist eine eindeutige Kennung, die von den Kartenmarken generiert wird. In der Regel können 1cs OBS-Händler die SchemeReferenceIDs für Abonnements übergreifend verwenden, welche unter Verwendung eines anderen PSP / separater 1cs OBS-MerchantID / separater Acquirer ContractID / Acquirer erstellt wurden.
RefNR OReferenznummer vom Request
Statusa..20MStatus der Transaction. Zulässige Werte: Authorized OK (Sale) FAILED Im Fall von nur-Authentisierung ist der Status entweder OK oder FAILED.
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description, sondern Code für die Auswertung des Transaktionsstatus!
Coden8MFehlercode gemäß Excel-Datei 1cs Online Bezahlsystem Antwort Codes 
CardJSONMKartendaten
IpInfoJSONOObjekt mit IP-Informationen
ThreeDsDataJSONMAuthentisierungsdaten
ResultResponseJSONCFalls der Authentisierungsprozess eine Challenge des Karteninhabers enthalten hat, werden zusätzliche Informationen über das Ergebnis der Challenge bereitgestellt
ExternalPaymentDataJSONOOptionale Daten des Acquirers/Issuers/externen Dienstleisters für eine Autorisierung
Plainans..50OEin einzelner Wert, der von Ihnen gesetzt werden kann, um Informationen wieder unverschlüsselt in der Antwort bzw. im Notify zurückzugeben, z.B. die MID. Da der “Plain”-Parameter Teil des verschlüsselten “Data” im 1cs Online Bezahlsystem ist, ist dieser vor Manipulationen geschützt.
Customans..1024ODer “Custom”-Parameter wird vor der Verschlüsselung an den Aufruf angehängt und ist Teil des verschlüsselten “Data” im 1cs OBS Aufruf. Dadurch ist der Wert gegen Manipulation geschützt.  Der Custom-Wert wird dann in Klartext an die1cs Online Bezahlsystem-Antwort angehängt und dabei wird “|” durch “&” ersetzt. Dadurch können Sie einen Custom-Wert übergeben und bekommen mehrere Key-Value-Paare zu Ihrer eigenen Verwendung in der Antwort zurück.
UserDataans..1024OWenn beim Aufruf angegeben, übergibt das 1cs OBS die Parameter mit dem Zahlungsergebnis an den Shop.
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus.
Details finden Sie hier:
HMAC-Authentisierung (Anfrage)
HMAC-Authentisierung (Notify)

2.1.4 Kreditkartenzahlung mit separater Autorisierung

Für Kreditkartenzahlungen kann im Prozessablauf die ORDER von der anschließenden Autorisierung und nachfolgenden Schritten getrennt werden. Dazu wird die SSL-Kreditkartenzahlung zunächst per Formular oder Server-zu-Server-Anbindung wie in den voranstehenden Kapiteln dargestellt mit einem zusätzlichen Parameter initialisiert und dann über die Schnittstelle authorize.aspx per Server-zu-Server-Verbindung autorisiert. Zur Initialisierung rufen Sie folgende URL auf:

https://www.computop-paygate.com/payssl.aspx

Bei Server-zu-Server-Anbindung rufen Sie folgende URL auf:

https://www.computop-paygate.com/direct.aspx

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

ParameterFormatCNDBeschreibungTxType
ans..20M Übergeben Sie „Order“, um eine Zahlung zu initialisieren und diese später über die Schnittstelle authorize.aspx zu autorisieren. Bitte beachten Sie, dass in Verbindung mit dem genutzten 3-D Secure-Verfahren eine separate Einstellung notwendig ist. Bitte wenden Sie sich hierzu direkt an Helpdesk.

Zusatzparameter für Kreditkartenzahlung mit separater Autorisierung

Um eine zuvor mit TxType=Order initialisierte SSL-Kreditkartenzahlung zu autorisieren, rufen Sie folgende URL auf:

https://www.computop-paygate.com/authorize.aspx

Hinweis: Bitte beachten Sie, dass bei einer initialen Order keine KPN/CVC/CVV-Prüfung erfolgen kann. Für die folgende Reservierungsanfrage kann diese ID auch nicht weitergegeben werden.

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

ParamterFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent). Bitte wenden Sie sich an den Helpdesk, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährungskürzel, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle
OrderDescans..768OBeschreibung der gekauften Waren, Einzelpreise etc.
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
Capturean..6OMBestimmt Art und Zeitpunkt der Buchung (engl. Capture). AUTO
Buchung sofort nach Autorisierung (Standardwert). MANUAL
Buchung erfolgt durch den Händler – in der Regel die Buchung zum Zeitpunkt der Warenauslieferung bzw. Leistungserbringung. <Zahl>
Verzögerung in Stunden bis zur Buchung (ganze Zahl; 1 bis 696).

Parameter für Kreditkartenzahlungen über authorize.aspx

Folgende Tabelle beschreibt die Ergebnis-Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
ParameterFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs OBS vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs OBS vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
Coden8MFehlercode gemäß Excel-Datei 1cs Online Bezahlsystem Antwort Codes
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description, sondern Code für die Auswertung des Transaktionsstatus!
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
Statusa..50MOK oder FAILED
RefNr OEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das 1cs OBS Settlement File (CTSF) auch nicht zusätzlich angereichert werden. Informationen zum unterstützten Format finden Sie weiter unten in der zahlartspezifischen Beschreibung. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).

Ergebnis-Parameter für Kreditkartenzahlungen über authorize.aspx

2.1.5 Erweitertes Sequenz-Diagramm

2.2 Corporate Paypage

Die 1cs Online Bezahlsystem-Formulare sind standardmäßig weiß und grau eingerahmt. Sie haben jedoch die Möglichkeit, das Layout der Formulare mit Hilfe von Layout-Parametern selbst zu gestalten. Die einfachste Form, das Layout zu beeinflussen, sind Parameter für Hintergrundfarbe (BGColor), Hintergrundbild (BGImage) und die Schrift (FFace). Weitergehende Layout-Anpassungen sind mit XSLT-Templates möglich:

Im Fall von Kreditkartenzahlungen können Sie mit dem Parameter Template ein individuelles Layout für das PaySSL-Formular nutzen, das 100%ig zu Ihrem Shop-Layout passt. Zu diesem Zweck entwirft Ihr Grafiker ein HTML-Template im Shop-Design auf Basis der XSLT-Technologie (Extensible Stylesheet Language Transformation). Der First Cash Solution Support kopiert dieses XSLT-Template auf unseren 1cs Online Bezahlsystem-Server. Wenn Sie den Namen Ihrer XSLT-Datei im Parameter Template übergeben, erscheint das 1cs Online Bezahlsystem-Formular in Ihrem Layout.

Allgemeine Informationen zu XSLT finden Sie unter www.w3.org.


Bitte beachten Sie, dass die1cs OBS eine kostenpflichtige Zusatzoption ist. Sprechen Sie daher den 1cs OBS Vertrieb darauf an.

1cs Online Bezahlsystem stellt Ihnen ein Programmierbeispiel zur Erstellung eines responsive Kreditkartenformulars online unter https://www.computop.com/de/xslt zur Verfügung. Die zu erstellenden Template-Dateien – XSL und XML – werden später automatisch für die diversen Browser transformiert. Stellen Sie daher vor dem Versand an 1cs OBS sicher, dass die beiden Dateien korrekt im Browser geladen werden können. Dort muss der komplette Code ausgegeben werden können, es dürfen keine Fehlermeldungen erscheinen. Wird eine Fehlermeldung ausgegeben, müssen der Code und die verwendeten Tags entsprechend überarbeitet werden. Bitte beachten Sie, dass uns neue Versionen bis spätestens 15:30 Uhr vorliegen müssen, damit eine Bearbeitung am gleichen Tag erfolgen kann.

Für die Nutzung der Corporate Paypage mit XSLT gelten die nachfolgenden Konventionen:

2.2.1 Dateinamen

Eine von Ihnen gestaltete XSL-Datei definiert Ihr individuelles Layout. Die zugehörige XML-Datei enthält die Texte, die auf dem Formular angezeigt werden sollen. So lässt sich problemlos eine Mehrsprachigkeit realisieren. In den Bezeichnungen der Dateien verwenden Sie stets Ihre MerchantID.

XSL-Template:                   MerchantID_PaySSL.xsl
XML-Textdatei:                  MerchantID_PaySSL.xml
Unterordner für Bilder:   Templates/imagesMerchantID

Um keine Sicherheitshinweise zu erhalten, stellen Sie bitte bei externen Bildquellen sicher, dass diese über SSL aufgerufen werden.

Zum Aufruf des individuellen Layouts verwenden Sie den Parameter „template“ mit Ihrer MerchantID und hängen ihn unverschlüsselt an den Aufruf der First Cash Solution Bezahlseite an, zum Beispiel: https://www.computop-paygate.com/payssl.aspx?MerchantID=IhreMID&Len=123&Data=AGSDJ…ASDF&template=IhreMerchantID

2.2.2 Feldnamen des Formulars

Bei der Implementierung des Textfeldes für die Kreditkartennummer verwenden Sie für die Parameter „name“ und „id“ folgende Werte:

IDFeldname (Name)
CardExpirationYearAblaufdatum Jahr
CardExpirationMonthAblaufdatum Monat
CardNumberKreditkartennummer
CccvcKartenprüfnummer
CcBrandKartenmarke

Ein Textfeld zur Eingabe der Kreditkartennummer wird dann folgendermaßen implementiert:

<input type=”text” name=”cardNumber” id= “cardNumber” value=””></input>

2.2.3 Hidden Fields

Folgende Hidden Fields müssen implementiert werden, damit die Werte beim Abschicken des Formulars weitergereicht werden können:

IDWertBewerkungen
MerchantIDMerchantID1cs Online Bezahlsystem
LenRequest-LängeLänge des unverschlüsselten Data-Strings vor der Verschlüsselung
DataRequest-DatenVerschlüsselte Daten
TemplateTemplateTemplate Name
CounterWiederholversuche 
LanguageSprache 
NotifyNotifyOptional bei Wiederholversuchen
AddrChoiceAdressenauswahlNur bei American Express Adress Verification Service

2.2.4 Sprachauswahl

Die Sprachauswahl im PaySSL.aspx-Formular erfolgt automatisch anhand des Parameters Language. Die anderen Sprachbereiche werden herausgefiltert. Wenn Sie z.B. mit JavaScript auf das Feld eines anderen Sprachbereichs zugreifen wollen, ist das über den folgenden Pfad möglich: 1cs OBS/language/@name.

2.2.5 XML-Struktur

Mit dem Parameter „language“ wird gesteuert, welcher Abschnitt der XML-Textdatei ausgelesen wird. Standardmäßig wird immer deutsch „de“ verwendet.

Die XML-Datei sollte folgendes Grundgerüst haben:

<?xml version="1.0" encoding="windows-1252"?>

       </languages>

             <language name="de">              </language>              <language name="en">              </language>        </languages>

Die Codierung ist auch „UTF-8“ möglich.

Mit <xsl:variable name=““ select=“paygate/language/@name“/> können Sie direkt von der XSL-Datei einen XML- Sprachenabschnitt ansprechen.

Zum Überblick, welche Parameter zusätzlich von der PaySSL gerendert werden, sehen Sie sich bitte folgende Struktur an (XSL-Datei wird gegen folgenden XML-String gerendert):

strXML = "<?xml version='1.0' encoding='windows-1252'?>" & _

       "<paygate pay='ssl'>" & _

                    "<merchantID>"..."</merchantID>" & _                     "<len>"..."</len>" & _                     "<data>"..."</data>" & _                     "<Background>"..."</Background>" & _                     "<BGImage>"..."</BGImage>" & _                     "<BGColor>"..."</BGColor>" & _                     "<FFace>"..."</FFace>" & _                     "<FSize>"..."</FSize>" & _                     "<FColor>"..."</FColor>" & _                     "<center>"..."</center>" & _                     "<CCard>"..."</CCard>" & _                     "<Year>"..."</Year>" & _                     "<URLBack>"..."</URLBack>" & _                     "<twidth>"..."</twidth>" & _                     "<theight>"..."</theight>" & _ “<brands><brand>”…”</brand></brands>” &_                     “<cvc>”…”</cvc>” &_ "<ccexpiryyear>" … "</ccexpiryyear>" & _                     "<ccbrand>" … "</ccbrand>" & _                     "<template>"..."</template>" & _                     "<counter>"… "</counter>" & _                     "<notify>"… "</notify>" & _                     "<errorcode>"..."</errorcode>" & _                     "<PCNr>"..."</PCNr>" & _                     "<PCNrBrand>"... "</PCNrBrand>" & _                     "<PCNrMonth>"… "</PCNrMonth>" & _                     "<PCNrYear>"… "</PCNrYear>" & _              “<creditcardholder>” … “</creditcardholder>”                     "<Autostart>"…"</Autostart>" & _        <language/@name ...   (Bereich für gewählte language-Node)        (Inhalt der MerchantId_PaySSL.xml der jeweiligen Sprache)>        "</paygate>"

Da Sie ein eigenes Layout für Ihr Formular verwenden, benötigen Sie die Layout Parameter nicht. Es ist jedoch möglich, nach voriger Absprache mit der First Cash Solution die Parameter für die Übergabe, z. B. der SessionID zu verwenden.

2.2.6 Fehler-Mapping

Bei den unten genannten Fehlercodes leiten wir auf das Formular zurück, um eine erneute Eingabe der Kreditkartendaten zu ermöglichen. Sie müssen lediglich den Parameter „errorcode“ auswerten und den gewünschten Text aus Ihrer XML-Datei anzeigen.

An dieser Stelle wird das template „errorcode“ aufgerufen:

<xsl:apply-templates select="/paygate/errorcode" />

Das aufgerufene Template „errorcode“ kann dann so aussehen. Alternativ auch mit „if“ umzusetzen.

<xsl:template match="errorcode">   <tr>     <td> <xsl:choose> <xsl:when test=".='0015'"> <xsl:value-of select="/paygate/language/ErrorCodeDescription/Description1"/>        <!--Die Eingabe der Kreditkartennummer war nicht korrekt--> </xsl:when> ... </xsl:choose> </td> </tr> </xsl:template>

Es ist aber auch möglich, die Fehlertexte direkt in das (Haupt-) Template zu integrieren:

<xsl:if test="paygate/errorcode != ''">        <xsl:choose>              <xsl:when test="paygate/errorcode='0015'">              <xsl:value-of select="/paygate/language/ErrorCodeDescription/Description1"/>              <!--Die Eingabe der Kreditkartennummer war nicht korrekt-->              </xsl:when>        </xsl:choose> </xsl:if>

2.2.7 JavaScript

JavaScript-Funktionen sind, wenn gewünscht, von Ihnen in Ihr Template zu implementieren.

<script id="clientEventHandlersJS" language="JavaScript">

if (document.SSLForm.cardNumber.value.length > 19)

{

alert(„<xsl:value-of select=“/paygate/language/strJavaScript1“/>“);

       document.SSLForm.cardNumber.focus();

}

...

</script>

Bitte verwenden Sie keinen externen Link auf Ihr JavaScript.

2.2.8 Link zu Visa Secure und MasterCard Secure Code

Die Visa und MasterCard-Regularien erfordern, dass Ihre Bezahlseite das Logo von Visa Secure und SecureCode anzeigt. Bitte verlinken Sie das Verified Secure-Logo mit https://www.computop-paygate.com/vbv.aspx und das MasterCard SecureCode-Logo mit https://brand.mastercard.com/brandcenter/mastercard-brand-mark/downloads.html .

2.2.9 Programmierung und Test des Formulars

Zunächst gestalten Sie sich eine HTML-Seite mit dem Layout für ihre Bezahlseite und speichern diese zunächst zum Testen mit der Dateiendung htm oder html ab. Öffnen Sie diese Datei im Browser. Als nächste speichern Sie diese als xsl-Datei ab.

<?xml version='1.0' encoding="windows-1252"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="html" encoding="UTF-8"/> <xsl:template match="/"> <html>        <head>              <title>PaySSL Template</title>              <script>Ihr JavaScript</script>        </head>        <body>        <form action="https://www.computop-paygate.com/payinterim.aspx" method="POST">
       Ihr Formular mit hiddenfields und xsl-tags        </form>        </body> </html> </xsl:template>

Um die Texte aus der XML-Datei zu lesen, erstellen Sie zunächst in den gewünschten Sprachabschnitten Ihre Tags mit den Texten:

       <language name="de">

             <strCCNumber>Kreditkartennummer</strCCNumber>

       </language>

Anschließend ersetzen Sie den Text im HTML durch einen Verweis auf den entsprechenden Abschnitt in der XML-Datei:

<xsl:value-of select="/paygate/language/strCCNumber"/>

Um Ihr Template zu testen, bitten wir Sie folgende Zeilen nur für den Test (bevor Sie es an die First Cash Solution schicken) in Ihre XML-Datei zu integrieren und im Anschluss die XML-Datei in einem Browser aufzurufen. Wenn kein Fehler angezeigt wird, können Sie unserem Support Ihr Template und den Image-Ordner in einer Zip-Datei schicken, mit der Bitte es zu prüfen und einzuspielen.

<?xml version="1.0" encoding="windows-1252"?>

<?xml-stylesheet type="text/xsl" href="templatename.xsl"?>

<paygate>

       <languages>bitte für Ihre Layout Tests weglassen              <language name="de">              </language>              <language name="en">              </language>        </languages> bitte für Ihre Layout Tests weglassen </paygate>

Um einen Überblick der Versionen zu erhalten, versehen Sie bitte den Namen Ihrer Zip-Datei mit Datum und Versions-Nummer.

Analog zum Kreditkartenformular ist es nun auch möglich, eigene XSLT-Templates für das SEPA-Lastschriftformular zu gestalten. Genau wie beim Kreditkartenformular wird das über den Parameter „Template“ gesteuert. Über folgende URL kann dies aufgerufen werden:

https://www.computop-paygate.com/paySDD.aspx?MerchantID=IhreMID&Len=123&Data=AGSDJ…ASDF&template=IhreMerchantID

Dabei müssen die Dateien folgende Namenskonvention verwenden:

XSL-Template: MerchantID_PaySDD.xsl

XML-Textdatei: MerchantID_PaySDD.xml

Unterordner für Bilder: Templates/imagesMerchantID

Hinweis: Eine Corporate Paypage ermöglicht Ihnen noch zahlreiche weitere Funktionen wie zum Beispiel die Vorbelegung von Kartendaten, die hier nicht einzeln erläutert sind. Für Fragen zu weiteren Funktionen wenden Sie sich bitte an den First Cash Solution Support.

3 Kreditkarten – Allgemein per Server-zu-Server

3.1 Kreditkarten – Server-2-Server Integration

Eine 3DS 2.0 Zahlungssequenz kann aus den folgenden verschiedenen Aktivitäten bestehen:

  • Versionierung: Anfrage von ACS- und DS-Protokol-Version(en), die mit dem Kartenkontenbereich korrespondieren sowie einer optionalen 3DS Method URL
  • 3DS Methode: Verbindet den Browser des Karteninhabers mit dem ACS des Issuers, um zusätzliche Browserdaten zu erhalten
  • Authentisierung: Übermittlung der Authentisierungs-Anfrage an den ACS des Issuers
  • Challenge: Challenge des Karteninhabers, falls angeordnet
  • Autorisierung: Autorisierung der authentisierten Transaktion beim Acquirer

3.2 Server-2-Server Sequenzdiagramm

Beachten Sie bitte, dass die Kommunikation zwischen Client und Access Control Server (ACS) über iFrames implementiert ist. Daher kommen die Antworten in einem HTML-Subdokument an und Sie können entsprechende Event-Listener in Ihrem Root-Dokument einrichten.

Alternativ könnten Sie alleinig auf die asynchronen Benachrichtigungen an ihr Backend vertrauen. In jenen Fällen müssen Sie eventuell Methoden wie Long Polling, SSE oder Websockets zum Update des Clients in Betracht ziehen.

3.3 Initiierung der Zahlung

Die anfängliche Anfrage an das 1cs Online Bezahlsystem ist unabhängig vom zugrundeliegenden 3DS-Protokoll gleich.

Um eine Server-zu-Server 3-D Secure Kartenzahlungssequenz zu starten, senden Sie bitte folgende Schlüssel-Wert-Paare an https://www.computop-paygate.com/direct.aspx.

3.3.1 Aufruf-Elemente

Hinweis: Bei einer vom Händler initiierten, wiederkehrenden Zahlung sind die JSON-Objekte (außer credentialOnFile und card), die URLNotify und die TermURL keine Pflichtparameter, da kein 3D Secure und auch keine Risikobewertung durch die kartenausgebende Bank stattfindet und das Ergebnis der Zahlungsanfrage direkt in der Response mitgeteilt wird.

ParameterFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
MsgVerans..5MMessage-Version. Zulässige Werte:
Wert: 2.0
Beschreibung: Mit 3-D Secure 2.x wurde eine Vielzahl zusätzlicher Daten (Browser-Information, Rechnungs-/Versand-Adresse, …) erforderlich, um den Authentifizierungs-Prozess zu optimieren. Um diese Informationen zu handhaben, wurden die JSON-Objekte eingeführt. Der Parameter MsgVer zeigt an, dass diese Daten verwendet werden.
TransIDans..64MTransaktionsID, die für jede Zahlung eindeutig sein muss
ReqIDans..32OUm Doppelzahlungen (z.B. durch ETM) zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion oder Aktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion oder Aktion mit derselben ReqID erneut eingereicht wird, führt das 1cs OBS keine Zahlung oder weitere Aktion aus, sondern gibt nur den Status der ursprünglichen Transaktion oder Aktion zurück. Bitte beachten Sie, dass das 1cs Online Bezahlsystem für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom 1cs OBS gelöscht.
RefNr OEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das 1cs OBS Settlement File (CTSF) auch nicht zusätzlich angereichert werden. Informationen zum unterstützten Format finden Sie weiter unten in der zahlartspezifischen Beschreibung. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
SchemaReferenceIDans..64CSpezifische Transaktions-ID des Kartenschemas, die für nachfolgende Zahlungen mit gespeicherten Zugangsdaten, verzögerte Autorisierungen und Wiedereinreichungen erforderlich ist. Pflicht: CredentialOnFile – initial false – unschedule MIT / recurring schemeReferenceID wird bei 3DS2-Zahlungsvorgängen zurückgegeben. Bei einem Fallback auf 3DS1 prüfen Sie bitte zusätzlich auf TransactionId. Die SchemeReferenceID ist eine eindeutige Kennung, die von den Kartenmarken generiert wird. In der Regel können 1cs OBS-Händler die SchemeReferenceIDs für Abonnements übergreifend verwenden, welche unter Verwendung eines anderen PSP / separater 1cs OBS-MerchantID / separater Acquirer ContractID / Acquirer erstellt wurden.
IndustrySpecificTxTypeans..10CDieser Parameter ist erforderlich, wenn eine branchenspezifische Transaktion entsprechend dem Kartenmarken MIT-Framework (Merchant Initiated Transactions) verarbeitet wird. Zulässige Werte: Resubmission: Ein Händler führt eine erneute Einreichung durch, wenn er eine Autorisierung angefordert hat, diese aber aufgrund unzureichender Mittel abgelehnt wurde; die Waren oder Dienstleistungen wurden jedoch bereits an den Karteninhaber geliefert. In solchen Szenarien können Händler den Antrag auf Beitreibung ausstehender Forderungen von Karteninhabern erneut einreichen. Reauthorization: Ein Händler leitet eine erneute Autorisierung ein, wenn Abschluss oder Erfüllung der ursprünglichen Bestellung oder Dienstleistung die von Visa festgelegte Gültigkeitsdauer der Autorisierung überschreitet. Es gibt zwei gängige Szenarien für die erneute Autorisierung: • Geteilte oder verzögerte Lieferung bei E-Commerce-Händlern. Eine Teillieferung liegt vor, wenn zum Zeitpunkt des Kaufs nicht alle bestellten Waren versandbereit sind. Erfolgt die Lieferung der Ware nach der von Visa festgelegten Gültigkeitsdauer der Autorisierung, führen E-Commerce-Händler eine separate Autorisierung durch, um sicherzustellen, dass Kundengelder verfügbar sind. • Verlängerte Hotelaufenthaltens, Autovermietungen und Keuzfahrten. Eine erneute Autorisierung wird für Aufenthalte, Reisen und/oder Anmietungen verwendet, die über die von Visa festgelegte Gültigkeitsdauer der Autorisierung hinausgehen. DelayedCharges: Verzögerte Gebühren dienen dazu, um eine zusätzliche Kontogebühr zu verarbeiten, nachdem die ursprünglichen Dienstleistungen erbracht und die entsprechende Zahlung verarbeitet wurde. NoShow: Karteninhaber können mit ihren Visa-Karten eine garantierte Reservierung bei bestimmten Händlersegmenten vornehmen. Eine garantierte Reservierung stellt sicher, dass die Reservierung berücksichtigt wird und ermöglicht es einem Händler, eine No-Show-Transaktion durchzuführen, um dem Karteninhaber eine Strafe gemäß den Stornierungsbedingungen des Händlers zu berechnen.
Hinweis: Für Händler, die tokenbasierte Zahlungsinformationen akzeptieren, um eine Reservierung zu garantieren, ist es zum Zeitpunkt der Reservierung erforderlich, einen CIT (Kontoverifizierungsservice) durchzuführen, um später eine No-Show-Transaktion durchführen zu können. Hinweis: Das wird immer zusammen mit dem Parameter “schemeReferenceID” übermittelt. Bezüglich unterstützer Acquirer und Kartenmarken wenden Sie sich bitte an den Helpdesk. Wird nur von Omnipay und GICC unterstützt.
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent). Bitte wenden Sie sich an den Helpdesk, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährung, drei Zeichen DIN / ISO 4217. Hier eine Übersicht: Währungstabelle
CardJSONMKartendaten
Captureans..6OBestimmt Art und Zeitpunkt der Buchung (engl. Capture). AUTO: Buchung sofort nach Autorisierung (Standardwert). MANUAL: Buchung erfolgt durch den Händler. <Zahl>: Verzögerung in Stunden bis zur Buchung (ganze Zahl; 1 bis 696).
BillingDescriptorans..22OEin auf dem Kontoauszug des Karteninhabers zu druckender Beschreiber. Beachten Sie bitte auch die andernorts gemachten zusätzlichen Hinweise für weitere Informationen über Regeln und Vorschriften.
OrderDescans..768MBeschreibung der Bestellung
AccVerifyJSONOIndikator zur Anforderung einer Konto-Verifizierung (alias Nullwert-Autorisierung). Wenn eine Konto-Verifizierung angefordert wird, ist der übermittelte Betrag optional und wird für die tatsächliche Zahlungstransaktion (d.h. Autorisierung) ignoriert. Zulässige Werte: Yes
ThreeDSPolicyJSONOObjekt, dass die Authentisierungs-Richtlinien und Strategien zur Behandlung von Ausnahmen angibt
ThreeDSDataJSONCObjekt mit Details der Authentisierungsdaten, falls die Authentisierung durch Dritte oder durch den Händler durchgeführt wurde
PriorAuthenticationInfoJSONODas Objekt Prior Transaction Authentication Information enthält optionale Informationen über eine 3-D Secure-Authentisierung eines Karteninhabers, die vor der aktuellen Transaktion erfolgt ist
BrowserInfoJSONCExakte Browserinformationen sind nötig, um eine optimierte Nutzererfahrung zu liefern. Erforderlich für 3-D Secure 2.0 Transaktionen.
AccountInfoJSONODie Kontoinformationen enthalten optionale Informationen über das Kundenkonto beim Händler
BillToCustomerJSONCDer Kunde, dem die Waren und / oder Dienstleistungen in Rechnung gestellt werden. Erforderlich, sofern nicht Markt- oder regionale Mandate das Senden dieser Informationen beschränken.
ShipToCustomerJSONCDer Kunde, an den die Waren und / oder Dienstleistungen gesendet werden. Erforderlich (falls verfügbar und von BillToCustomer abweichend), sofern nicht Markt- oder regionale Mandate das Senden dieser Informationen beschränken.
BillingAddressJSONCRechnungsadresse. Erforderlich für 3-D Secure 2.0 (falls verfügbar), sofern nicht Markt- oder regionale Mandate das Senden dieser Informationen beschränken.
ShippingAddressJSONCLieferadresse. Falls abweichend von billingAddress, erforderlich für 3-D Secure 2.0 (falls verfügbar), sofern nicht Markt- oder regionale Mandate das Senden dieser Informationen beschränken.
CredentialOnFileJSONCObjekt, dass Art und Reihe der Transaktionen angibt, die unter Verwendung von beim Händler hinterlegten Zahlungsdaten (z.B. Kontonummer oder Zahlungs-Token) zur Verarbeitung künftiger Käufe eines Kunden erfolgen. Erforderlich, falls zutreffend.
MerchantRiskIndicatorJSONODer Händler-Risikoindikator enthält optionale Informationen über den bestimmten Einkauf des Kunden
SubMerchantPFJSONOObjekt, das die Details des SubMerchant (Payment Facilitator) angibt Wird ausschließlich von SafeCharge unterstützt.
TermURLans..256MNur bei 3-D Secure: URL des Shops, die vom Access Control Server (ACS) der Bank aufgerufen wird, um das Ergebnis der Authentisierung zu übermitteln. Dabei übergibt die Bank per GET die Parameter PayIDTransIDMerchantID und per POST den Parameter PAResponse an die TermURL.
URLNotifyans..256MVollständige URL, die das 1cs Online Bezahlsystem aufruft, um den Shop zu benachrichtigen. Die URL darf nur über Port 443 aufgerufen werden. Sie darf keine Parameter enthalten: Nutzen Sie stattdessen den Parameter UserData. Allgemeine Hinweise: Wir empfehlen, den Parameter “response=encrypt” zu verwenden, um eine verschlüsselte Antwort von 1cs OBS zu erhalten Betrüger könnten das verschlüsselte DATA-Element kopieren, welches an URLFailure gesendet wurde, und betrügerisch dasselbe DATA an URLSuccess/URLNotify senden. Überprüfen Sie daher unbedingt den “code”-Wert des DATA-Elements. Nur eine Antwort mit “code=00000000” sollte als erfolgreich angesehen werden.
UserDataans..1024OWenn beim Aufruf angegeben, übergibt das 1cs Online Bezahlsystem die Parameter mit dem Zahlungsergebnis an den Shop.
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)

3.3.2 Antwort-Elemente

ParameterFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
RefNr OReferenznummer wie im Request angegeben
Statusa..20MStatus der Transaktion. Zulässige Werte: AUTHENTICATION_REQUEST PENDING FAILED
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description sondern Code für die Auswertung des Transaktionsstatus!
Coden8MFehlercode gemäß Excel-Datei 1cs Online Bezahlsystem Antwort Codes
UserDataans..1024OWenn beim Aufruf angegeben, übergibt das 1cs OBS die Parameter mit dem Zahlungsergebnis an den Shop.
CardJSONMKartendaten
VisioningDataJSONMDas Datenelement Card Range Data enthält Informationen, welche die jüngste vom ACS, der den Kartenbereich hostet, unterstützte EMV 3-D Secure-Version angeben. Es kann optional auch die ACS URL für die 3-D Secure Methode enthalten, falls vom ACS unterstützt, sowie die DS Start- und End-Protokoll-Versionen, die den Kartenbereich unterstützen.
ThreeDSLegacyJSONCObjekt, dass die erforderlichen Datenelemente für die Konstruktion der Anfrage zur Zahler-Authentisierung im Falle eines Fallbacks auf 3-D Secure 1.0 enthält.

3.3.3 VersioningData

Das Objekt versioningData gibt die EMV 3DS Protokoll-Versionen (d.h. 2.1.0 oder höher) an, die vom Access Control Server des Issuers unterstützt werden.

Wenn die entsprechenden Felder der Protokoll-Version NULL sind, bedeutet dies, dass der BIN-Bereich des Karten-Issuers nicht für 3DS 2.0 registriert ist und ein Fallback auf 3DS 1.0 für Transaktionen erforderlich ist, die unter den Geltungsbereich der PSD2 SCA fallen.

Achten Sie beim Zerlegen von versioningData bitte auch auf das Subelement errorDetails, das den Grund angibt, falls einige Felder nicht ausgefüllt sind (z.B. Ungültige Kontonumber des Karteninhabers übergeben, nicht verfügbare Kartenbereichsdaten, Fehler beo Codieren/Serialisieren der 3DS Methoden-Daten usw.)

BASEURL= https://www.computop-paygate.com/

{

    “threeDSServerTransID”: “14dd844c-b0fc-4dfe-8635-366fbf43468c”,

    “acsStartProtocolVersion”: “2.1.0”,

    “acsEndProtocolVersion”: “2.1.0”,

    “dsStartProtocolVersion”: “2.1.0”,

    “dsEndProtocolVersion”: “2.1.0”,

    “threeDSMethodURL”: “http://www.acs.com/script“,

    “threeDSMethodDataForm”: “eyJ0aHJlZURTTWV0aG9kTm90aWZpY2F0aW9uVVJMIjoiaHR0cHM6Ly93d3cuY29tcHV0b3AtcGF5Z2F0ZS5jb20vY2JUaHJlZURTLmFzcHg_YWN0aW9uPW10aGROdGZuIiwidGhyZWVEU1NlcnZlclRyYW5zSUQiOiIxNGRkODQ0Yy1iMGZjLTRkZmUtODYzNS0zNjZmYmY0MzQ2OGMifQ==”,

    “threeDSMethodData”: {

        “threeDSMethodNotificationURL”: “BASEURL/cbThreeDS.aspx?action=mthdNtfn”,

        “threeDSServerTransID”: “14dd844c-b0fc-4dfe-8635-366fbf43468c”

    }

}

3.3 3DS Methode

Die 3DS Methode ermöglicht das Erfassen zusätzlicher Browserinformationen durch einen ACS vor Erhalt der Authensisierungsanfrage (AReq), um die Risikobeurteilung der Transaktion zu erleichtern. Die Unterstützung der 3DS Methode ist optional und liegt im Ermessen des Issuers.

Das Objekt versioningData enthält einen Wert für threeDSMethodURL. Der Händler sollte die 3DS Methode über einen versteckten HTML-iFrame im Browser des Karteninhabers aufrufen und ein Formular mit einem Feld namens threeDSMethodData über HTTP POST an die ACS 3DS Methoden-URL senden.

3.3.1 DS Methode: threeDSMethodURL

Beachten Sie bitte, dass die threeDSMethodURL vom 1cs Online Bezahlsystem ausgefüllt wird, falls der Issuer die 3DS Methode nicht unterstützt. Der 3DS Methoden-Formular-Post wie unten dargestellt muss unabhängig davon ausgeführt werden, ob dies vom Issuer unterstützt wird. Das ist notwending, um die direkte Kommunikation zwischen dem Browser und dem1cs OBS im Falle einer angeordneten Challenge oder eines reibungslosen Ablaufs zu erleichtern.

3.3.2 3DS Method: Keine Issuer threeDSMethodURL

3.3.3. 3-D Secure Method Form Post

<form name=”frm” method=”POST” action=”Rendering URL”>

    <input type=”hidden” name=”threeDSMethodData” value=”eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6IjNhYzdjYWE3LWFhNDItMjY2My03OTFiLTJhYzA1YTU0MmM0YSIsInRocmVlRFNNZXRob2ROb3RpZmljYXRpb25VUkwiOiJ0aHJlZURTTWV0aG9kTm90aWZpY2F0aW9uVVJMIn0″>

</form>

Der ACS interagiert mit dem Browser des Karteninhabers über den HTML-iFrame und speichert dann die zutreffenden Werte mit der 3DS Server Transaction ID für die Verwendung, wenn eine nachfolgende Authentisierungs-Nachricht empfangen wird, welche die gleiche 3DS Server Transaction ID enthält.

Netcetera 3DS Web SDK: Sie können nach eigenem Ermessen die Operationen init3DSMethod oder createIframeAndInit3DSMethod vom nca3DSWebSDKverwenden, um die 3DS Methode zu initialisieren. Bitte beachten Sie dazu das Integrations-Handbuch unter https://mpi.netcetera.com/3dsserver/doc/current/integration.html#Web_Service_API.

Nachdem die 3DS Methode abgeschlossen ist, weist der ACS den Browser des Karteninhabers über das iFrame-Antwortdokument an, threeDSMethodData als ein verstecktes Formularfeld an die 3DS Method Notification URL zu übermitteln.

3.3.4 ACS Response Document

<!DOCTYPE html>

<html lang=”en”>

<head>

    <meta charset=”UTF-8″/>

    <title>Identifying…</title>

</head>

<body>

<script>

    var tdsMethodNotificationValue = ‘eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ImUxYzFlYmViLTc0ZTgtNDNiMi1iMzg1LTJlNjdkMWFhY2ZhMiJ9’;

    var form = document.createElement(“form”);

    form.setAttribute(“method”, “post”);

    form.setAttribute(“action”, “notification URL”);

    addParameter(form, “threeDSMethodData”, tdsMethodNotificationValue);

    document.body.appendChild(form);

    form.submit();

    function addParameter(form, key, value) {

        var hiddenField = document.createElement(“input”);

        hiddenField.setAttribute(“type”, “hidden”);

        hiddenField.setAttribute(“name”, key);

        hiddenField.setAttribute(“value”, value);

        form.appendChild(hiddenField);

    }

</script>

</body>

</html>

3.3.5 3-D Secure Method Notification Form

<form name=”frm” method=”POST” action=”3DS Method Notification URL”>

    <input type=”hidden” name=”threeDSMethodData” value=”eyJ0aHJlZURTU2VydmVyVHJhbnNJRCI6ImUxYzFlYmViLTc0ZTgtNDNiMi1iMzg1LTJlNjdkMWFhY2ZhMiJ9″>

</form>

Beachten SIe bitte, dass die threeDSMethodNotificationURL wie sie in den Base64-codierten threeDSMethodData eingebettet ist, auf das 1cs Online Bezahlsystem weist und nicht verändert werden darf. Die Händler-Benachrichtigung wird an die URLNotify geliefert, wie sie in der Originalanfrage übermittelt oder für die MerchantID im 1cs OBS konfiguriert ist.

3.4 Authentisierung

Wenn die 3DS-Methode vom ACS des Issuers unterstützt wird und vom Händler aufgerufen wurde, setzt das 1cs Online Bezahlsystem automatisch mit der Authentisierungsanfrage fort, nachdem die 3DS-Methode abgeschlossen ist (d.h. 3DS Methoden-Benachrichtigung).

Das Ergebnis der Authentisierung wird per HTTP POST an die URLNotify übertragen. Es kann anzeigen, dass der Karteninhaber authentisiert worden ist oder dass eine weitere Interaktion des Karteninhabers (d.h. Challenge) für den Abschluss der Authentisierung erforderlich ist.

Falls für den Karteninhaber eine Challenge für nötig angesehen ist, überträgt das 1cs Online Bezahlsystem ein JSON-Objekt im Body der HTTP Browser-Antwort mit den Elementen acsChallengeMandated, challengeRequest, base64EncodedChallengeRequest und acsURL. Anderenfalls setzt das 1cs OBS in einem reibungslosen Ablauf automatisch fort und antwortet dem Browser des Karteninhabers, sobald die Autorisierung abgeschlossen ist.

 

3.4.1 Karteninhaber-Challenge: Browser-Antwort

3.4.2 Browser Challenge-Antwort

Datenelemente

ParameterFormatCNDBeschreibung
ACSChallengeMandatedbooleanMZeigt an, on eine Challenge für die Autorisierung einer Transaktion wegen lokaler/regionaler Vorschriften oder anderer Variablen nötig ist: true → Challenge ist obligatorisch wegen lokaler/regional Vorschriften false → Challenge ist nicht obligatorisch wegen lokaler/regional Vorschriften, wird aber von ACS als nötig angesehen
ChallengeRequestobjectMObjekt Challenge-Anfrage
Base64EncodedChallengeRequeststringMBase64-codiertes Objekt Challenge-Anfrage
AcsURLstringMVollständige URL des ACS, die für das Posten der Challenge-Anfrage verwendet werden soll

Schema Browser Challenge-Antwort

{

    “$schema”: “http://json-schema.org/draft-07/schema#“,

    “type”: “object”,

    “properties”: {

        “acsChallengeMandated”: {“type”: “boolean”},

        “challengeRequest”: {“type”: “object”},

        “base64EncodedChallengeRequest”: {“type”: “string”},

        “acsURL”: {“type”: “string”}

    },

    “required”: [“acsChallengeMandated”, “challengeRequest”, “base64EncodedChallengeRequest”, “acsURL”],

    “additionalProperties”: false

}

Beispiel Browser Challenge-Antwort

{

    “acsChallengeMandated”: false,

    “challengeRequest”: {

        “threeDSServerTransID”: “8a880dc0-d2d2-4067-bcb1-b08d1690b26e”,

        “acsTransID”: “d7c1ee99-9478-44a6-b1f2-391e29c6b340”,

        “messageType”: “CReq”,

        “messageVersion”: “2.1.0”,

        “challengeWindowSize”: “01”,

        “messageExtension”: [

            {

                “name”: “emvcomsgextInChallenge”,

                “id”: “tc8Qtm465Ln1FX0nZprA”,

                “criticalityIndicator”: false,

                “data”: “messageExtensionDataInChallenge”

            }

        ]

    },

    “base64EncodedChallengeRequest”: “base64-encoded-challenge-request”,

    “acsURL”: “acsURL-to-post-challenge-request”

}

3.4.3 Authentisierungs-Benachrichtigung

Die Datenelemente der Authentisierungs-Benachrichtigung stehen in folgender Tabelle.

ParameterFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
Coden8MFehlercode gemäß Excel-Datei 1cs Online Bezahlsystem Antwort-Codes
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
AuthenticationResponseJSONMAntwort-Objekt als Rückgabe zur Authentisierungs-Anfrage beim ACS

3.4.4 Browser Challenge

Wenn eine Challenge für nötig angesehen wird (siehe challengeRequest), erfolgt die Browser Challenge im Browser des Karteninhabers. Zum Erzeugen einer Challenge ist es erforderlich, den Wert base64EncodedChallengeRequest über ein HTML-iFrame an die ACS URL zu posten.

Challenge-Anfrage

<form name=”challengeRequestForm” method=”post” action=”acsChallengeURL”>

    <input type=”hidden” name=”creq” value=”ewogICAgInRocmVlRFNTZXJ2ZXJUcmFuc0lEIjogIjhhODgwZGMwLWQyZDItNDA2Ny1iY2IxLWIwOGQxNjkwYjI2ZSIsCiAgICAiYWNzVHJhbnNJRCI6ICJkN2MxZWU5OS05NDc4LTQ0YTYtYjFmMi0zOTFlMjljNmIzNDAiLAogICAgIm1lc3NhZ2VUeXBlIjogIkNSZXEiLAogICAgIm1lc3NhZ2VWZXJzaW9uIjogIjIuMS4wIiwKICAgICJjaGFsbGVuZ2VXaW5kb3dTaXplIjogIjAxIiwKICAgICJtZXNzYWdlRXh0ZW5zaW9uIjogWwoJCXsKCQkJIm5hbWUiOiAiZW12Y29tc2dleHRJbkNoYWxsZW5nZSIsCgkJCSJpZCI6ICJ0YzhRdG00NjVMbjFGWDBuWnByQSIsCgkJCSJjcml0aWNhbGl0eUluZGljYXRvciI6IGZhbHNlLAoJCQkiZGF0YSI6ICJtZXNzYWdlRXh0ZW5zaW9uRGF0YUluQ2hhbGxlbmdlIgoJCX0KICAgIF0KfQ==”>

</form>

Sie können die Operationen init3DSChallengeRequest oder createIFrameAndInit3DSChallengeRequest aus dem nca3DSWebSDK verwenden, um die Challenge-Nachricht an den Browser des Karteninhabers zu übermitteln.

3DS Challenge-Anfrage initialisieren – Beispiel

<!DOCTYPE html>

<html lang=”en”>

<head>

    <meta charset=”UTF-8″>

    <script src=”nca-3ds-web-sdk.js” type=”text/javascript”></script>

    <title>Init 3-D Secure Challenge Request – Example</title>

</head>

<body>

<!– This example will show how to initiate Challenge Reqeuests for different window sizes. –>

<div id=”frameContainer01″></div>

<div id=”frameContainer02″></div>

<div id=”frameContainer03″></div>

<div id=”frameContainer04″></div>

<div id=”frameContainer05″></div>

<iframe id=”iframeContainerFull” name=”iframeContainerFull” width=”100%” height=”100%”></iframe>

<script type=”text/javascript”>

    // Load all containers

    iFrameContainerFull = document.getElementById(‘iframeContainerFull’);

    container01 = document.getElementById(‘frameContainer01’);

    container02 = document.getElementById(‘frameContainer02’);

    container03 = document.getElementById(‘frameContainer03’);

    container04 = document.getElementById(‘frameContainer04’);

    container05 = document.getElementById(‘frameContainer05’);

    // nca3DSWebSDK.init3DSChallengeRequest(acsUrl, creqData, container);

    nca3DSWebSDK.init3DSChallengeRequest(‘http://example.com‘, ‘base64-encoded-challenge-request’, iFrameContainerFull);

    // nca3DSWebSDK.createIFrameAndInit3DSChallengeRequest(acsUrl, creqData, challengeWindowSize, frameName, rootContainer, callbackWhenLoaded);

    nca3DSWebSDK.createIFrameAndInit3DSChallengeRequest(‘http://example.com‘, ‘base64-encoded-challenge-request’, ’01’, ‘threeDSCReq01’, container01);

    nca3DSWebSDK.createIFrameAndInit3DSChallengeRequest(‘http://example.com‘, ‘base64-encoded-challenge-request’, ’02’, ‘threeDSCReq02’, container02);

    nca3DSWebSDK.createIFrameAndInit3DSChallengeRequest(‘http://example.com‘, ‘base64-encoded-challenge-request’, ’03’, ‘threeDSCReq03’, container03);

    nca3DSWebSDK.createIFrameAndInit3DSChallengeRequest(‘http://example.com‘, ‘base64-encoded-challenge-request’, ’04’, ‘threeDSCReq04’, container04);

    nca3DSWebSDK.createIFrameAndInit3DSChallengeRequest(‘http://example.com‘, ‘base64-encoded-challenge-request’, ’05’, ‘threeDSCReq05’, container05, () => {

        console.log(‘Iframe loaded, form created and submitted’);

    });

</script>

</body>

</html>

Sobald die Challenge des Karteninhabers abgeschlossen, abgebrochen oder per Zeitüberschreitung beendet ist, weist der ACS den Browser an, die Ergebnisse per Post an die in der Challenge-Anfrage angegebene Benachrichtigungs-URL zu senden und eine Ergebnis-Anfrage (RReq) über den Directory Server an den 3DS Server zu senden.

Beachten Sie bitte, dass die in der Challenge-Anfrage übergebene Benachrichtigungs-URL auf das 1cs Online Bezahsystem zeigt und nicht verändert werden darf.

3.5 Autorisierung

Nachdem die erfolgreiche Authentisierung des Karteninhabers oder der Nachweis der versuchten Authentisierung/Verifizierung bereitgestellt ist, setzt das 1cs Online Bezahlsystem die Zahlungsautorisierung automatisch fort.

Falls die Authentisierung des Karteninhabers nicht erfolgreich war oder der Nachweise der versuchten Authentisierung/Verifizierung nicht bereitgestellt werden kann, setzt das 1cs OBS nicht mit einer Autorisierungsanfrage fort.

In beiden Fällen liefert das 1cs OBS eine Benachrichtigung mit dem Ergebnis der Authentifizierung an die vom Händler angegebene URLNotify mit den Datenelementen gemäß nachstehender Tabelle.

3.5.1 Zahlungs-Benachrichtigung

ParameterFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird.  
MsgVerans..5MMessage-Version. Zulässige Werte:

Wert: 2.0
Beschreibung: Mit 3-D Secure 2.x wurde eine Vielzahl zusätzlicher Daten (Browser-Information, Rechnungs-/Versand-Adresse, …) erforderlich, um den Authentifizierungs-Prozess zu optimieren. Um diese Informationen zu handhaben, wurden die JSON-Objekte eingeführt. Der Parameter MsgVer zeigt an, dass diese Daten verwendet werden.
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
SchemaReferenceIDans..64CSpezifische Transaktions-ID des Kartenschemas, die für nachfolgende Zahlungen mit gespeicherten Zugangsdaten, verzögerte Autorisierungen und Wiedereinreichungen erforderlich ist. Pflicht: CredentialOnFile – initial false – unschedule MIT / recurring schemeReferenceID wird bei 3DS2-Zahlungsvorgängen zurückgegeben. Bei einem Fallback auf 3DS1 prüfen Sie bitte zusätzlich auf TransactionId. Die SchemeReferenceID ist eine eindeutige Kennung, die von den Kartenmarken generiert wird. In der Regel können 1cs OBS-Händler die SchemeReferenceIDs für Abonnements übergreifend verwenden, welche unter Verwendung eines anderen PSP / separater 1cs OBS-MerchantID / separater Acquirer ContractID / Acquirer erstellt wurden.
TrxTimean21MZeitstempel der Transaktion im Format DD.MM.YYYY HH:mm:ssff
Statusa..20MStatus der Transaktion. Zulässige Werte: Authorized OK (Sale) PENDING FAILED Im Falle von nur Authentisierung ist der Status entweder OK oder FAILED .
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description, sondern Code für die Auswertung des Transaktionsstatus!
Coden8MFehlercode gemäß Excel-Datei 1cs Online Bezahlsystem Antwort-Codes
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
CardJSONMKartendaten
IpInfoJSONOObjekt mit IP-Information
ThreeDsDataJSONMAuthentisierungsdaten
ResultsResponseJSONCFalls der Authentisierungsprozess eine Challenge des Karteninhabers enthalten hat, werden zusätzliche Informationen über das Ergebnis der Challenge bereitgestellt
ExternalPaymentDataJSONOOptionale Daten des Acquirers/Issuers/externen Dienstleisters für eine Autorisierung
PCNrn16OPseudo Card Number: Vom 1cs Online Bezahlsystem generierte Zufallszahl, die eine reale Kreditkartennummer repräsentiert. Die Pseudokartennummer (PKN) beginnt mit 0, und die letzten 3 Stellen entsprechen denen der realen Kartennummer. Die PKN kann wie eine Kreditkartennummer für Autorisierung, Buchung und Gutschriften verwendet werden. PCNr ist ein Antwortwert vom 1cs Online Bezahlsystem und kann ebenfalls als CCNr im Request oder als Teil von card-JSON verwendet werden.

3.5.2 Browser Zahlungs-Antwort

Zusätzlich werden nachstehende Datenelemente im JSON-Format im Body der HTTP-Antwort zum Browser des Karteninhabers übertragen. Beachten Sie bitte, dass die Datenelemente (d.h. MID, Len, Data) base64-codiert sind.

Datenelemente

ParameterFormatCNDBeschreibung
MIDans..30MHändlerID, die vom 1cs Online Bezahlsystem vergeben wird
LenintegerMLänge des unverschlüsselten Strings Data
DataintegerMBlowfish-verschlüsselter String, der ein JSON-Objekt mit MID , PayID und TransID enthält

Schema

{

    “$schema”: “http://json-schema.org/draft-07/schema#“,

    “type”: “object”,

    “properties”: {

        “MID”: {

            “type”: “string”

        },

        “Len”: {

            “type”: “integer”

        },

        “Data”: {

            “type”: “string”

        }

    },

    “required”: [“MID”, “Len”, “Data”],

    “additionalProperties”: false

}

Händler sollten diese Datenelemente zur Entschlüsselung und für den Abgleich mit der Zahlungs-Benachrichtigung am ihren Server weiterleiten. Basierend auf dem Zahlungsergebnis kann der Händler-Server eine entsprechende Antwort an den Browser des Karteninhabers senden (z.B. Erfolgsseite).

Entschlüsseltes Objekt Data

ParamterFormatCNDBeschreibung
MIDans..30MHändlerID, die vom 1cs Online Bezahlsystem vergeben wird
PayIDan32MVom 1cs OBS vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss

Beispiel für entschlüsseltes Objekt Data

MID=YourMID&PayID=PayIDassignedbyPlatform&TransID=YourTransID

4 Buchung / Gutschrift / Storno / Batch

4.1 Buchung / Gutschrift / Storno

4.1.1 Buchung

Buchungen sind über eine Server-zu-Server-Kommunikation möglich. Um eine Buchung (Capture) über eine Server-zu-Server-Verbindung auszuführen, verwenden Sie bitte folgende URL:

https://www.computop-paygate.com/capture.aspx

Hinweis: Bitte beachten Sie die Reservierungs- / Autorisierungsfristen Ihres Acquirers (siehe AGBs), damit Sie als Händler sicherstellen, dass die Abbuchungen in der korrekten Frist an unserem 1cs OBS eingereicht werden.

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

KeyFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent) Bitte wenden Sie sich an den 1cs Support, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MTransaktionsID, die für jede Zahlung eindeutig sein muss. Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
RefNrns..30CEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen.
Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
ReqIDans..32OUm Doppelzahlungen zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion / Aktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion oder auch jede Aktion mit derselben ReqID erneut eingereicht wird, führt das 1cs OBS keine Zahlung / weitere Aktion aus sondern gibt nur den Status der ursprünglichen Transaktion / Aktion zurück. Bitte beachten Sie, dass das 1cs OBS für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom 1cs Online Bezahlsystem gelöscht.
FinishAutha1CNur bei ETM: Übergeben Sie den Wert <Y>, um bei Teilbuchungen die Autorisierungserneuerung oder die Reservierung des Restbetrages zu stoppen. Bitte nutzen Sie den Parameter nur, wenn Sie die Zusatzfunktion ETM (Erweitertes Transaktions-Managament) nutzen. (Nicht bei Clearhaus)
Textfeld1ans..30OKarteninhaber-Information: Name
Textfeld2ans..30OKarteninhaber-Information: Ort
CHDescans..22OCNur bei Clearhaus: Text, der auf der Kreditkartenabrechnung angezeigt wird. Nur ASCII druckbare Zeichen von 0x20 bis 0x7E
Parameter für Buchungen von Kreditkartenzahlungen

Die folgende Tabelle beschreibt die Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
KeyFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
Coden8MFehlercode gemäß  1cs Online Bezahlsystem Antwort Codes (Fehlercodes)
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description sondern Code für die Auswertung des Transaktionsstatus!
TransIDans..64MTransaktionsnummer des Händlers. Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
Statusa..50MOK oder FAILED
RefNrns..30CEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das 1cs OBS Settlement File (CTSF) auch nicht zusätzlich angereichert werden. (nicht bei EVO Payments, bei Card Complete im Format an..25, bei Omnipay im Format ns..15, bei RBI im Format ns..20) Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
AIDn6OCNur bei Card Complete: von Card Complete zurückgegebene Autorisierungs-ID
Amountn..10OCNur bei Clearhaus: Betrag in der kleinsten Währungseinheit (z.B. EUR Cent) Sollte der tatsächliche Betrag vom angefragten Betrag abweichen, wird dieser zurückgegeben. Nur bei MasaPay: Betrag muss gleich dem ursprünglich autorisierten Betrag sein.
CodeExtn5OCNur bei Clearhaus: Nur wenn konfiguriert: externer Fehlercode (nachgelagertes System). Nur bei MasaPay: Format ans..10, Fehlercode von MasaPay.
ErrorTextans..128OCNur bei Clearhaus: Detaillierte Clearhaus Fehlermeldung. Nur bei MasaPay: Format ans..128, Detaillierte MasaPay Fehlermeldung. Wird nur bei Status=FAILED zurückgegeben. Nutzung nur in Abstimmung mit  Helpdesk möglich.
TransactionIDans36OCNur bei Clearhaus: Transaktionsnummer von Clearhaus
GuWIDans..22ONur bei Wirecard: TransaktionsID des Acquirers
TIDn..15MNur bei Cofidis: Wenn RefNr übergeben wurde, wird dieser Wert zurückgegeben. Anderenfalls werden die ersten 15 Stellen der TransactionID zurückgegeben.
Ergebnis-Parameter für Buchungen von Kreditkartenzahlungen

4.1.2 Gutschrift mit Referenz

Gutschriften sind über eine Server-zu-Server-Kommunikation möglich. Das 1cs Online Bezahlsystem erlaubt einerseits Gutschriften, die sich auf eine vorher über das 1cs Online Bezahlsystem getätigte Buchung beziehen, andererseits können Sie Gutschriften ohne Bezugstransaktion ausführen. Dieses Kapitel beschreibt die Abwicklung von Gutschriften mit Bezugstransaktion. Wenn Sie sich bei einer Gutschrift auf eine Buchung beziehen, dann ist die Höhe der Gutschrift auf die Höhe der vorangegangen Buchung beschränkt.

Um eine Gutschrift (Credit) mit Referenztransaktion auszuführen, verwenden Sie bitte folgende URL:

https://www.computop-paygate.com/credit.aspx

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

KeyFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent) Bitte wenden Sie sich an den 1cs Support, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MTransaktionsID, die für jede Zahlung eindeutig sein muss. Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
RefNrns..30CEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen.   Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
OrderDescans..768OBeschreibung der gutgeschriebenen Artikel, Einzelpreise, Händlerkommentar etc.  (Nicht bei Clearhaus)
ReqIDans..32OUm Doppelzahlungen zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion / Aktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion oder auch jede Aktion mit derselben ReqID erneut eingereicht wird, führt das 1cs OBS keine Zahlung / weitere Aktion aus sondern gibt nur den Status der ursprünglichen Transaktion / Aktion zurück. Bitte beachten Sie, dass das 1cs OBS für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom 1cs Online Bezahlsystem gelöscht.
Textfeld1ans..30OKarteninhaber-Information: Name (Nicht bei Clearhaus)
Textfeld2ans..30OKarteninhaber-Information: Ort (Nicht bei Clearhaus)
CHDescans..22OCNur bei Clearhaus: Text, der auf der Kreditkartenabrechnung angezeigt wird. Nur ASCII druckbare Zeichen von 0x20 bis 0x7E
TIDans..30OCNur bei SafeCharge: TransaktionsID der gutzuschreibenden Buchung, falls der Händler eine bestimmte Buchung gutschreiben möchte. Wenn der Parameter nicht angegeben ist, wird die letzte Buchung gutgeschrieben.
   Zusätzliche Parameter bei Anbindung Wirecard (für Visa Direct)
RefundTypeenumCArt der Gutschrift. Mögliche Werte: “p2p”, “md”, “acc2acc”. “ccBill”, “fd”
ReceiverFirstNamean..12CVorname des Empfängers. Pflicht bei grenzüberschreitenden Transaktionen.
ReceiverLastNamean..12CNachname des Empfängers. Pflicht bei grenzüberschreitenden Transaktionen.
SenderAccountNumbern..12CKontonnummer des Senders. Mastercard: Pflicht. Visa: Pflicht, wenn die RefNr leer ist.
SenderFirstNamean..12CVorname des Senders. Mastercard: Pflicht. Visa: Pflicht für US-Inlandstransaktionen und grenzüberschreitende Zahlungen.
SenderLastNamean..1an..252CNachname des Senders. Mastercard: Pflicht. Visa: Optional.
SenderAddrStreetan..25CStraßenname des Senders. Mastercard: Optional. Visa: Pflicht für US-Inlandstransaktionen und grenzüberschreitende Zahlungen.
SenderAddrStreetNran..25CHaunsummer des Senders. Mastercard: Optional. Visa: Pflicht für US-Inlandstransaktionen und grenzüberschreitende Zahlungen.
SenderAddrCityan..32COrt des Senders. Mastercard: Optional. Visa: Pflicht für US-Inlandstransaktionen und grenzüberschreitende Zahlungen.
SenderAddStatea2CBundesland des Senders. Mastercard: Pflicht, wenn senderAddrCountry=US oder Canada. Visa: Pflicht für US-Inlandstransaktionen und grenzüberschreitende Zahlungen.
SenderAddCountrya2CLand des Senders. Mastercard: Optional. Visa: Pflicht, wenn das Land US ist, und bei grenzüberschreitende Zahlungen.
Parameter für Gutschrift von Kreditkartenzahlungen

Die folgende Tabelle beschreibt die Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
KeyFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
Coden8MFehlercode gemäß 1cs Online Bezahlsystem Antwort Codes (Fehlercodes)
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description sondern Code für die Auswertung des Transaktionsstatus!
TransIDans..64MTransaktionsnummer des Händlers. Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
Statusa..50MOK oder FAILED
AIDn6OCNur bei Card Complete: von Card Complete zurückgegebene Autorisierungs-ID
RefNran..25OC
Eindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das 1cs OBS Settlement File (CTSF) auch nicht zusätzlich angereichert werden. Nur bei Card Complete, bei Clearhaus (ans..30, nur ASCII druckbare Zeichen von 0x20 bis 0x7E), bei RBI (ns..20, optional), bei MasaPay (ns..30, optional), bei Cofidis (n..15, optional). Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
Amountn..10OCNur bei Clearhaus: Betrag in der kleinsten Währungseinheit (z.B. EUR Cent) Sollte der tatsächliche Betrag vom angefragten Betrag abweichen, wird dieser zurückgegeben. Nur bei MasaPay: Betrag muss gleich dem ursprünglich autorisierten Betrag sein.
CodeExtn5OCNur bei Clearhaus: Nur wenn konfiguriert: externer Fehlercode (nachgelagertes System). Nur bei MasaPay: Format ans..10, Fehlercode von MasaPay.
ErrorTextans..128OCNur bei Clearhaus: Detaillierte Clearhaus Fehlermeldung. Nur bei MasaPay: Format ans..128, Detaillierte MasaPay Fehlermeldung. Wird nur bei Status=FAILED zurückgegeben. Nutzung nur in Abstimmung mit  Helpdesk möglich.
TransactionIDans36OcNur bei Clearhaus: Transaktionsnummer von Clearhaus
Ergebnis-Parameter für Gutschrift von Kreditkartenzahlungen

4.1.3 Gutschrift ohne Referenz

Das 1cs Online Bezahlsystem kann für Sie Gutschriften ausführen, die sich nicht auf eine vorherige Buchung beziehen. In diesem Fall muss die Gutschrift als komplett neue Zahlungstransaktion an das 1cs Online Bezahlsystem übergeben werden. Um die beschriebene Zusatzfunktion nutzen zu können, nehmen Sie bitte mit dem First Cash Solution Support Kontakt auf.

Hinweis: Bitte beachten Sie, dass Gutschriften ohne Bezug auf eine vorherige Buchung bei Ihrem Acquirer höhere Kosten verursachen. Wenn Sie häufig keinen Bezug auf die Buchung nehmen können, sollten Sie dies mit Ihrem Acquirer abstimmen.

Um eine Gutschrift (Credit) ohne Referenztransaktion über eine Server-zu-Server-Verbindung auszuführen, verwenden Sie bitte folgende URL:

https://www.computop-paygate.com/creditex.aspx

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

KeyFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent) Bitte wenden Sie sich an den 1cs Support, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährungskürzel, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
TransIDans..64MTransaktionsID, die für jede Zahlung eindeutig sein muss Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
RefNrns..30CEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
OrderDescans..768OBeschreibung der gutgeschriebenen Artikel, Einzelpreise, Händlerkommentar etc. (Nicht bei Clearhaus)
ReqIDans..32OUm Doppelzahlungen zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion mit derselben ReqID erneut eingereicht wird, führt das 1cs Online Bezahlsystem keine Zahlung aus, sondern gibt nur den Status der ursprünglichen Transaktion zurück. Bitte beachten Sie, dass das 1cs OBS für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet.Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom 1cs Online Bezahlsystem gelöscht.
CCNrn..19MKreditkartennummer für Kreditkarten-Zahlungen. (mind. 12stellig numerisch ohne Leerzeichen) Es kann wahlweise übergeben werden:  entweder die richtige Kreditkartennummer (PAN) oder die Pseudokartennummer, welche Sie zuvor in einer 1cs OBS-Antwort als PCNr erhalten haben.  – Mit 3-D Secure 2.x wird die CCNr (PAN oder PCNr) im card-JSON gesendet.
– Wir empfehlen die Verwendung der “Hosted Payment Page” oder des Kreditkartenformular (PaySSL) sowie Übergabe der PCNr zur vereinfachten PCI DSS Zertifizierung.
CCCVCn..4O 
CCExpiryn6MAblaufdatum der Kreditkarte im Format YYYYMM, z.B. 202507
CCBranda..22MKreditkartenmarke. Bitte beachten Sie die Schreibweise gemäß Tabelle der Kreditkartenmarken!
OrderDescans..768MCNicht bei Clearhaus: Beschreibung der gutgeschriebenen Artikel, Einzelpreise, Händlerkommentar etc.
UserDataans..1024OCNur bei Clearhaus: Wenn beim Aufruf angegeben, übergibt das 1cs Online Bezahlsystem die Parameter mit dem Zahlungsergebnis an den Shop
Textfeld1ans..30ONicht bei Clearhaus: Karteninhaber-Information: Name
Textfeld2ans..30ONicht bei Clearhaus:Karteninhaber-Information: Ort
ChDescans..34OCNur bei Clearhaus, Format ans..22: Text, der auf der Kreditkartenabrechnung angezeigt wird. Nur ASCII druckbare Zeichen von 0x20 bis 0x7E Nur bei Credorax: Text, der auf der Kreditkartenabrechnung angezeigt wird. Diese Funktion muss von Credorax freigeschalten werden und folgenden Aufbau haben. 1) merchant DBA Name (bis zu 20 Zeichen) 2) Stern 3) zusätzlicher Text (bis zu 13 Zeichen). z.B. Computop *Test Dieser Wert kann alternativ vom  Helpdesk fest hinterlegt werden.
CreditCardHolderan..255MCNur bei Credorax, ECPCC: Name des Karteninhabers  
Emailans..64MCNur bei Credorax, ECPCC: E-Mail-Adresse des Kunden
IPAddrans..15OCNur bei Credorax, ECPCC: IP-Adresse des Kunden
PaymentOfWinningsans..4OCBeim Acquirer EMS (Omnipay) kann der Händler hiermit CFT-Gutschriften steuern.
Übergeben Sie PaymentOfWinnings=True, um einen Gewinn gutzuschreiben, anstatt nur einen eingezahlten Betrag zurückzuerstatten.
PaymentAddDataJSONCNur bei OmniPay: Zusätzliche Daten, wenn PaymentOfWinnings=True
TransactionIDan..150MZusätzliche Referenznummer
   Weitere Adressparameter bei der Anbindung ECPCC
DateofBirthn8OGeburtsdatum des Kunden im Format YYYYYMMDD
Phonen..32OTelefonnummer des Kunden
FirstNameans..255MVorname des Kunden
LastNameans..255MNachname des Kunden
AddrStreetans..255OStraßenname
AddressAdditionans..255OAdresszusatz
AddrZIPan..9OPostleitzahl
AddrCityans..255OOrt
AddrStatea2OCode des Bundeslandes des Kunden
AddrCountryCodea2MLändercode im Format ISO-3166-1, alphanumerisch 2-stellig
SdFirstNameans..255OVorname in der Lieferanschrift
SdLastNameans..255ONachname in der Lieferanschrift
SdStreetans..255OStraßenname der Lieferanschrift
SdAddressAdditionans..255OAdresszusatz der Lieferanschrift
SdZIPCodean..9OPostleitzahl der Lieferanschrift
SdCityans..255OOrt der Lieferanschrift
SdStatea2OCode des Bundeslandes der Lieferanschrift
SdCountryCodea2OLändercode der Lieferanschrift  im Format ISO-3166-1, alphanumerisch 2-stellig
   Weitere Adressparameter bei der Anbindung Kalixa
IPAddrans..15MIP-Adresse des Kunden
BrowserSessionIDans..63MSessionID des Kunden
CreditCardHolderans..100MName des Karteninhabers
CustomerIDan..20MKundennummer: Nummer zur Identifizierung des Kunden
Nameans..100CBenutzername des Kunden
FirstNameans..100CVorname des Kunden
LastNameans..100CNachname des Kunden
Emailans..64CE-Mail-Adresse des Kunden
Languagea2CSprache des Kunden gemäß ISO, alphanumerisch 2-stellig
SdFirstNameans..100CVorname in der Lieferanschrift
SdLastNameans..100CNachname in der Lieferanschrift
SdStreetans..200CStraßenname der Lieferanschrift
SdStreetNrans..5CHausnummer der Lieferanschrift
SdZIPCodean..20CPostleitzahl der Lieferanschrift
SdCityans..40COrt der Lieferanschrift
SdStatea2CCode des Bundeslandes der Lieferanschrift
SdCountryCodea2CLändercode der Lieferanschrift  im Format ISO-3166-1, alphanumerisch 2-stellig
   Weitere Adressparameter bei der Anbindung Vantiv
BdFirstNameans..25OVorname in der Rechnungsadresse
BdLastNameans..25ONachname in der Rechnungsadresse
BdStreetans..35OStraßenname in der Rechnungsadresse Bitte beachten Sie, dass bdStreet und bdStreetNr zusammen maximal 34 Zeichen haben dürfen. bdStreet und bdStreetNr werden mit einem Leerzeichen getrennt zusammengefügt und gemeinsam weitergeleitet. Der Gesamtinhalt wird nach 35 Zeichen abgeschnitten.
BdStreetNrans..35OHausnummer in der Rechnungsadresse Bitte beachten Sie, dass bdStreet und bdStreetNr zusammen maximal 34 Zeichen haben dürfen. bdStreet und bdStreetNr werden mit einem Leerzeichen getrennt zusammengefügt und gemeinsam weitergeleitet. Der Gesamtinhalt wird nach 35 Zeichen abgeschnitten.
BdStreet2ans..35OAdresszusatz in der Rechnungsadresse
BdZIPCodeans..20OPostleitzahl in der Rechnungsadresse
BdCityans..35OOrt in der Rechnungsadresse
BdStateans..30OStaat/Land in der Rechnungsadresse
BdCountryCodea2OLändercode der Rechnungsadresse im Format ISO-3166-1, alphanumerisch 2-stellig
BdMailans..100OE-Mail in der Rechnungsadresse
BdPhoneans..20OTelefonnummer in der Rechnungsanschrift
Parameter für Gutschrift von Kreditkartenzahlungen ohne Bezug

Die folgende Tabelle beschreibt die Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
KeyFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
Coden8MFehlercode gemäß  1cs Online Bezahlsystem Antwort Codes (Fehlercodes)
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description sondern Code für die Auswertung des Transaktionsstatus!
TransIDans..64MTransaktionsnummer des Händlers. Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
Statusa..50MOK oder FAILED
RefNrns..25OCNur bei Card Complete: Falls eine RefNr übermittelt wurde, wird sie wieder zurückgegeben. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
AIDn6OCNur bei Card Complete: von Card Complete zurückgegebene Autorisierungs-ID
Amountn..10OCNur bei Clearhaus: Betrag in der kleinsten Währungseinheit (z.B. EUR Cent) Sollte der tatsächliche Betrag vom angefragten Betrag abweichen, wird dieser zurückgegeben.
CodeExtn5OCNur bei Clearhaus: Nur wenn konfiguriert: externer Fehlercode (nachgelagertes System)
ErrorTextans..128OCNur bei Clearhaus: Detaillierte Clearhaus Fehlermeldung. Wird nur bei Status=FAILED zurückgegeben. Nutzung nur in Abstimmung mit dem  Helpdesk möglich.
UserDataans..1024OCNur bei Clearhaus: Wenn beim Aufruf angegeben, übergibt das 1cs OBS die Parameter mit dem Zahlungsergebnis an den Shop
TransactionIDans36OCNur bei Clearhaus: Transaktionsnummer von Clearhaus
PaymentSenderReferencean..19CNur bei Omnipay: Referenznummer des Acquirers, die zur Identifikation der Zahlungstransaktion verwendet wird. Sie kann für MasterCard Payment of winnings Transaktionen zurückgegeben werden, wenn die erforderlichen zusätzlichen Parameter übergeben worden sind.
Ergebnis-Parameter für Gutschrift von Kreditkartenzahlungen ohne Bezug

4.1.4 Storno

Eine Kreditkartenautorisierung senkt das Kartenlimit des Kunden. Um das Limit wieder freizugeben, kann das 1cs Online Bezahlsystem eine Autorisierung stornieren. Verwenden Sie dazu die folgende URL:

https://www.computop-paygate.com/reverse.aspx

Hinweis: Die Reverse.aspx macht nicht nur Autorisierungen, sondern IMMER DEN LETZTEN TRANSAKTIONSSCHRITT rückgängig! Falls die letzte Transaktion eine Buchung war, löst die Rever-se.aspx z.B. eine Gutschrift aus. Es ist daher größte Vorsicht geboten, und die Nutzung erfolgt auf eigene Gefahr. Wir empfehlen, vor Nutzung der Reverse.aspx den Transaktionsstatus mit der Inquire.aspx prüfen.

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

KeyFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent) Bitte wenden Sie sich an den 1cs Support, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP Hier eine Übersicht: Währungstabelle
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
PayIDan32MID des 1cs Online Bezahlsystem zur Identifizierung einer Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MTransaktionsID, die für jede Zahlung eindeutig sein muss. Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
RefNrans..30OCEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das 1cs OBS Settlement File (CTSF) auch nicht zusätzlich angereichert werden. Nur bei Clearhaus (nur ASCII druckbare Zeichen von 0x20 bis 0x7E), bei MasaPay.Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
ReqIDans..32OUm Doppelzahlungen zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion / Aktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion oder auch jede Aktion mit derselben ReqID erneut eingereicht wird, führt das 1cs OBS keine Zahlung / weitere Aktion aus sondern gibt nur den Status der ursprünglichen Transaktion / Aktion zurück. Bitte beachten Sie, dass das 1cs OBS für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom 1cs Online Bezahlsystem gelöscht.
Parameter für Storno von Kreditkartenzahlungen

Die folgende Tabelle beschreibt die Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
KeyFormatCNDBeschreibung
MIDans..30MCHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
Coden8MFehlercodes gemäß 1cs Online Bezahlsystem Antwort-Codes (Fehlercodes)
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description, sondern Code für die Auswertung des Transaktionsstatus!
TransIDans..64MTransaktionsnummer des Händlers. Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
Statusa..50MOK oder FAILED
RefNran..25OCEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
AIDn6OCNur bei Card Complete: von Card Complete zurückgegebene Autorisierungs-ID
CodeExtn5OCNur bei Clearhaus: Nur wenn konfiguriert: externer Fehlercode (nachgelagertes System) Nur bei MasaPay: Format ans..10, Fehlercode von MasaPay
ErrorTextans.128OCNur bei Clearhaus: Detaillierte Clearhaus Fehlermeldung. Nur bei MasaPay: Format ans..128, Detaillierte MasaPay Fehlermeldung. Wird nur bei Status=FAILED zurückgegeben. Nutzung nur in Abstimmung mit dem  Helpdesk möglich.
TransactionIDans36OCNur bei Clearhaus: Transaktionsnummer von Clearhaus
Ergebnis-Parameter für Storno von Kreditkartenzahlungen

4.1.5 Storno einer Autorisierungsverlängerung

Eine Kreditkartenautorisierung ist nur 7 bis 30 Tage gültig. Um Ihren Zahlungsanspruch bei längeren Lieferzeiten zu erhalten, erlaubt das 1cs Online Bezahlsystem die automatische Wiederholung der Autorisierung. Auch bei Ratenzahlung oder Teillieferungen ist die Wiederholung der Autorisierung wichtig, weil bei Teilbuchungen der Restbetrag ungültig wird.

Wenn Sie die Autorisierungsverlängerung nutzen, verlängert das 1cs Online Bezahlsystem Ihre Autorisierungen, bis die Zahlung komplett gebucht wurde. Unterdessen bleibt das Kartenlimit des Kunden um den autorisierten Betrag reduziert. Um das Kartenlimit freizugeben, zum Beispiel weil der Auftrag nicht vollständig lieferbar ist, müssen Sie die Autorisierungsverlängerung explizit mit folgender URL stoppen:

https://www.computop-paygate.com/cancelAuth.aspx

Hinweis: Mit CancelAuth wird nur die Wiederholung der Autorisierung beendet. Wenn Sie das Kartenlimit des Kunden freigeben wollen, nutzen Sie bitte ein Storno der Autorisierung (siehe oben).

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

ParameterFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MID des Händlers zur Identifizierung des zu stornierenden Zahlungsvorgangs
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
Parameter zur Stornierung einer Autorisierungsverlängerung

Die folgende Tabelle beschreibt die Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
KeyFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MTransaktionsnummer des Händlers
Statusa..50MOK (URLSuccess) oder FAILED (URLFailure)
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description sondern Code für die Auswertung des Transaktionsstatus!
Coden8MFehlercode gemäß 1cs Online Bezahlsystem Antwort Codes (Fehlercodes)
Ergebnis-Parameter bei Stornierung einer Autorisierungsverlängerung

4.1.6 Kreditkartenzahlung über stationäre Terminals

Um eine Kreditkartenzahlung über ein stationäres Terminal (POS: Point of Sale) auszuführen, rufen Sie folgende URL auf:

https://www.computop-paygate.com/stationary.aspx

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

KeyFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent) Bitte wenden Sie sich an den 1cs Support, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährung, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
TransIDans..64MIhre eigene TransaktionsID, die für jede Zahlung eindeutig sein muss
RefNrns..30OEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das 1cs OBS Settlement File (CTSF) auch nicht zusätzlich angereichert werden. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …). Das Format muss vorher mit der First Cash Solution abgestimmt werden!
CCNrn..16MKreditkartennummer mind. 12stellig numerisch ohne Leerzeichen
CCCVCn..4OKartenprüfnummer: Die letzten 3 Ziffern auf dem Unterschriftsfeld der Kreditkarte. Bei American Express 4 Ziffern.
CCExpiryn6MAblaufdatum der Kreditkarte im Format YYYYMM, z.B. 201707
CCBranda..22MKreditkartenmarke. Bitte beachten Sie die Schreibweise gemäß Tabelle der Kreditkartenmarken!
Track2ans..80MHexadezimale Daten auf Spur 2 der Kreditkarte
Track3ans..80MHexadezimale Daten auf Spur 3 der Kreditkarte
OrderDescans..768MBeschreibung der gekauften Waren, Einzelpreise etc.
Captureans..6OMBestimmt Art und Zeitpunkt der Buchung (engl. Capture). AUTO: Buchung sofort nach Autorisierung (Standardwert). MANUAL: Buchung erfolgt durch den Händler. <Zahl>: Verzögerung in Stunden bis zur Buchung (ganze Zahl; 1 bis 696).
ReqIDans..32OUm Doppelzahlungen zu vermeiden, übergeben Sie einen alphanumerischen Wert, der Ihre Transaktion / Aktion identifiziert und nur einmal vergeben werden darf. Falls die Transaktion oder auch jede Aktion mit derselben ReqID erneut eingereicht wird, führt das 1cs OBS keine Zahlung / weitere Aktion aus sondern gibt nur den Status der ursprünglichen Transaktion / Aktion zurück. Bitte beachten Sie, dass das 1cs OBS für die erste initiale Aktion einen abgeschlossenen Transaktionsstatus haben muss. Einreichungen mit identischer ReqID auf einen offenen Status werden regulär verarbeitet. Bitte beachten Sie, dass eine ReqID nur 12 Monate gültig ist, danach wird sie vom 1cs Online Bezahlsystem gelöscht.
Parameter für Kreditkartenzahlungen über stationäre Terminals

Die folgende Tabelle beschreibt die Ergebnis-Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
KeyFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
Coden8MFehlercode gemäß 1cs Online Bezahlsystem Antwort Codes (Fehlercodes)
Descriptionans..1024MNähere Beschreibung bei Ablehnung der Zahlung. Bitte nutzen Sie nicht den Parameter Description sondern Code für die Auswertung des Transaktionsstatus!
TransIDans..64MTransaktionsnummer des Händlers
TIDn..20MIn der Regel neunstellige Terminalnummer
AuthCodeans..6MAutorisierungscode des Acquirers
Statusa..50MAUTHORIZED oder FAILED. Nur bei Sale-Transaktionen lautet der Status OK.
Ergebnis-Parameter für Kreditkartenzahlungen über stationäre Terminals

4.1.7 Storno von stationären Kreditkartenzahlungen

Um die Buchung einer Kreditkartenzahlung über ein stationäres Terminal zu stornieren, verwenden Sie bitte folgende URL:

https://www.computop-paygate.com/stationary_rev.aspx

Hinweis: Aus Sicherheitsgründen lehnt das 1cs Online Bezahlsystem alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter:

KeyFormatCNDBeschreibung
MerchantIDans..30MHändlerID, die von der First Cash Solution vergeben wird. Dieser Parameter ist zusätzlich auch unverschlüsselt zu übergeben.
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
XIDan32MVom 1cs Online Bezahlsystem vergebene ID für alle einzelnen Transaktionen (Autorisierung, Buchung, Gutschrift), die für eine Zahlung durchgeführt werden
TransIDans..64MID des Händlers zur Identifizierung des zu stornierenden Zahlungsvorgangs
MACan64MHash Message Authentication Code (HMAC) mit SHA-256-Algorithmus. Details finden Sie hier: HMAC-Authentisierung (Anfrage) HMAC-Authentisierung (Notify)
Parameter zur Stornierung von Kreditkartenzahlungen über stationäre Terminals

Die folgende Tabelle beschreibt die Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
ParameterFormatCNDBeschreibung
MIDans..30MHändlerID, die von der First Cash Solution vergeben wird
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MTransaktionsnummer des Händlers
Statusa..50MOK (URLSuccess) oder FAILED (URLFailure)
Coden8MFehlercode gemäß 1cs Online Bezahlsystem Antwort Codes (Fehlercodes)
Ergebnis-Parameter bei Stornierung von Kreditkartenzahlungen über stationäre Terminals

5 PayNow

5.1 Silent Mode für Kreditkarten mit SSL und 3D-Secure-Verfahren

PayNow verbindet die Vorteile von 1cs Online Bezahlsystem-Formularen und Server-zu-Server-Verbindungen: Im Unterschied zum 1cs Online Bezahlsystem-Formular, wo durch den Aufruf von payssl.aspx das Formular vom 1cs Online Bezahlsystem-Server geladen wird, muss bei PayNow das Formular vom Händlersystem bereitgestellt werden. Das Formular verwendet dieselben Parameter, wie hier nachfolgend beschrieben.

Im Unterschied zum 1cs Online Bezahlsystem-Formular werden die Parameter nicht wie beim Aufruf der payssl.aspx als URL-Parameter übergeben, sondern als Formular-Eingabeparameter. Im Übrigen können beim Aufruf der PayNow.aspx die gleichen Parameter wie bei der PaySSL.aspx verwendet werden.

Hinweis: Bitte beachten Sie, dass der Aufruf der URLSuccess oder URLFailure bei einem Fallback zu 3-D Secure 1.0 mit GET stattfindet. Ihre Systeme sollten daher Parameter sowohl per GET als auch per POST entgegennehmen können.

1cs Online Bezahlsystem-FormularPayNow
payssl.aspx?MerchantID=[mid]&Len=[len]&Data=[data]<form action=paynow.aspx> <input type=”hidden” name=”MerchantID” value=[mid]> <input type=”hidden” name=”Len”        value=[len]> <input type=”hidden” name=”Data”       value=[data]> : </form>
Die Kreditkartendaten müssen mit folgenden Parametern an paynow.aspx übermittelt werden:
KeyFormatCNDBeschreibung
CCNrn..16MKreditkartennummer für Kreditkarten-Zahlungen: mindestens 12stellig ohne Leerzeichen Es kann wahlweise übergeben werden:  entweder die richtige Kreditkartennummer (PAN) oder die Pseudokartennummer, welche Sie zuvor in einer 1cs OBS-Antwort als PCNr erhalten haben.  Hinweise: – Mit 3-D Secure 2.x wird die CCNr (PAN oder PCNr) im card-JSON gesendet.
– Wir empfehlen die Verwendung der “Hosted Payment Page” oder des Kreditkartenformular (PaySSL) sowie Übergabe der PCNr zur vereinfachten PCI DSS Zertifizierung.
CCCVCn3OKartenprüfnummer: Die letzten 3 Ziffern auf dem Unterschriftsfeld der Kreditkarte
CCExpiryn6MAblaufdatum der Kreditkarte im Format YYYYMM, z.B. 201807
CCBranda..22MKreditkartenmarke. Bitte beachten Sie die Schreibweise gemäß Tabelle der Kreditkartenmarken!
PayNow-Parameter für 3-D Secure-Verfahren

Nachdem der Kunde seine Kreditkartendaten eingegeben hat, werden die Zahlungsdaten an die PayNow-Seite übertragen, wo die weitere Zahlungsabwicklung inkl. 3D-Secure stattfindet. Die Formulardaten müssen direkt an die PayNow-Seite übertragen werden und dürfen nicht an das Händlersystem übermittelt werden! Auch dürfen keine PCI-relevanten Daten als zusätzliche Eingabeparameter an die PayNow-Seite übermittelt werden!

6 Batch-Nutzung der Schnittstelle

Grundsätzliche Informationen zur Arbeit mit Batch-Dateien sowie zu deren Aufbau erfahren Sie im separaten Handbuch zum Batchmanager. Im Batch-Verfahren sind nicht alle Funktionen verfügbar, die für die Online-Schnittstelle verfügbar sind.

6.1 Batch-Aufrufe und Antworten  

Dieses Kapitel beschreibt die Parameter, die Sie im Datensatz (Record) für die Ausführung einer Kreditkartenzahlung übergeben müssen und welche Informationen Sie der Antwort-Datei über den Status des Zahlungsvorgangs entnehmen können.

Hinweis: im Batch-Verfahren sind nicht alle Funktionen der Online-Schnittstelle verfügbar.

Bei den Batch-Aufrufen ist die verwendete Batch-Version zu unterscheiden, wovon die optionalen Parameter abhängen. Alle mit „2.“ beginnen Versionsbezeichnungen betreffen Aufrufe für einen Konzern. Das bedeutet, innerhalb einer Batch-Datei mit einer bestimmten MerchantID können auch Transaktionen anderer Händler mit einer abweichenden Sub-MID übertragen werden.

Für die Anbindungen ECPCC, GMO, Kalixa und SafeCharge beschränken sich die möglichen Actions auf Capture, Credit und Reverse.

Folgende Tabelle gibt eine Übersicht der pro Aktion jeweils möglichen Batch-Versionen und ihrer Besonderheiten:

AktionVersionBeschreibung
Authorize1.2 / 2.2mit textfeld1, textfeld2, RTF, cardholder, transactionID, schemeReferenceID
1.21 / 2.21mit textfeld1, textfeld2, RTF, approvalcode, cardholder, transactionID, schemeReferenceID
1.3 / 2.3mit CVC, transactionID, schemeReferenceID
1.5 / 2.5mit CVC, Zone
Capture1.2 / 2.2mit textfeld1, textfeld2
1.21 / 2.21mit textfeld1, textfeld2, approvalcode
1.4 / 2.4mit Stopp der Autorisierungsverlängerung (FinishAuth)
CaptureEx1.3 / 2.3mit CVC
Credit1.2 / 2.2mit textfeld1, textfeld2
1.21 / 2.21mit textfeld1, textfeld2
1.4 / 2.4mit Stopp der Autorisierungsverlängerung (FinishAuth)
CreditEx1.2 / 2.2mit textfeld1, textfeld2
1.21 / 2.21mit textfeld1, textfeld2
1.3 / 2.3mit textfeld1, textfeld2
Sale1.2 / 2.2mit textfeld1, textfeld2, RTF, cardholder, transactionID, schemeReferenceID
1.21 / 2.21mit textfeld1, textfeld2, RTF, approvalcode, cardholder, transactionID, schemeReferenceID
1.3 / 2.3mit CVC, textfeld1, textfeld2, transactionID, schemeReferenceID
1.5 / 2.5mit CVC, Zone
Reverse1.x / 2.xStandardversion
Beschreibung der möglichen Batch-Versionen

Der Aufbau für eine Kreditkartenzahlung in einer einzureichenden Batch-Datei sieht folgendermaßen aus:

HEAD,<MerchantID>,<Date>,<Version>

CC,Authorize,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>, [<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<Zone>]

CC,Capture,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,[<FinishAuth,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>]

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>, [<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<Zone>] CC,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>[,<FinishAuth>,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>] CC,CreditEx,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>, [<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>] CC,Reverse,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID> FOOT,<CountRecords>,<SumAmount>

Beispiel für Batch-Versionen:

Version 1.2:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<RTF>,<cardholder>,<transactionID>,<schemeReferenceID>

Version 1.21:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<transactionID>,<schemeReferenceID>

Version 1.3:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCCVC>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<transactionID>,<schemeReferenceID>

Version 1.5:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<Zone>

Beispiel für Master MID Funktion:

HEAD,[Master]MerchantID,Date,2.x

Type,Action,[Slave]MID,Amount,Currency,TransID,Data (depends on Action)

FOOT,CountRecords,SumAmount

Die folgende Tabelle beschreibt die einzelnen Felder und Werte, die im Datensatz (Record) innerhalb der Batch-Datei verwendet werden:

KeyFormatCNDBeschreibung
Typea..11MHEAD für Header, FOOT für Footer, CC für Kreditkarte
Actiona..20MDer Action-Parameter definiert die Art der Transaktion: Authorize (Autorisierung) Capture (Buchung) Sale (Verkauf) Credit (Gutschrift) CreditEx (Gutschrift ohne vorherige Buchung; bitte stimmen sie sich hierzu vorher mit dem First Cash Solution Support ab) Reverse (Storno)
Amountn..10MBetrag in der kleinsten Währungseinheit (z.B. EUR Cent) Bitte wenden Sie sich an den 1cs Support, wenn Sie Beträge < 100 (kleinste Währungseinheit) buchen möchten.
Currencya3MWährungskürzel, drei Zeichen DIN / ISO 4217, z.B. EUR, USD, GBP. Hier eine Übersicht: Währungstabelle
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
TransIDans..64MTransaktionsID, die für jede Zahlung eindeutig sein muss. Bitte beachten Sie bei einigen Anbindungen die abweichenden Formate, die bei den spezifischen Parametern angegeben sind.
RefNrns..30OEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, Zusätzlich kann das 1cs OBS auch nicht zuästzliche angereichert werden.
Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
OrderDescans..127OBeschreibung der gekauften Waren, Einzelpreise etc.
CCBranda..22CKreditkartenmarke. Bitte beachten Sie die Schreibweise gemäß Tabelle der Kreditkartenmarken!
CCNrn..16CKreditkartennummer mind. 12stellig numerisch ohne Leerzeichen. Optional können Sie auch eine Pseudokartennummer (PKN) übergeben
PCNrn..16OPseudo Card Number: Vom 1cs OBS generierte Zufallszahl, die eine reale Kreditkartennummer repräsentiert. Die Pseudokartennummer (PKN) beginnt mit 0, und die letzten 3 Stellen entsprechen denen der realen Kartennummer. Die PKN können Sie wie eine reale Kartennummer für Autorisierung, Buchung und Gutschriften verwenden. PCNr ist ein Antwortwert vom 1cs OBS und kann ebenfalls als CCNr im Request oder als Teil von card-JSON verwendet werden.
CCCVCn..4OKartenprüfnummer in Version 1.3: Bei Visa und MasterCard die letzten 3 Ziffern auf dem Unterschriftsfeld der Kreditkarte. Bei American Express 4 Ziffern.
CCExpiryn6OCAblaufdatum der Kreditkarte im Format YYYYMM, z.B. 201707
FinishAuthans1OVersion=1.4: Wenn Sie die Autorisierungsverlängerung nutzen, stoppen Sie die Wiederholung mit dem Wert Y im Feld FinishAuth bei Capture oder Credit. Beispiel: Sie buchen eine Teillieferung. Der Rest der Bestellung ist nicht lieferbar. Daher übergeben Sie beim Capture der Teilbuchung im Feld FinishAuth Y, damit das 1cs Online Bezahlsystem den Restbetrag nicht wieder au-torisiert. Beachten Sie dazu auch den folgenden Abschnitt zum Stopp von Autorisierungsverlängerungen.
Beschreibung der Felder im Datensatz von Batch-Dateien

Der Record-Bereich in der Antwort-Datei zu Batch-Transaktionen sieht folgendermaßen aus:

HEAD,<MerchantID>,<Date>,<Version>

CC,Authorize,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,<CCBrand>,<CCNr|PCNr>,[<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<Zone>,<transactionID>,<schemeReferenceID>],<Status>,<Code>

CC,Capture,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>[<textfeld1>,<textfeld2>,<approvalcode>],<Status>,<Code>

CC,AuthSplit,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,FAILED,<Code>,<Description>,[<PCNr>]

CC,Renewal,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,FAILED,<Code>,<Description>,[<PCNr>]

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,<CCBrand>,<CCNr|PCNr>,[<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<Zone>,<transactionID>,<schemeReferenceID>],<Status>,<Code>

CC,Credit,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>[,<FinishAuth>,<textfeld1>,<textfeld2>],<Status>,<Code>

CC,CreditEx,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,[<CCCVC>,]<CCExpiry>,<OrderDesc>[,<textfeld1>,<textfeld2>],<Status>,<Code>

CC,Reverse,<Amount>,<Currency>,<TransID>,(<RefNr>),<PayID>,<Status>,<Code>

FOOT,<CountRecords>,<SumAmount>

Beispiel für Batch-Versionen:

Version 1.2:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<Status>,<Code>

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<RTF>,<cardholder>,<transactionID>,<schemeReferenceID>,<Status>,<Code>

Version 1.21:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<RTF>,<approvalcode>,<cardholder>,<transactionID>,<schemeReferenceID>,<Status>,<Code>

Version 1.3:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCCVC>,<CCExpiry>,<OrderDesc>,<textfeld1>,<textfeld2>,<transactionID>,<schemeReferenceID>,<Status>,<Code>

Version 1.5:

CC,Sale,<Amount>,<Currency>,<TransID>,(<RefNr>),<CCBrand>,<CCNr|PCNr>,<CCExpiry>,<OrderDesc>,<Zone>,<Status>,<Code>

Die folgende Tabelle beschreibt die Antwort-Parameter, die der Batch-Manager im Record-Bereich zu jeder Transaktion speichert (hier nicht erklärte Standardparameter wie etwa <TransID> oder <RefNR> und Aufrufparameter, werden unverändert zum Aufruf wieder zurückgegeben und sind vorstehend beschrieben):

ParameterFormatCNDBeschreibung
Actiona..20MDer Action-Parameter definiert die Art der Transaktion wie Capture (Buchung) oder Credit (Gutschrift) – siehe oben.
PayIDan32MVom 1cs Online Bezahlsystem vergebene ID für die Zahlung; z.B. zur Referenzierung in Batch-Dateien sowie im Capture- oder Credit-Request.
Statusa..50MOK oder FAILED
Coden8MFehlercode gemäß 1cs Online Bezahlsystem Antwort-Codes (Fehlercodes)
PCNrn..16OPseudo Card Number: Vom 1cs Online Bezahlsystem generierte Zufallszahl, die eine reale Kreditkartennummer repräsentiert. Die Pseudokartennummer (PKN) beginnt mit 0, und die letzten 3 Stellen entsprechen denen der realen Kartennummer. Die PKN kann wie eine Kreditkartennummer für Autorisierung, Buchung und Gutschriften verwendet werden. PCNr ist ein Antwortwert vom 1cs Online Bezahlsystem und kann ebenfalls als CCNr im Request oder als Teil von card-JSON verwendet werden.
Beschreibung der Ergebnis-Parameter im Datensatz von Batch-Dateien

6.2 Stopp von Autorisierungsverlängerungen

Mit einer Kreditkartenautorisierung erwerben Sie einen Zahlungsanspruch. Allerdings verfällt eine Autorisierung nach spätestens 30 Tagen oder auch, wenn Sie einen Teilbetrag buchen, zum Beispiel weil mehrere Teillieferungen nötig sind. Um Ihren Zahlungsanspruch in solchen Fällen wiederherzustellen, kann das 1cs Online Bezahlsystem eine verfallene Autorisierung automatisch wiederholen.

Falls eine Bestellung nicht lieferbar ist oder vom Kunden storniert wurde, ist es sehr wichtig, dass Sie die automatischen Autorisierungen stoppen. Andernfalls wird das Kartenlimit Ihres Kunden dauerhaft reduziert, weil das 1cs Online Bezahlsystem die Karte Ihres Kunden immer wieder neu belastet.

Im Normalfall stoppt das 1cs Online Bezahlsystem die Autorisierungsverlängerung, wenn der autorisierte Betrag komplett gebucht wurde. Sie können die Autorisierungsverlängerung in der Batch-Version 1.4 aber auch manuell stoppen, indem Sie den Zahlungsstatus ändern. Zu diesem Zweck reichen Sie in Ihrer Batch-Datei eine Buchung ein, deren Betrag unter dem zulässigen Limit liegt. Da das 1cs Online Bezahlsystem Kreditkartenbuchungen unter 1,00 Euro ablehnt, ändert sich der Zahlungsstatus bei geringeren Beträgen auf FAILED. Das 1cs Online Bezahlsystem wird diese Autorisierung deshalb nicht weiter verlängern. Ein entsprechender Capture-Eintrag mit 0,05 EUR sieht beispielsweise so aus:

CC,Capture,5,EUR,BestNr.0815,Rg.Nr.5180,a86dga4310d24453acd6f8a3112a769,y

Da der Betrag von 5 Cent unter dem Mindestbetrag von 1,00 Euro liegt, lehnt das 1cs Online Bezahlsystem die Buchung mit der Fehlermeldung MinValue ab. Die Zahlung erhält dann den Status FAILED, so dass die Autorisierungsverlängerung gestoppt wird.

6.3 PaymentAddData

Hinweis: Dieses Objekt wird nur bei Omnipay unterstützt.

6.3.1 Datenelemente

ParameterFormatCNDBeschreibung
SenderDataobjectCEnthält Informationen über den Sender der Zahlung
RecipientDataocjectCEnthält Informationen für den Empfänger der Zahlung

6.3.2 SenderData

 ParameterFormatCNDBeschreibung
1SenderAccNuman..34CEnthält die Kontonummer des Senders, von dem die Gelder genommen werden sollen. Das muss konsistent sein mit “srcOfFunds” und “senderAccType”, d.h. IBAN, RTN + Bankkonteo oder Bankkonto + BIC. (Hinweis: die Daten müssen durch ‘+’ getrennt sein und in der angegebenen Reihenfolge stehen)
2SenderNamean..30CEnthält den Namen der Person oder Firma für das Konto, von dem die Gelder genommen werden sollen
3AenderAddran..35CEnthält die Adresse der Person oder Firma für das Konto, von dem die Gelder genommen werden sollen
4SenderCityan..25CEnthält den Ort der Person oder Firma für das Konto, von dem die Gelder genommen werden sollen
5SenderCountryan..3CEnthält das Land der Person oder Firma für das Konto, von dem die Gelder genommen werden sollen. Der Ländercode ist 3-stellig gemäß ISO-Standard anzugeben.
6SrcOffFundsenumCGibt die vom Sender verwendete Methode zur Zahlung einer Payment of winning Transaktion an. 01= credit 02= debit 03= prepaid 04= Cash 05= Deposit account 07 = Mobile Money account
7SenderAccTypeenumCDas beschreibt den gesendeten Wert in “SenderAccNum” 01 – RTN + Bankkontonummer 02 – IBAN 03 – Kartenkonto 06 – Bankkontonummer + Bank identification code
25

6.3.3 RecipientData

 ParameterFormatCNDBeschreibung
1RecipientNamean..30CEnthält den Namen des Empfängers einer Payment of winnings Transaktion. Besonders bei grenzüberschreitenden Gaming-Zahlungen erforderlich.

6.3.4 Schema

BASEURL= https://www.computop-paygate.com/schemas

{

  “$schema”: “http://json-schema.org/draft-07/schema#“,

  “$id”: “BASEURL/paymentAddData.json”,

  “title”: “paymentAddData”,

  “description”: “Data related to Payment Transactions i.e MasterCard Payment of Winnings or VISA Direct/OCT”,

  “type”: “object”,

  “properties”: {

    “senderData”: {

      “type”: “object”,

      “properties”: {

        “senderAccNum”: {

          “type”: “string”,

          “description”: “It contains the sender’s bank account number from which the funds are to be taken. Note that this has to be consistent with (srcOfFunds) and (senderAccType) “

        },

        “senderName”: {

          “type”: “string”,

          “description”: “It contains the name of the person or business for the account from which funds are to be taken “

        },

        “senderAddr”: {

          “type”: “string”,

          “description”: “It contains the address of the person or business for the account from which funds are to be taken “

        },

        “senderCity”: {

          “type”: “string”,

          “description”: “It contains the city of the person or business for the account from which funds are to be taken “

        },

        “senderCountry”: {

          “type”: “string”,

          “description”: “It contains the country of the person or business’s account from which funds are to be taken. To be sent in number 3 Digit ISO standard “

        },

        “srcOfFunds”: {

          “type”: “string”,

          “enum”: [

            “01”,

            “02”,

            “03”,

            “04”,

            “05”,

            “07”

          ],

          “description”: “It indicates the method used by the sender to fund a Payment:  01-credit, 02-debit, 03-prepaid, 04-cash, 05-Deposit account, 07-mobile Money account”

        },

        “senderAccType”: {

          “type”: “string”,

          “enum”: [

            “01”,

            “02”,

            “03”,

            “06”

          ],

          “description”: “This is the descriptor of the value sent in (senderAccNum): 01-RTN + Bank Account number, 02-Iban, 03-Card account, 06-Bank account number + Bank identification code”

        }

      },

      “additionalProperties”: false

    },

    “recipientData”: {

      “type”: “object”,

      “properties”: {

        “recipientName”: {

          “type”: “string”,

          “description”: “It contains the name of the recipient or the Payment of winnings transaction.Required especially in cross-border gaming payments “

        }

      },

      “additionalProperties”: false

    }

  },

  “additionalProperties”: false

}

6.3.5 Sample

Sample for JSON-structure

{

    “senderData”: {

       “senderAccNum”:”12345678ABC”,

       “senderName”:”John Doe”,

       “senderAddr”:”Altenburg 83″,

       “senderCity”:”Bamberg”,

       “senderCountry”:”276″ ,

       “srcOfFunds”:”05″ ,

       “senderAccType”:”06″

    },

    “recipientData”: {

        “recipientName”: “Marie Doe”

    }

}

Sample base64-encoded value for API-parameter

PaymentAddData=ewogICAgInNlbmRlckRhdGEiOiB7CiAgICAgICAic2VuZGVyQWNjTnVtIjoiMTIzNDU2NzhBQkMiLAogICAgICAgInNlbmRlck5hbWUiOiJKb2huIERvZSIsCiAgICAgICAic2VuZGVyQWRkciI6IkFsdGVuYnVyZyA4MyIsCiAgICAgICAic2VuZGVyQ2l0eSI6IkJhbWJlcmciLAogICAgICAgInNlbmRlckNvdW50cnkiOiIyNzYiICwKICAgICAgICJzcmNPZkZ1bmRzIjoiMDUiICwKICAgICAgICJzZW5kZXJBY2NUeXBlIjoiMDYiCiAgICB9LAogICAgInJlY2lwaWVudERhdGEiOiB7CiAgICAgICAgInJlY2lwaWVudE5hbWUiOiAiTWFyaWUgRG9lIgogICAgfQp9

7 CAPN: American Express

7.1 Einleitung

7.1.1 Acquirer und Verbindung

Das 1cs Online Bezahlsystem unterstützt viele verschiedene Kreditkartenverbindungen zu verschiedenen Acquirern / Prozessoren mit unterschiedlichen Protokollen.

Hier finden Sie eine Übersicht aller unterschiedlichen Kreditkartenschnittstellen: Zahlungen per Kreditkarte.

Zusätzliche Funktionen (z.B. AVS (Address Verification Service), Rückerstattung, 3D Secure, …) können von der spezifischen Integration und vom Acquirer abhängen.

7.1.2 Integration mit 1cs OBS

Allgemein bieten wir zwei verschiedene Möglichkeiten der Integration an:

 Zahlungsseite (payssl.aspx)Direkte Integration (direct.aspx)
Handhabung von Kreditkartennummern (PAN)Wird direkt über die Zahlungsseite abgewickelt. Kreditkartennummer, Ablaufdatum, CVV, … werden im Zahlungsformular abgefragt Sie kommen nicht mit dern PAN in Kontakt, was die Compliance zu PCI DSS deutlich vereinfacht. Sie erhalten optional eine PseudoCardNumber (PcNr) als 1cs OBS internen Token zur Repräsentation der PAN.  Ihr System verarbeitet PAN direkt, sodass Sie “volle Kontrolle” haben. Da Ihr System mit der Kreditkartennummer (PAN) in Kontakt kommt, unterliegt ihr System vollständig dem PCI-DSS-Fokus.  
Handhabung von 3-D SecureSie müssen nur KVP “MsgVer=2.0” hinzufügen, um anzuzeigen, dass Ihr System für 3-D Secure 2.x bereit ist Der Rest (Weiterleitung an die Bank des Ausstellers zur Authentifizierung des Verbrauchers) wird von der 1cs OBS Zahlungsseite abgewickelt.Sie müssen nur KVP “MsgVer=2.0” hinzufügen, um anzuzeigen, dass Ihr System für 3-D Secure 2.x bereit ist Der Rest (Weiterleitung an die Bank des Ausstellers zur Authentifizierung des Verbrauchers) wird von der 1cs OBS Zahlungsseite abgewickelt.
Zusätzliche Daten    Zusätzliche Daten können über zusätzliche JSON-Parameter übermittelt werden, z.B.:
“credentialOnFile” (für wiederkehrende Zahlungen) Adressdaten (für AVS) 3-D Secure Richtliniendaten
 
Shop-/System-Integration

Die Zahlungsseite kann durch selbst erstellte Vorlagen an Ihre Firmenidentität angepasst werden (Logos, Farben, Positionen, …). Der Verbraucher wird auf die Zahlungsseite weitergeleitet, um Kreditkartendaten (PAN, Ablaufdatum, CVV, …) einzugeben. Ihr Shop wird über das 1cs OBS Notify über das Ergebnis der Zahlung im Prozess informiert.Ihr System hat volle Kontrolle über die Eingabefelder für Kreditkartendaten Der Verbraucher wird nicht umgeleitet und Ihr System erhält das Ergebnis des API-Aufrufs über direkte Antwortwerte  
Weitere Aktionen    Nach dem Auslösen des Zahlungsvorgangs können Sie weitere Aktionen wie Buchung, Gutschrift/Rückerstattung, Stornierungen, … starten. Diese Aktionen beziehen sich auf einen vorherigen Zahlungsprozess, der durch eine PayID identifiziert wird – was völlig außerhalb vom PCI-DSS-Fokus liegt. 
SchlussfolgerungEmpfohlen für Standardintegrationen – aufgrund einfacher Integration und vereinfachter Compliance.. 1cs Online Bezahlsystem übernimmt die PAN-Handhabung für Sie → vereinfachte PCI DSS Handhabung. Sie können die 1cs OBS Zahlungsseite mittels Vorlagen anpassen.  Empfohlen, wenn Sie die volle Kontrolle benötigen und keine Weiterleitung des Verbrauchers wünschen. Ihr System befindet sich im vollen Geltungsbereich von PCI DSS.

Die nachfolgende Dokumentation gliedert sich daher immer in zwei Abschnitte:

  • Integration über Zahlungsseite (Zahlungsformular)
    • mit allgemeinen Parametern zur Integration des 1cs OBS Zahlungsformulars
    • mit Parametern zur Anpassung des Zahlungsformulars
    • mit spezifischen Parametern für den gewünschten Acquirer / Prozessor
  • Integration über (direkte) Server-2-Server-Integration
    • mit allgemeinen Parametern zur Integration des 1cs OBS Zahlungsformulars
    • mit spezifischen Parametern für den gewünschten Acquirer / Prozessor

7.1.3 Implementierung von 3-D Secure (2.x)

7.1.3.1 Allgemeine Hinweise zu 3-D Secure

3-D Secure ist ein Verfahren, das den Karteninhaber authentifiziert und sicherstellt, dass der Verbraucher, der die Kreditkartendaten verwendet, wirklich der Karteninhaber ist.

3-D Secure soll den Missbrauch von Kreditkartendaten verhindern – insbesondere im E-Commerce.

3-D Secure 1.x wurde implementiert und fragt den Karteninhaber typischerweise bei jeder Kartennutzung nach einem Passwort.

3-D Secure 2.x wurde implementiert, um:

  • eine starke Kundenauthentifizierung (SCA) zu ermöglichen, indem sie den Karteninhaber mit 2 unabhängigen Faktoren dieser 3 Faktoren anthentifiziert:
    • etwas, das der Karteninhaber weiß, z.B. ein Kennwort
    • etwas, das der Karteninhaber besitzt, z.B. ein Gerät (wie ein Telefon, um einen Token per SMS zu empfangen oder ein anderes OTP, Token-Generator, …)
    • etwas, das der Karteninhaberist, z.B. Biometrie (wie Fingerabdruck, Gesichts-ID, …)
  • eine nahtlose Authentisierung zu ermöglichen, wenn der Verbraucher nicht authentifiziert wird und nicht aufgefordert wird, sich selbst zu authentifizieren.
7.1.3.2 3-D Secure mit 1cs Online Bezahlsystem

Bereiten Sie sich / Ihre Integration auf 3-D Secure 2.x ready vor – hier eine kurze Übersicht mit einigen technischen Details.

 3-D Secure 1.x
3-D Secure 2.x3-D Secure 2.x Beispiel
 Hängt von Ihrer Integration ab: Zahlungsformular ./. Server-2-Server  
Zahlungsseite / ZahlungsformularIhre vorhandene IntegrationErgänzen Sie einfach den API-Parameter “MsgVer=2.0”, der Rest wird automatisch erledigt vom 1cs Online Bezahlsystem
Ergänzen Sie den Parameter “MsgVer=2.0” bei Ihrem bestehenden API-Aufruf für den Start des Zahlungsformulars.
URL-VerarbeitungURLFailure und URLSuccess arbeiten mit http-GETURLFailure und URLSuccess arbeiten mit http-POST (wegen der Datenmenge). Seien Sie bereit, beides (GET + POST) zu handhaben. 
Server-2-Server IntegrationUse KVP: CCNr Kreditkartennummer (PAN) CCExpiry Ablaufdatum der Kreditkarte CCCVC Kreditkartenprüfnummer CCBrand KreditkartenmarkeÜbergeben Sie die Kartendaten mittels “card“-JSON an die APIz.B.:

{     “securityCode”: “569”,     “expiryDate”: “202508”,     “cardholderName”: “William Thomas”,     “number”: “4111111111111111”,     “brand”: “VISA” }

card=ewogICAgInNlY3VyaXR5Q29kZSI6ICI1NjkiLAogICAgImV4cGlyeURhdGUiOiAiMjAyNTA4IiwKICAgICJjYXJkaG9sZGVyTmFtZSI6ICJXaWxsaWFtIFRob21hcyIsCiAgICAibnVtYmVyIjogIjQxMTExMTExMTExMTExMTEiLAogICAgImJyYW5kIjogIlZJU0EiCn0=  
 Für spezielle Anwendungsfälle finden Sie hier weitere Anwendungsbeispiele: 3DS 2.0 Händler-Anwendungsfälle  
Anwendungsfall3-D Secure 1.x3-D Secure 2.x
3-D Secure 2.x Beispiel
Wiederkehrende Zahlungen (initial)Nutzen Sie den Parameter “RTF=I“. Sie erhalten eventuell eine TransactionID als spezifische Transaktions-ID des Karten-Schemes.Ändern Sie “RTF” zum Parameter “credentialOnFile“-JSON mit “recurring” und “initial=true”. Sie erhalten eventuell eine schemeReferenceID als spezifische Transaktions-ID des Karten-Schemes.z.B.:
Recurring mit initial=true

{     “type”: {         “recurring”: {             “recurringFrequency”: 30,             “recurringStartDate”: “2021-09-14”,             “recurringExpiryDate”: “2022-09-14”         }     },     “initialPayment”: true }

Das JSON muss Base64-codiert sein und dann als Wert für den Parameter credentialOnFile verwendet werden (Bitte beachten Sie, dass Sie den vollständigen Base64-codierten String verwenden einschließlich “=” am Ende.) credentialOnFile=ewogICAgInR5cGUiOiB7CiAgICAgICAgInJlY3VycmluZyI6IHsKICAgICAgICAgICAgInJlY3VycmluZ0ZyZXF1ZW5jeSI6IDMwLAogICAgICAgICAgICAicmVjdXJyaW5nU3RhcnREYXRlIjogIjIwMjEtMDktMTQiLAogICAgICAgICAgICAicmVjdXJyaW5nRXhwaXJ5RGF0ZSI6ICIyMDIyLTA5LTE0IgogICAgICAgIH0KICAgIH0sCiAgICAiaW5pdGlhbFBheW1lbnQiOiB0cnVlCn0=
Wiederkehrende Zahlungen (nachfolgend)Nutzen Sie den Parameter “RTF=R” und übermitteln die TransactionID als spezifische Transaktions-ID des Karten-SchemesÄndern Sie “RTF” zum Parameter “credentialOnFile“-JSON mit “recurring” und “initial=false” und übermitteln die schemeReferenceID als spezifische Transaktions-ID des Karten-Schemesz.B.:
Recurring mit initial=false

{
    “type”: {         “recurring”: {             “recurringFrequency”: 30,             “recurringStartDate”: “2021-09-14”,             “recurringExpiryDate”: “2022-09-14”         }     },     “initialPayment”: false }


Nach der Base64-Codierung: credentialOnFile=ewogICAgInR5cGUiOiB7CiAgICAgICAgInJlY3VycmluZyI6IHsKICAgICAgICAgICAgInJlY3VycmluZ0ZyZXF1ZW5jeSI6IDMwLAogICAgICAgICAgICAicmVjdXJyaW5nU3RhcnREYXRlIjogIjIwMjEtMDktMTQiLAogICAgICAgICAgICAicmVjdXJyaW5nRXhwaXJ5RGF0ZSI6ICIyMDIyLTA5LTE0IgogICAgICAgIH0KICAgIH0sCiAgICAiaW5pdGlhbFBheW1lbnQiOiBmYWxzZQp9
Vom Kunden ausgelöst (initial)Nutzen Sie Parameter “RTF=E“. Sie erhalten eventuell eine TransactionID als spezifische Transaktions-ID des Karten-Schemes.Nutzen Sie Parameter “RTF=E“. Sie erhalten eventuell eine TransactionID als spezifische Transaktions-ID des Karten-Schemes.z.B.:
CIT (CustomerInitiated) mit initial=true

    “type”: {         “unscheduled”: “CIT”     },     “initialPayment”: true }


Nach der Base64-Codierung (nochmal: vergessen Sie nicht das “=” am Ende; es muss Bestandteil des Wertes sein): credentialOnFile=ewogICAgInR5cGUiOiB7CiAgICAgICAgInVuc2NoZWR1bGVkIjogIkNJVCIKICAgIH0sCiAgICAiaW5pdGlhbFBheW1lbnQiOiB0cnVlCn0=
Vom Händler ausgelöst (nachfolgend)Nutzen Sie Parameter “RTF=M” und übermitteln die TransactionID als spezifische Transaktions-ID des Karten-SchemesÄndern Sie “RTF” zum Parameter “credentialOnFile“-JSON mit “MIT” und “initial=false” und übermitteln die schemeReferenceID als spezifische Transaktions-ID des Karten-Schemesz.B.
MIT (MerchantInitiated) mit initial=false

{
    “type”: {         “unscheduled”: “MIT”     },     “initialPayment”: false }


Nach der Base64-Codierung: credentialOnFile=ewogICAgInR5cGUiOiB7CiAgICAgICAgInVuc2NoZWR1bGVkIjogIk1JVCIKICAgIH0sCiAgICAiaW5pdGlhbFBheW1lbnQiOiBmYWxzZQp9
Adressverifizierungsdienst (AVS) (abhängig vom Acquirer / Prozessor)Nutzen Sie die Parameter AddrStreet AddrStreetNr AddrZip AddrCity ….Nutzen Sie die Parameter AddrStreet AddrStreetNr AddrZip AddrCity ….z.B.:
Adresse in JSON-Struktur geben

{
    “city”: “New York”,     “country”: {         “countryA3”: “USA”     },     “addressLine1”: {         “street”: “Park Avenue”,         “streetNumber”: “270”     },     “postalCode”: “10017-2070”,     “state”: “NY” }

billingAddress=ewogICAgImNpdHkiOiAiTmV3IFlvcmsiLAogICAgImNvdW50cnkiOiB7CiAgICAgICAgImNvdW50cnlBMyI6ICJVU0EiCiAgICB9LAogICAgImFkZHJlc3NMaW5lMSI6IHsKICAgICAgICAic3RyZWV0IjogIlBhcmsgQXZlbnVlIiwKICAgICAgICAic3RyZWV0TnVtYmVyIjogIjI3MCIKICAgIH0sCiAgICAicG9zdGFsQ29kZSI6ICIxMDAxNy0yMDcwIiwKICAgICJzdGF0ZSI6ICJOWSIKfQ==
Antrag für reibungslose Zahlungsabwicklungnicht unterstützt bei 3-D Secure 1.x jede Zahlung wird authentisiertStellen Sie zusätzliche Daten bereit als JSON-KVP: JSON-Objektez.B.:
Kunden-Challenge explizit anfordern

}     “challengePreference “: “mandateChallenge” }

Nach der Base64-Codierung (nochmal: vergessen Sie nicht das “=” am Ende; es muss Bestandteil des Wertes sein): threeDSPolicy=ewogICAgImNoYWxsZW5nZVByZWZlcmVuY2UgIjogIm1hbmRhdGVDaGFsbGVuZ2UiCn0=

7.2 Spezifische Parameter für CAPN: American Express

Für die Kreditkartenanbindung CAPN sind neben den oben beschriebenen allgemeinen Parametern noch nachstehende Parameter zusätzlich zu übergeben. Eine Autorisierung mittels 3-D Secure ist möglich.

Hinweis: Aus Sicherheitsgründen lehnt das 1cs OBS alle Zahlungsanfragen mit Formatfehlern ab. Bitte übergeben Sie deshalb bei jedem Parameter den korrekten Datentyp.

Die folgende Tabelle beschreibt die verschlüsselten Übergabeparameter, welche zusätzlich zu denen im Abschnitt “Allgemein per Formular” bzw. “Allgemein per Server-zu-Server” übergeben werden müssen:

ParameterFormatCNDBeschreibung
RefNrns..30MEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das 1cs OBS Settlement File (CTSF) auch nicht zusätzlich angereichert werden. Bitte beachten Sie die nachfolgende AMEX RefNr Limitierung je möglichen EPA Format. CAPN –> AMEX GRRCN EPA = 30-stellig alphanumerisch
Hinweis:
Bitte beachten Sie, dass Referenznummern von AMEX nur in Abrechnungsdateien im GRRCN-Format ausgegeben werden können. EPA-Dateien erhalten bei CAPN keinerlei Referenzen zur Zuordnung. Details zum EPA-Format erhalten Sie von Ihrem Acquirer. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
OrderDesc
ans..768MBeschreibung der gekauften Waren, Einzelpreise etc.
AmouthAuthn..10OPrepaid-Karte: Tatsächlich autorisierter Betrag in der kleinsten Währungseinheit. Bitte wenden Sie sich hierzu an den Helpdesk, da diese Funktion auch am 1cs OBS  zusätzlich aktiviert werden muss.
ContractIDn..8OWeitere Referenz, mit der die Kombination TerminalID/Vertragspartnernummer ermittelt wird
Kontaktdaten/Adressverifikation (AVS)
FirstNameans..15OVorname des Kunden (für AVS)
LastNameans..30ONachname des Kunden (für AVS)
AddrStreetans..20OStraßenname und Hausnummer, z.B. 18850~N~56~ST~#301  (für AVS)
AddrZipans..9O
Postleitzahl (für AVS)
eMailans..60OE-Mail-Adresse des Kunden (für AVS)
Phonen..10OTelefonnummer des Kunden: bei Ländern, die nicht dieses System verwenden, senden Sie die letzten 10 Ziffern (für AVS)
sdFirstNameans..15OVorname in der Lieferadresse (für AVS)
sdLastNameans..30ONachname in der Lieferadresse (für AVS)
sdStreetans..50OStraßenname und Hausnummer in der Lieferadresse, z.B. 4102~N~289~PL (für AVS)
sdZipn..9OPostleitzahl in der Lieferadresse
sdCountryCoden3OLändercode der Lieferadresse im Format ISO-3166-1, numerisch 3-stellig (für AVS)
sdPhoneans..10OTelefonnummer in der Lieferadresse: bei Ländern, die nicht dieses System verwenden, senden Sie die letzten 10 Ziffern (für AVS)
Zusätzliche Parameter für Kreditkartenzahlungen

Die folgende Tabelle beschreibt die Parameter, die das 1cs Online Bezahlsystem als Antwort zurückgibt:

Hinweis: diese Antwort-Parameter kommen zusätzlich zu den Standard-Parametern aus den Abschnitten “Allgemein per Formular” bzw. “Allgemein per Server-zu-Server”

  • es können jederzeit neue Parameter hinzugefügt bzw. die Reihenfolge geändert werden
  • die Parameter (z.B. MerchantId, RefNr) sollten nicht auf Groß-/Kleinschreibung geprüft werden 
KeyFormatCNDBeschreibung
RefNr
ans..30OEindeutige Referenznummer des Händlers, welche als Auszahlungsreferenz in der entsprechenden Acquirer EPA-Datei angegeben wird. Bitte beachten Sie, ohne die Übergabe einer eigenen Auszahlungsreferenz können Sie die EPA-Transaktionen nicht zuordnen, zusätzlich kann das Computop Settlement File (CTSF) auch nicht zusätzlich angereichert werden. Es sind ausschließlich ASCII-Zeichen erlaubt. Sonderzeichen wie (“Umlaute”, …) sind nicht erlaubt und müssen ggf. durch ASCII-Zeichen ersetzt werden (z.B. ü → ue, é → e, …).
CodeExtn..10OFehlercode von CAPN, wenn mit support@1cs.de abgesprochen
ApprovalCoden..6OApprovalcode der Transaktion
TransactionIDans..48OTransaktionsID bei CAPN
AmountAuthn..10MAutorisierter Betrag in der kleinsten Währungseinheit. Bei PrePaid-Karten kann dieser geringer als der ursprünglich angefragte Amount sein.
Matcha1OGesamtergebnis einer Adressprüfung (American Express via CAPN): Für mögliche Werte siehe A3 AVS Match-Parameter
cvcmatcha1CErgebnis der CVC-Prüfung. Mögliche Werte: M = Match, N = kein Match, U = Issuer kann Anfrage nicht verarbeiten
PARans..999OZahlungskonto-Referenzdaten, die hauptsächlich von VISA/MC oder AMEX bereitgestellt werden. Dabei handelt es sich um eine nicht-finanzielle Referenznummer, die jeder eindeutigen Kreditkartennummer (PAN) zugewiesen und allen ihren verbundenen Zahlungstoken zugeordnet ist.
Zusätzliche Ergebnis-Parameter für Kreditkartenzahlungen