[RESOLVED] Recurring payment properties may be too restrictive

Started by hadrian, July 01, 2015, 08:10:55 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

vikram

Quote from: Thom on July 02, 2015, 05:02:46 PM
Quote from: bytemaster on July 02, 2015, 01:19:34 AM
The one per-period limit was removed long ago.   Looks like we have some old documentation floating around.   You can withdraw up to the limit per period.

So the "limit" parameter is a limit on the number of payments in a period and not the amount of payments? The docs are not very clear at all on this. Remittances are a very important feature so hopefully the docs will get updated soon. The docs that were rolled out on 6/8 might be "old" to the devs but as far as the world is concerned they're only a few weeks old.

Yeah the protocol is still in flux we will need to update the website after the code is frozen.

xeroc


Thom

Quote from: bytemaster on July 02, 2015, 01:19:34 AM
The one per-period limit was removed long ago.   Looks like we have some old documentation floating around.   You can withdraw up to the limit per period.

So the "limit" parameter is a limit on the number of payments in a period and not the amount of payments? The docs are not very clear at all on this. Remittances are a very important feature so hopefully the docs will get updated soon. The docs that were rolled out on 6/8 might be "old" to the devs but as far as the world is concerned they're only a few weeks old.
Injustice anywhere is a threat to justice everywhere - MLK |  Verbaltech2 Witness Reports: [url="https://bitsharestalk.org/index.php/topic,23902.0.html"]https://bitsharestalk.org/index.php/topic,23902.0.html[/url]

bytemaster

The one per-period limit was removed long ago.   Looks like we have some old documentation floating around.   You can withdraw up to the limit per period.
For the latest updates checkout my blog: [url="http://bytemaster.bitshares.org"]http://bytemaster.bitshares.org[/url]
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

hadrian

#5
Quote from: Thom on July 01, 2015, 10:42:09 PM
What amount of flexibility is allowed in the "Period Length" ? If it could be set to 1 hour I don't see a major issue. What about 1 a day?

If there is only one transaction allowed per period then there is a problem balancing two trade-offs:

  • If the period is long, there is no flexibility to allow for (even slightly) irregular payments. You must know that for the whole span, one payment will be required, and no more.
  • If the period is made shorter, this somewhat allows for unpredictably spaced payments. BUT there is a security risk as the payments can quickly stack up because of the short period.

In the debit card example in my post above, you may wish to buy something from a shop for $100 dollars, then 10 minutes later buy something elsewhere for $10. If the permissions allow $150 per hour and your card is stolen it could be very expensive ($3600 lost per day). If, however the permissions were set at $150 per day, you would, in this scenario, be unable to buy the second item (because you're restricted to one transaction per period).
THE FIX: If you could specify max. number of transactions per period you could set $150 per day with unlimited number of transactions. This would fix the problems and you could go shopping.


Another example:

Adam wants to allow his daughter Becky limited access to recurring payments from his BitShares account. Becky is moving out of the family home and Adam wishes her to have money available in case of emergency. If the period length is set as 1 month with $300 allowed, Becky could have two emergencies in a month and be unable to get access to money to cover the second emergency (even if she'd only taken $60 for the first emergency). If Adam sets the period length at 1 day the amount would have to be proportionately higher, say $100 (because $10 perhaps wouldn't cover an emergency). Then Becky could go out and spend $100 per day, costing Adam $3000 in a month.
THE FIX: Have the ability to set the period length at 1 month, the max. amount at $300, and the max. number of transactions at >1
[url="https://metaexchange.info"]https://metaexchange.info[/url] | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Thom

What amount of flexibility is allowed in the "Period Length" ? If it could be set to 1 hour I don't see a major issue. What about 1 a day?

Granted, micropayment remittances are a great idea to help many people in underdeveloped locations like Africa, so we shouldn't unnecessarily restrict trade.

As BM is fond of pointing out, it's just a matter of making sure the costs are covered to support the infrastructure. Difficult to see how that would be calculated for micropayments, where you need to keep transaction fees extremely low.
Injustice anywhere is a threat to justice everywhere - MLK |  Verbaltech2 Witness Reports: [url="https://bitsharestalk.org/index.php/topic,23902.0.html"]https://bitsharestalk.org/index.php/topic,23902.0.html[/url]

hadrian

#3
Quote from: Ander on July 01, 2015, 08:18:24 PM
If the number of transactions was set from 1 to X, then you could use it for microtransactions.

The user could fund their account, and then the merchant could take small bits when needed for microtransactions.

Exactly - this is a good example. We're missing a great deal of functionality if this isn't implemented.

A shopper could have a debit card linked to a BitShares account. This "number of transactions" variable would allow someone to go shopping.

There are loads of other scenarios where this would be crucial...

Clarification is needed from someone to indicate whether or not BitShares 2.0 will be able to do this. And if not, why not?
[url="https://metaexchange.info"]https://metaexchange.info[/url] | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

Ander

If the number of transactions was set from 1 to X, then you could use it for microtransactions.

The user could fund their account, and then the merchant could take small bits when needed for microtransactions. 
[url="https://metaexchange.info"]https://metaexchange.info[/url] | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads

hadrian

edit: This is resolved - bytemaster says the "one transaction per period length" restriction was removed a while ago. The documentation is out of date.

Looking here on bitshares.org:

QuoteAfter a user grants the withdrawal permissions, the authorized account is allowed to make one transfer per period of an amount up to the limit.

Is there any reason for restricting it to one transfer? If there's no good reason, this is sub-optimal because it unnecessarily rules out certain use cases.

This is the list of properties for recurring payments on bitshares.org:

QuoteA withdrawal permission includes following properties:


  • Start Date
  • End Date
  • Withdrawal Limit per Period
  • Period Length (i.e. 1 month)

If it's not a mammoth technical problem, it would be a significant improvement to add:

5.  Maximum Number of Transactions per Period (from 1 to unlimited)


I'm assuming there must be a good reason for the restriction, and if this is the case, can someone tell me what it is?
I also assume that it's obvious why adding the "max. no. of transactions" variable would be better, but if this isn't the case I could elaborate with some examples...
[url="https://metaexchange.info"]https://metaexchange.info[/url] | Bitcoin<->Altcoin exchange | Instant | Safe | Low spreads