Pay by Bank (auch bekannt als Account to Account oder A2A ) ist eine Zahlungsmethode per Banküberweisung. Trust Payments stellt Pay by Bank einen von den Finanzaufsichtsbehörden des Vereinigten Königreichs und des EWR (Europäischer Wirtschaftsraum) zugelassenen Partner zur Verfügung. Wenn Sie sich an der Kasse für Pay by Bank entscheiden, werden die Kunden auf eine Seite weitergeleitet, die von unserem Verarbeitungspartner gehostet wird und die sie auffordert, ihre Bank auszuwählen. Die Bank bestimmt die nächsten Schritte, die der Kunde unternimmt, um die Zahlung zu autorisieren, aber in der Regel wird der Kunde aufgefordert, eine Form von SCA (Starke Kundenauthentifizierung) auszuführen, z. B. die Bestellung mit einer auf seinem Gerät installierten Banking-App zu überprüfen und zu genehmigen. Sobald der Kunde der Zahlung zustimmt, wird er schließlich wieder auf Ihre Website weitergeleitet.
Unterstützte Kundenländer | GB |
Unterstützte Währungen | GBP |
Rückerstattungen |
Nicht unterstützt. |
Rückbuchungen | Zahlungen sind von Rückbuchungen ausgeschlossen. |
Zero-authorisation |
Nicht unterstützt. |
Wiederkehrende Zahlungen |
Nicht unterstützt. |
Konfiguration
Um Pay by Bank für Ihr Konto zu aktivieren, wenden Sie sich bitte an Ihren Kundenbetreuer.
Ein Test-Sandbox-Konto wird Ihnen zur Verfügung gestellt, das Sie zum Testen Ihrer Implementierung benötigen.
Wir empfehlen, diese Zahlungsmethode als "Pay by Bank" an der Kasse, da wir Rückmeldungen erhalten haben, die darauf hindeuten, dass die Kunden mit diesem Begriff besser vertraut sind.
Überblick über den Prozess
-
Initiieren Sie den Kunden
- Der Kunde erklärt sich mit einer Zahlung über Pay by Bank auf der Website des Händlers einverstanden.
- Der Händler sendet eine AUTH Anfrage, um die Sitzung zu initiieren, einschließlich der returnurl.
- Der Händler erhält die Antwort AUTH, einschließlich redirecturl.
-
Weiterleitung zur Anmeldeseite der Bank
- Der Händler leitet den Browser des Kunden auf die redirecturl, dies ist eine Seite, die von einem Trust Payments Verarbeitungspartner gehostet wird und auf der der Kunde aufgefordert wird, seine Bank auszuwählen.
- Der Browser des Kunden wird dann auf die Seiten der ausgewählten Bank weitergeleitet, wo der Kunde aufgefordert wird, sich anzumelden und die Bestelldaten zu überprüfen.
- Wenn der Kunde der Zahlung zustimmt und der Bezahlvorgang erfolgreich ist, wird sein Browser schließlich auf die Seite returnurl, eine Seite, die vom Händler gehostet wird.
-
Überprüfen Sie das Ergebnis
- Sie müssen dann eine TRANSACTIONQUERY bearbeiten und prüfen, ob die in der Antwort enthaltenen Daten mit denen übereinstimmen, die in der ursprünglichen AUTH Anfrage übermittelt wurden.
- Damit soll sichergestellt werden, dass die Daten, die bei der Umleitung zurück zum returnurl während des Transports nicht verändert wurde.
-
Abschluss der Zahlung
- Unter TRANSACTIONQUERY können Sie feststellen, dass sich die Transaktion normalerweise in einem von zwei Zuständen befindet, die durch das Symbol settlestatus:
- 100 ("Wurde abgerechnet") - Die Transaktion wurde autorisiert und das Geld hat das Konto des Kunden verlassen und wird innerhalb eines Zeitraums, der durch die mit Trust Payments während des Onboarding-Prozesses vereinbarten Bedingungen bestimmt wird, auf das Bankkonto des Händlers überwiesen.
- 3 ("Storniert") - Transaktion wurde storniert.
- Es gibt aber auch einen anderen Fall, in dem die Transaktion auf settlestatus 10 ("Wird abgerechnet") steht. Das bedeutet, dass die Transaktion noch nicht abgeschlossen ist. In der Regel ändert sich dieser Zustand innerhalb weniger Minuten entweder in 100 ("Wurde abgerechnet") oder 3 ("Storniert"), es kann aber auch länger dauern.
- Sobald die oben genannten Schritte abgeschlossen sind, können Sie eine entsprechende Meldung im Browser des Kunden anzeigen (z. B. Erfolg/Fehler).
- Unter TRANSACTIONQUERY können Sie feststellen, dass sich die Transaktion normalerweise in einem von zwei Zuständen befindet, die durch das Symbol settlestatus:
1. Initiieren Sie den Kunden
Wenn sich der Kunde für die Zahlung mit Pay by Bank entscheidet, muss Ihr System eine AUTH -Anfrage durchführen und, falls erfolgreich, den Browser des Kunden auf die in der Antwort zurückgegebene URL umleiten.
Im weiteren Verlauf dieses Artikels geben wir Empfehlungen, wie Sie Pay by Bank an der Kasse präsentieren können, und Tipps zur Verbesserung der Kundenbindung. Klicken Sie hier, um dorthin zu blättern.
AUTH Anfrage
Das nachstehende Beispiel bezieht sich auf eine Anfrage an Pay by Bank AUTH :
#!/usr/bin/python
import securetrading
stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)
auth = {
"requesttypedescription": "AUTH",
"sitereference": "test_site12345",
"accounttypedescription": "ECOM",
"returnurl": "https://www.example.com/success",
"baseamount": "1050",
"currencyiso3a": "EUR",
"paymenttypedescription": "ATA"
}
strequest = securetrading.Request()
strequest.update(auth)
stresponse = st.process(strequest) #stresponse contains the transaction response
<?php
if (!($autoload = realpath(__DIR__ . '/../../../autoload.php')) && !($autoload = realpath(__DIR__ . '/../vendor/autoload.php'))) {
throw new Exception('Composer autoloader file could not be found.');
}
require_once($autoload);
$configData = array(
'username' => 'webservices@example.com',
'password' => 'Password1^'
);
$requestData = array(
'requesttypedescription' => 'AUTH',
'sitereference' => 'test_site12345',
'accounttypedescription' => 'ECOM',
'returnurl' => 'https://www.example.com/success',
'baseamount' => '1050',
'currencyiso3a' => 'EUR',
'paymenttypedescription' => 'ATA'
);
$api = \Securetrading\api($configData);
$response = $api->process($requestData);
var_dump($response->toArray());
?>
curl --user webservices@example.com:Password1^ <DOMAIN>/json/ -H "Content-type: application/json" -H "Accept: application/json" -X POST -d '{
"alias": "webservices@example.com",
"version": "1.00",
"request": [{
"requesttypedescription": "AUTH",
"sitereference": "test_site12345",
"accounttypedescription": "ECOM",
"returnurl": "https://www.example.com/success",
"baseamount": "1050",
"currencyiso3a": "EUR",
"paymenttypedescription": "ATA"
}]
}'
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"requesttypedescription":"AUTH",
"sitereference":"test_site12345",
"accounttypedescription":"ECOM",
"returnurl":"https://www.example.com/success",
"baseamount":"1050",
"currencyiso3a":"EUR",
"paymenttypedescription":"ATA"
}]
}
<requestblock version="3.67" >
<alias>webservices@example.com</alias>
<request type="AUTH">
<operation>
<sitereference>test_site12345</sitereference>
<accounttypedescription>ECOM</accounttypedescription>
</operation>
<merchant>
<returnurl>https://www.example.com/success</returnurl>
</merchant>
<billing>
<amount currencycode="EUR">1050</amount>
<payment type="ATA"/>
</billing>
</request>
</requestblock>
Ersetzen Sie <DOMAIN>
mit einer unterstützten Domäne. Klicken Sie hier für eine vollständige Liste.
Feldspezifikation
Feld | Format | Beschreibung | |
accounttypedescription XPath: /operation/accounttypedescription |
Alpha (20) | Nur "ECOM" (E-Commerce) wird unterstützt. | |
baseamount XPath: /billing/amount |
Numerisch (13) | Der Betrag der Transaktion in Basiseinheiten, ohne Kommas oder Dezimalpunkte, d. h. €10 werden als €1000 übermittelt. Dieser Wert muss größer als Null sein. (Die maximale Länge kann je nach Bank variieren - weitere Informationen erhalten Sie von Ihrer Bank) | |
currencyiso3a XPath: /billing/amount/@currencycode |
Alpha (3) |
Die Währung , in der die Transaktion verarbeitet werden soll (im ISO3A-Format). Eine Liste der Währung Codes, die von Pay by Bank unterstützt werden, finden Sie in der Liste oben auf dieser Seite. |
|
paymenttypedescription XPath: /billing/payment/@type |
Alpha (20) | Dieser Wert muss als "ATA" angegeben werden. | |
requesttypedescription XPath: /@type |
Alpha (20) | Der Wert in der Anfrage muss "AUTH" lauten. | |
returnurl XPath: /merchant/returnurl |
URL (2048) | Die URL, zu der der Kunde nach einer erfolgreichen Autorisierung zurückkehrt. | |
sitereference XPath: /operation/sitereference |
Alphanumerisch & Unterstrich (50) |
Die Website-Referenz bezieht sich auf Ihr individuelles Konto, das Sie bei der Einrichtung erhalten haben. Wenn Sie Ihre Website-Referenz nicht kennen, wenden Sie sich bitte an unser Support-Team. | |
orderreference XPath: /merchant/orderreference |
Alphanumerisch einschließlich Symbole (25)
Empfohlene Länge 25 Zeichen oder weniger (genaue Länge abhängig von der erwerbenden Bank). Die Nichteinhaltung dieser Anforderung kann dazu führen, dass der Text in der Transaktion abgeschnitten wird. |
Ihre eindeutige Auftragsnummer, die im System Trust Payments gespeichert werden kann. |
AUTH Antwort
{
u'requestreference': u'An3ug1kap',
u'version': u'1.00',
u'responses': [{
u'requesttypedescription': u'AUTH',
u'baseamount': u'1050',
u'currencyiso3a': u'EUR',
u'paymenttypedescription': u'ATA',
u'errorcode': u'0',
u'errormessage': u'Ok',
u'livestatus': u'0',
u'merchantcountryiso2a': u'GB',
u'merchantname': u'Test Merchant',
u'operatorname': u'webservices@example.com',
u'accounttypedescription': u'ECOM',
u'redirecturl': u'https://web-app.sandbox.token.io/app/request-token/rq:xxx:yyy',
u'settleduedate': u'2022-02-09',
u'settlestatus': u'10',
u'transactionstartedtimestamp': u'2022-02-09 15:43:49',
u'transactionreference': u'1-2-345'
}]
}
array(3) {
["requestreference"] => string(9) "A0345jmuw"
["version"] => string(4) "1.00"
["responses"] => array(1) {
[0] => array(16) {
["requesttypedescription"] => string(4) "AUTH"
["baseamount"] => string(4) "1050"
["currencyiso3a"] => string(3) "EUR"
["paymenttypedescription"] => string(3) "ATA"
["errorcode"] => string(1) "0"
["errormessage"] => string(2) "Ok"
["livestatus"] => string(1) "0"
["merchantcountryiso2a"] => string(2) "GB"
["merchantname"] => string(13) "Test Merchant"
["operatorname"] => string(23) "webservices@example.com"
["accounttypedescription"] => string(4) "ECOM"
["redirecturl"] => string(61) "https://web-app.sandbox.token.io/app/request-token/rq:xxx:yyy"
["settleduedate"] => string(10) "2022-02-09"
["settlestatus"] => string(2) "10"
["transactionstartedtimestamp"] => string(20) "2022-02-09 15:43:49"
["transactionreference"] => string(7) "1-2-345"
}
}
}
{
"requestreference":"W23-fjgvn3d9",
"version":"1.00",
"response":[{
"requesttypedescription":"AUTH",
"baseamount":"1050",
"currencyiso3a":"EUR",
"paymenttypedescription":"ATA",
"errorcode":"0",
"errormessage":"Ok",
"livestatus":"0",
"merchantcountryiso2a":"GB",
"merchantname":"Test Merchant",
"operatorname":"webservices@example.com",
"accounttypedescription":"ECOM",
"redirecturl":"https://web-app.sandbox.token.io/app/request-token/rq:xxx:yyy",
"settleduedate":"2022-02-09",
"settlestatus":"10",
"transactionstartedtimestamp":"2022-02-09 15:43:49",
"transactionreference":"1-2-345"
}]
}
<responseblock version="3.67">
<requestreference>Xjhr1mcce</requestreference>
<response type="AUTH">
<billing>
<amount currencycode="EUR">1050</amount>
<payment type="ATA"/>
</billing>
<error>
<code>0</code>
<message>Ok</message>
</error>
<live>0</live>
<merchant>
<merchantcountryiso2a>GB</merchantcountryiso2a>
<merchantname>Test Merchant</merchantname>
<operatorname>webservices@example.com</operatorname>
</merchant>
<operation>
<accounttypedescription>ECOM</accounttypedescription>
</operation>
<other>
<redirecturl>https://web-app.sandbox.token.io/app/request-token/rq:xxx:yyy</redirecturl>
</other>
<settlement>
<settleduedate>2022-02-09</settleduedate>
<settlestatus>10</settlestatus>
</settlement>
<timestamp>2022-02-09 15:43:49</timestamp>
<transactionreference>1-2-345</transactionreference>
</response>
<secrand>WK</secrand>
</responseblock>
Feldspezifikation
Feld | Format | Beschreibung | |
accounttypedescription XPath: /operation/accounttypedescription |
Alpha (20) | Der zurückgegebene Wert ist "ECOM". | |
baseamount XPath: /billing/amount |
Numerisch (13) | Der Betrag der Transaktion in Basiseinheiten, ohne Kommas oder Dezimalpunkte, so dass €10 als 1000 zurückgegeben werden. | |
currencyiso3a XPath: /billing/amount/@currencycode |
Alpha (3) |
Die Währung, in der die Transaktion verarbeitet wurde (im ISO3A-Format). Eine Liste der Währung Codes, die von Pay by Bank unterstützt werden, finden Sie in der Liste oben auf dieser Seite. |
|
errorcode XPath: /error/code |
Numerisch (1-5) |
Die Fehlercode (errorcode) sollte verwendet werden, um festzustellen, ob die Anfrage erfolgreich war oder nicht.
Klicken Sie hier für eine vollständige Liste der errorcode und Nachrichtenwerte. |
|
errormessage XPath: /error/message |
Alphanumerisch (255) |
Dies ist die entsprechende Meldung zum obigen Code.
Klicken Sie hier für eine vollständige Liste der errorcode und Nachrichtenwerte. |
|
livestatus XPath: /live |
Numerisch (1) |
|
|
operatorname XPath: /merchant/operatorname |
Alphanumerisch (255) | Der Wert dieses Feldes enthält den Namen des Benutzers, der die Anfrage bearbeitet hat. | |
paymenttypedescription XPath: /billing/payment/@type |
Alpha (20) | Der zurückgegebene Wert ist "ATA". | |
redirecturl XPath: /other/redirecturl |
URL (255) | Leiten Sie den Browser des Kunden auf diese URL um, die von einem Trust Payments Verarbeitungspartner gehostet wird, damit der Kunde die Zahlung abschließen kann. | |
requesttypedescription XPath: /@type |
Alpha (20) | Der zurückgegebene Wert ist "AUTH". | |
settleduedate XPath: /settlement/settleduedate |
Datum JJJJ-MM-TT | Das Datum, an dem die Transaktion abgewickelt wird. | |
settlestatus XPath: /settlement/settlestatus |
Numerisch (3) | Damit können Sie den Status der Zahlung ermitteln. Wie dieses Feld am besten zu interpretieren ist, erfahren Sie im Abschnitt Handhabung der Antwort weiter unten. | |
transactionreference XPath: /transactionreference |
Alphanumerisch einschließlich Bindestriche (25) |
Eine eindeutige Referenz für die Transaktion, die von Trust Payments zugewiesen wird. | |
transactionstartedtimestamp XPath: /timestamp |
Datum Uhrzeit JJJJ-MM-TT hh:mm:ss | Der Zeitpunkt, zu dem die Transaktion bearbeitet wurde. | |
errordata XPath: /error/data |
Alphanumerisch (255) |
Zusätzliche Informationen zur Behebung des Fehlers. Wird nur zurückgegeben, wenn ein Fehler aufgetreten ist. |
|
merchantcountryiso2a |
Alpha (2) |
Es handelt sich dabei um Angaben zu dem Konto, das für die Bearbeitung der Transaktion verwendet wird. Um diese Felder zu ändern, wenden Sie sich bitte an unser Support-Team. Die zurückgegebenen Werte hängen von der Konfiguration Ihres Kontos ab.
|
|
merchantname XPath: /merchant/merchantname |
Alphanumerisch (255) |
Umgang mit der Antwort
Die settlestatus die in der Antwort AUTH zurückgegeben wird, wird verwendet, um den Status der Zahlung Pay by Bank zu bestimmen:
Wenn die settlestatus 10" ist, ist die Zahlung ausstehend Abrechnung
- Das Geld ist noch nicht auf Ihrem Bankkonto eingegangen.
- Der nächste Schritt ist die Umleitung des Kundenbrowsers auf die redirecturl um die Zahlung abzuschließen.
Die Gelder werden erst dann auf Ihr Konto überwiesen, wenn der Kunde an die redirecturl, um die Zahlung abzuschließen. Lesen Sie weiter für weitere Informationen.
Wenn die settlestatus ist "3", wurde die Zahlung storniert
- Die Zahlung wurde abgelehnt, oder es ist ein Fehler aufgetreten.
- Um mehr darüber zu erfahren, warum die Zahlung fehlgeschlagen ist, müssen Sie sich die errorcode. z.B. "70000" bedeutet, dass die Zahlung abgelehnt wurde. Klicken Sie hier, um eine vollständige Liste der Fehlercodes zu erhalten.
Darüber hinaus empfehlen wir, nach der Zahlung zusätzliche Kontrollen durchzuführen.
2. Weiterleitung zur Anmeldeseite der Bank
Ihr System muss den Browser des Kunden auf die redirecturl umleiten, eine Seite, die von einem Trust Payments-Partner gehostet wird, um die Zahlung zu verarbeiten.
Dabei wird der Kunde auf Seiten seiner Bank weitergeleitet, wo er aufgefordert wird, sich bei seinem Konto anzumelden und die Transaktion zu genehmigen.
Zeigen Sie nicht die redirecturl innerhalb einer iframe. Dies verhindert die korrekte Darstellung des Inhalts und kann letztlich dazu führen, dass die Zahlung nicht erfolgreich abgeschlossen werden kann.
Beim Testen wird Ihnen die Sandbox-Umgebung angezeigt. Um eine Testtransaktion durchzuführen, müssen Sie den Anweisungen auf dem Bildschirm folgen. Bitte wenden Sie sich an Ihren Kundenbetreuer, um die Test-Zugangsdaten zu erhalten, die Sie in der Sandbox eingeben müssen.
Zu einem späteren Zeitpunkt wird der Kunde dann wieder auf die returnurl in der Anfrage AUTH angegeben. Ihr System erhält eine GET-Anfrage zurück, die die unten beschriebenen Felder enthält:
Feld | Format | Beschreibung | |
orderreference | Alphanumerisch einschließlich Symbole (25) |
Ihre eindeutige Bestellnummer, die im System Trust Payments gespeichert ist. Dieses Feld wird leer zurückgegeben, wenn es in der Anfrage AUTH fehlt. |
|
settlestatus | Numerisch (3) |
Ein numerischer Wert, der den Fortschritt von Abrechnung in Bezug auf diese Transaktion angibt. Sie müssen dies überprüfen, indem Sie eine TRANSACTIONQUERY Anfrage wie unten beschrieben durchführen. |
|
transactionreference | Alphanumerisch einschließlich Bindestriche (25) |
Eindeutige Referenz der Transaktion, die verfügbar ist, nachdem eine Zahlungsanforderung verarbeitet wurde. Sie müssen diese in einer nachfolgenden TRANSACTIONQUERY Anfrage mit unserer Webservices API verwenden, um den aktuellen Status der Zahlung zu ermitteln, wie unten beschrieben. |
3. Überprüfen Sie das Ergebnis
In diesem Stadium des Prozesses wird der Kunde auf die Seite returnurl und Ihr Server muss das Ergebnis überprüfen, indem er eine TRANSACTIONQUERY Anfrage sendet, wie im folgenden Beispiel gezeigt:
Beispiel anfordern
#!/usr/bin/python
import securetrading
stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)
query = {
"requesttypedescriptions": ["TRANSACTIONQUERY"],
"filter":{
"sitereference": [{"value":"test_site12345"}],
"transactionreference": [{"value":"55-9-12345"}]
}
}
strequest = securetrading.Request()
strequest.update(query)
stresponse = st.process(strequest) #stresponse contains the transaction response
<?php
if (!($autoload = realpath(__DIR__ . '/../../../autoload.php')) && !($autoload = realpath(__DIR__ . '/../vendor/autoload.php'))) {
throw new Exception('Composer autoloader file could not be found.');
}
require_once($autoload);
$configData = array(
'username' => 'webservices@example.com',
'password' => 'Password1^',
);
$requestData = array(
'requesttypedescriptions' => array('TRANSACTIONQUERY'),
'filter' => array(
'sitereference' => array(array('value' => 'test_site12345')),
'transactionreference' => array(array('value' => '55-9-12345'))
)
);
$api = \Securetrading\api($configData);
$response = $api->process($requestData);
var_dump($response->toArray());
?>
curl --user webservices@example.com:Password1^ <DOMAIN>/json/ -H "Content-type: application/json" -H "Accept: application/json" -X POST -d '{
"alias": "webservices@example.com",
"version": "1.00",
"request": [{
"requesttypedescriptions": ["TRANSACTIONQUERY"],
"filter":{
"sitereference": [{"value":"test_site12345"}],
"transactionreference": [{"value":"55-9-12345"}]
}
}]
}'
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"requesttypedescriptions":["TRANSACTIONQUERY"],
"filter":{
"sitereference":[{"value":"test_site12345"}],
"transactionreference":[{"value":"55-9-12345"}]
}
}]
}
<requestblock version="3.67">
<alias>webservices@example.com</alias>
<request type="TRANSACTIONQUERY">
<filter>
<sitereference>test_site12345</sitereference>
<transactionreference>55-9-12345</transactionreference>
</filter>
</request>
</requestblock>
Ersetzen Sie <DOMAIN>
mit einer unterstützten Domäne. Klicken Sie hier für eine vollständige Liste.
Feldspezifikation anfordern
Feld | Format | Beschreibung | |
sitereference XPath: /filter/sitereference |
Alpha (50) | Die Website-Referenz, die die Transaktion bearbeitet hat. | |
transactionreference XPath: /filter/transactionreference |
Alphanumerisch einschließlich Bindestriche (25) | Die eindeutige Referenz, die mit der Transaktion Pay by Bank verbunden ist. |
Antwort
Wenn Sie eine Antwort von TRANSACTIONQUERY erhalten, sollten Sie in erster Linie auf die transactionreference und orderreference, die Sie verwenden können, um die Transaktion korrekt zu identifizieren, so dass Sie den Auftrag in Ihren eigenen Unterlagen aktualisieren können.
Zweitens sollten Sie den Wert des Parameters settlestatus die in der Antwort TRANSACTIONQUERY zurückgegeben wird, da Sie so das Ergebnis der Transaktion bestimmen können:
- 100 ("Abgewickelt") - Der Kunde hat der Transaktion Pay by Bank zugestimmt und die erwerbende Bank hat die Überweisung anschließend genehmigt. Die Gelder werden innerhalb eines Zeitrahmens auf das Bankkonto des Händlers überwiesen, der durch die mit Trust Payments während des Onboarding-Prozesses vereinbarten Bedingungen bestimmt wird.
- 3 ("Storniert") - Die Transaktion wurde storniert.
- 10 ("Schwebend") - Die Transaktion ist schwebend Autorisierung und wird später auf 3 oder 100 aktualisiert, je nachdem, ob die Transaktion Autorisierung erfolgreich war.
Schließlich ist es ratsam, die anderen Felder in der Antwort TRANSACTIONQUERY zu prüfen, um sicherzustellen, dass sie ebenfalls die erwarteten Werte enthalten.
{
"requestreference": "W57-4r9dhbtx",
"version": "1.00",
"response": [
{
"transactionstartedtimestamp": "2021-11-29 14:12:45",
"errormessage": "Ok",
"errorcode": "0",
"records": [
{
"authmethod": "FINAL",
"billingcounty": "Gwynedd",
"transactionstartedtimestamp": "2021-11-29 14:10:04",
"sitereference": "test_site12345",
"billingstreet": "Test Street",
"transactionreference": "57-97-146",
"billingcountryiso2a": "GB",
"billingemail": "test@test.com",
"billingfirstname": "Joe",
"livestatus": "0",
"splitfinalnumber": "1",
"settleduedate": "2021-11-29",
"billingpremise": "123",
"errorcode": "0",
"baseamount": "2000",
"billingtown": "Bangor",
"acquirertransactionreference": "05b3f4d0-feba-4c49-b97f-f126b5871f21",
"billingpostcode": "TR45 6ST",
"merchantname": "Merchant test site",
"paymenttypedescription": "ATA",
"orderreference": "MyOrder123",
"settledtimestamp": "2021-11-29 14:10:04",
"accounttypedescription": "ECOM",
"updatereason": "stgateway",
"requesttypedescription": "AUTH",
"customerip": "1.2.3.4",
"currencyiso3a": "GBP",
"billinglastname": "Bloggs",
"settlebaseamount": "2000",
"errormessage": "Ok",
"interface": "JWT-JWT-JWT",
"operatorname": "webservices@example.com",
"settlestatus": "0",
"customercountryiso2a": "GB",
"customercounty": "Gwynedd",
"customeremail": "test@test.com",
"customerfirstname": "Joe",
"customerlastname": "Bloggs",
"customerpostcode": "TR45 6ST",
"customerpremise": "123",
"customerstreet": "Test Street",
"customertown": "Bangor"
}
],
"found": "1",
"requesttypedescription": "TRANSACTIONQUERY"
}
],
"secrand": "lN"
}
4. Abschluss der Zahlung
Sobald der Kunde von den von seiner Bank gehosteten Seiten zur returnurl auf Ihrer Website gehostet wird, und Sie die oben genannten Schritte zur Bestimmung des Transaktionsstatus durchgeführt haben, müssen Sie eine entsprechende Meldung im Browser des Kunden anzeigen (z. B. Erfolg oder Fehler).
Abrechnung
Der Abrechnung Prozess für Pay by Bank unterscheidet sich von dem Standardprozess bei Kartenzahlungen
Sobald eine Zahlung genehmigt wurde, wird die settlestatus wird auf "100" aktualisiert. Abrechnung wird zu einem späteren Zeitpunkt auf Ihr Bankkonto überwiesen, je nach den Bedingungen und Fristen, die mit Trust Payments während des Einführungsprozesses vereinbart wurden.
In seltenen Fällen kann es vorkommen, dass eine Pay by Bank Transaktion nicht auf settlestatus "100"
Für den unwahrscheinlichen Fall, dass eine Zahlung nach 7 Tagen immer noch aussteht Abrechnung (settlestatus "10"), wird dies zur Untersuchung eingeplant und wir werden Sie mit weiteren Informationen kontaktieren.
Gestaltung des Kundenerlebnisses
Da Ihre Kunden möglicherweise nicht mit Pay by Bank vertraut sind und nicht wissen, wie sie ihre Kaufabwicklung vereinfachen können, empfehlen wir, dies an der Kasse hervorzuheben und die Bequemlichkeit von Pay by Bank zu betonen, da Untersuchungen gezeigt haben, dass Kunden eher bereit sind, sich auf neue Zahlungsmethoden einzulassen.
Wenn Ihr Kunde mit seinem Mobilgerät an der Kasse steht, kann er den Kauf über die auf dem Mobilgerät installierte Banking-App abwickeln, d. h. er muss keine Kartendaten eingeben. Das Verfahren ist so einfach wie die Anmeldung bei der Banking-App, um die Transaktion zu autorisieren. Dazu gehört in der Regel die Eingabe einer PIN oder die Entsperrung über eine biometrische Authentifizierung, z. B. über einen eingebauten Fingerabdruckleser oder eine Gesichtserkennung.
Wir empfehlen außerdem, dass Sie Kunden, die sich für die Zahlung über Pay by Bank entschieden haben, darauf hinweisen, dass sie damit einverstanden sind, ihre Bankdaten an Trust Payments weiterzugeben, wenn sie von ihrer Bank dazu aufgefordert werden, um die Back-Office-Prozesse zu erleichtern.
Verwaltung Ihrer Transaktionen in Portal
Wie bei jeder anderen Zahlungsmethode können alle Pay by Bank -Transaktionen unter Portal eingesehen und verwaltet werden. Bei der Arbeit mit Pay by Bank -Transaktionen ist Folgendes zu beachten:
- Bitte beachten Sie, dass Pay by Bank auf Portal oft als "" angezeigt wird.Pay by Bank", mit einem grünen Hintergrund. Es kann aber auch als "Account to account" angezeigt werden.
Prüfung
Sie müssen Ihre Lösung testen, bevor Sie mit der Verarbeitung von Live-Zahlungen beginnen können. Testtransaktionen werden über Ihr Testsystem Website-Referenz verarbeitet.
Voraussetzungen
Sie müssen sich mit unserem Support-Team in Verbindung setzen und beantragen, dass Ihr Test Website-Referenz so konfiguriert wird, dass er direkt mit der Sandbox-Umgebung verbunden ist. Test-Frameworks und Sandboxen werden individuell mit jedem unserer teilnehmenden Händler vereinbart.
Bei der Durchführung von Testtransaktionen wird die in der Antwort AUTH zurückgegebene Umleitungs-URL Ihren Browser auf die Sandbox-Umgebung umleiten, um den Checkout-Prozess von Pay by Bank zu simulieren. Wir stellen Ihnen die Testanmeldedaten zur Verfügung, die Sie benötigen, um über die Schnittstelle zu gehen.