Method: refundResultNotification

يمكنك إبلاغ Google بنتيجة ردّ الأموال بعد إجراء مكالمة باستخدام طريقة refund.

يجب التعامل مع عمليات ردّ الأموال بشكل متزامن أثناء طلب طريقة refund، ولكن تزوّد هذه الطريقة Google بإشارة احتياطية سريعة في حال تعذّر الاتصال المتزامن بعد تنفيذ الإجراء، ولكن قبل أن تتمكّن من عرض نتيجة. ويؤدي ذلك إلى تجنُّب حدوث أي تأخير من Google تحدّد موعدًا لإعادة المحاولة إلى وقت لاحق.

لا تتوافق قيمة refundResult مع قيمة refundRequestId هذه، وبالتالي لا يمكن تغيير قيمتها من خلال استدعاء لاحق لهذه الطريقة.

إذا واجهت نقطة النهاية خطأ أثناء معالجة الطلب، سيكون الرد من نقطة النهاية هذه من النوع ErrorResponse.

قد تكون الردود على طلب البحث هذا فارغة إذا كانت هذه الطريقة لا تعرض HTTP 200. نص الاستجابة فارغ في الحالات التي يمكن فيها استخدام ErrorResponse مع وصف واضح لمساعدة المهاجم في التعرّف على معرّف حساب عملية تكامل الدفع بالنسبة إلى الشركاء الآخرين. في هذه الحالات، في حال عدم تطابق مفتاح التوقيع، أو عدم العثور على معرِّف وحدة تكامل الدفعات، أو عدم أن مفتاح التشفير معروف، ستعرض هذه الطريقة HTTP 404 مع نص فارغ. إذا تم التحقّق من توقيع الطلب، سيتم عرض معلومات إضافية حول الخطأ في نص الاستجابة.

مثال على طلب يبدو:


{
  "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": string,
  "refundRequestId": string,
  "refundResult": enum (RefundResultCode),
  "paymentIntegratorRefundId": string
}
الحقول
requestHeader

object (RequestHeader)

مطلوب: عنوان شائع لجميع الطلبات.

paymentIntegratorAccountId

string

مطلوبة: معرّف حساب عملية تكامل الدفعات الذي تم ردّ الأموال إليه

refundRequestId

string

مطلوب: معرّف فريد لعملية ردّ الأموال هذه تم إنشاؤه من خلال الحقل requestId عند طلب طريقة refund.

refundResult

enum (RefundResultCode)

مطلوب: نتيجة عملية ردّ الأموال هذه.

paymentIntegratorRefundId

string

مطلوب: يكون هذا المعرّف مخصّصًا لعملية الدمج وينشئه عملية الدمج. هذا هو المعرّف الذي يعرف به المسؤول عن عملية الدمج هذه.

ولتسهيل الأمر، يتم تضمين هذا المعرّف في تفاصيل الحوالة المالية.

نص الاستجابة

عنصر الاستجابة لطريقة refundResultNotification

إذا كانت الاستجابة ناجحة، سيحتوي نص الاستجابة على بيانات بالبنية التالية:

تمثيل JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "result": enum (RefundResultNotificationResultCode)
}
الحقول
responseHeader

object (ResponseHeader)

مطلوب: عنوان شائع لجميع الردود.

result

enum (RefundResultNotificationResultCode)

مطلوبة: نتيجة هذه المكالمة

رمز رد الأموال

تردّ رموز النتائج الفريدة.

عمليات التعداد
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 تم بنجاح إرسال إشعار بشأن نتيجة ردّ الأموال.