Bitte beachten Sie die folgenden Hinweise:
Für Payment Pages, JavaScript- oder Mobile-SDK-Integrationen
Wenn Sie Payouts Google Pay Integrationen entwickeln, bei denen unsere gehosteten Payment Pages JavaScript-Lösungen zum Einsatz kommen, können Sie payouts nur payouts einer parenttransactionreference einer früheren Transaktion verarbeiten.
Reichen Sie einen REFUND ein, der die parenttransactionreference einer früheren Transaktion, aus der Sie die Google Pay übernehmen möchten.
#!/usr/bin/python
import securetrading
stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)
payout= {
"accounttypedescription": "CFT",
"baseamount": "1",
"currencyiso3a": "GBP",
"parenttransactionreference": "1-2-345678",
"requesttypedescriptions": ["REFUND"],
"sitereference": "site12346"
}
strequest = securetrading.Request()
strequest.update(payout)
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(
'accounttypedescription' => 'CFT',
'baseamount' => '1',
'currencyiso3a' => 'GBP',
'parenttransactionreference' => '1-2-345678',
'requesttypedescriptions' => array('REFUND'),
'sitereference' => 'site12346'
);
$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": [{
"accounttypedescription": "CFT",
"baseamount": "1",
"currencyiso3a": "GBP",
"parenttransactionreference": "1-2-345678",
"requesttypedescriptions": ["REFUND"],
"sitereference": "site12346"
}]
}'
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"accounttypedescription":"CFT",
"baseamount":"1",
"currencyiso3a":"GBP",
"parenttransactionreference": "1-2-345678",
"requesttypedescriptions":["REFUND"],
"sitereference":"site12346"
}]
}
<requestblock version="3.67">
<alias>webservices@example.com</alias>
<request type="REFUND">
<billing>
<amount currencycode="GBP">1</amount>
</billing>
<operation>
<accounttypedescription>CFT</accounttypedescription>
<parenttransactionreference>1-2-345678</parenttransactionreference>
<sitereference>site12346</sitereference>
</operation>
</request>
</requestblock>
Ersetzen Sie <DOMAIN> mit einer unterstützten Domäne. Vollständige Domainliste anzeigen.
payout die payout abgelehnt, kann dies daran liegen, dass das in Ihrer Anfrage angegebene Google Pay gelöscht oder aktualisiert wurde. In diesem Fall:
- Führen Sie eine neue Zahlung oder account check durch, account check die Google Pay des Karteninhabers erneut zu erfassen.
- Rufen Sie die neue transactionreference aus der Antwort.
- Reichen Sie über diesen Link einen neuen payout ein transactionreference als parenttransactionreferenceein.
Sollte die payout weiterhin abgelehnt payout , sollte sich der Karteninhaber an seinen Kartenaussteller wenden, um Unterstützung zu erhalten.
Für API-Integrationen mit Google Pay
Wenn Sie Payouts Integrationen entwickeln, die Transaktionen Google Pay über Google Pay abwickeln, befolgen Sie bitte die folgenden Anweisungen:
Zahlungsangaben aus der Antwort Google Pay :
-
pan
Abgebildet von:
verschlüsselteNachricht ≫ ZahlungsmethodenDetails ≫ pan -
expirydate
Gemappt von:
encryptedMessage ≫ paymentMethodDetails ≫ expirationMonth/expirationYear -
walletdisplayname
Gemappt von:
paymentMethodData ≫ info
Wenn Sie beabsichtigen, die Rechnungs- und Lieferdaten des Kunden aus dessen Google Wallet zu erfassen, müssen Sie außerdem die Antwort der Google-API nach diesen Feldern durchsuchen und diese den entsprechenden Feldern in der nachfolgenden Anfrage zuordnen.
Beispiel anfordern
#!/usr/bin/python
import securetrading
stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)
auth = {
"accounttypedescription":"CFT",
"baseamount":"2000",
"currencyiso3a":"GBP",
"expirydate":"07/2026",
"pan":"5100000000000511",
"requesttypedescriptions": ["REFUND"],
"sitereference": "test_site12345",
"walletdisplayname":"MasterCard 0511",
"orderreference":"My_Order_123",
"walletsource":"GOOGLEPAY"
}
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(
'accounttypedescription' => 'CFT',
'baseamount' => '2000',
'currencyiso3a' => 'GBP',
'expirydate' => '07/2026',
'pan' => '5100000000000511',
'requesttypedescriptions' => ["REFUND"],
'sitereference' => 'test_site12345',
'walletdisplayname' => 'MasterCard 0511',
'orderreference' => 'My_Order_123',
'walletsource' => 'GOOGLEPAY'
);
$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": [{
"accounttypedescription":"CFT",
"baseamount":"2000",
"currencyiso3a":"GBP",
"expirydate":"07/2026",
"pan":"5100000000000511",
"requesttypedescriptions":["REFUND"],
"sitereference": "test_site12345",
"walletdisplayname":"MasterCard 0511",
"orderreference":"My_Order_123",
"walletsource":"GOOGLEPAY"
}]
}'
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"accounttypedescription":"CFT",
"baseamount":"2000",
"currencyiso3a":"GBP",
"expirydate":"07/2026",
"pan":"5100000000000511",
"requesttypedescriptions":["REFUND"],
"sitereference": "test_site12345",
"walletdisplayname":"MasterCard 0511",
"orderreference":"My_Order_123",
"walletsource":"GOOGLEPAY"
}]
}
<requestblock version="3.67">
<alias>webservices@example.com</alias>
<request type="REFUND">
<billing>
<payment>
<expirydate>07/2026</expirydate>
<pan>5100000000000511</pan>
<wallet>
<displayname>MasterCard 0511</displayname>
<source>GOOGLEPAY</source>
</wallet>
</payment>
<amount currencycode="GBP">2000</amount>
</billing>
<merchant>
<orderreference>My_Order_123</orderreference>
</merchant>
<operation>
<sitereference>test_site12345</sitereference>
<accounttypedescription>CFT</accounttypedescription>
</operation>
</request>
</requestblock>
payout die payout abgelehnt, sollte sich der Karteninhaber an seinen Kartenaussteller wenden, um Unterstützung zu erhalten.
Nützliche Ressourcen
Wenn CRYPTOGRAM_3DS zurückgegeben wird authMethodzurückgegeben wird, müssen Sie keine 3-D secure Authentifizierung durchführen.
Nach der Antwort von Google Pay sollten Ihnen die unten aufgeführten Felder vorliegen, die für die nachfolgende Anfrage erforderlich sind:
Zahlungsangaben aus der Antwort Google Pay :
-
pan
Abgebildet von:
verschlüsselteNachricht ≫ ZahlungsmethodenDetails ≫ pan -
expirydate
Gemappt von:
encryptedMessage ≫ paymentMethodDetails ≫ expirationMonth/expirationYear -
walletdisplayname
Gemappt von:
paymentMethodData ≫ info -
tavv
Gemappt von:
encryptedMessage ≫ paymentMethodDetails ≫ cryptogram -
eci
Abgebildet von:
encryptedMessage ≫ paymentMethodDetails ≫ eciIndicator
Wenn Sie beabsichtigen, die Rechnungs- und Lieferdaten des Kunden aus dessen Google Wallet zu erfassen, müssen Sie außerdem die Antwort der Google-API nach diesen Feldern durchsuchen und diese den entsprechenden Feldern in der nachfolgenden Anfrage zuordnen.
Beispiel anfordern
#!/usr/bin/python
import securetrading
stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)
auth = {
"accounttypedescription":"CFT",
"baseamount":"2000",
"currencyiso3a":"GBP",
"eci":"2",
"expirydate":"07/2026",
"pan":"5100000000000511",
"requesttypedescriptions": ["REFUND"],
"sitereference":"test_site12345",
"tavv":"ALFoEd4DhmGzAIj3dUo4AoABFA==",
"tokenisedpayment":"1",
"tokentype":"GOOGLEPAY",
"walletdisplayname":"MasterCard 0511",
"walletsource":"GOOGLEPAY"
}
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(
'accounttypedescription' => 'CFT',
'baseamount' => '2000',
'currencyiso3a' => 'GBP',
'eci' => '2',
'expirydate' => '07/2026',
'orderreference' => 'My_Order_123',
'pan' => '5100000000000511',
'requesttypedescriptions' => array('REFUND'),
'sitereference' => 'test_site12345',
'tavv' => 'ALFoEd4DhmGzAIj3dUo4AoABFA==',
'tokenisedpayment' => '1',
'tokentype' => 'GOOGLEPAY',
'walletdisplayname' => 'MasterCard 0511',
'walletsource' => 'GOOGLEPAY'
);
$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": [{
"accounttypedescription":"CFT",
"baseamount":"2000",
"currencyiso3a":"GBP",
"eci":"2",
"expirydate":"07/2026",
"orderreference": "My_Order_123",
"pan":"5100000000000511",
"requesttypedescriptions": ["REFUND"],
"sitereference": "test_site12345",
"tavv":"ALFoEd4DhmGzAIj3dUo4AoABFA==",
"tokenisedpayment":"1",
"tokentype":"GOOGLEPAY",
"walletdisplayname":"MasterCard 0511",
"walletsource":"GOOGLEPAY"
}]
}'
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"accounttypedescription":"CFT",
"baseamount":"2000",
"currencyiso3a":"GBP",
"eci":"2",
"expirydate":"07/2026",
"orderreference": "My_Order_123",
"pan":"5100000000000511",
"requesttypedescriptions": ["REFUND"],
"sitereference": "test_site12345",
"tavv":"ALFoEd4DhmGzAIj3dUo4AoABFA==",
"tokenisedpayment":"1",
"tokentype":"GOOGLEPAY",
"walletdisplayname":"MasterCard 0511",
"walletsource":"GOOGLEPAY"
}]
}
<requestblock version="3.67">
<alias>webservices@example.com</alias>
<request type="REFUND">
<billing>
<payment>
<expirydate>07/2026</expirydate>
<pan tokenised="1" tokentype="GOOGLEPAY">5100000000000511</pan>
<wallet>
<displayname>MasterCard 0511</displayname>
<source>GOOGLEPAY</source>
</wallet>
</payment>
<amount currencycode="GBP">2000</amount>
</billing>
<merchant>
<orderreference>My_Order_123</orderreference>
</merchant>
<operation>
<sitereference>test_site12345</sitereference>
<accounttypedescription>CFT</accounttypedescription>
</operation>
<threedsecure>
<eci>2</eci>
<tavv>ALFoEd4DhmGzAIj3dUo4AoABFA==</tavv>
</threedsecure>
</request>
</requestblock>
payout die payout abgelehnt, sollte sich der Karteninhaber an seinen Kartenaussteller wenden, um Unterstützung zu erhalten.