Een Payment Facilitator is een entiteit die de betalingsverwerking faciliteert voor gesponsorde submerchants die kaartbetalingen accepteren. De Payment Facilitator is eigenaar van de relatie met hun gesponsorde submerchants en ontvangt financiering voor de verwerkte transacties, en financiert vervolgens de gesponsorde submerchants dienovereenkomstig. Deze pagina specificeert de veldnamen die Trust Payments Payment Facilitator-klanten moeten opnemen in verzoeken die naar de Trust Payments gateway worden gestuurd. Neem voor meer informatie over het worden van een Payment Facilitator contact op met ons commerciële team.
Betalingsfacilitatorvelden in een verzoek opnemen
Indien niet aan deze vereisten wordt voldaan, wordt een fout in het ongeldige veld teruggezonden (30000).
Het volgende is een voorbeeld van een verzoek waarin betalingsfacilitatorvelden zijn opgenomen:
U moet de payload ingediend binnen uw JWT om extra velden op te nemen, zoals hieronder getoond. Als u de velden van de betalingsfacilitator op deze manier indient, worden waarden die op uw account zijn opgeslagen of van een bovengeschikte zijn geërfd, altijd overschreven.
(Payload)
{
"payload":{
"accounttypedescription":"ECOM",
"baseamount":"1050",
"currencyiso3a":"GBP",
"sitereference":"test_site12345",
"pan":"4900490000000501",
"expirydate":"12/2030",
"securitycode":"123",
"facilitatorid":"987654",
"facilitatorname":"FAC",
"submerchantid":"999999999999999",
"chargedescription":"Test Sub Mer Name",
"merchantstreet":"1 Test Street",
"merchantcity":"Test City",
"merchantzipcode":"TR45 6ST",
"merchantcountryiso2a":"GB",
"requesttypedescriptions":["THREEDQUERY","AUTH"]
},
"iat":1559033849,
"iss":"jwt.user"
}
Het volgende is een voorbeeld van een verzoek waarin betalingsfacilitatorvelden zijn opgenomen:
U moet het verzoek dat is ingediend bij Trust Payments bijwerken om extra velden op te nemen, zoals hieronder getoond. Als u de velden van de betalingsfacilitator op deze manier indient, worden waarden die op uw account zijn opgeslagen of van een bovengeschikte verzoek zijn geërfd, altijd overschreven.
(Voorbeeld)
#!/usr/bin/python
import securetrading
stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)
auth = {
"currencyiso3a": "GBP",
"requesttypedescriptions": ["AUTH"],
"sitereference": "test_site12345",
"baseamount": "1050",
"accounttypedescription": "MOTO",
"pan": "4111111111111111",
"expirydate": "12/2030",
"securitycode": "123",
"facilitatorid": "987654",
"facilitatorname": "FAC",
"submerchantid": "999999999999999",
"chargedescription": "Test Sub Mer Name",
"merchantstreet": "1 Test Street",
"merchantcity": "Test City",
"merchantzipcode": "TR45 6ST",
"merchantcountryiso2a": "GB"
}
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(
'currencyiso3a' => 'GBP',
'requesttypedescriptions' => array('AUTH'),
'sitereference' => 'test_site12345',
'baseamount' => '1050',
'accounttypedescription' => 'MOTO',
'pan' => '4111111111111111',
'expirydate' => '12/2030',
'securitycode' => '123',
'facilitatorid' => '987654',
'facilitatorname' => 'FAC',
'submerchantid' => '999999999999999',
'chargedescription' => 'Test Sub Mer Name',
'merchantstreet' => '1 Test Street',
'merchantcity' => 'Test City',
'merchantzipcode' => 'TR45 6ST',
'merchantcountryiso2a' => 'GB'
);
$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": [{
"currencyiso3a": "GBP",
"requesttypedescriptions": ["AUTH"],
"sitereference": "test_site12345",
"baseamount": "1050",
"accounttypedescription": "MOTO",
"pan": "4111111111111111",
"expirydate": "12/2030",
"securitycode": "123",
"facilitatorid": "987654",
"facilitatorname": "FAC",
"submerchantid": "999999999999999",
"chargedescription": "Test Sub Mer Name",
"merchantstreet": "1 Test Street",
"merchantcity": "Test City",
"merchantzipcode": "TR45 6ST",
"merchantcountryiso2a": "GB"
}]
}'
{
"alias":"webservices@example.com",
"version":"1.00",
"request":[{
"currencyiso3a":"GBP",
"requesttypedescriptions":["AUTH"],
"sitereference":"test_site12345",
"baseamount":"1050",
"accounttypedescription":"MOTO",
"pan":"4111111111111111",
"expirydate":"12/2030",
"securitycode":"123",
"facilitatorid":"987654",
"facilitatorname":"FAC",
"submerchantid":"999999999999999",
"chargedescription":"Test Sub Mer Name",
"merchantstreet":"1 Test Street",
"merchantcity":"Test City",
"merchantzipcode":"TR45 6ST",
"merchantcountryiso2a":"GB"
}]
}
<requestblock version="3.67" >
<alias>webservices@example.com</alias>
<request type="AUTH">
<operation>
<sitereference>test_site12345</sitereference>
<accounttypedescription>MOTO</accounttypedescription>
</operation>
<merchant>
<facilitatorid>987654</facilitatorid>
<facilitatorname>FAC</facilitatorname>
<submerchantid>999999999999999</submerchantid>
<chargedescription>Test Sub Mer Name</chargedescription>
<merchantstreet>1 Test Street</merchantstreet>
<merchantcity>Test City</merchantcity>
<merchantzipcode>TR45 6ST</merchantzipcode>
<merchantcountryiso2a>GB</merchantcountryiso2a>
</merchant>
<billing>
<amount currencycode="GBP">1050</amount>
<payment type="VISA">
<expirydate>12/2030</expirydate>
<pan>4111111111111111</pan>
<securitycode>123</securitycode>
</payment>
</billing>
</request>
</requestblock>
Specificatie veld
Alle onderstaande velden worden in het antwoord geretourneerd als ze worden doorgestuurd naar de wervende bank.
Veld | Formaat | Beschrijving | |
chargedescription XPath: /merchant/chargedescription |
Alfanumeriek, inclusief spaties en speciale tekens (25) |
De charge description is een veld dat we tijdens een transactie aan de wervende bank verstrekken. U moet de subNaam verkoper in dit veld invoeren. |
|
expirydate XPath: /billing/payment/expirydate |
Datum MM/JJJJ | De op de kaart gedrukte vervaldatum. | |
facilitatorid XPath: /merchant/facilitatorid |
Numeriek (11) |
De id van de betalingsfacilitator die door Visa/Mastercard is toegewezen op het moment van registratie. Merk op dat er afzonderlijke ID's worden toegewezen door Visa en Mastercard. |
|
facilitatorname XPath: /merchant/facilitatorname |
Alfanumeriek, inclusief spaties en speciale tekens (3, 7 of 12) |
De naam of verkorte naam van de betalingsfacilitator is overeengekomen met Visa/Mastercard. (Dit staat voor de gesponsorde subNaam verkoper gevolgd door een * op de bankafschriften van de kaarthouder. Bijv. "FAC*Test Sub Mer Name") |
|
merchantcity XPath: /merchant/merchantcity |
Alfanumeriek (13) |
Gesponsorde onderhandelaarstad of -stad. |
|
merchantcountryiso2a XPath: /merchant/merchantcountryiso2a |
Alpha (2) |
ISO2A-landcode van gesponsorde submerkeigenaar. |
|
merchantstreet XPath: /merchant/merchantstreet |
Alfanumeriek (33) |
Sponsored sub-merchant straatadres. |
|
merchantzipcode XPath: /merchant/merchantzipcode |
Alfanumeriek (10) |
Gesponsorde postcode van subwinkelier. Dit moet een geldige postcode zijn voor de merchantcountryiso2a ingediend. |
|
pan XPath: /billing/payment/pan |
Numeriek (12-19) | Dit is het lange nummer dat op de voorzijde van de kaart van de klant is gedrukt. | |
submerchantid XPath: /merchant/submerchantid |
Alfanumeriek, inclusief spaties en speciale tekens (15) |
Identificatiecode gesponsorde subhandelaar toegewezen door de betaalfacilitator. Moet uniek zijn voor elke gesponsorde submerchant. |
|
independentsalesorgid XPath: /merchant/independentsalesorgid |
Numeriek (11) |
De ISO (Independent Sales Organisation) id die bij de registratie door Mastercard wordt toegewezen. |
|
securitycode XPath: /billing/payment/securitycode |
Numeriek (3-4) |
Dit is de 3-cijferige beveiligingscode die op de achterkant van de kaart staat.
(Voor AMEX kaarten is dit een 4-cijferige code op de voorkant van de kaart) Dit veld is niet strikt vereist door Trust Payments, maar het wordt sterk aanbevolen voor de verwerking van de veiligheidscodecontroles. Bovendien kunnen sommige banken de betaling weigeren als de beveiligingscode niet aanwezig is. |
Verwante artikelen
JavaScript Library
De JavaScript Library is een verzameling kant-en-klare code die het proces van het accepteren van kaartbetalingen van je klanten vereenvoudigt.
AUTH Specificatie
Dit artikel bevat codevoorbeelden en veldspecificaties voor standaard autorisatie verzoeken die worden verwerkt via onze Webservices API.