Processing Developer Product Receipts For Donations

Is it ok to have developer products that serve no purpose other than donation, tip, or fund collection? Also, is it ok that they have no action or return value and that Process Receipt does nothing other than return it was handled ok? A few people would like to donate robux to a project of my team so we can get audio and payment going, like a KickStarter basically.

1 Like

You can pretty much handle donations any way you want – gamepasses, developer products, t-shirts, etc.

The one thing you have to do is make it clear it’s a donation, and the players don’t actually receive anything for the purchase.

So yes, you can whatever you want with developer products as long you’re not scamming.

Basically I have set up about 15 different developer products with robux equivalent values where users can choose to donate any X amount of money to the game and it prompts them with the highest offers until all the money is donated. If they cancel or fail to pay it all, the donations will all be refunded shortly because the receipt would be handled with the purchase failure return until the last purchase is made.

Yep, sounds good. Like I said – as long you’re not scamming :wink:

How long does it typically take to refund the money if they buy some donation but cancel later on? (will add a button asking if they want to refund any robux they already bought)

I’m pretty sure they can’t cancel transactions after they’ve gone through with them, and there’s no way for a developer to manually refund transactions either. They can only cancel when they’re being prompted to make the purchase.

No, Process Receipt calls every prompt until the purchases return they have been granted (see description)

Oh, so you mean you hold the ProcessReceipt callbacks all in a static state until the user has finished all purchases (or has decided to cancel)?

Basically I will always return not granted until the final purchase is completed. I need to know when they will get refunds so I can let them know.

I think it would be better if you made all of the ProcessReceipt callbacks yield until the purchase for that player has been completed. From what I know, it’d be a good idea to do this because if for some reason no one joins your game and the purchase wasn’t processed properly due to it waiting for ProcessReceipt to be called again (becuase you returned NotProcessedYet), 3 days could pass and the donation will be refunded regardless of whether the user cancelled or not.

Just referenced a (member-only) thread that says the purchase is refunded after 3 days, as the answer to your question.

It says it is prompted every time the user is prompted also. "or even after they have bought something else" I will store a pending donations value in their datastore so if they leave while purchasing, it should have their last purchase date and let them know of the possible refund.

1 Like

Ok, that part is up to you anyway.

These are currently the products

ignore the refund one

Donating 43263
  Prompting "400752821" for 10000 Robux purchase, 33263 Robux remaining
  Prompting "400752821" for 10000 Robux purchase, 23263 Robux remaining
  Prompting "400752821" for 10000 Robux purchase, 13263 Robux remaining
  Prompting "400752821" for 10000 Robux purchase, 3263 Robux remaining
  Prompting "400751866" for 2000 Robux purchase, 1263 Robux remaining
  Prompting "400751588" for 1000 Robux purchase, 263 Robux remaining
  Prompting "400749495" for 250 Robux purchase, 13 Robux remaining
  Prompting "400745223" for 10 Robux purchase, 3 Robux remaining
  Prompting "400744499" for 2 Robux purchase, 1 Robux remaining
  Prompting "400743916" for 1 Robux purchase, 0 Robux remaining
1 Like

About the yielding part, is it going to wait for return before calling it again or will it be called consecutively even if it is waiting on a result?

That’s a weird approach, won’t it prompt each one of those, and have to manually be accepted? You should just do tiers of payments. Eg. 10 robux, 50, 100, 250, 500, 800, 1000, 2500, 5000, 10000

What do you mean? The user can choose exactly how much robux they would like to donate.

No inputed amount, just different tiers that the player can select. Exactly how much will prompt up 10 different payment boxes (correct me if this does not happen), confusing the player as it would look like he/she is making multiple payments.

You type an input and it would show beforehand what the payment would be as a list of orders. You click on the orders to make the payment

As a fellow Dev, I would say that it’s ok to ask for money dude, we put months if not years into our games and Yes Donations are fine.

1 Like