يمكنك إبلاغ Google بنتيجة ردّ الأموال بعد إجراء مكالمة باستخدام طريقة refund
.
يجب التعامل مع عمليات ردّ الأموال بشكل متزامن أثناء طلب طريقة refund
، ولكن تزوّد هذه الطريقة Google بإشارة احتياطية سريعة في حال تعذّر الاتصال المتزامن بعد تنفيذ الإجراء، ولكن قبل أن تتمكّن من عرض نتيجة. ويؤدي ذلك إلى تجنُّب حدوث أي تأخير من Google تحدّد موعدًا لإعادة المحاولة إلى وقت لاحق.
لا تتوافق قيمة refundResult
مع قيمة refundRequestId
هذه، وبالتالي لا يمكن تغيير قيمتها من خلال استدعاء لاحق لهذه الطريقة.
إذا واجهت نقطة النهاية خطأ أثناء معالجة الطلب، سيكون الرد من نقطة النهاية هذه من النوع
.ErrorResponse
قد تكون الردود على طلب البحث هذا فارغة إذا كانت هذه الطريقة لا تعرض HTTP 200. نص الاستجابة فارغ في الحالات التي يمكن فيها استخدام
مع وصف واضح لمساعدة المهاجم في التعرّف على معرّف حساب عملية تكامل الدفع بالنسبة إلى الشركاء الآخرين. في هذه الحالات، في حال عدم تطابق مفتاح التوقيع، أو عدم العثور على معرِّف وحدة تكامل الدفعات، أو عدم أن مفتاح التشفير معروف، ستعرض هذه الطريقة HTTP 404 مع نص فارغ. إذا تم التحقّق من توقيع الطلب، سيتم عرض معلومات إضافية حول الخطأ في نص الاستجابة.ErrorResponse
مثال على طلب يبدو:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 1,
"revision": 0
},
"requestId": "HsKv5pvtQKTtz7rdcw1YqE",
"requestTimestamp": "1481855928301"
},
"paymentIntegratorAccountId": "InvisiCashUSA_USD",
"refundRequestId": "hH1T32PI86CpKwjuf6oD2r",
"paymentIntegratorRefundId": "invisi/Id::xx__1243",
"refundResult": "SUCCESS"
}
مثال على ردّ:
{
"responseHeader": {
"responseTimestamp": "1481855928376"
},
"result": "SUCCESS"
}
طلب HTTP
POST https://vgw.googleapis.com/secure-serving/gsp/v1/refundResultNotification/:PIAID
نص الطلب
يحتوي نص الطلب على بيانات بالبنية التالية:
تمثيل JSON |
---|
{ "requestHeader": { object ( |
الحقول | |
---|---|
requestHeader |
مطلوب: عنوان شائع لجميع الطلبات. |
paymentIntegratorAccountId |
مطلوبة: معرّف حساب عملية تكامل الدفعات الذي تم ردّ الأموال إليه |
refundRequestId |
مطلوب: معرّف فريد لعملية ردّ الأموال هذه تم إنشاؤه من خلال الحقل |
refundResult |
مطلوب: نتيجة عملية ردّ الأموال هذه. |
paymentIntegratorRefundId |
مطلوب: يكون هذا المعرّف مخصّصًا لعملية الدمج وينشئه عملية الدمج. هذا هو المعرّف الذي يعرف به المسؤول عن عملية الدمج هذه. ولتسهيل الأمر، يتم تضمين هذا المعرّف في تفاصيل الحوالة المالية. |
نص الاستجابة
عنصر الاستجابة لطريقة refundResultNotification
إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:
تمثيل JSON |
---|
{ "responseHeader": { object ( |
الحقول | |
---|---|
responseHeader |
مطلوب: عنوان شائع لجميع الردود. |
result |
مطلوبة: نتيجة هذه المكالمة |
رمز رد الأموال
تردّ رموز النتائج الفريدة.
عمليات التعداد | |
---|---|
UNKNOWN_RESULT |
عدم ضبط هذه القيمة التلقائية مطلقًا |
SUCCESS |
تم ردّ الأموال إليك بنجاح. |
NO_MONEY_LEFT_ON_TRANSACTION |
تعذّر ردّ المبلغ المدفوع، ولم يبقَ هناك أي أموال في المعاملة. يمثّل ذلك عادةً خطأً بين عملية الدمج وGoogle. ومن المفترض ألا تطلب Google استرداد مبلغ أكبر من القيمة الأصلية. |
ACCOUNT_CLOSED |
تم إغلاق الحساب المُضاف إلى عملية الدمج. وسيؤدي عرض هذه القيمة إلى إغلاق أداة المستخدِم مع Google. سيضطر المستخدم إلى إضافة وسيلة جديدة من خلال تنفيذ عملية الربط مرة أخرى. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
تم إغلاق حساب المستخدم مع إحدى عمليات الدمج، وتم الاستيلاء على الحساب المشتبه به. وسيؤدي عرض هذه القيمة إلى إغلاق أداة المستخدِم مع Google. سيضطر المستخدم إلى إضافة وسيلة جديدة من خلال تنفيذ عملية الربط مرة أخرى. |
ACCOUNT_CLOSED_FRAUD |
تم إغلاق حساب المستخدم المرتبط بعملية الدمج بسبب الاحتيال. وسيؤدي عرض هذه القيمة إلى إغلاق أداة المستخدِم مع Google. سيضطر المستخدم إلى إضافة وسيلة جديدة من خلال تنفيذ عملية الربط مرة أخرى. |
ACCOUNT_ON_HOLD |
حساب المستخدم معلّق حاليًا ولا يمكنه قبول طلب ردّ الأموال، ولكن قد يتمكّن حساب المستخدم لاحقًا من قبول طلب ردّ الأموال. يمكن أن تطلب Google رد أموال آخر في المستقبل، ولكنها ستقدّم طلبًا جديدًا باستخدام requestId ، لذا يجب اعتبار هذا الطلب مكتملاً. |
REFUND_EXCEEDS_MAXIMUM_BALANCE |
لا يمكن معالجة عملية رد الأموال في الوقت الحالي، لأن ذلك سيؤدي إلى تجاوز رصيد المستخدم للحد الأقصى للمبلغ المسموح به. يمكن أن تطلب Google رد أموال آخر في المستقبل، ولكنها ستقدّم طلبًا جديدًا باستخدام requestId ، لذا يجب اعتبار هذا الطلب مكتملاً. |
REFUND_WINDOW_EXCEEDED |
لا يمكن معالجة طلب ردّ الأموال لأنّ الطلب يقع خارج الفترة المسموح بها لردّ الأموال. |
رمز نتيجة الإشعار
رموز النتائج لطريقة refundResultNotification
.
عمليات التعداد | |
---|---|
UNKNOWN_RESULT |
عدم ضبط هذه القيمة التلقائية مطلقًا |
SUCCESS |
تم بنجاح إرسال إشعار بشأن نتيجة ردّ الأموال. |