Google oficiāli pieņem Payment Request API, kas ļauj maksāt, izmantojot trešās puses lietotnes pārlūkā Chrome

Google I/O laikā tiks paziņots, ka Google pārlūkā Chrome oficiāli ievieš Payment Request API, ļaujot jums maksāt, izmantojot trešo pušu lietotnes.

Paredzēts paziņot gaidāmajā Google I/O izstrādātāju konferencē Payment Request API mainīs veidu, kā mēs veicam tiešsaistes maksājumus savās mobilajās ierīcēs. Google Chrome lietotājiem Android ierīcēs vairs nebūs jāveic ilgstoši norēķināšanās procesi, kas ietver kredītkartes informācijas ievadīšanu vai pieteikšanos pakalpojumā PayPal. Tā vietā API ļauj vietņu izstrādātājiem nosūtīt nodomus atbalstītām trešo pušu maksājumu lietojumprogrammām, lai veiktu maksājumu. Atšķirībā no daudziem citi pārsteigumi ko Google mums ir sagatavojis, jau tagad ir daudz publiskas informācijas par to, kā tieši šis jaunais maksāšanas veids darbosies. Mēs esam iedziļinājušies visos šajos dokumentos, lai sniegtu jums informāciju pirms Google oficiālā paziņojuma šonedēļ.


Maksājumu atvieglošana, izmantojot maksājumu pieprasījumu API

Vispirms apkoposim, kā maksājumi pašlaik tiek apstrādāti tīmekļa pārlūkprogrammās. Pārejot uz jebkura tiešsaistes tirgotāja norēķinu lapu, jums tiek lūgts ievadīt maksājuma informāciju. Lai pabeigtu darījumu, varat pievienot kredītkarti, ko atbalsta tirgotājs, vai izmantot integrētu pakalpojumu, piemēram, PayPal. Tagad, ja vien neesat jau saglabājis kredītkartes informāciju vietnē (ko daudzi cilvēki nevēlas darīt) vai jau esat reģistrējies PayPal, var būt grūti piecelties, aiziet pie maka, atrast karti, pēc tam ievadīt kartes numuru, derīguma termiņu un drošību. kodu. Katru reizi, kad vēlaties veikt pirkumu jaunā tīmekļa vietnē, jums ir jāiziet daži šī procesa varianti. Tiem no mums, kas

patīk meklēt piedāvājumus, tas var kļūt kaitinoši diezgan ātri.

Dažādas tiešsaistes tirgotāju norēķināšanās lapas

Daudzām kredītkaršu un banku iestādēm ir lietojumprogrammas, kas pieejamas Google Play veikalā. Tā kā mēs jau izmantojam šīs lietojumprogrammas, lai uzraudzītu mūsu finanšu kontus, kāpēc mēs nevaram tās izmantot maksājumu autentificēšanai? Tieši tāds ir tīmekļa maksājumu darba grupas pārdomu process, ko veido tādi dalībnieki kā Google, Mozilla, Samsung, Alibaba, Microsoft un citi. Šī grupa ir strādājusi aizkulisēs, lai ieviest jaunu API ar nosaukumu Payment Request API un jauns tiešsaistes standarts, kas definēts Maksājumu manifesta priekšlikumā, lai atvieglotu saziņu starp tīmekļa pārlūkprogrammām un tiešsaistes tirgotājiem, lai tiešsaistes tirgotājs varētu izmantot esošās lietojumprogrammas galalietotāja ierīcē, lai apstrādātu maksājumus.

Kā tas strādā

Lai veiktu šo uzdevumu, tīmekļa pārlūkprogrammas jāatbalsta Payment Request API, tiešsaistes tirgotājiem ir jāatbalsta API, ieviešot tā saukto a Maksājuma metodes identifikatorsun Android lietojumprogrammas nepieciešams ieviest jaunus pakalpojumus. Pārāk neiedziļinoties, īsi paskaidrošu, kas notiek norēķināšanās procesā.

Pieņemot, ka jūsu tīmekļa pārlūkprogramma atbalsta Payment Request API (vairāk par to vēlāk), pārejot uz tiešsaistes tirgotāja maksājumu lapu, jums būs iespēja maksāt ar kādu no viņu atbalstītajiem maksājumu apstrādātājiem (kredītkarte/PayPal/u.c.), kad pieskaraties pogai, lai veiktu pirkumu (piemēram, tālāk norādītajā parauga lapā, ko Google darbinieki izmanto, lai pārbaudīt Payment Request API), pēc tam Payment Request API nosūta Android nolūku atbalstītajai maksājumu lietojumprogrammai, lai šī lietotne autentificētu lietotāja maksājumu.

 Pieņemsim, ka mūsu hipotētiskā kredītkaršu lietojumprogramma, kas instalēta hipotētiskā Android ierīcē, saucas Bob Pay. Bobs Pay savam failam AndroidManifest.xml pievienos tālāk norādīto.

"font-weight: 400;"><manifestspan><spanstyle="font-weight: 400;">package=span><spanstyle="font-weight: 400;">"com.bobpay.app"span><spanstyle="font-weight: 400;">>span>
"font-weight: 400;"> </span>span> <spanstyle="font-weight: 400;">android: name=span><spanstyle="font-weight: 400;">".IsReadyToPayService"span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;">android: enabled=span><spanstyle="font-weight: 400;">"true"span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;">android: exported=span><spanstyle="font-weight: 400;">"true"span><spanstyle="font-weight: 400;">>span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;"><intent-filter>span>
"font-weight: 400;"> </span>span> <spanstyle="font-weight: 400;">android: name=span><spanstyle="font-weight: 400;">"org.chromium.intent.action.IS_READY_TO_PAY"span><spanstyle="font-weight: 400;">/></span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;">intent-filter>span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;">service>span>
"font-weight: 400;"> </span>span> <spanstyle="font-weight: 400;">android: name=span><spanstyle="font-weight: 400;">".PaymentActivity"span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;">android: exported=span><spanstyle="font-weight: 400;">"true"span><spanstyle="font-weight: 400;">>span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;"><intent-filter>span>
"font-weight: 400;"> </span>span> <spanstyle="font-weight: 400;">android: name=span><spanstyle="font-weight: 400;">"org.chromium.intent.action.PAY"span><spanstyle="font-weight: 400;">/></span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;">intent-filter>span>
"font-weight: 400;"> </span>span> <spanstyle="font-weight: 400;">android: name=span><spanstyle="font-weight: 400;">"org.chromium.default_payment_method_name"span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;">android: value=span><spanstyle="font-weight: 400;">"https://bobpay.com/put/optional/path/here"span><spanstyle="font-weight: 400;">/>span>
<spanstyle="font-weight: 400;">span><spanstyle="font-weight: 400;">activity>span>
<spanstyle="font-weight: 400;">manifest>span>

Kad tiek nosūtīts nolūks, kas mērķēts uz šo hipotētisko kredītkartes lietojumprogrammu, tiek palaists šīs lietojumprogrammas pakalpojums. Visa informācija, kas nepieciešama mūsu hipotētiskajai lietotnei Bob Pay, lai saprastu, kas tiek iegādāts, no kura pārdevēja un cik daudz naudas ir ietverts nolūka papildaprīkojumā:

Bundle extras = new Bundle();
extras.putString("key", "value");
intent.putExtras(extras);

Kad Bobs Pay ir apstiprinājis maksājumu, Payment Request API saņem šo informāciju citā nolūkā, ko nosūtījis Bobs Pay:

Intent result = new Intent();
Bundle extras = new Bundle();
extras.putString("key", "value");
result.putExtras(extras);
setResult(RESULT_OK, result); // Changeto RESULT_CANCELED on failure.
finish(); // Close the payment activity.

Bet kā tiešsaistes tirgotājs, kas atbalsta Bob Pay, zina, ka jūsu tālrunī instalētais Bob Pay ir īstais Bob Pay, nevis kāda ļaunprātīga programmatūra, kas paredzēta krāpšanai? Tas tiek panākts, izveidojot maksājumu metodes manifesta identifikatora JSON failu, kas ir mašīnlasāms pārlūkprogrammai.

{
<span ><span >"span>name<span >"span>span><span >:span><span ><span >"span>BobPay - World's Greatest Payment Method<span >"span>span>,
<span ><span >"span>description<span >"span>span><span >:span><span ><span >"span>This payment method changes lives<span >"span>span>,
<span ><span >"span>short_name<span >"span>span><span >:span><span ><span >"span>BobPay<span >"span>span>,
<span ><span >"span>icons<span >"span>span><span >:span> [{
<span ><span >"span>src<span >"span>span><span >:span><span ><span >"span>icon/lowres.webp<span >"span>span>,
<span ><span >"span>sizes<span >"span>span><span >:span><span ><span >"span>64x64<span >"span>span>,
<span ><span >"span>type<span >"span>span><span >:span><span ><span >"span>image/webp<span >"span>span>
},{
<span ><span >"span>src<span >"span>span><span >:span><span ><span >"span>icon/lowres.png<span >"span>span>,
<span ><span >"span>sizes<span >"span>span><span >:span><span ><span >"span>64x64<span >"span>span>
}, {
<span ><span >"span>src<span >"span>span><span >:span><span ><span >"span>icon/hd_hi<span >"span>span>,
<span ><span >"span>sizes<span >"span>span><span >:span><span ><span >"span>128x128<span >"span>span>
}],
<span ><span >"span>serviceworker<span >"span>span><span >:span> {
<span ><span >"span>src<span >"span>span><span >:span><span ><span >"span>payment-sw.js<span >"span>span>,
<span ><span >"span>scope<span >"span>span><span >:span><span ><span >"span>/pay<span >"span>span>,
<span ><span >"span>use_cache<span >"span>span><span >:span><span >falsespan>
}
<span ><span >"span>related_applications<span >"span>span><span >:span> [
{
<span ><span >"span>platform<span >"span>span><span >:span><span ><span >"span>play<span >"span>span>,
<span ><span >"span>url<span >"span>span><span >:span><span ><span >"span>https://play.google.com/store/apps/details? id=com.bobpay<span >"span>span>,
<span ><span >"span>fingerprints<span >"span>span><span >:span> [{
<span ><span >"span>type<span >"span>span><span >:span><span ><span >"span>sha256_cert<span >"span>span>,
<span ><span >"span>value<span >"span>span><span >:span><span ><span >"span>59:5C: 88:65:FF: C4:E8:20:CF: F7:3E: C8...<span >"span>span>
}], <span >//newspan>
<span ><span >"span>min_version<span >"span>span><span >:span><span ><span >"span>1<span >"span>span>, <span >// newspan>
<span ><span >"span>id<span >"span>span><span >:span><span ><span >"span>com.example.app1<span >"span>span>
}, {
<span ><span >"span>platform<span >"span>span><span >:span><span ><span >"span>itunes<span >"span>span>,
<span ><span >"span>url<span >"span>span><span >:span><span ><span >"span>https://itunes.apple.com/app/example-app1/id123456789<span >"span>span>,
}
]
}

Šajā JSON failā ir paraksts, kas tiek izmantots, lai pārbaudītu jūsu ierīcē instalētās lietojumprogrammas integritāti, kas tiek uzskatīta par īsts Bobs Pay. Ja šī paraksta pārbaude neizdosies, Bob Pay netiks pieņemts kā maksājumu apstrādātājs.

Protams, es ļoti, ļoti, ārkārtīgi, ļoti vienkāršoju šeit iesaistīto vispārējo procesu. Maksājumi ir neticami sarežģīta sistēma, kurai ir nepieciešamas vairākas drošības pārbaudes, lai nodrošinātu, ka tiek veikti tikai derīgi maksājumi. Trīs dokumenti, ar kuriem iepriekš saistīju, izklāsta, kā pārlūkprogramma pilnībā ievieš maksājumu pieprasījuma API, kā a vietne ievieš JSON manifesta failu un to, kā Android lietotne var apstrādāt nolūku, kas nosūtīts no maksājuma pieprasījuma. API. Šeit ir blokshēma, kurā ir izklāstīts vispārējais process, ko es apkopoju iepriekš:

Maksājumu blokshēma. Avots: Ruslans Solomahins

Kā redzat, šeit ir daudz darbību. Visas šīs izmaiņas apstrādās tiešsaistes tirgotāju vietņu, Android banku/kredīta izstrādātāji karšu lietotnēm un tīmekļa pārlūkprogrammu izstrādātājiem, tāpēc galalietotājam, visticamāk, nebūs ne jausmas, kas patiesībā notiek šeit. Bet tikai ziniet, ka gala rezultāts ir tāds, ka jūsu tiešsaistes maksājumi kļūs daudz vienkāršāki, ja visas iesaistītās puses ieviest šīs izmaiņas, par kurām, cerams, kļūs, pateicoties Web maksājumu darba grupas standartizācijas centieniem realitāte.


Maksājumu pieprasījuma API vēsture

World Wide Web Consortium (saīsināti W3C) tika dibināts 1994. gadā, lai izstrādātu platformu standartus, kas ļautu visām vietnēm un to lietotājiem gūt labumu no savstarpējās savietojamības un konsekvenci. Lai risinātu pieaugošo tīmekļa maksājumu sadrumstalotību, W3C izveidoja Tīmekļa maksājumu darba grupa 2015. gadā lai standartizētu dažus tiešsaistes maksājumu plūsmas aspektus. Pēc tam sākās darbs starp visiem Web maksājumu darba grupas locekļiem, lai atrastu veidus, kā uzlabot esošo tiešsaistes maksājumu sistēmu darbību.

Grupa nāca klajā ar Maksājuma pieprasījuma API, metožu kolekcija, kas ļauj vietnēm izmantot maksājuma veidus, neintegrējot maksājuma veidu savā vietnē. Lai atbalstītu API, tīmekļa pārlūkprogrammas ir jāatjaunina, bet grūtākā daļa izriet no tiešsaistes tirgotāju iesaistīšana. Šajā nolūkā darba grupas locekļi nāca klajā ar priekšlikumu par to, kā vietnes var izveidot identifikatorus, lai noteiktu, kuras maksājuma metodes tās atbalsta. Tas ietver Maksājumu manifesta JSON faila izveidi, kas ir mašīnlasāms (maksājuma metodes identifikators) — tas ir jāizlasa pārlūkprogrammai, lai Payment Request API var noteikt, vai lietotājam ir viena vai vairākas lietojumprogrammas, kas atbilst atbalstītajiem maksājuma veidiem, kas norādīti JSON. failu. Šo ieviešanu iedvesmojis Google Digitālo aktīvu saišu protokols Tādā veidā vietnes novirza jūs no savas mobilās vietnes uz savu lietojumprogrammu, ja tā jau ir instalēta.

Pēc daudzām grupas iekšējām darbībām 2016. gada 25. novembrī Zaks Kohs no Google un Dapengs Liu no Alibaba iesniedza Maksājuma metodes manifesta sākotnējais projekts lai uzsāktu Maksājumu metožu identifikatoru standartizācijas procesu, kam varētu piekrist visi dalībnieki. Galu galā darba grupas locekļi tikās klātienē Čikāgā laikā no 23. līdz 24. martam lai izjauktu maksājumu pieprasījuma API, maksājumu manifesta priekšlikumu un daudz ko citu. Darba grupa nobalsoja par oficiālu pieņemšanu jauna maksājuma manifesta priekšlikuma versija (2. versija), kurā mēs šodien atrodamies.


Maksājumu pieprasījuma API atbalsts

10. maijā tagad ir pieejams trešo pušu Android maksājumu lietotņu atbalsts iespējots pēc noklusējuma pārlūkā Chromium, jo ​​tīmekļa maksājumu manifesta priekšnoteikums tika apstiprināts filiālē blink-dev (Blink ir pārlūkā Chrome izmantotās renderēšanas programmas nosaukums). Ņemiet vērā, ka šī funkcija pārlūkprogrammā Chrome ir testēta vairākus mēnešus, taču tikai nesen šķiet, ka grupa ir gatava to turpināt. Šī funkcija tiks nosūtīta visās Chromium platformās/versijās, izņemot Android Webview (kurai nav lietotāja saskarnes un tādējādi nevar ieviest maksājumu pieprasījuma API).

Tikai pēc mēnešiem ilga aizkulišu darba mēs tagad redzēsim priekšrocības, ko sniedz Web maksājumu darba grupa. Uzņēmums Google I/O, visticamāk, paziņos, ka Google Chrome tiks piegādāts ar iespējotu Payment Request API, un Zaks Kohs minēja iepriekš ceturtdien runās par to, kā trešo pušu maksājumu pakalpojumu sniedzēji var atbalstīt API, izveidojot Payment Manifest JSON failus.

Arī citas pārlūkprogrammas strādā, lai pievienotu maksājumu pieprasījuma API atbalstu. Mozilla un Samsung ir pauduši publisku atbalstu API pievienošanai saskaņā ar Google darbinieku Ruslans Solomahins vēl nav zināms, vai Microsoft Edge pārlūkprogramma vai Apple Safari pievienos atbalstu. Mums jāatzīmē, ka Microsoft ir jau testē Payment Request API Universal Windows Platform (UWP) lietotnēm un plkst vismaz viena banka jau ir ieviesusi atbalstu (Monzo) savā lietotnē.

Saskaņā ar Google darbinieka Zaka Koha teikto, kas attiecas uz citiem tiešsaistes tirgotājiem un Android lietojumprogrammām, kas atbalstīs šo jauno maksājumu specifikāciju:

"Maksājumu metodes nodrošinātāju" skaits, kuriem būtu nepieciešams ieviest šo specifikāciju, ir diezgan mazs (simtiem), un šobrīd mēs strādājam tikai ar ļoti nelielu apakškopu (<5), lai pārbaudītu ūdeņi. Ja mēs nonāktu situācijā, kad mums būtu jāmaina kāds no laukiem, es domāju, ka mēs to varētu izdarīt viegli un bez liela (ja vispār) mijiedarbības riska. Visi mūsu sākotnējie partneri apzinās, ka šī specifikācija var mainīties, un ar to arī piekrīt.

To ieviešana ir ļoti svarīga, lai ļautu citiem spēlētājiem piedalīties PR ekosistēmā, vismaz operētājsistēmā Android. Es tiešām nevēlos izmantot visu patentēto ceļu, lai iespējotu Android vietējās lietotnes. Mēs esam apzināti mazinājuši šo nospiedumu, lai atstātu vietu izaugsmei un progresīvākiem lietošanas gadījumiem.

Tādējādi mēs redzam, ka, lai gan Google atbalsta Payment Request API, paies zināms laiks, līdz mēs patiesi redzēsim, ka šis jaunais maksāšanas veids nonāks visās pārlūkprogrammās, visi tiešsaistes tirgotāji un visas lietojumprogrammas. Es personīgi ļoti priecājos redzēt, ka Google atbalsta Payment Request API. E-komercijas ekosistēma gadiem ilgi ir nevajadzīgi sadrumstalota ar maksājumu metodēm, un, ja šī jaunā API nozīmē, ka man nekad vairs nebūs manuāli jāievada kredītkartes informācija vietnē, tad es esmu par to.


Ko jūs domājat par šo gaidāmo standartu? Izklausieties komentāros un dariet mums zināmu savu viedokli!