What are the payment transactions and how do they work?
First thing's we should on touch on.
Paypal is our payment processor.
Our software does not move physical money between accounts. The funds shown within the software are virtual representation of the funds the user has.
Transfer: A member of your website can instantly transfer funds from their balance to another's as long as the recipient is a registered user and the sender has the available funds. Deposits: A user can deposit actual "real" funds by logging into Paypal. Withdrawals: Withdrawals aren't automatic. A user has to request "x" amount of funds to be transferred to a specified payment processor they have chosen. We currently only support Paypal. This is then listed as pending in the user's account until the admin approves or cancels the request.
Escrow System: The basic definition of Escrow is to deposit money to a third party. In total, three parties are involved in Escrow system. One party will deposit the money, second party will receive the money [after completion of the deal with party one] and the third party is responsible for giving the deposited money to the right party.
This is how the escrow system in our system works, except we're dealing with the virtual representation of money.
It differs from the "Transfer" system as the user who created the escrow has to approve the transfer fully before the receiver will receive the funds. The receiver has the option to cancel the escrow (A "Transfer" is instant and there is no cancellation option).
If the receiver cancels the escrow, the funds are returned to the sender.