Hoe werken kaartnummers met Apple Pay en Google Pay en wat is dynamic_last4?

Wanneer een klant een betaalkaart toevoegt aan Apple of Google Pay, zullen Apple en Google automatisch een nieuw kaartnummer genereren, een DPAN (Device PAN) genaamd, met een nieuwe vervaldatum. De DPAN is compleet verschillend van het echte kaartnummer:

Issuers gebruiken vaak een gecombineerde 'DPAN BIN' voor elke PAN BIN (met hetzelfde financieringstype en doorgaans een lengte van 8 cijfers), maar dit is niet gegarandeerd consistent.

Dit wordt allemaal achter de schermen gedaan en wordt niet expliciet aan de kaarthouders getoond. Wanneer klanten ergens voor betalen met Apple of Google Pay, wordt deze DPAN naar de verkoper/verwerker gestuurd en zien zij nooit het echte kaartnummer of de echte vervaldatum.

Een probleem met dit proces is echter dat de informatie die een verkoper kan laten zien over de kaart die bij een aankoop hoort verschilt van het echte kaartnummer van de klant, aangezien de verkopers in plaats daarvan de laatste 4 cijfers van de DPAN zouden noemen.

Apple en Google lossen dit op door de laatste 4 cijfers van het echte kaartnummer naar de verwerker op te sturen, naast de DPAN. Dit betekent dat aan onze kant de betaling vanuit de DPAN komt, maar dat we de laatste 4 cijfers van het echte kaartnummer laten zien in de eigenschap last4 in de API. Dit maakt het makkelijker voor verkopers om gegevens over de gebruikte betaalkaart te melden. Daarnaast zetten we ook de laatste 4 cijfers van de DPAN in het eigenschap dynamic_last4, zodat verkopers gegevens kunnen controleren voor de DPAN die we hebben laten betalen. Houd er rekening mee dat Apple voor Apple Cards die aan Apple Pay zijn toegevoegd niet de laatste vier cijfers van het echte kaartnummer weergeeft. In dit scenario verwijzen last4 en dynamic_last4 beide naar de laatste vier cijfers van de DPAN. Dit is een uniek geval, aangezien het de bedoeling is dat Apple Cards worden gebruikt met Apple Pay.

Aangezien we niet het echte kaartnummer hebben, wordt de waarde voor fingerprint berekend aan de hand van de DPAN in plaats van het echte kaartnummer. Dat betekent dat als dezelfde betaalkaart wordt toegevoegd aan twee verschillende apparaten, dezelfde kaart verwijst naar twee verschillende DPAN's en dit zou leiden tot twee verschillende vingerafdrukken in de API of in het dashboard.

In de testmodus zal de eigenschap last4 van een betaalkaart nog steeds overeenkomen met de laatste 4 cijfers van de originele kaart. Voor Apple Pay negeren we echter de DPAN en gebruiken we automatisch het testkaartnummer 4242424242424242. Aangezien het 4242-testkaartnummer een Visa-betaalkaart is, betekent dit dat het kaartmerk en het financieringstype, getoond in het dashboard en de API, Visa en krediet zullen zijn, zelfs als de daadwerkelijk gebruikte kaart van een ander merk is of een ander financieringstype heeft. Voor Google Pay vervangt Google de DPAN met een van de testkaartnummers uit hun testsuite en geldt hetzelfde probleem dat het niet overeenkomt met de daadwerkelijk gebruikte betaalkaart.