গুগল প্লে-এর বিলিং সিস্টেম হল এমন একটি পরিষেবা যা আপনাকে আপনার অ্যান্ড্রয়েড অ্যাপে ডিজিটাল পণ্য এবং সামগ্রী বিক্রি করতে দেয়। মে ২০২২ সালে রিলিজের মাধ্যমে, আমরা সাবস্ক্রিপশন পণ্যগুলি কীভাবে সংজ্ঞায়িত করা হয় তা পরিবর্তন করেছি এবং এটি অ্যাপের মধ্যে কীভাবে বিক্রি করা হয় এবং আপনার ব্যাকএন্ডে কীভাবে পরিচালিত হয় তা প্রভাবিত করে। আপনি যদি প্রথমবারের মতো গুগল প্লে বিলিং-এর সাথে একীভূত হন, তাহলে আপনি "Getting ready" পড়ে আপনার একীভূতকরণ শুরু করতে পারেন।
আপনি যদি ২০২২ সালের মে মাসের আগে Google Play Billing-এর মাধ্যমে সাবস্ক্রিপশন বিক্রি করে থাকেন, তাহলে আপনার বিদ্যমান সাবস্ক্রিপশনগুলি বজায় রেখে কীভাবে নতুন বৈশিষ্ট্যগুলি গ্রহণ করবেন তা বোঝা গুরুত্বপূর্ণ।
প্রথমেই জেনে রাখা উচিত যে আপনার সমস্ত বিদ্যমান সাবস্ক্রিপশন, অ্যাপ এবং ব্যাকএন্ড ইন্টিগ্রেশনগুলি ২০২২ সালের মে মাসে রিলিজের আগে যেমন ছিল ঠিক তেমনই কাজ করে । আপনাকে তাৎক্ষণিকভাবে কোনও পরিবর্তন করতে হবে না এবং সময়ের সাথে সাথে আপনি এই নতুন বৈশিষ্ট্যগুলি গ্রহণ করতে পারেন। গুগল প্লে বিলিং লাইব্রেরির প্রতিটি বড় রিলিজ রিলিজের পর দুই বছর ধরে সমর্থিত। গুগল প্লে ডেভেলপার এপিআই- এর সাথে বিদ্যমান ইন্টিগ্রেশনগুলি আগের মতোই কাজ করে চলেছে।
মে ২০২২ সালের আপডেটের একটি সারসংক্ষেপ এখানে দেওয়া হল:
- নতুন Google Play Console আপনাকে সাবস্ক্রিপশন, বেস প্ল্যান এবং অফার তৈরি এবং পরিচালনা করতে দেয়। এর মধ্যে নতুন এবং মাইগ্রেটেড উভয় সাবস্ক্রিপশনই অন্তর্ভুক্ত।
- Play Developer API-তে API আকারে নতুন Google Play Console UI কার্যকারিতা সমর্থন করার জন্য আপডেট রয়েছে। উল্লেখযোগ্যভাবে, Subscription Purchases API- এর একটি নতুন সংস্করণ রয়েছে। সাবস্ক্রিপশনের স্থিতি পরীক্ষা করতে এবং সাবস্ক্রিপশন ক্রয় পরিচালনা করতে এই API ব্যবহার করুন।
- নতুন প্লে বিলিং লাইব্রেরি ভার্সন ৫ আপনার অ্যাপকে সমস্ত নতুন সাবস্ক্রিপশন বৈশিষ্ট্য থেকে উপকৃত করার সুযোগ করে দেয়। যখন আপনি ভার্সন ৫ এ আপগ্রেড করার জন্য প্রস্তুত হন, তখন মাইগ্রেশন গাইডের নির্দেশিকা অনুসরণ করুন।
সাবস্ক্রিপশন কনফিগারেশন
গুগল প্লে কনসোলের মাধ্যমে সাবস্ক্রিপশন পরিচালনা করা
২০২২ সালের মে মাস থেকে, আপনি গুগল প্লে কনসোলে কিছু পার্থক্য লক্ষ্য করবেন।
একটি সাবস্ক্রিপশনে এখন একাধিক বেস প্ল্যান এবং অফার থাকতে পারে। পূর্বে তৈরি সাবস্ক্রিপশন SKU গুলি এখন Play Console-এ এই নতুন সাবস্ক্রিপশন, বেস প্ল্যান এবং অফার অবজেক্ট হিসেবে দেখা যাবে। যদি আপনি ইতিমধ্যেই না করে থাকেন, তাহলে নতুন অবজেক্টের কার্যকারিতা এবং কনফিগারেশন সহ বিবরণের জন্য Play Console-এ সাবস্ক্রিপশনের সাম্প্রতিক পরিবর্তনগুলি দেখুন। আপনার সমস্ত পূর্বে বিদ্যমান সাবস্ক্রিপশন পণ্য এই নতুন ফর্ম্যাটে Google Play Console-এ প্রদর্শিত হবে। প্রতিটি SKU এখন একটি সাবস্ক্রিপশন অবজেক্ট দ্বারা প্রতিনিধিত্ব করা হয় যার মধ্যে একটি একক বেস প্ল্যান এবং প্রযোজ্য হলে ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ অফার থাকে।
যেহেতু পুরোনো ইন্টিগ্রেশনগুলিতে প্রতিটি সাবস্ক্রিপশনে একটি একক অফার অন্তর্ভুক্ত থাকার আশা করা হত, যা একটি SkuDetails অবজেক্ট দ্বারা প্রতিনিধিত্ব করা হত, তাই প্রতিটি সাবস্ক্রিপশনে একটি একক ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ বেস প্ল্যান বা অফার থাকতে পারে। ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ বেস প্ল্যান বা অফারটি এখন-অপ্রচলিত querySkuDetailsAsync() পদ্ধতি ব্যবহার করা অ্যাপগুলির জন্য একটি SKU-এর অংশ হিসাবে ফেরত পাঠানো হয়। ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ অফারগুলি কনফিগার এবং পরিচালনা করার বিষয়ে আরও তথ্যের জন্য, সাবস্ক্রিপশনগুলি বোঝা দেখুন যখন আপনার অ্যাপটি শুধুমাত্র queryProductDetailsAsync() ব্যবহার করছে, এবং একবার আপনার অ্যাপের কোনও পুরানো সংস্করণ এখনও কেনাকাটা করছে না, তখন আপনাকে আর ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ অফার ব্যবহার করার প্রয়োজন নেই।
সাবস্ক্রিপশন পাবলিশিং API এর মাধ্যমে সাবস্ক্রিপশন পরিচালনা করা
Play Developer API-তে সাবস্ক্রিপশন ক্রয়ের জন্য নতুন কার্যকারিতা রয়েছে। SKU পরিচালনার জন্য inappproducts API আগের মতোই কাজ করে চলেছে, যার মধ্যে এককালীন ক্রয় পণ্য এবং সাবস্ক্রিপশন পরিচালনা করা অন্তর্ভুক্ত, তাই আপনার ইন্টিগ্রেশন বজায় রাখার জন্য আপনাকে তাৎক্ষণিকভাবে কোনও পরিবর্তন করতে হবে না।
তবে, এটা মনে রাখা গুরুত্বপূর্ণ যে Google Play Console শুধুমাত্র নতুন সাবস্ক্রিপশন এন্টিটি ব্যবহার করে। একবার আপনি কনসোলে আপনার সাবস্ক্রিপশন সম্পাদনা শুরু করলে, inappproducts API আর সাবস্ক্রিপশনের জন্য ব্যবহার করা যাবে না ।
যদি আপনি মে ২০২২ এর আগে পাবলিশিং API ব্যবহার করে থাকেন, তাহলে কোনও সমস্যা এড়াতে, Google Play Console-এ বিদ্যমান যেকোনও সাবস্ক্রিপশন এখন কেবল পঠনযোগ্য হিসাবে প্রদর্শিত হবে। আপনি যদি পরিবর্তন করার চেষ্টা করেন, তাহলে আপনি এই সীমাবদ্ধতা ব্যাখ্যা করে একটি সতর্কতা পেতে পারেন। কনসোলে সাবস্ক্রিপশন আরও সম্পাদনা করার আগে, নতুন সাবস্ক্রিপশন পাবলিশিং এন্ডপয়েন্ট ব্যবহার করার জন্য আপনার ব্যাকএন্ড ইন্টিগ্রেশন আপডেট করা উচিত। নতুন monetization.subscriptions , monetization.subscriptions.baseplans , এবং monetization.subscriptions.offers এন্ডপয়েন্টগুলি আপনাকে সমস্ত উপলব্ধ বেস প্ল্যান এবং অফার পরিচালনা করার অনুমতি দেয়। আপনি নিম্নলিখিত টেবিলে দেখতে পারেন কিভাবে বিভিন্ন ক্ষেত্রগুলি InAppProduct সত্তা থেকে monetization.subscriptions অধীনে নতুন বস্তুতে ম্যাপ করে:
| ইনঅ্যাপপণ্য | সাবস্ক্রিপশন |
|---|---|
packageName | packageName |
sku | productId |
status | basePlans[0].state |
prices | বেসপ্ল্যানস[0].রিজিওনালকনফিগস.প্রাইস |
listings | তালিকা |
defaultPrice | কোন সমতা নেই |
subscriptionPeriod | বেসপ্ল্যান[0].অটোরিনিউইংবেসপ্ল্যানটাইপ.বিলিংপিরিয়ডডিউরেশন |
trialPeriod | বেসপ্ল্যান[0].অফার[0].ফেজ[0].রিজিওনালকনফিগ[0].ফ্রি |
gracePeriod | বেসপ্ল্যান[0].অটোরিনিউইংবেসপ্ল্যানটাইপ.গ্রেসপিরিয়ডডিউরেশন |
subscriptionTaxesAndComplianceSettings | ট্যাক্সঅ্যান্ডকমপ্লায়েন্সসেটিংস |
এই প্রয়োজনীয় API আপডেটটি শুধুমাত্র প্রকাশনা API (SKU ব্যবস্থাপনা) এর ক্ষেত্রে প্রযোজ্য।
Play Billing Library-এর পরিবর্তনগুলি
ধীরে ধীরে স্থানান্তরকে সমর্থন করার জন্য, Play Billing Library-তে পূর্ববর্তী সংস্করণগুলিতে উপলব্ধ সমস্ত পদ্ধতি এবং অবজেক্ট অন্তর্ভুক্ত রয়েছে। SkuDetails অবজেক্ট এবং ফাংশন যেমন querySkuDetailsAsync() এখনও বিদ্যমান, তাই আপনি বিদ্যমান সাবস্ক্রিপশন কোডটি অবিলম্বে আপডেট না করেই নতুন কার্যকারিতা ব্যবহার করতে আপগ্রেড করতে পারেন। আপনি এই পদ্ধতিগুলির মাধ্যমে কোন অফারগুলি উপলব্ধ তা ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ হিসাবে চিহ্নিত করে নিয়ন্ত্রণ করতে পারেন।
লিগ্যাসি পদ্ধতিগুলি বজায় রাখার পাশাপাশি, Play Billing Library 5-এ এখন একটি নতুন ProductDetails অবজেক্ট এবং একটি সংশ্লিষ্ট queryProductDetailsAsync() পদ্ধতি অন্তর্ভুক্ত করা হয়েছে যা নতুন সত্তা এবং কার্যকারিতা পরিচালনা করবে। বিদ্যমান ইন-অ্যাপ পণ্যগুলি (এককালীন কেনাকাটা এবং ভোগ্যপণ্য) এখন ProductDetails দ্বারা সমর্থিত।
সাবস্ক্রিপশনের জন্য, ProductDetails.getSubscriptionOfferDetails() ব্যবহারকারীর জন্য যোগ্য সমস্ত বেস প্ল্যান এবং অফারগুলির একটি তালিকা প্রদান করে। এর অর্থ হল আপনি ব্যবহারকারীর জন্য যোগ্য সমস্ত বেস প্ল্যান এবং অফার অ্যাক্সেস করতে পারবেন, ব্যাকওয়ার্ড-সামঞ্জস্যতা নির্বিশেষে। getSubscriptionOfferDetails() সাবস্ক্রিপশনবিহীন পণ্যগুলির জন্য null প্রদান করে। এককালীন ক্রয়ের জন্য, আপনি getOneTimePurchaseOfferDetails() ব্যবহার করতে পারেন।
Play Billing Library 5-এ ক্রয় প্রবাহ চালু করার জন্য নতুন এবং লিগ্যাসি উভয় পদ্ধতিই অন্তর্ভুক্ত রয়েছে। যদি BillingClient.launchBillingFlow() এ পাস করা BillingFlowParams অবজেক্টটি SkuDetails অবজেক্ট ব্যবহার করে কনফিগার করা হয়, তাহলে সিস্টেমটি SKU-এর সাথে সঙ্গতিপূর্ণ ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ বেস প্ল্যান বা অফার থেকে বিক্রি করার জন্য অফার তথ্য বের করে। যদি BillingClient.launchBillingFlow() এ পাস করা BillingFlowParams অবজেক্টটি ProductDetailsParams অবজেক্ট ব্যবহার করে কনফিগার করা হয়, যার মধ্যে ProductDetails এবং ক্রয় করা অফারের জন্য নির্দিষ্ট অফার টোকেন প্রতিনিধিত্বকারী একটি String অন্তর্ভুক্ত থাকে, তাহলে সিস্টেমটি ব্যবহারকারীর দ্বারা অর্জিত পণ্যটি সনাক্ত করতে সেই তথ্য ব্যবহার করে।
queryPurchasesAsync() ব্যবহারকারীর মালিকানাধীন সমস্ত ক্রয় ফেরত দেয়। অনুরোধকৃত পণ্যের ধরণ নির্দেশ করতে, আপনি পুরানো সংস্করণের মতো একটি BillingClient.SkuType মান অথবা একটি QueryPurchasesParams অবজেক্ট দিতে পারেন যাতে একটি BillingClient.ProductType মান থাকে যা নতুন সাবস্ক্রিপশন সত্তাগুলিকে প্রতিনিধিত্ব করে।
আমরা আপনার অ্যাপগুলিকে শীঘ্রই লাইব্রেরির ৫ম সংস্করণে আপডেট করার পরামর্শ দিচ্ছি যাতে আপনি এই নতুন সাবস্ক্রিপশন বৈশিষ্ট্যগুলির সুবিধা নেওয়া শুরু করতে পারেন।
সাবস্ক্রিপশন স্ট্যাটাস পরিচালনা করা
এই বিভাগটি Google Play বিলিং সিস্টেম ইন্টিগ্রেশনের ব্যাকএন্ড উপাদানগুলিতে প্রাথমিক পরিবর্তনগুলি বর্ণনা করে যা সংস্করণ 5 এ স্থানান্তরের জন্য বাস্তবায়ন করা প্রয়োজন।
রিয়েল টাইম ডেভেলপার বিজ্ঞপ্তি
শীঘ্রই SubscriptionNotification অবজেক্টে আর subscriptionId থাকবে না। যদি আপনি সাবস্ক্রিপশন পণ্য সনাক্ত করার জন্য এই ক্ষেত্রের উপর নির্ভর করেন, তাহলে বিজ্ঞপ্তি পাওয়ার পর purchases.subscriptionv2:get ব্যবহার করে সাবস্ক্রিপশন স্ট্যাটাস থেকে এই তথ্য পেতে আপডেট করুন। lineItems সংগ্রহের প্রতিটি SubscriptionPurchaseLineItem উপাদান যা ক্রয় স্ট্যাটাসের অংশ হিসাবে ফেরত পাঠানো হয় তাতে সংশ্লিষ্ট productId অন্তর্ভুক্ত থাকবে।
সাবস্ক্রিপশন ক্রয় API: সাবস্ক্রিপশন স্ট্যাটাস পাওয়া
সাবস্ক্রিপশন পারচেস API-এর পূর্ববর্তী সংস্করণগুলিতে, আপনি purchases.subscriptions:get ব্যবহার করে সাবস্ক্রিপশনের অবস্থা জানতে চাইতে পারেন। এই এন্ডপয়েন্টটি অপরিবর্তিত রয়েছে এবং ব্যাকওয়ার্ড-সামঞ্জস্যপূর্ণ সাবস্ক্রিপশন ক্রয়ের জন্য কাজ করে চলেছে। এই এন্ডপয়েন্টটি ২০২২ সালের মে মাসে প্রকাশিত কোনও নতুন কার্যকারিতা সমর্থন করে না ।
সাবস্ক্রিপশন পারচেস API-এর নতুন সংস্করণে, সাবস্ক্রিপশন ক্রয়ের অবস্থা পেতে purchases.subscriptionsv2:get ব্যবহার করুন। এই API মাইগ্রেটেড সাবস্ক্রিপশন, নতুন সাবস্ক্রিপশন (প্রিপেইড এবং অটো-রিনিউ উভয়) এবং সকল ধরণের ক্রয়ের সাথে সামঞ্জস্যপূর্ণ। বিজ্ঞপ্তি পাওয়ার সময় আপনি সাবস্ক্রিপশনের অবস্থা পরীক্ষা করতে এই এন্ডপয়েন্টটি ব্যবহার করতে পারেন। ফিরে আসা অবজেক্ট, SubscriptionPurchaseV2 , নতুন ক্ষেত্র রয়েছে, তবে এতে এখনও লিগ্যাসি ডেটা রয়েছে যা বিদ্যমান সাবস্ক্রিপশনগুলিকে সমর্থন করা চালিয়ে যাওয়ার জন্য প্রয়োজনীয়।
প্রিপেইড প্ল্যানের জন্য SubscriptionPurchaseV2 ক্ষেত্র
প্রিপেইড প্ল্যানগুলিকে সমর্থন করার জন্য নতুন ক্ষেত্র যুক্ত করা হয়েছে, যা স্বয়ংক্রিয়ভাবে পুনর্নবীকরণের পরিবর্তে ব্যবহারকারী দ্বারা বর্ধিত করা হয়। সমস্ত ক্ষেত্র প্রিপেইড প্ল্যানের ক্ষেত্রে প্রযোজ্য যেমনটি স্বয়ংক্রিয় পুনর্নবীকরণ সাবস্ক্রিপশনের ক্ষেত্রে প্রযোজ্য, নিম্নলিখিত ব্যতিক্রমগুলি ছাড়া:
- [নতুন ক্ষেত্র] lineItems[0].prepaid_plan.allowExtendAfterTime : একজন ব্যবহারকারীকে তাদের প্রিপেইড প্ল্যানটি বাড়ানোর জন্য কখন আরেকটি টপ-আপ কিনতে অনুমতি দেওয়া হবে তা বোঝায়, কারণ একজন ব্যবহারকারী একবারে শুধুমাত্র একটি অব্যবহৃত টপ-আপ ব্যবহার করতে পারবেন।
- [নতুন ক্ষেত্র] SubscriptionState : সাবস্ক্রিপশন অবজেক্টের অবস্থা নির্দিষ্ট করে। প্রিপেইড প্ল্যানের জন্য, এই মান সর্বদা হয়
ACTIVE,PENDING, অথবাCANCELED। - lineItems[0].expiryTime : প্রিপেইড প্ল্যানের জন্য এই ক্ষেত্রটি সর্বদা উপস্থিত থাকে।
- paused_state_context : এই ক্ষেত্রটি কখনই উপস্থিত থাকে না, কারণ প্রিপেইড প্ল্যানগুলি থামাতে পারে না।
- lineItems[0].auto_renewing_plan : প্রিপেইড প্ল্যানের জন্য উপলব্ধ নয়।
- canceled_state_context : প্রিপেইড প্ল্যানের জন্য এটি প্রযোজ্য নয়, কারণ এই ক্ষেত্রটি শুধুমাত্র সেই ব্যবহারকারীদের জন্য প্রযোজ্য যারা সক্রিয়ভাবে সাবস্ক্রিপশন বাতিল করেন।
- lineItems[0].productId : এই ক্ষেত্রটি পূর্ববর্তী সংস্করণগুলির
subscriptionIdপ্রতিস্থাপন করে।
পুনরাবৃত্ত সাবস্ক্রিপশনের জন্য SubscriptionPurchaseV2 ক্ষেত্র
purchases.subscriptionv2 নতুন ক্ষেত্র রয়েছে যা নতুন সাবস্ক্রিপশন অবজেক্ট সম্পর্কে আরও বিশদ প্রদান করে। নিম্নলিখিত সারণীটি দেখায় কিভাবে লিগ্যাসি সাবস্ক্রিপশন এন্ডপয়েন্ট ম্যাপ থেকে purchases.subscriptionv2 এর সংশ্লিষ্ট ক্ষেত্রগুলিতে ক্ষেত্রগুলি।
| সাবস্ক্রিপশনক্রয় | সাবস্ক্রিপশনPurchaseV2 |
|---|---|
countryCode | regionCode |
orderId | latestOrderId |
| (কোনও সমতুল্য ক্ষেত্র নেই) | lineItems.offerPhase (বর্তমান পর্যায় চিহ্নিত করে: বিনামূল্যে ট্রায়াল, প্রারম্ভিক মূল্য, প্রোরেশন, ভিত্তি মূল্য) |
| (কোনও সমতুল্য ক্ষেত্র নেই) | lineItems ( SubscribePurchaseLineItem এর তালিকা) যা ক্রয়ের মাধ্যমে অর্জিত পণ্যগুলির প্রতিনিধিত্ব করে |
| (কোনও সমতুল্য ক্ষেত্র নেই) | lineItems.offerDetails.basePlanId |
| (কোনও সমতুল্য ক্ষেত্র নেই) | lineItems.offerDetails.offerId |
| (কোনও সমতুল্য ক্ষেত্র নেই) | lineItems.offerDetails.offerTags |
startTimeMillis | startTime |
expiryTimeMillis | lineItems.expiryTime (ক্রয়ে অর্জিত প্রতিটি সাবস্ক্রিপশনের নিজস্ব expiryTime থাকে) |
| (কোনও সমতুল্য ক্ষেত্র নেই) | subscriptionState ( সাবস্ক্রিপশনের অবস্থা নির্দেশ করে) |
| (কোনও সমতুল্য ক্ষেত্র নেই) | pausedStateContext (সাবস্ক্রিপশন স্ট্যাটাস SUBSCRIPTION_STATE_PAUSED হলেই কেবল উপস্থিত) |
autoResumeTimeMillis | pausedStateContext.autoResumeTime |
| (কোনও সমতুল্য ক্ষেত্র নেই) | canceledStateContext (শুধুমাত্র সাবস্ক্রিপশন স্ট্যাটাস SUBSCRIPTION_STATE_CANCELED হলেই উপস্থিত) |
| (কোনও সমতুল্য ক্ষেত্র নেই) | testPurchase (শুধুমাত্র লাইসেন্সপ্রাপ্ত পরীক্ষক ক্রয়ে উপস্থিত) |
autoRenewing | lineItems.autoRenewingPlan.autoRenewEnabled |
priceCurrenceCode , priceAmountMicros | lineItems.autoRenewingPlan.recurringPrice |
introductoryPriceInfo | lineItems.offerPhase.introductoryPriceএই তথ্য প্রতিটি ক্রয়কৃত সাবস্ক্রিপশনের offer পাওয়া যাবে। |
| ডেভেলপারপেলোড | (কোনও সমতুল্য ক্ষেত্র নেই) ডেভেলপার পেলোড অবচিত হয়েছে |
| পেমেন্টস্টেট | (কোনও সমতুল্য ক্ষেত্র নেই) আপনি subscriptionState থেকে পেমেন্টের অবস্থা অনুমান করতে পারেন:
|
cancelReason , userCancellationTimeMillis , cancelSurveyResult | canceledStateContext |
linkedPurchaseToken | linkedPurchaseToken (কোনও পরিবর্তন নেই) |
purchaseType | পরীক্ষা: testPurchase এর মাধ্যমেপ্রচার: signupPromotion |
priceChange | lineItems.autoRenewingPlan.priceChangeDetails |
profileName , emailAddress , givenName , familyName , profileId | subscribeWithGoogleInfo |
acknowledgementState | acknowledgementState (no change) |
promotionType , promotionCode | signupPromotion |
externalAccountId , obfuscatedExternalAccountId , obfuscatedExteranlProfileId | externalAccountIdentifiers |
অন্যান্য সাবস্ক্রিপশন ব্যবস্থাপনা ফাংশন
purchases.subscriptions:get purchases.subscriptionsv2:get এ আপগ্রেড করা হলেও, purchases.subscriptions এন্ডপয়েন্টে ডেভেলপার সাবস্ক্রিপশন ম্যানেজমেন্টের বাকি ফাংশনগুলি আপাতত অপরিবর্তিত রয়েছে, তাই আপনি purchases.subscriptions:acknowledge , purchases.subscriptions:cancel , purchases.subscriptions:defer , purchases.subscriptions:refund এবং purchases.subscriptions:revoke ব্যবহার চালিয়ে যেতে পারেন যেমনটি আপনি আগে করেছিলেন।
মূল্য নির্ধারণ API
Play Console-এর মাধ্যমে আঞ্চলিক মূল্য গণনা করার জন্য monetization.convertRegionPrices এন্ডপয়েন্ট ব্যবহার করুন। এই পদ্ধতিটি যেকোনো Play-সমর্থিত মুদ্রায় একটি একক মূল্য গ্রহণ করে এবং Google Play কেনাকাটা সমর্থন করে এমন সমস্ত অঞ্চলের জন্য রূপান্তরিত মূল্য (যেখানে প্রযোজ্য ডিফল্ট করের হার সহ) ফেরত দেয়।