Неправильный объект платежа FB
Я нашел странный ответ graph.facebook.com для всех платежных объектов моего нового приложения.
Если я отправил этот URL на график:
https://graph.facebook.com/6XXX9795855XXXXX?access_token=APP|TOKEN
с действительным идентификатором paymentId (этот идентификатор я получил через обновление RealTime).
Я получил этот ответ:
{ "created_time": "2015-07-20T07:54:13+0000", "id": "6XX9795855XXXXX" }
Может кто-нибудь объяснить, почему это происходит? Все настройки Canvas Payments верны.
Я пытался сделать запросы к различным версиям API (v1.0, v2.0, v2.3, v2.4).
В разделе "Настройки" на панели инструментов указано, что у моего приложения есть версия API 2.4.
1 ответ
Ох, API2.4...
Если ваше приложение имеет версию API 2.4, в каждом запросе к графику с помощью paymentID вам необходимо указать все поля, разделенные запятой, которые вы хотите получить.
Итак, ваш запрос
https://graph.facebook.com/PAYMENT_ID?access_token=APP|SECRET
превращается в
https://graph.facebook.com/PAYMENT_ID?access_token=APP|SECRET&fields=id,user,application,actions,refundable_amount,items,country,request_id,created_time,payout_foreign_exchange_rate,tax,tax_country
Это работает.
Почему фейсбук нарушает один из идеальных вариантов оплаты? Почему я должен хранить в памяти все данные, которые я хочу получить, и что я должен делать, когда новое поле платежа (например, налог) будет добавлено к платежному объекту?