2015-07-17 20 views
5

Ich möchte NFC-Zahlungen zu einer Android-Anwendung hinzufügen, an der ich arbeite, damit die Nutzer direkt an einen POS bezahlen können. Ich bin daran interessiert, so viel POS wie möglich zu unterstützen.Wie implementieren Sie NFC-Zahlungen?

Ich frage mich, ob es wirklich möglich ist oder es hängt von proprietary protokollen/hardware ab.

Ich habe Informationen (und Codebeispiele) über das Lesen der kontaktlosen Karteninformation gefunden, aber ich kann keine Bibliothek oder Code über die Zahlung selbst finden.

Ich weiß über die EMV-Spezifikation, aber es sieht ziemlich lang und technisch aus und ich würde gerne wissen, ob es wirklich möglich ist, bevor man hineintaucht.

Wir können Google Wallet nicht verwenden, da ich nicht in den USA bin.

+1

Planen Sie eine Kredit-/Debitkarte mit Ihrer Bewerbung zu emulieren? – mictter

Antwort

6

Sie werden nicht in der Lage sein, um NFC Zahlung in Ihrer Anwendung zu unterstützen, es sei denn, Sie eine Bank sind mit einer Visa/Mastercard/etc-Vereinbarung und haben Zugang zu einem Zertifikat, um Ihre EMV-Transaktionen zu unterzeichnen.

Contactless EMV transactions are not encrypted. Deshalb können Sie leicht eine kontaktlose Transaktion ausspionieren oder eine kontaktlose Zahlungskarteninformation lesen.

Transaktionen sind immer noch gesichert, da ein in die Karte eingebettetes Zertifikat für den Kartenaussteller spezifisch ist (zB: Visa, Mastercard). Dieses Zertifikat ist geschützt (kann nicht gelesen werden). Es wird verwendet, um die Transaktionsdetails (Betrag, Datum, Zufalls-ID usw.) zu signieren, so dass der POS- und Transaktionsprozessor (auf der Bankseite) die Transaktion authentifizieren und validieren kann. Ohne eine gültige Unterschrift wird Ihre Transaktion abgelehnt.

Da jedoch alle großen Kartenherausgeber ihre neueste Spezifikation für die Unterstützung mobiler Zahlungsdienste erhielten (z. B. mastercard PayPass 3.0, Visa PayWave 2.1). Sie können eventuell API für andere Apps am Telefon anbieten, um Überweisungen zu initiieren. Immer noch verstehe ich, dass Telefone bestimmte Hardware (zB einen Kryptoprozessor) benötigen, um Transaktionen zu verarbeiten.