1

Our facebook canvas app is having this problem where now, several times a day, the credits callback is passing a signed_request with the following contents:

Array
(
    [algorithm] => HMAC-SHA256
    [credits] => Array
        (
            [order_id] => 9005967273834
            [order_info] => "item104"
        )

    [issued_at] => 1319329443
    [user] => Array
        (
            [country] => do
            [locale] => es_LA
            [age] => Array
                (
                    [min] => 0
                    [max] => 12
                )
        )
)

Notice anything missing? That's right! No user_id, buyer, or receiver is given!

We can't tell facebook what the price or description of an item is without knowing who is receiving the item.

This seems like a bad bug! This problem started happening on Oct 11, 2011

Stu
  • 1,282
  • 12
  • 29
  • If this is occurring regularly, file a bug with facebook with detailed repro steps – Igy Oct 23 '11 at 09:06
  • I did already, but nobody else seems to be relying on the user ID, so it's not getting any traction. – Stu Oct 24 '11 at 07:23
  • Could you send me a link please? i'll make sure it gets looked at today – Igy Oct 24 '11 at 08:09
  • sure, http://developers.facebook.com/bugs/130547320384596?browse=search_4ebc216d8e1187842523916 – Stu Nov 10 '11 at 19:10

2 Answers2

1

This is definitely an intermittent bug, so the only work-around is to pass the user ID from your own code into the order_info field of the item. Then use that instead of the credits receiver if the user information is missing.

I don't like that I have to do this, but it seems necessary.

Stu
  • 1,282
  • 12
  • 29
1

I noticed this as well on my app and from what I can see the missing user IDs happen when Facebook indicates an age bracket of min 0 and max 12 years for the user. I assume that this might be the result of under 13 year olds being prevented from making purchases with Facebook credits. Which makes me wonder what they are doing on Facebook to start with...

jordekorre
  • 181
  • 1
  • 3