Comments (7)
Minor comment: We should consider a more descriptive name for BUYER_PENDING
. Coming back to this after a week a way I can't remember what this means. E.g. are we waiting for a buyer at all? Are we waiting for the buyer to pay?
from origin-js.
I also would like a more descriptive name. We are waiting on the buyer to mark the purchase received.
Got any suggestions?
from origin-js.
I like the awaiting_{event}
convention, which might be implied by AWAITING_PAYMENT
. This issue makes me realize that design and engineering may not be entirely on the same page regarding the steps involved in a transaction.
At the risk of this being the wrong place for this...
In the current UI, there are six events that affect transaction state, each caused by the action of a sole party, and two of them (5 & 6) being potentionally out of sequence:
- Create listing (seller)
- Buy listing (buyer) - presumed to be the equivalent of sending money
- Fulfill order (seller)
- Receive order (buyer)
- Withdraw funds (seller)
- Provide feedback (buyer)
We don't currently handle disputes as a potential part of the flow, and the seller's feedback (applicable to the buyer) is not currently handled. The current philosophy is that there is a distinction between the contexts of a buyer's review and a seller's review. The buyer is reviewing the listing - not reviewing the seller. And the seller is reviewing the buyer - not the purchase or some other instance.
from origin-js.
So in the long term I'd have the buyer receive the order and give a review at the same time, then the seller would give a review and withdraw simultaneously.
--
The reviews for both buyer and seller would be attached to the Purchase. The bridge server would then index those and combine them for seller information on the listing and for information on a user.
from origin-js.
@DanielVF that makes sense if review/feedback is required. That would beg the question what constitutes a valid review. 😬
from origin-js.
Well, the reviews are optional - we're just including them in with the steps that the buyer and seller are already doing. As a first pass, I was thinking 1-5 star and optional text.
from origin-js.
Since we don't currently plan to use a reasonably short buyer timeout, we will skip this for now.
from origin-js.
Related Issues (20)
- Index category and sub-category in search
- Token whitelist can get bypassed by setting affiliate in marketplace contract HOT 1
- Validate addresses of arbitrator, affiliate, messaging accounts HOT 9
- Automate contract deployment
- Origin-js should validate config options
- Create `options` object with callbacks
- Invalid Offer Developer Experience HOT 3
- Category / subCategory indexing
- 🐃 Seller could steal money with bad IPFS data
- Propagate require() reasons to the DApp HOT 1
- Support for old message phrases
- Excess seller deposit is inaccessible unless listing is withdrawn HOT 3
- Ganache core chrash HOT 2
- Identity Claims Not Found HOT 13
- Event-listener failing to process offer HOT 7
- Discovery server: price range query failure HOT 1
- EventListener: insert data in offer table
- EventListener: add timestamp and block_number to listing DB table
- Test error: Error during attestation validation: Error: Invalid signature v value HOT 1
- [ignore] HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from origin-js.