Used to store individual transactions about a particular payment. While an {@link OrderPayment} holds data like what theuser might be paying with and the total amount they will be paying (like credit card and $10), a {@link PaymentTransaction}is more about what happens with that particular payment. Thus, {@link PaymentTransaction}s do not make sense by themselves and ONLY make sense in the context of an {@link OrderPayment}.
For instance, the user might say they want to pay $10 but rather than capture the payment at order checkout, there might first be a transaction for {@link PaymentTransactionType#AUTHORIZE} and then when the item is shipped there isanother {@link PaymentTransaction} for {@link PaymentTransactionType#CAPTURE}.
In the above case, this also implies that a {@link PaymentTransaction} can have a parent transaction (retrievedvia {@link #getParentTransaction()}). The parent transaction will only be set in the following cases:
For {@link PaymentTransactionType#UNCONFIRMED}, they will have children that will be either {@link PaymentTransactionType#AUTHORIZE}or {@link PaymentTransactionType#AUTHORIZE_AND_CAPTURE}.
* @author Phillip Verheyden (phillipuniverse)
|
|
|
|
|
|