Class PaymentSummary

  • All Implemented Interfaces:
    Serializable

    public class PaymentSummary
    extends Object
    implements Serializable
    The domain that summarizes the current state of transactions against the payment.
    Author:
    Dima Myroniuk (dmyroniuk)
    See Also:
    Serialized Form
    • Constructor Detail

      • PaymentSummary

        public PaymentSummary()
    • Method Detail

      • getAddress

        @Nullable
        public com.broadleafcommerce.order.common.domain.Address getAddress​(String addressType)
        Gathers one of the payment's related addresses by type
        Returns:
        The payment's related address identified by type
      • getBillingAddress

        @Nullable
        public com.broadleafcommerce.order.common.domain.Address getBillingAddress()
      • getShippingAddress

        @Nullable
        public com.broadleafcommerce.order.common.domain.Address getShippingAddress()
      • getPaymentId

        public String getPaymentId()
        The id of this payment.
        Returns:
        The id of this payment.
      • getName

        public String getName()
        The name of this payment. This name is typically something like "Visa ending in 1234".
        Returns:
        The name of this payment.
      • getType

        public String getType()
        The type of this payment like Credit Card or Gift Card.
        Returns:
        The type of this payment like Credit Card or Gift Card.
      • getGatewayType

        public String getGatewayType()
        The gateway used to process this payment. Only a SINGLE payment gateway can modify transactions on a particular payment.
        Returns:
        The gateway used to process this payment.
      • getAddressByType

        public Map<String,​com.broadleafcommerce.order.common.domain.Address> getAddressByType()
        The collection of related addresses that may include billing or shipping addresses
        Returns:
        The collection of related addresses
      • getAttributes

        public Map<String,​String> getAttributes()
        General use map to capture any additional attributes needed for this Payment
        Returns:
        General use map to capture any additional attributes needed for this Payment
      • getDisplayAttributes

        public Map<String,​String> getDisplayAttributes()
        General use map to capture any display properties for this Payment
        Returns:
        General use map to capture any display properties for this Payment
      • isSingleUsePaymentMethod

        public boolean isSingleUsePaymentMethod()
        Whether or not the underlying payment method can only be used once. In most cases, we're managing a single-use token that represents a credit card. This flag is especially important for managing payments with successful transactions. In those cases, the token has already been used and cannot be reused. If we need modify the payment's amount, then we may actually need to archive the existing payment, and create a new payment, with a new underlying token. Additionally, this flag is helpful when needing to re-authorize an expired authorization transaction. In that case, if the payment represents a single-use payment method, then the re-authorization may not be possible, and you'll need to seek an alternative form of payment.
        Returns:
        Whether or not the underlying payment method can only be used once
      • getAmount

        public javax.money.MonetaryAmount getAmount()
        The amount for which this payment is allotted. The summation of all of the payments for a particular cart should equal the cart's total. If specified, the amount details (subtotal, adjustmentsTotal, fulfillmentTotal, & taxTotal) should sum together to equal this amount.
        Returns:
        The amount for which this payment is allotted.
      • 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
      • getAmountAuthorized

        public javax.money.MonetaryAmount getAmountAuthorized()
        The total authorized amount for capture. This value is calculated as "total authorized - total reverse-authed".
        Returns:
        the total authorized amount for capture
      • getAmountCaptured

        public javax.money.MonetaryAmount getAmountCaptured()
        The total captured amount. This value is calculated as "total captured - total refunded - total voided".
        Returns:
        the total captured amount
      • getAmountRefunded

        public javax.money.MonetaryAmount getAmountRefunded()
        The total refunded amount.
        Returns:
        the total refunded amount
      • getAmountCredited

        public javax.money.MonetaryAmount getAmountCredited()
        The total detached credit amount.
        Returns:
        the total detached credit amount
      • getVersion

        public Integer getVersion()
        The version of this payment. Used for checking that the requested version of the payment is up-to-date before saving changes. Required for any request which results in an update being made to the payment. This should never be manually incremented/decremented.
      • getAccessRestrictions

        public List<String> getAccessRestrictions()
        The list of restrictions that apply to payment access.
        Returns:
        the list of restrictions that apply to payment access
      • setPaymentId

        public void setPaymentId​(String paymentId)
        The id of this payment.
        Parameters:
        id - The id of this payment.
      • setName

        public void setName​(String name)
        The name of this payment. This name is typically something like "Visa ending in 1234".
        Parameters:
        name - The name of this payment.
      • setType

        public void setType​(String type)
        The type of this payment like Credit Card or Gift Card.
        Parameters:
        type - The type of this payment like Credit Card or Gift Card.
      • setGatewayType

        public void setGatewayType​(String gatewayType)
        The gateway used to process this payment. Only a SINGLE payment gateway can modify transactions on a particular payment.
        Parameters:
        gatewayType - The gateway used to process this payment.
      • setAddressByType

        public void setAddressByType​(Map<String,​com.broadleafcommerce.order.common.domain.Address> addressByType)
        The collection of related addresses that may include billing or shipping addresses
        Parameters:
        addressByType - The collection of related addresses
      • setAttributes

        public void setAttributes​(Map<String,​String> attributes)
        General use map to capture any additional attributes needed for this Payment
        Parameters:
        attributes - General use map to capture any additional attributes needed for this Payment
      • setDisplayAttributes

        public void setDisplayAttributes​(Map<String,​String> displayAttributes)
        General use map to capture any display properties for this Payment
        Parameters:
        displayAttributes - General use map to capture any display properties for this Payment
      • setSingleUsePaymentMethod

        public void setSingleUsePaymentMethod​(boolean isSingleUsePaymentMethod)
        Whether or not the underlying payment method can only be used once. In most cases, we're managing a single-use token that represents a credit card. This flag is especially important for managing payments with successful transactions. In those cases, the token has already been used and cannot be reused. If we need modify the payment's amount, then we may actually need to archive the existing payment, and create a new payment, with a new underlying token. Additionally, this flag is helpful when needing to re-authorize an expired authorization transaction. In that case, if the payment represents a single-use payment method, then the re-authorization may not be possible, and you'll need to seek an alternative form of payment.
        Parameters:
        shouldSavePaymentToCustomer - Whether or not the underlying payment method can only be used once
      • setAmount

        public void setAmount​(javax.money.MonetaryAmount amount)
        The amount for which this payment is allotted. The summation of all of the payments for a particular cart should equal the cart's total. If specified, the amount details (subtotal, adjustmentsTotal, fulfillmentTotal, & taxTotal) should sum together to equal this amount.
        Parameters:
        amount - The amount for which this payment is allotted.
      • setSubtotal

        public void setSubtotal​(javax.money.MonetaryAmount 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.
      • setFulfillmentTotal

        public void setFulfillmentTotal​(javax.money.MonetaryAmount fulfillmentTotal)
        The payment's total fulfillment cost
      • setTaxTotal

        public void setTaxTotal​(javax.money.MonetaryAmount taxTotal)
        The payment's total tax cost
      • setAmountAuthorized

        public void setAmountAuthorized​(javax.money.MonetaryAmount amountAuthorized)
        The total authorized amount for capture. This value is calculated as "total authorized - total reverse-authed".
        Parameters:
        amountAuthorized - the total authorized amount for capture
      • setAmountCaptured

        public void setAmountCaptured​(javax.money.MonetaryAmount amountCaptured)
        The total captured amount. This value is calculated as "total captured - total refunded - total voided".
        Parameters:
        amountCaptured - the total captured amount
      • setAmountRefunded

        public void setAmountRefunded​(javax.money.MonetaryAmount amountRefunded)
        The total refunded amount.
        Parameters:
        amountRefunded - the total refunded amount
      • setAmountCredited

        public void setAmountCredited​(javax.money.MonetaryAmount amountCredited)
        The total detached credit amount.
        Parameters:
        amountCredited - the total detached credit amount
      • setVersion

        public void setVersion​(Integer version)
        The version of this payment. Used for checking that the requested version of the payment is up-to-date before saving changes. Required for any request which results in an update being made to the payment. This should never be manually incremented/decremented.
      • setAccessRestrictions

        public void setAccessRestrictions​(List<String> accessRestrictions)
        The list of restrictions that apply to payment access.
        Parameters:
        accessRestrictions - the list of restrictions that apply to payment access
      • canEqual

        protected boolean canEqual​(Object other)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object