Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Payroll style transactions #638

Open
AlexandraRoatis opened this issue Sep 14, 2018 · 5 comments
Open

Payroll style transactions #638

AlexandraRoatis opened this issue Sep 14, 2018 · 5 comments
Assignees
Labels
feature question Further information is requested

Comments

@AlexandraRoatis
Copy link
Contributor

Would it make sense to introduce a payroll transaction that would batch different payments initiated from a single account and directed to multiple other accounts?

The main question is if we can leverage batching multiple transactions that originate from the same account to reduce the fees for that account.

I can envision many applications that could benefit from this style of transaction, but I'm not sure to what extent we could reduce the computation costs by batching them together.

@AlexandraRoatis AlexandraRoatis added feature question Further information is requested labels Sep 14, 2018
@AlexandraRoatis
Copy link
Contributor Author

AlexandraRoatis commented Sep 14, 2018

This topic can be approached at different levels, some that have come up are:

  1. performing such transactions only between user accounts;
  2. what are the implications of allowing the batched transactions to be contract calls;
  3. implementing this type of feature as part of the token standard.

@AionJayT AionJayT self-assigned this Sep 14, 2018
@AlexandraRoatis
Copy link
Contributor Author

Some benefits of adding this style of transactions:

  • updating the state requires changing the from account only once;
  • the transaction pool needs to perform fewer transaction reordering and nonce management;
  • mining pools are a good first use case since they can 1. reduce fees due to the reduced cost of sending the payouts; and 2. improve reliability since now they need to keep track of fewer transactions to ensure that they have been performed.

@qoire
Copy link
Contributor

qoire commented Sep 17, 2018

This is an interesting approach, just wanted to add that if I wasn't concerned about gas fees, the current way I'd achieve this is:

  • Create a smart contract with those addresses pre-loaded
  • Load the smart contract with necesary balance
  • Execute the smart contract, thereby withdrawing to all users.

Obviously the downside to this is integration (but feasible if we support the correct tooling) and gas costs.

@kermankohli
Copy link

We're working on a protocol for recurring payments (8xprotocol.com) and may be able to help you out. Feel free to get in touch with me directly!

@AlexandraRoatis
Copy link
Contributor Author

submitted as AIP: aionnetwork/AIP#14

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants