A kaarsysteemupdate (SCHEMEUPDATE) is een verzoek dat uw systeem handmatig kan indienen bij Trust Payments met behulp van onze Webservices API, in de dagen voorafgaand aan een terugkerende betaling, om te controleren of de opgeslagen betalingsgegevens van de klant nog steeds up-to-date zijn. Als onderdeel van dit proces zullen wij contact opnemen met de systemen Visa Account Updater (VAU) en Mastercard's Automatic Billing Updater (ABU) om te controleren op updates, en eventueel bijgewerkte betalingsgegevens op te slaan op onze beveiligde servers voor toekomstige betalingen.
Vereisten
Dit document moet worden gelezen in combinatie met het document over terugkerende betalingen.
Klik hier om dit document in een nieuw tabblad te openen.
- Wij ondersteunen zowel Visa Account Updater (VAU) als Mastercard's Automatic Billing Updater (ABU) systemen. Daarom zal de kaarsysteemupdate aanvraag alle kaarten van Mastercard en Visa ondersteunen.
- Kaart kaarsysteemupdates wordt alleen ondersteund door deelnemende kaartuitgevers. Als de kaartuitgever geen contact opneemt met Visa of Mastercard om bijgewerkte betalingsgegevens te verstrekken wanneer een nieuwe kaart wordt uitgegeven, kunnen we de bijgewerkte betalingsgegevens niet met succes ophalen.
- Als u dit nog niet hebt gedaan, moet u contact opnemen met ons Support Team voordat u kaarsysteemupdates implementeert. Zij kunnen u helpen bepalen of wij kaarsysteemupdates ondersteunen voor uw acquiring bank en vervolgens de functionaliteit inschakelen op uw site referentie(s).
- Wanneer je kaarsysteemupdates inschakelt, zal ons Support Team ook meldingen configureren die de resultaten van kaarsysteemupdate controles terugsturen naar je systeem (we leggen deze verderop in dit document in meer detail uit):
- Rapporten per e-mail - We sturen een e-mail naar een door jou gekozen adres met een tabel met de resultaten van kaarsysteemupdates, die in de afgelopen 24 uur zijn ontvangen door Trust Payments .
- URL-kennisgevingen - Uw systeem ontvangt een URL-kennisgeving voor elke kaarsysteemupdate, met eventueel bijgewerkte betalingsgegevens.
Procesoverzicht
- Alvorens een nieuwe terugkerende betaling te verwerken, moet uw systeem handmatig een SCHEMEUPDATE verzoek indienen bij Trust Payments via onze Webservices API, en de geretourneerde respons controleren.
Afhankelijk van de acquirer kan de verwerking hiervan een aantal dagen in beslag nemen. Wij raden u aan het SCHEMEUPDATE verzoek drie werkdagen voor de verwerking van een nieuwe betaling in te dienen.
- Wij nemen contact op met Visa of Mastercard - naargelang het geval - en controleren of de betalingsgegevens van de klant up-to-date zijn.
- Visa of Mastercard geeft informatie over de status van de betalingsgegevens van de klant en wij geven die door aan uw systeem via een URL-kennisgeving. Wij slaan de bijgewerkte Betalingstype, het kaartnummer en de vervaldatum op. Deze gegevens worden teruggestuurd naar uw systeem via URL-kennisgeving (het kaartnummer wordt om veiligheidsredenen gemaskeerd).
Zodra uw systeem de URL-kennisgeving betreffende de kaarsysteemupdate heeft ontvangen, kan uw systeem het verzoek AUTH indienen, zoals gedocumenteerd in het document voor terugkerende betalingen.
1. Dien de kaarsysteemupdate
Uw systeem zal handmatig een SCHEMEUPDATE verzoek indienen en vervolgens het teruggestuurde antwoord parseren en interpreteren.
Verwerk niet meerdere kaarsysteemupdates met betrekking tot dezelfde betalingsgegevens
Het kan een aantal dagen duren voordat de controles zijn afgerond (wij raden u aan maximaal drie werkdagen de tijd te nemen). Wacht tot u de URL-kennisgeving met de resultaten van de controles van de kaarsysteemupdate hebt ontvangen voordat u een nieuw verzoek indient.
SCHEMEUPDATE verzoekvoorbeeld
#!/usr/bin/python
import securetrading
stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)
schemeupdate = {
"sitereference": "test_site12345",
"requesttypedescriptions": ["SCHEMEUPDATE"],
"parenttransactionreference": "23-9-80000"
}
strequest = securetrading.Request()
strequest.update(schemeupdate)
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(
'sitereference' => 'test_site12345',
'requesttypedescriptions' => array('SCHEMEUPDATE'),
'parenttransactionreference' => '23-9-80000'
);
$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": [{
"sitereference": "test_site12345",
"requesttypedescriptions": ["SCHEMEUPDATE"],
"parenttransactionreference": "23-9-80000"
}]
}'
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"sitereference":"test_site12345",
"requesttypedescriptions":["SCHEMEUPDATE"],
"parenttransactionreference":"23-9-80000"
}]
}
<requestblock version="3.67">
<alias>webservices@example.com</alias>
<request type="SCHEMEUPDATE">
<operation>
<parenttransactionreference>23-9-80000</parenttransactionreference>
<sitereference>test_site12345</sitereference>
</operation>
</request>
</requestblock>
Vervang <DOMAIN>
met een ondersteund domein. Klik hier voor een volledige lijst.
Specificatie veld
Veld | Formaat | Beschrijving | |
parenttransactionreference XPath: /operation/parenttransactionreference |
Alfanumeriek en koppeltekens (25) |
U moet de Transactiereferentie van de oorspronkelijke AUTH transactie indienen (de "bovengeschikte" aanvraag, zoals beschreven in het document over terugkerende betalingen).
Wij erven de opgeslagen betalingsgegevens van deze transactie en sturen deze naar het betreffende kaartsysteem om te controleren of er updates zijn. |
|
requesttypedescriptions XPath: /@type |
Alpha (20) | U moet "SCHEMEUPDATE" indienen, zoals in het verzoekvoorbeeld. | |
sitereference XPath: /operation/sitereference |
Alfanumeriek & underscore (50) |
De site referentie heeft betrekking op uw individuele account die u bij de installatie hebt ontvangen. Als u uw site referentie niet kent, neem dan contact op met ons Support Team. |
SCHEMEUPDATE antwoordvoorbeeld
{
u 'requestreference': u 'A0bxh87wt',
u 'version': u '1.00',
u 'responses': [{
u 'transactionstartedtimestamp': u '2018-11-28 11:18:01',
u 'parenttransactionreference': u '72-9-80001',
u 'credentialsonfile': u '1',
u 'livestatus': u '0',
u 'merchantcategorycode': u '0000',
u 'issuer': u 'Test Issuer',
u 'dccenabled': u '0',
u 'settleduedate': u '2018-11-28',
u 'errorcode': u '0',
u 'tid': u '27882788',
u 'merchantnumber': u '00000000',
u 'merchantcountryiso2a': u 'GB',
u 'transactionreference': u '72-9-80002',
u 'merchantname': u 'Test Merchant',
u 'paymenttypedescription': u 'VISA',
u 'baseamount': u '100',
u 'accounttypedescription': u 'ECOM',
u 'requesttypedescription': u 'SCHEMEUPDATE',
u 'currencyiso3a': u 'GBP',
u 'maskedpan': u '411111######1111',
u 'errormessage': u 'Ok',
u 'issuercountryiso2a': u 'US',
u 'settlestatus': u '0'
}]
}
array(3) {
["requestreference"] => string(9) "A3579dkvx"
["version"] => string(4) "1.00"
["responses"] => array(1) {
[0] => array(23) {
["transactionstartedtimestamp"] => string(19) "2018-11-28 11:18:01"
["parenttransactionreference"] => string(10) "72-9-80001"
["credentialsonfile"] => string(1) "1"
["livestatus"] => string(1) "0"
["merchantcategorycode"] => string(4) "0000"
["issuer"] => string(16) "Test Issuer"
["dccenabled"] => string(1) "0"
["settleduedate"] => string(10) "2018-11-28"
["errorcode"] => string(1) "0"
["tid"] => string(8) "27882788"
["merchantnumber"] => string(8) "00000000"
["merchantcountryiso2a"] => string(2) "GB"
["transactionreference"] => string(10) "72-9-80002"
["merchantname"] => string(13) "Test Merchant"
["paymenttypedescription"] => string(4) "VISA"
["baseamount"] => string(3) "100"
["accounttypedescription"] => string(4) "ECOM"
["requesttypedescription"] => string(12) "SCHEMEUPDATE"
["currencyiso3a"] => string(3) "GBP"
["maskedpan"] => string(16) "411111######1111"
["errormessage"] => string(2) "Ok"
["issuercountryiso2a"] => string(2) "US"
["settlestatus"] => string(1) "0"
}
}
}
{
"requestreference":"W23-fjgvn3d8",
"version":"1.00",
"response":[{
"transactionstartedtimestamp":"2018-11-28 11:18:01",
"parenttransactionreference":"72-9-80001",
"credentialsonfile":"1",
"livestatus":"0",
"merchantcategorycode":"0000",
"issuer":"SecureTrading Test Issuer1",
"dccenabled":"0",
"settleduedate":"2018-11-28",
"errorcode":"0",
"tid":"27882788",
"merchantnumber":"00000000",
"merchantcountryiso2a":"GB",
"transactionreference":"72-9-80002",
"merchantname":"Test Merchant",
"paymenttypedescription":"VISA",
"baseamount":"100",
"accounttypedescription":"ECOM",
"requesttypedescription":"SCHEMEUPDATE",
"currencyiso3a":"GBP",
"maskedpan":"411111######1111",
"errormessage":"Ok",
"issuercountryiso2a":"US",
"settlestatus":"0"
}],
"secrand":"zO9"
}
<responseblock version="3.67">
<requestreference>X12345</requestreference>
<response type="SCHEMEUPDATE">
<merchant>
<merchantcategorycode>0000</merchantcategorycode>
<tid>00000000</tid>
<merchantnumber>00000000</merchantnumber>
<merchantcountryiso2a>GB</merchantcountryiso2a>
<merchantname>Merchant test site</merchantname>
</merchant>
<transactionreference>72-5-118</transactionreference>
<billing>
<amount currencycode="GBP">1234</amount>
<payment type="VISA">
<pan>411111######0211</pan>
<issuercountry>ZZ</issuercountry>
<issuer>Test Issuer</issuer>
</payment>
<dcc enabled="0"/>
</billing>
<timestamp>2019-09-19 12:26:06</timestamp>
<error>
<message>Ok</message>
<code>0</code>
</error>
<live>0</live>
<operation>
<parenttransactionreference>72-5-117</parenttransactionreference>
<accounttypedescription>ECOM</accounttypedescription>
<credentialsonfile>1</credentialsonfile>
</operation>
<settlement>
<settleduedate>2019-09-19</settleduedate>
<settlestatus>0</settlestatus>
</settlement>
</response>
<secrand>Yb3SR5Pq</secrand>
</responseblock>
Als het antwoord errorcode = "0" en settlestatus = "0", geeft aan dat uw verzoek succesvol was.
Als dit niet het geval is, moet u kijken naar de errorcode en errormessage waarden om het probleem op te lossen.
2. Trust Payments neemt contact op met de kaartsystemen
- Trust Payments verzamelt alle betalingsgegevens waarvoor kaarsysteemupdates is aangevraagd en stuurt dagelijks een batch met deze gegevens naar de kaartsystemen.
- Zodra de betalingsgegevens bij de kaartsystemen zijn ingediend, worden de settlestatus van elke SCHEMEUPDATE wordt bijgewerkt tot "10".
- Nadat de kaartsystemen de nodige informatie over eventuele wijzigingen in de betalingsgegevens hebben verzameld, sturen zij de resultaten van hun controles terug naar Trust Payments.
Wij raden u aan drie werkdagen de tijd te nemen om dit proces te voltooien.
Daarom raden wij ook aan om drie dagen voordat terugkerende betalingen moeten worden uitgevoerd, SCHEMEUPDATE aanvragen te doen.
- Zodra wij een antwoord van de kaartsystemen hebben ontvangen, wordt de settlestatus van elke SCHEMEUPDATE wordt bijgewerkt tot hun definitieve staat:
- "100" als de controles met succes zijn voltooid.
- "3" als de controles een probleem opleverden.
3. Behandeling van het antwoord
- Na voltooiing ontvangt u een URL-kennisgeving voor elk SCHEMEUPDATE verzoek dat is ingediend. We e-mailen je ook dagelijkse rapporten die de resultaten van kaarsysteemupdates samenvatten. Zie hieronder voor meer informatie.
- Als de settlestatus van de SCHEMEUPDATE is bijgewerkt tot "100", betekent dit dat de controles met succes zijn uitgevoerd, en als de betalingsgegevens zijn bijgewerkt, worden onze eigen records bijgewerkt om altijd de meest recente informatie te gebruiken voor alle toekomstige geplande betalingen.
- Als de settlestatus in plaats daarvan is bijgewerkt tot "3", geeft dit aan dat de controles op kaarsysteemupdate een probleem hebben opgeleverd dat moet worden opgelost voordat verdere terugkerende betalingen met de klant worden verwerkt. Uw systeem moet de volgende aanvullende controles uitvoeren:
- Als de settlestatus is "3" en de errorcode wordt weergegeven als "70000", betekent dit dat het kaartsysteem een verzoek van de klant heeft gehad om verdere terugkerende betalingen te stoppen. U moet stoppen met het verwerken van verdere terugkerende betalingen in de reeks. Wij raden u aan contact op te nemen met de klant voor opheldering van de situatie.
- Als de settlestatus is "3" en de errorcode is niet "70000" betekent dat er een probleem is opgetreden bij het uitvoeren van de controles, wat handmatig onderzoek vereist. U moet onze lijst met foutcodes raadplegen om de oorzaak van de fout te bepalen en het antwoord op de juiste manier af te handelen.
Voor meer informatie over de resultaten van kaarsysteemupdate controles kunt u de volgende velden bekijken (de beschikbaarheid van deze informatie is afhankelijk van uw acquiring bank):
Veld | Formaat | Beschrijving |
acquireradvicecode | Numeriek (1) |
Een numerieke waarde die wordt geretourneerd na een verzoek om herhaalde betaling en die aangeeft of verdere betalingen kunnen worden verwerkt.
In kaart brengen:
|
acquirerresponsecode | Alfanumeriek (255) |
Gebruikt door uw verwerver om het resultaat van het verzoek aan te geven.
|
acquirerresponsemessage | Alfanumeriek (255) |
- Alle toekomstige terugkerende betalingen die worden verwerkt vanuit de oorspronkelijke bovengeschikte transactie in het SCHEMEUPDATE verzoek zullen automatisch de laatste betalingsgegevens gebruiken.
- Zodra de kaarsysteemupdates zijn uitgevoerd, raden we aan om de terugkerende betaling binnen 6 dagen uit te voeren, om de kans te verkleinen dat de betalingsgegevens worden bijgewerkt voordat de laatste betalingen zijn verwerkt.
In het belang van een nauwkeurige registratie van uw transactiegeschiedenis zullen wij nooit de betalingsgegevens van eerder verwerkte transacties wijzigen met bijgewerkte gegevens, als onderdeel van het kaarsysteemupdate proces.
Met andere woorden, als je een eerder verwerkte terugkerende betaling bekijkt in MyST, zie je altijd de betalingsgegevens die zijn gebruikt om die specifieke transactie mogelijk te maken, in plaats van de meest recente betalingsgegevens die zijn opgehaald door kaarsysteemupdates.
Over meldingen
De resultaten van kaarsysteemupdate controles worden naar uw systeem teruggestuurd via meldingen:
URL-kennisgeving
U moet contact opnemen met ons Support Team om URL-meldingen in te schakelen die automatisch worden verzonden na elk ingediend kaarsysteemupdate verzoek. U moet uw site referentie opgeven en het URL-eindpunt waarnaar de melding wordt verzonden.
Na de configuratie bevat de ontvangen URL-kennisgeving de bijgewerkte betalingsgegevens (Betalingstype, vervaldatum en gemaskeerd kaartnummer). Als de betalingsgegevens niet zijn bijgewerkt, worden de bestaande betalingsgegevens teruggestuurd. U moet deze meldingen parseren en een antwoord terugsturen naar Trust Payments. Klik hier voor meer informatie over URL-kennisgevingen.
Verslag per e-mail
Om e-mailmeldingen in te schakelen, moet u contact opnemen met ons Support Team om URL-meldingen in te schakelen die automatisch worden verzonden na elk ingediend kaarsysteemupdate verzoek. U moet uw site referentie opgeven en het URL-eindpunt waarnaar de melding zal worden verzonden.
Eenmaal ingeschakeld, ontvangt u een e-mail van no-reply@trustpayments.com voor elke dag dat Trust Payments resultaten ontvangt voor kaarsysteemupdate controles van Visa Account Updater (VAU) en Mastercard's Automatic Billing Updater (ABU) systemen, inclusief bijgewerkte betalingsgegevens (Betalingstype, vervaldatum en gemaskeerd kaartnummer). Ze worden gepresenteerd in de vorm van een tabel. U ontvangt maximaal één e-mail per dag (als er geen updates zijn, ontvangt u geen e-mail).
De e-mail wordt verzonden van no-reply@trustpayments.com. Voeg een regel of filter toe aan uw e-mailprogramma om te voorkomen dat de e-mails als junkmail / spam worden geclassificeerd.
"Gestopt" abonnement e-mail rapport
Om e-mailmeldingen in te schakelen, moet u contact opnemen met ons Support Team om URL-meldingen in te schakelen die automatisch worden verzonden na elk ingediend kaarsysteemupdate verzoek. U moet uw site referentie opgeven en het URL-eindpunt waarnaar de melding zal worden verzonden.
Eenmaal ingeschakeld, ontvangt u een e-mail van no-reply@trustpayments.com voor elke dag dat Trust Payments verzoeken ontvangt om actieve abonnementen stop te zetten, van Visa Account Updater (VAU) en Mastercard's Automatic Billing Updater (ABU) systemen. Ze worden gepresenteerd in de vorm van een tabel. U ontvangt maximaal één e-mail per dag (als er geen updates zijn, ontvangt u geen e-mail).
De e-mail wordt verzonden van no-reply@trustpayments.com. Voeg een regel of filter toe aan uw e-mailprogramma om te voorkomen dat de e-mails als junkmail / spam worden geclassificeerd.