Verwerken van Dynamic Munt Conversion (DCC) betalingen met behulp van onze API

Het volgende proces vereist de implementatie van een oplossing die gebruik maakt van onze Webservices API om de Munt conversie uit te voeren en onze JavaScript Library om de betaling te verwerken.

Het gebruik van Webservices API impliceert de directe verwerking van gevoelige kaarthoudergegevens op uw server en is als zodanig onderworpen aan strengere PCI-normen. Zorg ervoor dat u de noodzakelijke certificering heeft verkregen voordat u verder gaat.

Als u niet zeker bent, neem dan contact op met ons Support Team voor hulp.

Controleer voordat u verdergaat of u aan alle vereisten voor verwerking voldoet DCC
Klik hier om deze informatie in een nieuw tabblad te openen

Dynamische Munt Conversie (DCC) is een functie waarmee klanten de betaling kunnen voltooien in hun Munt of uw lokale Munt. De bedragen worden berekend met behulp van een externe aanbieder van omrekeningskoersen met actuele omrekeningskoersen.

 

Procesoverzicht

In onze DCC documentatie verwijzen we naar de Munt van de klant en de Munt van de handelaar. Deze zijn als volgt gedefinieerd:

  • De Munt van de klant - de Munt die aan zijn kaart is gekoppeld.
  • De Munt van de handelaar - de lokale Munt verbonden aan uw rekening.

De DCC betalingsstroom kan worden opgesplitst in drie hoofdonderdelen, zoals hieronder weergegeven:

1. Dien CURRENCYRATE aanvraag in

Uw afrekenformulier moet de klant vragen om zijn kaart- en factuurgegevens (dit proces volgt de standaard betalingsstroom). Stuur deze gegevens, samen met het transactiebedrag, in een CURRENCYRATE verzoek, met behulp van onze Webservices API.

2. Ontvang CURRENCYRATE antwoord

Wij nemen contact op met uw aanbieder van omrekeningskoersen om de laatste omrekeningskoers te verkrijgen tussen de Munt van de klant en de Munt van de handelaar. Wij sturen een CURRENCYRATE antwoord terug dat het bedrag bevat in zowel de Munt van de klant als de Munt van de handelaar.

3. Verwerk transactie

U moet de klant dan de keuze bieden tussen de Munt van de klant of de Munt van de handelaar om de betaling af te ronden. U moet ervoor zorgen dat uw afrekeningsformulier is aangepast om te verwijzen naar onze JavaScript Library, en dat de payload die binnen het JWT is ingediend, bevat aanvullende velden betreffende de uitgevoerde Munt conversie.

  Om de klant niet te hoeven vragen op "Betalen" te klikken wanneer de JavaScript Library wordt geïnitialiseerd en de kaart st.Components methode wordt aangeroepen, kunt u de methode een configuratie van {startOnLoad:true}, die het betalingsproces onmiddellijk in gang zet.

Klik hier voor meer informatie over het vastleggen van kaartgegevens via uw eigen aangepaste formulier.

 

  Let op het volgende onderscheid:

  • Wanneer we het hebben over de Munt van de klant, bedoelen we de Munt die aan hun kaart is gekoppeld. Dit hangt vaak samen met het land waar de kaart is uitgegeven, en daarom kan het zijn dat klanten meer gewend zijn om betalingen te verwerken in dit Munt.
  • Wanneer we het hebben over de merchant's Munt, is dit de lokale Munt die aan uw account bij ons is toegewezen. Lokale klanten van uw bedrijf zijn wellicht meer gewend aan het verwerken van betalingen in deze Munt.
  • Als onderdeel van het DCC-proces moet u de klant de keuze geven tussen de Munt van de klant en uw lokale handelaar Munt, voordat u de betaling verwerkt. De door de klant gekozen Munt noemen we de definitieve Munt.

 

1. Dien CURRENCYRATE aanvraag in

Het verzoek CURRENCYRATE wordt gebruikt om zowel de Munt als het bedrag op de Munt van de klant te bepalen.

 

Voorbeeld verzoek

Hieronder volgt een voorbeeld van een CURRENCYRATE verzoek.

Python PHP cURL Ruwe JSON Ruwe XML
#!/usr/bin/python
import securetrading

stconfig = securetrading.Config()
stconfig.username = "webservices@example.com"
stconfig.password = "Password1^"
st = securetrading.Api(stconfig)

currencyrate = {
"sitereference": "test_site12345",
"requesttypedescriptions": ["CURRENCYRATE"],
"accounttypedescription": "CURRENCYRATE",
"dcctype": "DCC",
"dccbaseamount": "1050",
"dcccurrencyiso3a": "GBP",
"orderreference": "My_Order_123",
"pan": "4111111111111111"
}

strequest = securetrading.Request()
strequest.update(currencyrate)
stresponse = st.process(strequest) #stresponse contains the transaction response

Vervang <DOMAIN> met een ondersteund domein. Klik hier voor een volledige lijst.

 

Specificatie veld

  Veld Formaat Beschrijving
X1-EN.png accounttypedescription
XPath: /operation/accounttypedescription
Alpha (20) Dit moet worden ingediend als "CURRENCYRATE".
X1-EN.png dccbaseamount
XPath: /billing/dcc/amount
Numeriek (13) Het bedrag in de valuta van de handelaar. Dit moet in basiseenheden zijn zonder komma's of decimalen, dus €10 is 1000.
X1-EN.png dcccurrencyiso3a
XPath: /billing/dcc/amount/@currencycode
Alpha (3)

De handelaar Munt in iso3a formaat.

Klik hier voor een volledige lijst van beschikbare munteenheden.

X1-EN.png dcctype
XPath: /billing/dcc/dcctype
Alpha (3) De ingediende waarde moet "DCC" zijn.
X3-EN.png orderreference
XPath: /merchant/orderreference
Alfanumeriek met inbegrip van
symbolen (25)

Aanbevolen lengte 25 tekens of minder (exacte lengte afhankelijk van de wervende bank). Niet-naleving van deze eis kan ertoe leiden dat de tekst in de transactie wordt ingekort.

Uw unieke bestelreferentie die in het Trust Payments systeem kan worden opgeslagen.
X1-EN.png 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.
X1-EN.png requesttypedescriptions
XPath: /@type
Alpha (20) U moet "CURRENCYRATE" indienen, zoals in het verzoekvoorbeeld.
X1-EN.png 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.

 

2. Ontvang CURRENCYRATE antwoord

Dit antwoord bevat de Munt en het omgerekende bedrag van de klant, berekend aan de hand van de laatste omrekeningskoers.

 

Voorbeeld antwoord

Python PHP Ruwe JSON Ruwe XML
{
u 'requestreference': u 'A0bxh87wt',
u 'version': u '1.00',
u 'responses': [{
u 'transactionstartedtimestamp': u '2017-04-21 09:26:46',
u 'dcccurrencyiso3a': u 'GBP',
u 'livestatus': u '0',
u 'englishacquirertypedescription': u 'Acquirer',
u 'iin': u '411111111',
u 'dcctype': u 'DCC',
u 'dccbaseamount': u '1050',
u 'errorcode': u '0',
u 'orderreference': u 'My_Order_123',
u 'dccconversionratesource': u 'Conversion rate source',
u 'merchantnumber': u '00000000',
u 'dccexpirytimestamp': u '2017-04-25 14:26:00',
u 'transactionreference': u '23-71-101',
u 'paymenttypedescription': u 'VISA',
u 'baseamount': u '1641',
u 'dccmarginratepercentage': u '2.5000',
u 'accounttypedescription': u 'CURRENCYRATE',
u 'acquirerresponsecode': u '0',
u 'requesttypedescription': u 'CURRENCYRATE',
u 'acquirerresponsemessage': u 'Success',
u 'currencyiso3a': u 'USD',
u 'maskedpan': u '411111######1111',
u 'errormessage': u 'Ok',
u 'issuercountryiso2a': u 'ZZ',
u 'dccconversionrate': u '1.5626',
u 'operatorname': u 'webservices@example.com'
}]
}

Nadat u het antwoord op CURRENCYRATE hebt ontvangen, controleert u of de Munt in de currencyiso3a veld is anders dan dat in het dcccurrencyiso3a veld.

Als de valuta's verschillen: Als de valuta hetzelfde zijn:

De klant de keuze bieden tussen verwerking van de betaling op Munt of op Munt.

Opmerking: Sommige acquirers eisen dat bepaalde informatie aan de klant wordt getoond op de keuzepagina Munt , zoals de gebruikte omrekeningskoers en de naam van de aanbieder van de omrekeningskoers. Controleer bij uw acquirer of u alle vereiste informatie weergeeft.

Vraag de klant te bevestigen dat hij wil doorgaan voordat de betaling wordt verwerkt.

 

Specificatie veld

  Het is noodzakelijk dat alle transacties, die gebruikmaken van de Munt omrekeningen die door de aanbieder van de omrekeningskoers worden verstrekt, vóór de dccexpirytimestamp (teruggestuurd in het CURRENCYRATE antwoord) worden afgewikkeld.

Als u dit niet doet, door de datum afwikkeling uit te stellen, kan dit ertoe leiden dat de klant een onjuist bedrag betaalt en uw overeenkomst met de aanbieder van de omrekenkoers of acquirer ongeldig wordt.

  Veld Formaat Beschrijving
X4-EN.png accounttypedescription
XPath: /operation/accounttypedescription
Alpha (20) Dit wordt teruggestuurd als "CURRENCYRATE".
X2-EN.png acquirerresponsecode
XPath: /acquirerresponsecode
Alfanumeriek (255)

Gebruikt door de DCC provider om het resultaat van het verzoek aan te geven.

Dit varieert afhankelijk van uw wervende bank. Neem contact op met uw bank voor meer informatie.

X2-EN.png acquirerresponsemessage
XPath: /acquirerresponsemessage
Alfanumeriek (255)
X4-EN.png baseamount
XPath: /billing/amount
Numeriek (13) Het totale bedrag in de valuta van de klant. Deze waarde is inclusief de omrekeningskosten voor het omrekenen van het bedrag naar de lokale valuta. Het bedrag is in basiseenheden zonder komma's of decimalen, dus €10 zou 1000 zijn.
X4-EN.png currencyiso3a
XPath: /billing/amount/@currencycode
Alpha (3)

De Munt van de klant in iso3a formaat. Dit wordt bepaald door analyse van de in het verzoek verstrekte kaartgegevens.

Klik hier voor een volledige lijst van beschikbare munteenheden.

X4-EN.png dccbaseamount
XPath: /billing/amount
Numeriek (13) Het bedrag in de valuta van de handelaar. Dit moet in basiseenheden zijn zonder komma's of decimalen, dus €10 zou 1000 zijn. De waarde in het antwoord komt overeen met de waarde in het verzoek.
X4-EN.png dccconversionrate
XPath: /billing/dcc/conversionrate
Numeriek (255) De omrekeningskoers waarmee het bedrag op Munt van de klant wordt berekend.
X4-EN.png dccconversionratesource
XPath: /billing/dcc/conversionratesource
Alfanumeriek (255) De bron van het conversiepercentage dat wordt geretourneerd door de DCC provider.
X4-EN.png dcccurrencyiso3a
XPath: /billing/dcc/amount/@currencycode
Alpha (3)

De handelaar Munt in iso3a formaat.

Klik hier voor een volledige lijst van beschikbare munteenheden.

X4-EN.png dccexpirytimestamp
XPath: /billing/dcc/expirytimestamp
Datum Tijd
"JJJJ-MM-DD HH:MM:SS"
De vervaldatum van de CURRENCYRATE look-up.
Betalingen die de CURRENCYRATE als bovengeschikte gebruiken, moeten vóór deze datum en tijd vereffend zijn.
Formaat: JJJJ-MM-DD HH:MM:SS
X4-EN.png dccmarginratepercentage
XPath: /billing/dcc/marginratepercentage
Numeriek (11) Het percentage dat wordt gebruikt om de Munt omzettingskosten te berekenen (4 cijfers achter de komma), automatisch toegevoegd aan het bedrag in de Munt van de klant door de DCC provider.
X2-EN.png dccprovider
XPath: /billing/dcc/provider
Alfanumeriek (255)

De naam van de derde partij DCC die de bij de betaling gebruikte omrekeningskoers heeft verstrekt.

Dit veld wordt teruggegeven wanneer de gegevens zijn verstrekt door de verstrekker van de omrekeningskoers.

X2-EN.png dccproviderdata
XPath: /billing/dcc/dccproviderdata
Alfanumeriek (255)

Een unieke string die informatie bevat over de berekende omrekeningskoers, rechtstreeks afkomstig van bepaalde aanbieders van omrekeningskoersen.

Dit veld wordt teruggegeven wanneer de gegevens zijn verstrekt door de verstrekker van de omrekeningskoers.

X4-EN.png dcctype
XPath: /billing/dcc/dcctype
Alpha (3) Dit wordt teruggestuurd als "DCC".
X4-EN.png englishacquirertypedescription
XPath: /operation/processor
Alfanumeriek (255) De naam van de externe provider DCC die de omrekeningskoers heeft geleverd die bij de betaling wordt gebruikt. Dit is een Engelse beschrijving van de aanbieder die op je pagina's kan worden weergegeven.
X4-EN.png iin
XPath: /billing/payment/iin
Numeriek (9) Issuer Identification Number (IIN) - Dit zijn de eerste 9 cijfers van het begin van het kaartnummer van de klant.
X4-EN.png issuercountryiso2a
XPath: /billing/payment/issuercountry
Alpha (2)

Het land voor de uitgever van de kaart van de klant.
Dit zal in ISO2A formaat zijn.

Klik hier voor een volledige lijst van landcodes.

X4-EN.png maskedpan
XPath: /billing/payment/pan
Alfanumeriek, inclusief "#" (12-19) Het kaartnummer van de klant. Dit wordt in het antwoord gemaskeerd. Een deel van het nummer wordt opzettelijk verborgen door "#" tekens, bijv. 411111######0211.
X4-EN.png paymenttypedescription
XPath: /billing/payment/@type
Alpha (20) Betalingsmethode (bijv. "VISA" of "MASTERCARD").
X4-EN.png requesttypedescription
XPath: /@type
Alpha (20) Dit wordt teruggestuurd als "CURRENCYRATE".
X4-EN.png transactionreference
XPath: /transactionreference
Alfanumeriek, inclusief
koppeltekens (25)
Een unieke referentie voor de transactie, toegewezen door Trust Payments.

 

3. Verwerk transactie

Nadat u het antwoord op CURRENCYRATE hebt ontvangen en de klant hebt gevraagd de definitieve Munt te kiezen, moet de klant op "Betalen" klikken op uw afrekenformulier om de betaling te voltooien. U moet ervoor zorgen dat uw betalingsformulier is bijgewerkt met verwijzing naar onze JavaScript Library, en dat de payload ingediend als onderdeel van het JWT is bijgewerkt met extra velden betreffende de Munt conversie (zoals hieronder weergegeven).

  Het is noodzakelijk dat alle transacties die gebruik maken van de Munt omrekeningen die door de aanbieder van de omrekenkoers worden geleverd, vóór de dccexpirytimestamp (teruggestuurd in het CURRENCYRATE antwoord) worden afgewikkeld. Als u dit niet doet, door de datum afwikkeling uit te stellen, kan dit ertoe leiden dat de klant een onjuist bedrag betaalt en uw overeenkomst met de aanbieder van de omrekenkoers of acquirer ongeldig wordt.

(Payload voorbeeld:)

{
"payload":{
"accounttypedescription":"ECOM",
"baseamount":"1641",
"currencyiso3a":"USD",
"sitereference":"test_site12345",
"parenttransactionreference":"23-71-101",
"pan":"4111111111111111",
"expirydate":"12/2037",
"securitycode":"123",
"dcctype":"DCC",
"dccoffered":"1",
"dccconversionrate":"1.5626",
"dcccurrencyiso3a":"GBP",
"dccbaseamount":"1050",
"requesttypedescriptions":["THREEDQUERY","AUTH"]
},
"iat":1559033849,
"iss":"jwt.user"
}

U moet het antwoord JWT controleren om te bevestigen dat de betaling geslaagd is. Net als bij een standaardbetaling moet u vooral letten op de errorcode en settlestatus velden.

  Ontvangst tekst

Sommige acquirers kunnen eisen dat na een transactie bepaalde informatie op een kassabon aan de klant wordt getoond, zoals de gebruikte omrekeningskoers en de naam van de aanbieder van de omrekeningskoers. Controleer bij uw acquirerende bank of u alle vereiste informatie weergeeft.

 

Specificatie veld

  Veld Formaat Beschrijving
X1-EN.png accounttypedescription
XPath: /operation/accounttypedescription
Alpha (20) Dit moet worden ingediend als "ECOM" (elektronische handel).
X1-EN.png baseamount
XPath: /billing/amount
Numeriek (13) Het bedrag in de uiteindelijke valuta. Dit moet in basiseenheden zijn zonder komma's of decimalen, dus €10 zou 1000 zijn.
X1-EN.png currencyiso3a
XPath: /billing/amount/@currencycode
Alpha (3)

De uiteindelijke Munt.

Klik hier voor een volledige lijst van beschikbare munteenheden.

X1-EN.png dccbaseamount
XPath: /billing/dcc/amount
Numeriek (13) Het bedrag in de valuta van de handelaar. Dit moet in basiseenheden zijn zonder komma's of decimalen, dus €10 is 1000.
X1-EN.png dccconversionrate
XPath: /billing/dcc/conversionrate
Numeriek (255) De omrekeningskoers waarmee het bedrag op Munt van de klant wordt berekend.
X3-EN.png dccconversionratesource
XPath: /billing/dcc/conversionratesource
Alfanumeriek (255) De bron van het conversiepercentage dat wordt geretourneerd door de DCC provider.
X1-EN.png dcccurrencyiso3a
XPath: /billing/dcc/amount/@currencycode
Alpha (3)

De handelaar Munt in iso3a formaat.

Klik hier voor een volledige lijst van beschikbare munteenheden.

X3-EN.png dccmarginratepercentage
XPath: /billing/dcc/marginratepercentage
Numeriek (11) Het percentage dat wordt gebruikt om de Munt omzettingskosten te berekenen (4 cijfers achter de komma), automatisch toegevoegd aan het bedrag in de Munt van de klant door de DCC provider.
X1-EN.png dccoffered
XPath: /billing/dcc/offered
Numeriek (1)

Gebruik een van de volgende waarden:

  • 1 - DCC Aangeboden & Aanvaard
    De klant heeft het aanbod van DCC aanvaard en ervoor gekozen om te betalen met dekaart van zijn kaartuitgever. Munt
    baseamount; currencyiso3a; dccconversionrate; dcccurrencyiso3a; & dccbaseamount zijn waarden uit CURRENCYRATE antwoord in stap 2.

  • 2 - DCC Niet beschikbaar
    De klant betaalt in de winkel van de verkoper. Munt
    baseamount; currencyiso3a; dcccurrencyiso3a; & dccbaseamount zijn de verkopers Basisbedrag en Munt.

  • 3 - DCC Aangeboden & geweigerd
    De klant heeft het aanbod van DCC geweigerd en ervoor gekozen om te betalen in de winkel vande verkoper. Munt
    baseamount; currencyiso3a; dcccurrencyiso3a; & dccbaseamount zijn merchant Basisbedrag en Munt voordat DCC werd aangeboden.
X3-EN.png dccprovider
XPath: /billing/dcc/provider
Alfanumeriek (255) De naam van de derde partij DCC die de bij de betaling gebruikte omrekeningskoers heeft verstrekt.
X3-EN.png dccproviderdata
XPath: /billing/dcc/dccproviderdata
Alfanumeriek (255) Een unieke string die informatie bevat over de berekende omrekeningskoers, rechtstreeks afkomstig van bepaalde aanbieders van omrekeningskoersen.
X1-EN.png dcctype
XPath: /billing/dcc/dcctype
Alpha (3) De ingediende waarde moet "DCC" zijn.
X1-EN.png expirydate
XPath: /billing/payment/expirydate
Datum MM/JJJJ De op de kaart gedrukte vervaldatum.
X1-EN.png 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.
X1-EN.png parenttransactionreference
XPath: /operation/parenttransactionreference
Alfanumeriek
en koppeltekens (25)
Haal de transactionreference waarde van het CURRENCYRATE antwoord, en dien dit in de parenttransactionreference veld in de payload van het JWT.

Let op: We ondersteunen de mogelijkheid om Munt conversie uit te voeren met behulp van je eigen DCC provider. In dat geval wordt de parenttransactionreference veld is niet vereist. Klik hier voor meer informatie.

X1-EN.png requesttypedescriptions Lijst Dit moet worden ingesteld op [“THREEDQUERY”,”AUTH”].
X3-EN.png securitycode
XPath: /billing/payment/securitycode
Numeriek (3-4) Dit is de driecijferige veiligheidscode die op de achterkant van de kaart is gedrukt.

(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.

X1-EN.png sitereference
XPath: /operation/sitereference
Alfanumeriek
& underscore (50)
Unieke referentie die uw Trust Payments site identificeert.

 

Test

Wij raden u aan uw oplossing grondig te testen voordat u live betalingen verwerkt.
Klik hier voor testkaartgegevens die u bij het testen kunt indienen.

Was dit artikel nuttig?
0 van de 0 vonden dit nuttig
Hebt u meer vragen? Dien een verzoek in