Class TransactionExecutionRequest
- java.lang.Object
-
- com.broadleafcommerce.orderoperation.service.provider.external.domain.payment.TransactionExecutionRequest
-
- All Implemented Interfaces:
Serializable
public class TransactionExecutionRequest extends Object implements Serializable
The request payload used to execute a transaction against a payment.- Author:
- Chris Kittrell (ckittrell)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description TransactionExecutionRequest()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
canEqual(Object other)
boolean
equals(Object o)
javax.money.MonetaryAmount
getAdjustmentsTotal()
The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.javax.money.CurrencyUnit
getCurrency()
The currency gathered from thegetTransactionAmount()
javax.money.MonetaryAmount
getFulfillmentTotal()
The payment's total fulfillment cost.String
getParentSourceEntityId()
The id of the parent source entity of the transaction that proceeded this transaction.String
getParentSourceEntityType()
The type of the parent source entity of the transaction that proceeded this transaction.String
getPaymentId()
The id of the related payment that is meant to be used for the transaction.String
getRequestId()
The id representing the customer's request to execute one or more transactions.String
getSecurityCode()
The payment method security code that may be required to execute the transaction.String
getSource()
A simple description of the system that initiated this transaction execution request.String
getSourceEntityId()
The ID of the source entity associated with the transaction.String
getSourceEntityType()
The type of the source entity associated with the transaction.javax.money.MonetaryAmount
getSubtotal()
The payment's total usually excluding adjustments, tax, and shipping.javax.money.MonetaryAmount
getTaxTotal()
The payment's total tax cost.javax.money.MonetaryAmount
getTransactionAmount()
The transaction amount that we're expecting to execute against the payment.String
getTransactionType()
The type of transaction that is to be executed.int
hashCode()
boolean
hasParentSourceEntityTypeAndId()
boolean
isAllowAutomaticReversal()
Whether to allow this transaction to be automatically reversed by payment system's scheduled jobs.void
setAdjustmentsTotal(javax.money.MonetaryAmount adjustmentsTotal)
The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.void
setAllowAutomaticReversal(boolean allowAutomaticReversal)
Whether to allow this transaction to be automatically reversed by payment system's scheduled jobs.void
setFulfillmentTotal(javax.money.MonetaryAmount fulfillmentTotal)
The payment's total fulfillment cost.void
setParentSourceEntityId(String parentSourceEntityId)
The id of the parent source entity of the transaction that proceeded this transaction.void
setParentSourceEntityType(String parentSourceEntityType)
The type of the parent source entity of the transaction that proceeded this transaction.void
setPaymentId(String paymentId)
The id of the related payment that is meant to be used for the transaction.void
setRequestId(String requestId)
The id representing the customer's request to execute one or more transactions.void
setSecurityCode(String securityCode)
The payment method security code that may be required to execute the transaction.void
setSource(String source)
A simple description of the system that initiated this transaction execution request.void
setSourceEntityId(String sourceEntityId)
The ID of the source entity associated with the transaction.void
setSourceEntityType(String sourceEntityType)
The type of the source entity associated with the transaction.void
setSubtotal(javax.money.MonetaryAmount subtotal)
The payment's total usually excluding adjustments, tax, and shipping.void
setTaxTotal(javax.money.MonetaryAmount taxTotal)
The payment's total tax cost.void
setTransactionAmount(javax.money.MonetaryAmount transactionAmount)
The transaction amount that we're expecting to execute against the payment.void
setTransactionType(String transactionType)
The type of transaction that is to be executed.String
toString()
-
-
-
Method Detail
-
getCurrency
@Nullable public javax.money.CurrencyUnit getCurrency()
The currency gathered from thegetTransactionAmount()
- Returns:
- The currency gathered from the request's transaction amount
-
hasParentSourceEntityTypeAndId
public boolean hasParentSourceEntityTypeAndId()
-
getPaymentId
public String getPaymentId()
The id of the related payment that is meant to be used for the transaction.- Returns:
- The id of the related payment that is meant to be used for the transaction.
-
getSource
public String getSource()
A simple description of the system that initiated this transaction execution request.- Returns:
- A simple description of the system that initiated this transaction execution request.
-
getParentSourceEntityType
public String getParentSourceEntityType()
The type of the parent source entity of the transaction that proceeded this transaction. This is used to identify the parent transactions within the same entity.For example, the execution of a refund transaction requires a proceeding capture or authorize and capture transaction. Let's say the proceeding capture transaction has the source entity type of
ORDER_FULFILLMENT
, and the refund transaction has the entity source type ofRETURN_CONFIRMATION
. In this case, the refund transaction request needs the parent source entity type ofORDER_FULFILLMENT
and its id in order to identify the parent capture transaction.Note that if this field is not provided, it will retrieve parent transactions from any entity based on
getPaymentId()
andgetTransactionType()
.
-
getParentSourceEntityId
public String getParentSourceEntityId()
The id of the parent source entity of the transaction that proceeded this transaction.Note that if this field is not provided, it will retrieve parent transactions from any entity based on
getPaymentId()
andgetTransactionType()
.
-
getSourceEntityType
public String getSourceEntityType()
The type of the source entity associated with the transaction. For example, "CHECKOUT_REQUEST" or "ORDER_FULFILLMENT".
-
getSourceEntityId
public String getSourceEntityId()
The ID of the source entity associated with the transaction.For example, if
getSourceEntityType()
isORDER_FULFILLMENT
, this would be the ID of theOrderFulfillment
.- See Also:
getSourceEntityType()
-
getTransactionType
public String getTransactionType()
The type of transaction that is to be executed.- Returns:
- The type of transaction that is to be executed.
- See Also:
TransactionType
-
isAllowAutomaticReversal
public boolean isAllowAutomaticReversal()
Whether to allow this transaction to be automatically reversed by payment system's scheduled jobs.Set this field to
false
if this transaction should only be allowed to be reversed by Order Operation Service.- Returns:
- Whether to allow this transaction to be automatically reversed by payment system's scheduled jobs.
-
getTransactionAmount
public javax.money.MonetaryAmount getTransactionAmount()
The transaction amount that we're expecting to execute against the payment. This amount must be valid according to what's available for the payment. If specified, the amount details (subtotal
,adjustmentsTotal
,fulfillmentTotal
, &taxTotal
) should sum together to equal this amount.- Returns:
- The transaction amount that we're expecting to execute against the payment.
-
getSubtotal
public javax.money.MonetaryAmount getSubtotal()
The payment's total usually excluding adjustments, tax, and shipping.- Returns:
- The payment's total usually excluding adjustments, tax, and shipping.
-
getAdjustmentsTotal
public javax.money.MonetaryAmount getAdjustmentsTotal()
The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.- Returns:
- The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.
-
getFulfillmentTotal
public javax.money.MonetaryAmount getFulfillmentTotal()
The payment's total fulfillment cost.- Returns:
- The payment's total fulfillment cost.
-
getTaxTotal
public javax.money.MonetaryAmount getTaxTotal()
The payment's total tax cost.- Returns:
- The payment's total tax cost.
-
getSecurityCode
public String getSecurityCode()
The payment method security code that may be required to execute the transaction. Typically, this value is required to execute transactions against multi-use payment methods to validate that the user is the owner of the payment method.- Returns:
- The payment method security code that may be required to execute the transaction.
-
getRequestId
public String getRequestId()
The id representing the customer's request to execute one or more transactions.- Returns:
- The id representing the customer's request to execute one or more transactions.
-
setPaymentId
public void setPaymentId(String paymentId)
The id of the related payment that is meant to be used for the transaction.- Parameters:
paymentId
- The id of the related payment that is meant to be used for the transaction.
-
setSource
public void setSource(String source)
A simple description of the system that initiated this transaction execution request.- Parameters:
source
- A simple description of the system that initiated this transaction execution request.
-
setParentSourceEntityType
public void setParentSourceEntityType(String parentSourceEntityType)
The type of the parent source entity of the transaction that proceeded this transaction. This is used to identify the parent transactions within the same entity.For example, the execution of a refund transaction requires a proceeding capture or authorize and capture transaction. Let's say the proceeding capture transaction has the source entity type of
ORDER_FULFILLMENT
, and the refund transaction has the entity source type ofRETURN_CONFIRMATION
. In this case, the refund transaction request needs the parent source entity type ofORDER_FULFILLMENT
and its id in order to identify the parent capture transaction.Note that if this field is not provided, it will retrieve parent transactions from any entity based on
getPaymentId()
andgetTransactionType()
.
-
setParentSourceEntityId
public void setParentSourceEntityId(String parentSourceEntityId)
The id of the parent source entity of the transaction that proceeded this transaction.Note that if this field is not provided, it will retrieve parent transactions from any entity based on
getPaymentId()
andgetTransactionType()
.
-
setSourceEntityType
public void setSourceEntityType(String sourceEntityType)
The type of the source entity associated with the transaction. For example, "CHECKOUT_REQUEST" or "ORDER_FULFILLMENT".
-
setSourceEntityId
public void setSourceEntityId(String sourceEntityId)
The ID of the source entity associated with the transaction.For example, if
getSourceEntityType()
isORDER_FULFILLMENT
, this would be the ID of theOrderFulfillment
.- See Also:
getSourceEntityType()
-
setTransactionType
public void setTransactionType(String transactionType)
The type of transaction that is to be executed.- Parameters:
transactionType
- The type of transaction that is to be executed.- See Also:
TransactionType
-
setAllowAutomaticReversal
public void setAllowAutomaticReversal(boolean allowAutomaticReversal)
Whether to allow this transaction to be automatically reversed by payment system's scheduled jobs.Set this field to
false
if this transaction should only be allowed to be reversed by Order Operation Service.- Parameters:
allowAutomaticReversal
- Whether to allow this transaction to be automatically reversed by payment system's scheduled jobs.
-
setTransactionAmount
public void setTransactionAmount(javax.money.MonetaryAmount transactionAmount)
The transaction amount that we're expecting to execute against the payment. This amount must be valid according to what's available for the payment. If specified, the amount details (subtotal
,adjustmentsTotal
,fulfillmentTotal
, &taxTotal
) should sum together to equal this amount.- Parameters:
transactionAmount
- The transaction amount that we're expecting to execute against the payment.
-
setSubtotal
public void setSubtotal(javax.money.MonetaryAmount subtotal)
The payment's total usually excluding adjustments, tax, and shipping.- Parameters:
subtotal
- The payment's total usually excluding adjustments, tax, and shipping.
-
setAdjustmentsTotal
public void setAdjustmentsTotal(javax.money.MonetaryAmount adjustmentsTotal)
The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.- Parameters:
adjustmentsTotal
- The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.
-
setFulfillmentTotal
public void setFulfillmentTotal(javax.money.MonetaryAmount fulfillmentTotal)
The payment's total fulfillment cost.- Parameters:
fulfillmentTotal
- The payment's total fulfillment cost.
-
setTaxTotal
public void setTaxTotal(javax.money.MonetaryAmount taxTotal)
The payment's total tax cost.- Parameters:
taxTotal
- The payment's total tax cost.
-
setSecurityCode
public void setSecurityCode(String securityCode)
The payment method security code that may be required to execute the transaction. Typically, this value is required to execute transactions against multi-use payment methods to validate that the user is the owner of the payment method.- Parameters:
securityCode
- The payment method security code that may be required to execute the transaction.
-
setRequestId
public void setRequestId(String requestId)
The id representing the customer's request to execute one or more transactions.- Parameters:
requestId
- The id representing the customer's request to execute one or more transactions.
-
canEqual
protected boolean canEqual(Object other)
-
-