Google Wallet API আপনার ব্যবহারকারীদের ওয়েব থেকে Google Wallet-এ কোনও অবজেক্ট যোগ করার সুবিধা দেয়। ব্যবহারকারীরা সরাসরি আপনার ওয়েবসাইট থেকে তাদের কার্ড যোগ করতে পারবেন।
এই রেফারেন্সে HTML এলিমেন্ট g:savetoandroidpay সম্পর্কে বিস্তারিত তথ্য দেওয়া আছে যা
Google Wallet API বোতাম রেন্ডার করে
এবং JSON ওয়েব টোকেন
যা Google-এর কাছে আপনার ওয়েব পরিষেবা বর্ণনা করে।
Google Wallet API JavaScript
লোড করার সময় g:savetoandroidpay HTML ট্যাগ অটোমেটিক পার্স করতে, স্ট্যান্ডার্ড
JavaScript
<script src="https://apis.google.com/js/platform.js" type="text/javascript"></script>
AJAX অ্যাপ্লিকেশন এবং Google Wallet API বোতামের এক্সপ্লিসিট রেন্ডারিংয়ের জন্য, "parsetags": "explicit" প্যারামিটার অন্তর্ভুক্ত করুন।
<script src="https://apis.google.com/js/platform.js" type="text/javascript">
{"parsetags": "explicit"}
</script>g:savetoandroidpay HTML ট্যাগ
g:savetoandroidpay নেমস্পেস ট্যাগ, Google Wallet-এ যোগ করুন
বোতামের প্লেসমেন্ট এবং বিভিন্ন অ্যাট্রিবিউট
নির্ধারণ করে। আপনি সার্ভার-সাইডে HTML ও JWT রেন্ডার করলে এই ট্যাগ ব্যবহার করুন
।
<g:savetoandroidpay jwt="JWT" onsuccess="successHandler" onfailure="failureHandler" />
| ফিল্ড | ধরন | প্রয়োজনীয় | বিবরণ |
|---|---|---|---|
height |
স্ট্রিং | না | দেখানোর জন্য বোতামের উচ্চতা। সম্ভাব্য ভ্যালুগুলি হল: small (৩০ পিক্সেল উচ্চতা) এবং
standard (৩৮ পিক্সেল উচ্চতা)। height ডিফল্ট হিসেবে small সেট করা থাকে।
বিভিন্ন height সেটিংস সহ বোতামের স্যাম্পেল দেখতে
Google Wallet API বোতাম দেখুন। |
jwt |
স্ট্রিং | হ্যাঁ | Google Wallet API JWT. |
onsuccess |
স্ট্রিং | না | সেভ সাকসেস কলব্যাক হ্যান্ডলার ফাংশনের স্ট্রিং নাম। |
onfailure |
স্ট্রিং | না | সেভ না হওয়ার কলব্যাক হ্যান্ডলার ফাংশনের স্ট্রিং নাম। এই ফাংশনে errorCode ও errorMessage সহ একটি সমস্যার অবজেক্ট পাস করা হয়। |
onprovidejwt |
স্ট্রিং | না | প্রদান করা JWT হ্যান্ডলার ফাংশনের স্ট্রিং নাম। এই ফাংশনের উদ্দেশ্য হল
Google Wallet-এ অবজেক্ট যোগ করার আগে JWT ডেটা ইন্টারসেপ্ট করা এবং সম্ভাব্যভাবে ম্যানিপুলেট করা।
এই ফাংশন কোনও প্যারামিটার নেয় না এবং অবশ্যই JWT-কে String হিসেবে রিটার্ন করতে হবে।
ইভেন্ট হ্যান্ডলার প্রয়োগ করার সময়, আসল JWT ডেটা this.getOpenParams().renderData.userParams.jwt ফিল্ডের
অধীনে ফিরিয়ে আনা যাবে। |
size |
স্ট্রিং | না | দেখানোর জন্য বোতামের প্রস্থ। আপনি size থেকে matchparent
সেট করতে পারেন যাতে প্রস্থটি মূল এলিমেন্টের প্রস্থের সাথে মেলে। অথবা, size
অনির্ধারিত রাখুন যাতে প্রস্থটি text সেটিংয়ের প্রস্থের সাথে মানানসই হয়।
বিভিন্ন size সেটিংস সহ বোতামের নমুনা দেখতে Google Wallet API বোতাম
দেখুন। |
text |
স্ট্রিং | না | বন্ধ করে দেওয়া হয়েছে |
textsize |
স্ট্রিং | না | textsize=large নির্দিষ্ট করা থাকলে, বিশেষ UI সংক্রান্ত প্রয়োজনীয়তা থাকা কেসের জন্য
টেক্সটের সাইজ এবং
বোতামের সাইজ অনেক বেশি করে দেখানো হয়। |
theme |
স্ট্রিং | না | দেখানোর জন্য বোতামের থিম। সম্ভাব্য মান হল: dark এবং
light. ডিফল্ট থিম হল dark। বিভিন্ন theme সেটিংস সহ বোতামের স্যাম্পেল দেখতে
Google Wallet API বোতাম
দেখুন। |
Google Wallet API JWT
Google Wallet API JWT সেভ করার জন্য অবজেক্ট ও ক্লাসকে ডিফাইন করে।
JSON উপস্থাপনা
{ "iss": "example_service_account@developer.gserviceaccount.com", "aud": "google", "typ": "savetowallet", "iat": 1368029586, "payload": { "eventTicketClasses": [{ ... //Event ticket Class JSON }], "eventTicketObjects": [{ // Event ticket Object JSON }], "flightClasses": [{ // Flight Class JSON }], "flightObjects": [{ // Flight Object JSON }], "giftCardClasses": [{ // Gift card Class JSON }], "giftCardObjects": [{ // Gift card Object JSON }], "loyaltyClasses": [{ // Loyalty Class JSON }], "loyaltyObjects": [{ // Loyalty Object JSON }], "offerClasses": [{ // Offer Class JSON }], "offerObjects": [{ // Offer Object JSON }], "transitClasses": [{ // Transit Class JSON }], "transitObjects": [{ // Transit Object JSON }] }, "origins": ["http://baconrista.com", "https://baconrista.com"] }
ফিল্ড
| ফিল্ড | ধরন | প্রয়োজনীয় | বিবরণ |
|---|---|---|---|
iss |
স্ট্রিং | হ্যাঁ | আপনার Google Cloud পরিষেবা অ্যাকাউন্ট থেকে তৈরি করা ইমেল আইডি। |
aud |
স্ট্রিং | হ্যাঁ | দর্শক। Google Wallet API অবজেক্টের দর্শক সবসময়
google হবে। |
typ |
স্ট্রিং | হ্যাঁ | JWT-এর ধরন। Google Wallet API অবজেক্টের দর্শক সবসময়
savetowallet হবে। |
iat |
পূর্ণসংখ্যা | হ্যাঁ | ইপক থেকে সেকেন্ডে সময় হিসেবে ইস্যু করা হয়েছে। |
payload |
অবজেক্ট | হ্যাঁ | পেলোড অবজেক্ট। |
payload.eventTicketClasses |
অ্যারে | না | সেভ করার জন্য ইভেন্ট টিকিট ক্লাস। |
payload.eventTicketObjects |
অ্যারে | না | সেভ করার জন্য ইভেন্ট টিকিট অবজেক্ট। |
payload.flightClasses |
অ্যারে | না | সেভ করার জন্য ফ্লাইট ক্লাস। |
payload.flightObjects |
অ্যারে | না | সেভ করার জন্য ফ্লাইট অবজেক্ট। |
payload.giftCardClasses |
অ্যারে | না | সেভ করার জন্য গিফ্ট কার্ড ক্লাস। |
payload.giftCardObjects |
অ্যারে | না | সেভ করার জন্য গিফ্ট কার্ড অবজেক্ট। |
payload.loyaltyClasses |
অ্যারে | না | সেভ করার জন্য লয়ালটি ক্লাস। |
payload.loyaltyObjects |
অ্যারে | না | সেভ করার জন্য লয়ালটি অবজেক্ট। |
payload.offerObjects |
অ্যারে | না | সেভ করার জন্য অফার অবজেক্ট। |
payload.offerClasses |
অ্যারে | না | সেভ করার জন্য অফার ক্লাস। |
payload.transitObjects |
অ্যারে | না | সেভ করার জন্য ট্রানজিট অবজেক্ট। |
payload.transitClasses |
অ্যারে | না | সেভ করার জন্য ট্রানজিট ক্লাস। |
origins |
অ্যারে | হ্যাঁ | JWT সেভিং কার্যকারিতার জন্য অনুমোদন করার ডোমেনের অ্যারে। origins ফিল্ড নির্দিষ্ট করা না থাকলে, Google Wallet API
বোতাম রেন্ডার হবে না। অরিজিন ফিল্ড নির্দিষ্ট করা না থাকলে,
আপনি ব্রাউজার কনসোলে "X-Frame-Options-এর কারণে লোড করা যায়নি" বা "দেখাতে অস্বীকার করা হয়েছে" মেসেজ
দেখতে পেতে পারেন। |
আপনার এনকোড করা JWT নিম্নলিখিত উদাহরণের মতো দেখতে হবে:
eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJnb29nbGUiLCJvcmlnaW5zIjpbImh0dHA6Ly9sb2NhbGhvc3Q6ODA4MCIsImh0dHA6Ly93d3cuZ29vZ2xlLmNvbSJdLCJpc3MiOiJzMmFwLXRvb2wuZ29vZ2xlLmNvbUBhcHBzcG90LmdzZXJ2aWNlYWNjb3VudC5jb20iLCJpYXQiOjE1NTE5ODcxNTEsInR5cCI6InNhdmV0b3dhbGxldCIsInBheWxvYWQiOnsib2ZmZXJPYmplY3RzIjpbeyJpZCI6IjMyMDI0MTMyNDE4NDM2OTk0MDEuMDFfT2ZmZXJPYmplY3RJZCJ9XX19.maHX40WWT29TC_kEb90EKQBH9AiTYAZR3153K8UI7fznVnfjVdlwsH_GKTECV3PGXdNnKCcmatUbKsONC0bxrnAHYG02kuvA1D3hSctz_amU66ntsvGIDe13mpxTzhI8fPvt9KMP1iaO7uOJuLQIHwipu4uRFAjyFaHGVaSFaP9c53qQyb_Zgyyk50M-MhH2n4kDpstNCqUJKWaadQkOWjrtMjwGzQ_ME04lbR4wb_mfK1A7Rc1UieWkxM9aMl5TOPubBKxKRRk_CqillN8XoTl9MI5RRGPuElVO28zGpYlFS6BarzDaaUfmbRZGvfF8ZiKrHZKxVrJjfZIJ2TCcDw
gapi.savetoandroidpay.render ফাংশন
এই ফাংশন আপনাকে Google Wallet API বোতাম স্পষ্টভাবে রেন্ডার করার অনুমতি দেয়।
gapi.savetoandroidpay.render("dom-container",{
"jwt": "JWT",
"onsuccess": "successHandler",
"onfailure": "failureHandler"
});| ফিল্ড | ধরন | প্রয়োজনীয় | বিবরণ |
|---|---|---|---|
dom-container |
স্ট্রিং | হ্যাঁ | Google Wallet API বোতাম রাখার জন্য কন্টেনারের আইডি। |
jwt |
স্ট্রিং | হ্যাঁ | সেভ করার জন্য কন্টেন্ট নির্ধারণকারী JWT. |
onsuccess |
স্ট্রিং | না | সেভ সাকসেস কলব্যাক হ্যান্ডলার ফাংশনের স্ট্রিং নাম। |
onfailure |
স্ট্রিং | না | সেভ না হওয়ার কলব্যাক হ্যান্ডলার ফাংশনের স্ট্রিং নাম। এই ফাংশনে errorCode ও errorMessage সহ একটি সমস্যার অবজেক্ট পাস করা হয়। |
onprovidejwt |
স্ট্রিং | না | প্রদান করা JWT হ্যান্ডলার ফাংশনের স্ট্রিং নাম। এই ফাংশনের উদ্দেশ্য হল
Google Wallet-এ অবজেক্ট যোগ করার আগে JWT ডেটা ইন্টারসেপ্ট করা এবং সম্ভাব্যভাবে ম্যানিপুলেট করা।
এই ফাংশন কোনও প্যারামিটার নেয় না এবং স্ট্রিং হিসেবে JWT ফেরত দিতে হবে।
ইভেন্ট হ্যান্ডলার প্রয়োগ করার সময়, ফিল্ড this.getOpenParams().renderData.userParams.jwt-এর অধীনে আসল JWT ডেটা
রিট্রিভ করা যেতে পারে। |
Google Wallet API-এর ত্রুটি কোড ও মেসেজ
জাভাস্ক্রিপ্ট বোতাম ব্যবহার করে কোনও অবজেক্ট সেভ করা না গেলে, নিম্নলিখিত সারণীতে সমস্যার কোড ও ডিফল্ট সমস্যার মেসেজ দেওয়া আছে যা error অবজেক্টে পাস করা হয়।
{
"errorCode": "errorCode",
"errorMessage": "errorMessage"
}errorCode |
errorMessage |
|---|---|
SERVICE_FAILURE |
Google Wallet সার্ভারে সমস্যা হয়েছে। |
CLASS_NOT_FOUND |
অবজেক্টে রেফারেন্স করা ক্লাস খুঁজে পাওয়া যায়নি। |
CLASS_MISMATCH |
অবজেক্ট অবশ্যই থাকতে হবে, একই ধরনের হতে হবে এবং এনক্লোজড ক্লাসকে রেফারেন্স করতে হবে। |
ORIGIN_MISMATCH |
বোতামের অরিজিন, অরিজিন তালিকায় নির্দিষ্ট করা অরিজিনের সাথে মিলছে না। |
INVALID_NUM_TYPES |
ঠিক এক ধরনের অবজেক্ট নির্দিষ্ট করা যেতে পারে। |
INVALID_SIGNATURE |
স্বাক্ষর যাচাই করা যায়নি। |
INVALID_DUPLICATE_IDS |
ডুপ্লিকেট অবজেক্ট বা ক্লাস ব্যবহার করা যাবে না। |
INVALID_JWT |
ভুল JWT। |
INVALID_EXP_IAT |
JWT-এর মেয়াদ শেষ হয়ে গেছে বা ভবিষ্যতে ইস্যু করা হয়েছে। |
INVALID_AUD |
AUD ফিল্ডের জন্য ভুল ভ্যালু। |
INVALID_TYP |
TYP ফিল্ডের জন্য ভুল ভ্যালু। |
INVALID_NUM_OBJECTS |
লয়ালটি কার্ড, গিফ্ট কার্ড ও অফারের জন্য ঠিক একটি অবজেক্ট ও সর্বাধিক একটি ক্লাস নির্দিষ্ট করা যেতে পারে। |
MALFORMED_ORIGIN_URL |
ভুল অরিজিন URL. URL-এ অবশ্যই প্রোটোকল ও ডোমেন থাকতে হবে। |
MISSING_ORIGIN |
উৎস নির্দিষ্ট করতে হবে। |
MISSING_FIELDS |
এনক্লোজ করা অবজেক্ট বা ক্লাসে প্রয়োজনীয় ফিল্ড নেই। |
স্থানীয়করণ
JavaScript বোতামের ভাষা নিম্নলিখিত মাপকাঠির উপর ভিত্তি করে পরিবর্তিত হয়:
- ব্যবহারকারী Google-এ লগ-ইন করে থাকলে, ব্যবহারকারীর Google অ্যাকাউন্ট প্রোফাইলে উল্লেখ করা পছন্দের ভাষায় বোতামটি দেখানো হয়। ব্যবহারকারী তার Google অ্যাকাউন্টের পছন্দের ভাষা কীভাবে পরিবর্তন করবেন তা জানতে ভাষা পরিবর্তন করুন পড়তে পারেন।
- ব্যবহারকারী Google-এ লগ-ইন না করে থাকলে, বোতামটি HTTP হেডারে
ACCEPT-LANGUAGEভ্যালু ব্যবহার করে।
আপনি যদি লক্ষ্য করেন যে উপরের লজিকের উপর ভিত্তি করে বোতামটি সঠিক ভাষায় রেন্ডার হয় না, বা যদি শব্দটি অস্বাভাবিক হয়, আমাদের সহায়তা টিমের সাথে যোগাযোগ করুন।