- HTTP অনুরোধ
- শরীরের অনুরোধ
- প্রতিক্রিয়া শরীর
- আদেশের বিবরণ
- ম্যান্ডেট উইথ নোটিফিকেশন বিশদ বিবরণ
- ক্যাপচার কনটেক্সট
- ক্যাপচার রেজাল্টকোড
Google-এর সাথে থাকা গ্রাহকের অ্যাকাউন্ট এবং পেমেন্ট প্রসেসরের মধ্যে অর্থ চলাচল শুরু করে। হেডার এবং paymentIntegratorAccountId
এর মধ্যে requestId
এর সংমিশ্রণ হল idempotency কী এবং অনন্যভাবে এই লেনদেনকে চিহ্নিত করে। এই লেনদেনের সমস্ত মিউটেশন (রিফান্ড) captureRequestId
ক্ষেত্রে requestId
মান পূরণ করে।
অনুরোধটি প্রক্রিয়া করার সময় যদি এন্ডপয়েন্টটি একটি ত্রুটির সম্মুখীন হয়, তাহলে এই এন্ডপয়েন্ট থেকে রেসপন্স বডিটি
টাইপ হওয়া উচিত।ErrorResponse
একটি উদাহরণ অনুরোধ এর মত দেখায়:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "bWVyY2hhbnQgdHJhbnNhY3Rpb24gaWQ",
"requestTimestamp": "1502220196077"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"googlePaymentToken": "ZXhhbXBsZSB1bmlxdWUgcGF5bWVudCB0b2tlbiB2YWx1ZQ",
"transactionDescription": "Google - Music",
"currencyCode": "INR",
"amount": "728000000",
"captureContext": {}
}
একটি উদাহরণ প্রতিক্রিয়া মত দেখায়:
{
"responseHeader": {
"responseTimestamp": "1481900013178"
},
"result": "SUCCESS",
"paymentIntegratorTransactionId": "aW50ZWdyYXRvciB0cmFuc2FjdGlvbiBpZA"
}
HTTP অনুরোধ
POST https://www.integratorhost.example.com/v1/capture
শরীরের অনুরোধ
অনুরোধের অংশে নিম্নলিখিত কাঠামো সহ ডেটা রয়েছে:
JSON প্রতিনিধিত্ব |
---|
{ "requestHeader": { object ( |
ক্ষেত্র | |
---|---|
requestHeader | প্রয়োজনীয় : সমস্ত অনুরোধের জন্য সাধারণ শিরোনাম। |
paymentIntegratorAccountId | প্রয়োজনীয় : এটি হল পেমেন্ট ইন্টিগ্রেটর অ্যাকাউন্ট শনাক্তকারী যা এই লেনদেনের চারপাশে চুক্তিগত সীমাবদ্ধতাগুলি সনাক্ত করে৷ |
transactionDescription | প্রয়োজনীয় : এটি লেনদেনের বিবরণ যা গ্রাহকের বিবৃতিতে রাখা যেতে পারে। |
currencyCode | প্রয়োজনীয় : ISO 4217 3-অক্ষরের মুদ্রা কোড |
amount | প্রয়োজনীয় : ক্রয়ের পরিমাণ, মুদ্রা ইউনিটের মাইক্রোতে । |
captureContext | প্রয়োজনীয় : এই ক্যাপচার সম্পর্কে প্রসঙ্গ। |
ইউনিয়ন ক্ষেত্র fopDetails . প্রয়োজনীয় : এই ক্যাপচার লেনদেনের জন্য FOP বিশদ বিবরণ। fopDetails নিম্নলিখিতগুলির মধ্যে একটি হতে পারে: | |
googlePaymentToken | টোকেন যা উভয় কোম্পানি একে অপরের মধ্যে কেনাকাটার জন্য অ্যাকাউন্ট সনাক্ত করতে ব্যবহার করবে। |
mandateDetails | আদেশের জন্য নির্দিষ্ট অর্থপ্রদানের বিবরণ। |
mandateWithNotificationDetails | ম্যান্ডেটের জন্য নির্দিষ্ট অর্থপ্রদানের বিশদ বিবরণ, যেখানে একটি |
ইউনিয়ন ফিল্ড | |
authenticationRequestId | ঐচ্ছিক : সংশ্লিষ্ট প্রমাণীকরণ অনুরোধের যদি এটি উপস্থিত থাকে তবে ব্যবহারকারীকে এই কলের অবিলম্বে প্রমাণীকরণ করা হয়েছিল, অথবা একটি স্বয়ংক্রিয় অর্থপ্রদানের সময়সূচী সেট আপ করার সময় প্রমাণীকরণ করা হয়েছিল৷ |
otpVerification | ঐচ্ছিক : |
প্রতিক্রিয়া শরীর
ক্যাপচার পদ্ধতির জন্য প্রতিক্রিয়া বস্তু।
সফল হলে, প্রতিক্রিয়া বডিতে নিম্নলিখিত কাঠামোর সাথে ডেটা থাকে:
JSON প্রতিনিধিত্ব |
---|
{ "responseHeader": { object ( |
ক্ষেত্র | |
---|---|
responseHeader | প্রয়োজনীয় : সমস্ত প্রতিক্রিয়ার জন্য সাধারণ শিরোনাম। |
paymentIntegratorTransactionId | ঐচ্ছিক : এই শনাক্তকারীটি ইন্টিগ্রেটরের জন্য নির্দিষ্ট এবং ইন্টিগ্রেটর দ্বারা তৈরি করা হয়। এটি সেই শনাক্তকারী যার দ্বারা ইন্টিগ্রেটর এই লেনদেনটি জানে৷ সুবিধার জন্য, এই শনাক্তকারীকে রেমিটেন্সের বিবরণের সাথে অন্তর্ভুক্ত করা হয়েছে |
userMessage | অপ্রচলিত : ফলাফলের একটি বিবরণ ব্যবহারকারীকে দেখানো হবে যদি ফলাফল |
result | প্রয়োজনীয় : এই ক্যাপচারের ফলাফল। |
rawResult | ঐচ্ছিক : এই ক্যাপচারের কাঁচা ফলাফল। Google এর ঝুঁকিপূর্ণ ইঞ্জিন এবং বিশ্লেষণে সহায়তা করতে ব্যবহৃত হয়। ডিক্লাইন কোড-ম্যাপিং পরিস্থিতিতে, ডেটা কখনও কখনও হারিয়ে যায়। ইন্টিগ্রেটর গুগলকে একটি কাঁচা কোড দিতে বেছে নিতে পারে। উদাহরণস্বরূপ, একটি ক্রেডিট কার্ড গেটওয়ে (একীকরণকারী) এই ক্ষেত্রটি ব্যবহার করতে পারে Google এর সাথে যোগাযোগ করার জন্য সঠিক ডিক্লাইন কোড যা VISA নেটওয়ার্ক থেকে প্রাপ্ত হয়েছিল। সেক্ষেত্রে, |
transactionLimit | ঐচ্ছিক : যদি ফলাফল এটি অবশ্যই অনুরোধের |
currentBalance | ঐচ্ছিক : যদি ফলাফল এই মানটি অনুরোধে |
আদেশের বিবরণ
থেকে ক্যাপচার করার আদেশ সম্পর্কে বিশদ বিবরণ৷
JSON প্রতিনিধিত্ব |
---|
{ "mandateId": string } |
ক্ষেত্র | |
---|---|
mandateId | প্রয়োজনীয় : Google তৈরি করা ম্যান্ডেট আইডি যা |
ম্যান্ডেট উইথ নোটিফিকেশন বিশদ বিবরণ
প্রয়োজনীয় বিজ্ঞপ্তির বিশদ সহ ক্যাপচার করার আদেশ সম্পর্কে বিশদ।
JSON প্রতিনিধিত্ব |
---|
{ "mandateId": string, "upcomingTransactionNotificationId": string } |
ক্ষেত্র | |
---|---|
mandateId | প্রয়োজনীয় : Google তৈরি করা ম্যান্ডেট আইডি যা |
upcomingTransactionNotificationId | প্রয়োজনীয় : |
ক্যাপচার কনটেক্সট
এই বস্তুটি কীভাবে ক্যাপচারের অনুরোধ করা হয়েছিল সে সম্পর্কে প্রসঙ্গ সরবরাহ করে।
JSON প্রতিনিধিত্ব |
---|
{ "userIpAddress": string } |
ক্ষেত্র | |
---|---|
userIpAddress | ঐচ্ছিক : এটি ব্যবহারকারীর ডিভাইসের IP ঠিকানা যদি কোনো ব্যবহারকারী সেশনে কেনাকাটা করে থাকেন। ব্যবহারকারী সেশনে না থাকলে এটি খালি হবে। যদি নির্দিষ্ট চুক্তি এই ক্ষেত্রের জন্য প্রয়োজনীয়তা নির্ধারণ না করে তবে এটি সর্বদা খালি থাকবে। |
ক্যাপচার রেজাল্টকোড
ক্যাপচার জন্য ফলাফল কোড.
এনামস | |
---|---|
UNKNOWN_RESULT | এই ডিফল্ট মান সেট করবেন না! |
SUCCESS | সফল ক্যাপচার, পণ্য বিতরণ. |
CHARGE_EXCEEDS_TRANSACTION_LIMIT | এই ক্যাপচার অনুরোধের amount প্রতি-লেনদেনের সীমা ছাড়িয়ে গেছে। যদি এই কোডটি ব্যবহার করা হয় তবে ব্যবহারকারীর বার্তা প্রেরণের উদ্দেশ্যে লেনদেনসীমা ক্ষেত্রটি পূরণ করুন। |
CHARGE_EXCEEDS_DAILY_LIMIT | এই অ্যাকাউন্টটি এখনই কেনাকাটার জন্য ব্যবহার করা যাবে না কারণ এটি তার দৈনিক সীমা অতিক্রম করেছে৷ |
CHARGE_EXCEEDS_MONTHLY_LIMIT | এই অ্যাকাউন্টটি এখনই কেনাকাটার জন্য ব্যবহার করা যাবে না কারণ এটি তার মাসিক সীমা অতিক্রম করেছে৷ |
CHARGE_UNDER_LIMIT | এই ক্যাপচার অনুরোধের amount সর্বনিম্ন লেনদেনের পরিমাণ পূরণ করে না। |
INSUFFICIENT_FUNDS | এই ক্যাপচারের গ্যারান্টি দেওয়ার জন্য এই অ্যাকাউন্টে পর্যাপ্ত তহবিল নেই। |
ACCOUNT_DOES_NOT_SUPPORT_CURRENCY | এই অ্যাকাউন্টটি অনুরোধ করা মুদ্রা সমর্থন করে না। |
ACCOUNT_CLOSED | ইন্টিগ্রেটরের সাথে থাকা ব্যবহারকারীর অ্যাকাউন্টটি বন্ধ করা হয়েছে। এই মান ফিরিয়ে দিলে ব্যবহারকারীর যন্ত্র Google-এর সাথে বন্ধ হয়ে যাবে। ব্যবহারকারী আবার অ্যাসোসিয়েশন প্রবাহের মধ্য দিয়ে গিয়ে একটি নতুন উপকরণ যোগ করতে বাধ্য হবে। |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER | ইন্টিগ্রেটরের সাথে ব্যবহারকারীর অ্যাকাউন্ট বন্ধ করা হয়েছে, সন্দেহজনক অ্যাকাউন্ট দখল করা হয়েছে। এই মান ফিরিয়ে দিলে ব্যবহারকারীর যন্ত্র Google-এর সাথে বন্ধ হয়ে যাবে। ব্যবহারকারী আবার অ্যাসোসিয়েশন প্রবাহের মধ্য দিয়ে গিয়ে একটি নতুন উপকরণ যোগ করতে বাধ্য হবে। |
ACCOUNT_ON_HOLD | অ্যাকাউন্ট হোল্ডে রয়েছে। |
ACCOUNT_CLOSED_FRAUD | ইন্টিগ্রেটরের সাথে থাকা ব্যবহারকারীর অ্যাকাউন্ট প্রতারণার কারণে বন্ধ করা হয়েছে। এই মান ফিরিয়ে দিলে ব্যবহারকারীর যন্ত্র Google-এর সাথে বন্ধ হয়ে যাবে। ব্যবহারকারী আবার অ্যাসোসিয়েশন প্রবাহের মধ্য দিয়ে গিয়ে একটি নতুন উপকরণ যোগ করতে বাধ্য হবে। |
GOOGLE_PAYMENT_TOKEN_INVALIDATED_BY_USER | অ্যাকাউন্টটি সক্রিয়, কিন্তু GPT সংহতকারীর পক্ষের ব্যবহারকারী দ্বারা অবৈধ করা হয়েছে। এই মান ফিরিয়ে দিলে ব্যবহারকারীর যন্ত্র Google-এর সাথে বন্ধ হয়ে যাবে। ব্যবহারকারী আবার অ্যাসোসিয়েশন প্রবাহের মধ্য দিয়ে গিয়ে একটি নতুন উপকরণ যোগ করতে বাধ্য হবে। |
TOKEN_REFRESH_REQUIRED | এটি ফেরত দেওয়ার জন্য ব্যবহারকারীকে একটি রিফ্রেশ প্রবাহের মধ্য দিয়ে যেতে হবে। |
OTP_NOT_MATCHED | ইন্টিগ্রেটর যা পাঠিয়েছে তার সাথে ওটিপি মেলেনি। |
OTP_ALREADY_USED | ওটিপি আগেই ব্যবহার করা হয়েছে। |
RISK_DECLINED | ইন্টিগ্রেটরের দিকে ঝুঁকি যাচাইয়ের কারণে লেনদেনটি প্রত্যাখ্যান করা হয়েছে। এটি এই অর্থপ্রদানের জন্য একটি স্থায়ী ব্যর্থতা, কিন্তু Google-এ ব্যবহারকারীর উপকরণ বন্ধ করার কারণ হয় না৷ |
NO_GOOD_FUNDING_SOURCE_AVAILABLE | ব্যবহারকারীর তাদের অ্যাকাউন্টে কনফিগার করা কোনো কাজের তহবিল উৎস নেই যা লেনদেনের জন্য অর্থ প্রদান করতে সক্ষম। |
FUNDING_SOURCE_UNAVAILABLE | অন্তর্নিহিত ইস্যুকারী বা তহবিলের উৎস অনুপলব্ধ এবং এই বিদ্যমান অর্থপ্রদানের জন্য পুনরায় চেষ্টা করা সফল হবে না যদি পুনরায় চেষ্টা করা হয়। পার্টনারের দ্বারা 4xx বা 5xx রেসপন্স কোড ফেরত দিলে Google পেমেন্টের জন্য আবার চেষ্টা করবে। এই কারণে, অংশীদারদের সাধারণত সেই প্রতিক্রিয়া কোডগুলির একটি ফেরত দেওয়া উচিত যদি এই একই অর্থপ্রদানের পুনরায় চেষ্টা সফল হতে পারে যখন তহবিলের অন্তর্নিহিত উত্স আবার উপলব্ধ হয়। কিন্তু, যদি এমন প্রযুক্তিগত কারণ থাকে যেখানে Google পুনরায় অর্থপ্রদানের চেষ্টা করতে ব্যর্থ হয়, তাহলে অংশীদার Google কে বলার উপায় হিসাবে "FUNDING_SOURCE_UNAVAILABLE" ফেরত দিতে পারে যে এটি একই অর্থপ্রদানের পুনরায় চেষ্টা করা উচিত নয়৷ দ্রষ্টব্য: Google এখনও এই অর্থপ্রদানের পুনরায় চেষ্টা করতে পারে, কিন্তু শুধুমাত্র একটি ভিন্ন অনুরোধ আইডি দিয়ে, কিন্তু এই অর্থপ্রদানের অনুরোধটি প্রত্যাখ্যান হিসাবে চিহ্নিত করা হবে। |
MANDATE_NOT_ACTIVE | এই ক্যাপচারের জন্য ব্যবহৃত ম্যান্ডেট আর সক্রিয় নেই৷ এই রিটার্ন মানের কারণে ব্যবহারকারীর ম্যান্ডেট ইনস্ট্রুমেন্ট Google-এর সাথে বন্ধ হয়ে যাবে। |
UPCOMING_TRANSACTION_NOTIFICATION_EXPIRED | একটি পুনরাবৃত্ত ম্যান্ডেট অর্থপ্রদানের জন্য ব্যবহারকারীকে যে বিজ্ঞপ্তি পাঠানো হয়েছিল তার মেয়াদ শেষ হয়ে গেছে৷ |