De volgende inhoud gaat ervan uit dat je de benodigde PCI certificering hebt verkregen om gevoelige kaarthoudergegevens te verwerken en te verzenden in het verzoek naar onze Webservices API.
Lees dit artikel voor meer informatie.
Regels kunnen worden geactiveerd voor individuele JSON-verzoeken door de unieke regel-identifier in het ruleidentifier veld. De in het JSON verzoek gespecificeerde regels zullen ons systeem opdragen bepaalde acties uit te voeren indien aan vooraf gedefinieerde criteria is voldaan (ongeacht of de regels in MyST op actief zijn gezet). Het volgende is een voorbeeldverzoek waarin twee regels STR-1 en UDR-23 zijn gespecificeerd:
#!/usr/bin/python
import securetrading
stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)
auth = {
"sitereference": "test_site12345",
"requesttypedescriptions": ["AUTH"],
"accounttypedescription": "ECOM",
"currencyiso3a": "GBP",
"baseamount": "1050",
"orderreference": "My_Order_123",
"pan": "4111111111111111",
"expirydate": "12/2020",
"securitycode": "123",
"ruleidentifier": ["STR-1","UDR-23"]
}
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(
'sitereference' => 'test_site12345',
'requesttypedescriptions' => array('AUTH'),
'accounttypedescription' => 'ECOM',
'currencyiso3a' => 'GBP',
'baseamount' => '1050',
'orderreference' => 'My_Order_123',
'pan' => '4111111111111111',
'expirydate' => '12/2020',
'securitycode' => '123',
'ruleidentifier' => array('STR-1','UDR-23')
);
$api = \Securetrading\api($configData);
$response = $api->process($requestData);
var_dump($response->toArray());
?>
curl --user webservices@example.com:Password1^ https://webservices.securetrading.net/json/ -H "Content-type: application/json" -H "Accept: application/json" -X POST -d '{
"alias":"webservices@example.com",
"version": "1.00",
"request": [{
"currencyiso3a": "GBP",
"requesttypedescriptions": ["AUTH"],
"sitereference": "test_site12345",
"baseamount": "1050",
"orderreference": "My_Order_123",
"accounttypedescription": "ECOM",
"pan": "4111111111111111",
"expirydate": "12/2020",
"securitycode": "123",
"ruleidentifier": ["STR-1","UDR-23"]
}]}'
Regels kunnen niet worden geërfd in ondergeschikt verzoeken.
Specificatie veld
Veld | Formaat | Beschrijving | |
ruleidentifier XPath: /operatie/regel/@identifier |
Alfanumeriek, inclusief koppeltekens | Zoals in het bovenstaande voorbeeldverzoek wordt getoond, kunt u unieke identificatiecodes opgeven voor regels die op dit verzoek moeten worden toegepast (bv. STR-1). |
Is de actie uitgevoerd?
Als een regel werd toegepast op een verzoek en aan de in de voorwaarde gespecificeerde criteria werd voldaan, waardoor de actie werd geactiveerd, bevat het antwoord extra velden om te bevestigen dat dit heeft plaatsgevonden. Zie het onderstaande voorbeeldantwoord, waarin twee regels werden toegepast en hun acties werden uitgevoerd.
Als niet aan een voorwaarde wordt voldaan, wordt de actie niet uitgevoerd en worden geen extra velden in het antwoord teruggezonden.
{
u 'requestreference': u 'A0bxh87wt',
u 'version': u '1.00',
u 'response': [{
u 'transactionstartedtimestamp': u '2016-12-07 11:32:44',
#### OTHER FIELDS NORMALLY RETURNED IN AUTH RESPONSE ####
u 'rules': [{
u 'ruleidentifier': u 'STR-1',
u 'ruledescription': u 'Auth security code not matched - Merchant decline'
}, {
u 'ruleidentifier': u 'UDR-23',
u 'ruledescription': u 'successful Visa AUTH - server 1'
}],
}]
}
array(3) {
["requestreference"] => string(9) "A3579dkvx"
["version"] => string(4) "1.00"
["response"] => array(1) {
[0] => array(27) {
#### OTHER FIELDS NORMALLY RETURNED IN AUTH RESPONSE ####
["rules"] => array(2) {
[0] => array(2) {
["ruleidentifier"] => string(5) "STR-1"
["ruledescription"] => string(49) "Auth security code not matched - Merchant decline"
}
[1] => array(2) {
["ruleidentifier"] => string(6) "UDR-23"
["ruledescription"] => string(31) "successful Visa AUTH - server 1"
}
}
}
}
}
{
"requestreference": "W23-fjgvn3d8",
"version": "1.00",
"response": [{
#### OTHER FIELDS NORMALLY RETURNED IN AUTH RESPONSE ####
"rules": [
{
"ruleidentifier": "STR-1",
"ruledescription": "Auth security code not matched - Merchant decline"
},
{
"ruleidentifier": "UDR-23",
"ruledescription": "successful Visa AUTH - server 1"
}
],
}],
"secrand": "zO9"
}
Veld | Formaat | Beschrijving | |
regels XPath: /operatie/regel/@identifier |
Als er acties zijn uitgevoerd, worden regels teruggegeven in het antwoord JWT. Dit bevat informatie voor elke regel waar een actie werd uitgevoerd. |
||
ruleidentifier XPath: /operatie/regel/@identifier |
Alfanumeriek, inclusief koppeltekens |
Voor elke regel waar een actie werd uitgevoerd, wordt de unieke regelidentificator (bv. STR-1) teruggestuurd in het antwoord JWT. Wordt altijd teruggegeven als een actie is gestart, anders niet. |
|
ruledescription XPath: /operatie/regel/@identifier |
Alfanumeriek | Voor elke regel waarbij een actie werd uitgevoerd, wordt de regelbeschrijving teruggestuurd in het antwoord JWT. Deze bestaat uit de voorwaarde- en actienaam in een string, beide gescheiden door een koppelteken, zoals in het antwoordvoorbeeld hierboven. |