Akıllı Dokunma iletişim akışı

Terminal ile Google Cüzdan uygulaması arasındaki iletişim

Bir terminal, kendisini bir Teklif Veren Kimliği ile eşlenmiş bir Toplayıcı Kimliği ile tanımlar. Akıllı Dokunma işlemi gerçekleştiğinde terminal, Toplayıcı Kimliğini kullanıcının cihazına iletir. Google Cüzdan uygulaması, depolanan her kartın Sınıf Kimliği ve Toplayıcı Kimliği'ni inceler. Bir veya daha fazla eşleşme bulunduğunda, Google Cüzdan uygulaması eşleşen kartları terminale iletir. Kurulum ayrıntıları için Satıcı yapılandırması bölümüne bakın.

1. Örnek: Bir Teklif Veren Kuruluş

Aşağıdaki bölümde, bu grafikte açıklanan kurulum açıklanmaktadır.

Yukarıdaki şemada, iki farklı Sertifika Veren bulunmaktadır:

  • Sertifikayı veren 2018 bir paso geliştiricisidir (Toplayıcı olarak da adlandırılır)
  • Veren 1990, fooPizza (Teklif Veren olarak da adlandırılır) adlı bir satıcıdır

Teklifi Veren fooPizza, pasosu için Akıllı Dokunma işlevini etkinleştirmek (Toplayıcı tarafından yönetilir) istiyor. Toplayıcı ve Teklif Veren Kuruluş, satıcı terminallerinde Akıllı Dokunma'yı etkinleştirmek için aşağıdaki adımları tamamlamalıdır.

Adım Rol Açıklama
1 Toplayıcı Bir geçiş sınıfı ve nesne (şemada sırasıyla abc ve 123) oluşturun.
2 Toplayıcı Tekliften Yararlanmayı Veren Kuruluşun kimliğini kart sınıfının redemptionIssuers mülküne ekleyin. Bu işlem Google Cüzdan'a, Düzenleyen Kimliğinin (1990) bu sınıfa referans veren kart nesnelerini kullanmasına izin verildiğini belirtir.
3 Tekliften Yararlanma Kartı Veren Toplayıcı Kimliği alın (şemada, 12345678).
4 Tekliften Yararlanma Kartı Veren Kullanılacak Akıllı Dokunma özellikli her terminalde Toplayıcı Kimliği'ni 12345678 ayarlayın. abc Sınıf Kimliği ve 12345678 Toplayıcı Kimliğine sahip tüm nesneler okuyucuya yönlendirilir.

2. Örnek: Birden Çok Teklif Veren Kuruluş

Tek bir kart sınıfında birden fazla Redemption Issuer olabilir. Belirli bir kart sınıfını kullanabilmek için teklifi verenin kimliği, sınıfın redemptionIssuers mülküne eklenmelidir. Her Teklifi Veren kullanıcının Akıllı Dokunma özellikli terminallerinde yapılandırılan kendi Toplayıcı Kimliği olur.

Aşağıdaki bölümde, bu grafikte açıklanan kurulum açıklanmaktadır.

Yukarıdaki şemada, üç farklı Sertifika Veren bulunmaktadır:

  • Sertifikayı veren 8088 bir kart geliştiricisi (Toplayıcı)
  • Sertifikayı veren 1990 bir satıcıdır, fooPizza (Redemption Issuer)
  • Sertifikayı veren 2018 bir satıcıdır, yumPie (Teklif Veren)

Toplayıcı ve Teklif Veren Kuruluşlar, satıcı terminallerinde Akıllı Dokunma'yı etkinleştirmek için aşağıdaki adımları tamamlamalıdır.

Adım Rol Açıklama
1 Toplayıcı Bir geçiş sınıfı ve nesne (şemada sırasıyla abc ve 123) oluşturun.
2 Toplayıcı Teklifi Verenlerin kimliklerini kart sınıfının redemptionIssuers mülküne ekleyin. Bu işlem Google Cüzdan'a, Kartı Veren Kimliklerin 1990 ve 2018 tarafından bu sınıfa referansta bulunan kart nesnelerini kullanmasına izin verildiğini belirtir.
3 Tekliften Yararlanma Kartı Verenler Toplayıcı Kimliklerini edinin (şemada, fooPizza için 12345678 ve yumPie için 18802001).
4 Tekliften Yararlanma Kartı Verenler Kullanılacak Akıllı Dokunma özellikli her terminalde ilgili Toplayıcı Kimliğini ayarlayın. abc Sınıf Kimliğine ve eşleşen bir Toplayıcı Kimliğine sahip tüm nesneler okuyucuya yönlendirilir.

3. Örnek: Toplayıcı Yok

Kart sınıfı, Kartı Veren ile aynı hesapta geliştirilebilir ve verilebilir. Bu durumda, birden fazla Teklifi Veren için kart sınıflarını yöneten bir Toplayıcı yoktur. Belirli bir kart sınıfını kullanabilmek için kart geliştiricisinin, Veren kimliğini sınıfın redemptionIssuers mülküne eklemesi gerekir. Kart geliştiricisi, daha sonra bir toplayıcı kimliği edinmeli ve bu kimliği Smart Tap özellikli terminallerde yapılandırmalıdır.

Aşağıdaki bölümde, bu grafikte açıklanan kurulum açıklanmaktadır.

Kart geliştiricisi, satıcı terminallerinde Akıllı Dokunma'yı etkinleştirmek için aşağıdaki adımları tamamlamalıdır.

Adım Rol Açıklama
1 Kart Geliştiricisi Bir geçiş sınıfı ve nesne (şemada sırasıyla abc ve 123) oluşturun.
2 Kart Geliştiricisi Düzenleyen kimliğini, kart sınıfının redemptionIssuers mülküne ekleyin. Bu işlem Google Cüzdan'a, 2018 Yayıncı Kimliğinin bu sınıfa referans veren geçiş nesnelerini kullanmasına izin verildiğini belirtir.
3 Kart Geliştiricisi Toplayıcı Kimliği alın (şemada, 12345678).
4 Kart Geliştiricisi Kullanılacak Akıllı Dokunma özellikli her terminalde ilgili Toplayıcı Kimliğini ayarlayın. abc Sınıf Kimliğine ve eşleşen bir Toplayıcı Kimliğine sahip tüm nesneler okuyucuya yönlendirilir.

Kullanıcı deneyimi ve davranışı

Bir terminal ile Google Cüzdan uygulaması arasında iletilenin davranışı, kullanıcıya ve o anda Google Cüzdan uygulamasıyla nasıl etkileşimde bulunduğuna bağlıdır.

1. Senaryo: Kullanıcı belirli bir kartı açar

Adım Rol Açıklama
1 Kullanıcı Google Cüzdan uygulamasında belirli bir kartı seçin.
2 Kullanıcı Akıllı Dokunma özellikli bir terminale dokunun.
3 Terminal (Toplayıcı kimliği eşleşmeleri) Geçiş, terminale iletilir.
(Toplayıcı kimliği eşleşmiyor) Kart, terminale iletilmez.

2. Senaryo: Google Cüzdan Ana Sayfa sekmesi veya kilidi açık ekran görünümü

Adım Rol Açıklama
1 Kullanıcı Google Cüzdan uygulamasında Ana Sayfa sekmesini açın veya cihazın ekran kilidini açın.
2 Kullanıcı Akıllı Dokunma özellikli bir terminale dokunun.
3 Terminal (Tek geçerli Toplayıcı Kimliği eşleşmesi) Kart, terminale iletilir.
(Birden fazla geçerli Toplayıcı Kimliği eşleşiyor) Geçerli kart bandını görüntüleyin ve kullanıcı tarafından seçilen kartı iletin.

Not: Geçişin geçerliliği, geçiş nesnesinin belirli yapılandırmasına bağlıdır. Aşağıdaki geçiş nesnesi özelliklerini kontrol ettiğinizden emin olun:

  • state
  • validTimeInterval

Akıllı Dokunma koleksiyonu örneği

Aşağıdaki tabloda, bu örnekte kullanılacak Verenler ve pasolar açıklanmaktadır:

Satıcının adı ILuvCoffee Kahve-Bira Mocha-R-U'lar
Teklifi verenin kimliği 123 456 789
Toplayıcı Kimliği 11111111 44444444 77777777
Bağlılık Seviyeleri R-Temel Ödüllerim
R-Altın

ILuvCoffee iki farklı bağlılık katmanına sahiptir: R-Basic ve R-Gold. Bu arada, Coffee-Foo'nun tek katmanlı bir bağlılık programı var: My Rewards (Ödüllerim) ve Mocha-R-Us'un bağlılık programı yok.

Çapraz tanıtım kampanyası kapsamında, satıcılar müşterilerine aşağıdaki seçeneklerin sunulmasını ister:

  • R-Basic katmanındaki müşteriler, bağlılık üyeliklerini hem Coffee-Foo hem de Mocha-R-Us'da kullanmak için Akıllı Dokun özelliğini kullanabilir
  • R-Gold katmanındaki müşterilerin Akıllı Dokunma'yı kullanmasına gerek yoktur
  • Ödüllerim müşterileri, bağlılık üyeliklerini yalnızca Coffee-Foo'da kullanmak için Akıllı Dokunma'yı kullanabilir

Bu kampanyanın çalışması için her bağlılık sınıfının, sınıf tanımının redemptionIssuers özelliğinde ayarlanmış aşağıdaki değerlere sahip olması gerekir.

Bağlılık sınıfı Teklif Veren Kuruluş Kimlikleri
R-Temel ["456", "789"]
R-Altın []
Ödüllerim ["456"]

Bu yapılandırmada, bu sınıflara referans veren tüm geçiş nesneleri aşağıdaki Toplayıcı Kimliklerine sahip olur:

  • R-Temel: 44444444, 77777777
  • R-Gold: Toplayıcı Kimliği dahil edilmez
  • Ödüllerim: 44444444

Dokunma zamanında toplayıcı kimlik doğrulaması

Sertifikayı veren kuruluş yapılandırması kapsamında, kartı veren kuruluş hesabıyla ilişkili birden fazla ortak anahtar olabilir. Bu ortak anahtarlar Google Cüzdan uygulamasında saklanır. Kullanıcılar, Akıllı Dokunma özellikli bir terminalde cihazına dokunduklarında kimlik doğrulaması için bunları kullanırlar. Bu kimlik doğrulama adımı, uygulamanın kullanıcıya verilmiş ve terminalde tanıtılan değerle eşleşen Toplayıcı Kimliğine sahip bir geçiş nesnesi bulmasından sonra gerçekleştirilir.

Önceki bölümdeki örnekten devam ettiğimizde, aşağıdaki tabloda her bir Sertifikayı Veren ile ilişkili ortak anahtarlar açıklanmaktadır.

Satıcının adı ILuvCoffee Kahve-Bira Mocha-R-U'lar
Teklifi verenin kimliği 123 456 789
Toplayıcı Kimliği 11111111 44444444 77777777
Bağlılık Seviyeleri R-Temel Ödüllerim
R-Altın
Genel Anahtarlar aaa bbb

Örnek bir müşteri, Google Cüzdan uygulamasında aşağıdaki bağlılık kartları kaydetmiştir:

  • ILuvCoffee: R-Basic
  • Coffee-Foo: Ödüllerim

Daha önce olduğu gibi, her bağlılık sınıfı için redemptionIssuers özelliğinde aşağıdaki değerler ayarlanır.

  • R-Temel: ["456", "789"]
  • Ödüllerim: ["456"]

Kullanıcı, cihazını her bir satıcının terminallerinde dokunursa üç olası sonuç olur:

Satıcı terminali Sonuç
ILuvCoffee ILuvCoffee (Teklif Veren Kimliği 123) kendi bağlılık sınıfı olan R-Basic'i kullanacak şekilde yapılandırılmamış olduğundan hiçbir şey iletilmez.
Kahve-Bira Google Cüzdan uygulaması, Coffee-Foo terminalinin kimliğini bbb ortak anahtarını kullanarak doğrular. Kullanıcının cihazında görüntülediği geçerli ekrana bağlı olarak, Kullanıcı deneyimi bölümünde listelenen senaryolardan biri gerçekleşir.
Mocha-R-U'lar Bu örnekte Mocha-R-U'lar için ortak anahtar bulunmamaktadır. R-Basic programı satıcı ile birlikte kullanılabilse de terminalde kimlik doğrulaması yapamaz, bu nedenle hiçbir şey iletilmez.

Kimlik doğrulama sınırları

Bir kart, bir kullanıcının Google Cüzdan uygulamasıyla senkronize edildiğinde, ilgili kartı Veren tüm kullanıcılar Google Cüzdan arka ucundan aranır. Her bir Teklifi Veren için Toplayıcı Kimliği, ortak anahtarlar ve anahtar sürümleri, Google Cüzdan uygulamasında yerel olarak depolanır.

Bir kartta çok sayıda Teklifi Veren Kimliği bulunabilir. Daha sonra bunların her biri, belirli bir satıcının belirli kolektör kimliğiyle eşlenir. Ayrıca, tek bir Toplayıcı Kimliği için birçok ortak anahtar ve anahtar sürümü olabilir.

Google Cüzdan uygulaması, ilgili terminal tarafından kullanılabilecek kartların bulunmadığı durumlarda ilgili terminalde kimlik doğrulaması yapmaya çalışmaz. Bu, Toplayıcı Kimliğine ve ortak anahtar sürümüne bağlıdır. Kartınız için ortak anahtarları güncellemek istiyorsanız terminalin yeni ortak anahtarları Google Cüzdan arka ucundan alabilmesi için internet bağlantısının olması gerekir.

Tek bir kart, aynı anda birçok ortak anahtarla ilişkilendirilebilir. Aynı kart için birden fazla ortak anahtar ayarlama hakkında bilgi edinmek üzere Satıcı yapılandırması bölümüne bakın.

Dokunma sırasında değer aktarımı

Dokunma sırasında karttan veri göndermek için kart nesnesinin smartTapRedemptionValue ayarlanması gerekir. Nesneye karşılık gelen sınıf Akıllı Dokunma için etkinleştirildikten sonra bu değer terminale gönderilir.

Entegrasyonunuza ve kullanım alanınıza bağlı olarak bu değer, kullanıcınızın geçişini tanımlamak ve aşağıdakiler gibi gerekli işlem mantığını gerçekleştirmek için kullanılır:

  1. Kullanıcının bakiyesini veya durumunu güncelleme
  2. İşleme göre kendi arka ucunuzu güncelleyin
  3. Google Cüzdan API'sini kullanarak kart nesnesinde, kullanıcının cihazındaki durumunda yapılan değişiklikleri yansıtacak şekilde güncelleme yapın.

Terminal ve Google Cüzdan uygulaması, NFC üzerinden aktarılan tüm verilerin şifrelenmesini gerçekleştirir. Terminal, verilerin şifresinin şifresini Smart Tap işlemi tamamlandıktan sonra işler. Verilerde, iletilen her bir geçişi temsil eden Hizmet Nesnesi NDEF kayıtları bulunur. Hizmet Nesnesi'nin Service number NDEF Record özelliği, geçiş nesnesinin smartTapRedemptionValue özelliğinde ayarlanan değeri içeren bir yüke sahiptir. Bu sayede, kart geliştiricisinin iletilen verilerin şifrelenmesine gerek kalmaz.

Başka bir güvenlik katmanı eklemek isterseniz smartTapRedemptionValue özelliğini, yalnızca iletilen verileri alan sistemin (ör. Satış Noktası) şifresini çözebileceği şekilde ayarlayabilirsiniz. Ancak şifreleme/şifre çözme sürecinden kart geliştiricisi ve POS yöneticisi sorumlu olur.