Serialized Form

  • Package com.broadleafcommerce.orderoperation.domain

    • Class com.broadleafcommerce.orderoperation.domain.CampaignCode

      class CampaignCode extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • activeEndDate
          Instant activeEndDate
          Defines the ending time for which this campaign code is active. Overrides the value set in the Campaign#activeEndDate.
        • activeStartDate
          Instant activeStartDate
          Defines the beginning time for which this campaign code is active. Overrides the value set in the Campaign#activeStartDate.
        • assigned
          boolean assigned
          Defines whether this code has been assigned for use.
        • campaignId
          String campaignId
          Defines the id for the campaign that originated this campaign code.
        • code
          String code
          The string code that represents this record.
        • emailRegEx
          String emailRegEx
          Defines a regex to be used for validating this campaign code for customer updateUses.
        • externalId
          String externalId
          This is an arbitrary ID, typically assigned by or used by 1st or 3rd party systems that are not Broadleaf.
        • generatorId
          String generatorId
          Defines the id for the code generator that originated this campaign code.
        • id
          String id
        • maxUses
          int maxUses
          Defines the number of max uses allowed for this campaign code.
        • offerId
          String offerId
          Defines the id for the offer that originated the offer code.
        • segment
          String segment
          The segment to which this campaign code can apply. A value of empty or "ANY" is the most common usage and means that this campaign code can apply to any qualifying part of the order. Typical uses of segments include using them to restrict an campaign code to a specific vendor or store (aka banner).
    • Class com.broadleafcommerce.orderoperation.domain.CaptureFulfillmentResult

      class CaptureFulfillmentResult extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

    • Class com.broadleafcommerce.orderoperation.domain.CodeGenerationResult

      class CodeGenerationResult extends Object implements Serializable
      serialVersionUID:
      1L
    • Class com.broadleafcommerce.orderoperation.domain.CodeGenerator

      class CodeGenerator extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • activeEndDate
          Instant activeEndDate
          Sets the Active End Date for codes generated by this generator.
        • activeStartDate
          Instant activeStartDate
          Sets the Active Start Date for codes generated by this generator.
        • campaignId
          String campaignId
          Defines the id for the campaign that originated this code generator.
        • codeFormat
          String codeFormat
          The custom formatter for generating codes. Customer formatters allow for precise control of the code format. For example, consider "CF-##-@@-**-1" which might generate the following code "CF-99-AB-Z3-1". Each symbol is processed by the CodeGenerator. The default implementation is as follows: # is replaced by a random number (not including 0, 1, or 5) @ is replaced by a random character (not including 0, L, or S) * is replaced by random alphanumeric character (not including those mentioned above).
          See Also:
          • com.broadleafcommerce.promotion.campaign.service.DefaultCampaignCodeService
        • codeLength
          Integer codeLength
          The code length the generator should use when generating the codes.
        • codePrefix
          String codePrefix
          Defines a prefix to updateUses when generating campaign codes for this campaign. This will default to Campaign#codePrefix, if not set. This is intended to be used as an override, if required.
        • emailRegEx
          String emailRegEx
          Provides a customer email validation when the generated codes are requested for use.
        • id
          String id
        • maxUses
          int maxUses
          The maximum number of uses to set for each code generated.
        • numberOfCodesToGenerate
          int numberOfCodesToGenerate
          The number of codes that will be generated
    • Class com.broadleafcommerce.orderoperation.domain.FulfillmentStatusChangeRequest

      class FulfillmentStatusChangeRequest extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • fulfillmentId
          String fulfillmentId
          The ID of the fulfillment to have its status changed.
        • itemQuantities
          Map<String,Integer> itemQuantities
          The quantities of each fulfillment item which should change status.

          If empty or null, then the entire fulfillment will change status. Otherwise, if only a subset of the items and quantities are included, then the unchanged item quantities will be split into a new fulfillment with the previous status.

        • status
          String status
          The status to change the fulfillment to.
    • Class com.broadleafcommerce.orderoperation.domain.OrderWithFulfillmentsAndReturns

      class OrderWithFulfillmentsAndReturns extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • fulfillments
          List<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillments
        • order
          com.broadleafcommerce.order.client.domain.Order order
        • returnAuthorizations
          List<com.broadleafcommerce.order.client.domain.ReturnAuthorization> returnAuthorizations
    • Class com.broadleafcommerce.orderoperation.domain.UserTarget

      class UserTarget extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • targetType
          String targetType
          The type of the user.
          See Also:
        • targetValue
          String targetValue
          An identifying value for the user. Could be an email, username, or some similarly identifying value.
    • Class com.broadleafcommerce.orderoperation.domain.VoucherCodeGenerationRequest

      class VoucherCodeGenerationRequest extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • codeGenerator
          CodeGenerator codeGenerator
          The CodeGenerator to use to generate voucher codes.
        • voucherCampaignId
          String voucherCampaignId
          The campaign id to generate the voucher codes from.
  • Package com.broadleafcommerce.orderoperation.domain.enums

  • Package com.broadleafcommerce.orderoperation.domain.payment

    • Class com.broadleafcommerce.orderoperation.domain.payment.ExecutablePayment

      class ExecutablePayment extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • additionalAttributes
          Map<String,Object> additionalAttributes
          Contains the additional information about this payment.
        • payment
          PaymentSummary payment
          The id of this payment.
        • transactionAmountDetails
          TransactionAmountDetails transactionAmountDetails
          The amount for which this payment is executable
        • transactionType
          String transactionType
          The executable transaction type of this payment.
    • Class com.broadleafcommerce.orderoperation.domain.payment.PaymentDistributionDto

      class PaymentDistributionDto extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • additionalAttributes
          Map<String,Object> additionalAttributes
          Contains the additional information about this payment.
        • executablePayments
          List<ExecutablePayment> executablePayments
          A list of ExecutablePayments to distribute the PaymentDistributionDto.totalAmountToDistribute across.
        • paymentDistributionDetails
          List<com.broadleafcommerce.order.client.domain.payment.PaymentDistributionDetail> paymentDistributionDetails
          A list of PaymentDistributionDetails specifying the details of the distribution ratios.
        • totalAmountToDistribute
          javax.money.MonetaryAmount totalAmountToDistribute
          The total MonetaryAmount to distribute proportionally across different payments.
    • Class com.broadleafcommerce.orderoperation.domain.payment.PaymentDistributionResult

      class PaymentDistributionResult extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • additionalAttributes
          Map<String,Object> additionalAttributes
          Contains the additional information about this payment.
        • distributedPaymentAndAmounts
          List<org.apache.commons.lang3.tuple.Pair<ExecutablePayment,javax.money.MonetaryAmount>> distributedPaymentAndAmounts
          A list of Pairs of ExecutablePayment and the MonetaryAmount that it's distributed.

          For example, an order of $100 distributed to two payments, payment1 with 40% ratio and payment2 with 60% ratio, the pairs would be {payment1: $40} and {payment2: $60}

    • Class com.broadleafcommerce.orderoperation.domain.payment.PaymentExecutionRequest

      class PaymentExecutionRequest extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • additionalAttributes
          Map<String,Object> additionalAttributes
          Contains the additional information about this payment.
        • payment
          PaymentSummary payment
          The id of this payment.
        • transactionAmountDetails
          TransactionAmountDetails transactionAmountDetails
          The amount for which this payment is executable
        • transactionType
          String transactionType
          The type of transaction that is to be executed.
    • Class com.broadleafcommerce.orderoperation.domain.payment.PaymentSummary

      class PaymentSummary extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • addressByType
          Map<String,com.broadleafcommerce.order.common.domain.Address> addressByType
          The collection of related addresses that may include billing or shipping addresses
        • adjustmentsTotal
          javax.money.MonetaryAmount adjustmentsTotal
          The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.
        • amount
          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 (PaymentSummary.subtotal, PaymentSummary.adjustmentsTotal, PaymentSummary.fulfillmentTotal, & PaymentSummary.taxTotal) should sum together to equal this amount.
        • amountAuthorized
          javax.money.MonetaryAmount amountAuthorized
          The total authorized amount for capture. This value is calculated as "total authorized - total reverse-authed".
        • amountAvailableForAuthorize
          javax.money.MonetaryAmount amountAvailableForAuthorize
          Determines the amount that can be authorized for this payment summary
        • amountAvailableForAuthorizeAndCapture
          javax.money.MonetaryAmount amountAvailableForAuthorizeAndCapture
          Determines the amount that can be authorized and captured for this payment summary
        • amountAvailableForCapture
          javax.money.MonetaryAmount amountAvailableForCapture
          Determines the amount that can be captured for this payment summary
        • amountAvailableForRefund
          javax.money.MonetaryAmount amountAvailableForRefund
          Determines the amount that can be refunded for this payment summary
        • amountAvailableForReverseAuthorization
          javax.money.MonetaryAmount amountAvailableForReverseAuthorization
          Determines the amount that can be reverse-authorized for this payment summary
        • amountCaptured
          javax.money.MonetaryAmount amountCaptured
          The total amount that is currently captured. This value is calculated as "total captured - total refunded".
        • amountCredited
          javax.money.MonetaryAmount amountCredited
          The total detached credit amount.
        • amountRefunded
          javax.money.MonetaryAmount amountRefunded
          The total refunded amount.
        • attributes
          Map<String,String> attributes
          General use map to capture any additional attributes needed for this Payment
        • captureAmountAwaitingResult
          javax.money.MonetaryAmount captureAmountAwaitingResult
          The total amount sent to the payment gateway for capture, and is waiting for a response about the transaction result.

          This value should only be present for payment gateways that support asynchronous transaction executions.

        • displayAttributes
          Map<String,String> displayAttributes
          General use map to capture any display properties for this Payment
        • fulfillmentTotal
          javax.money.MonetaryAmount fulfillmentTotal
          The payment's total fulfillment cost
        • fullyAuthorized
          boolean fullyAuthorized
          Determines if the payment summary is fully authorized
        • fullyCaptured
          boolean fullyCaptured
          Determines if the payment summary is fully captured
        • gatewayType
          String gatewayType
          The gateway used to process this payment. Only a SINGLE payment gateway can modify transactions on a particular payment.
        • hasTransactionFlaggedForManualReview
          boolean hasTransactionFlaggedForManualReview
          Indicates that the payment transaction has been flagged for manual review by fraud checks.
        • isSingleUsePaymentMethod
          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.
        • name
          String name
          The name of this payment. This name is typically something like "Visa ending in 1234".
        • owningEntityId
          String owningEntityId
          The id of the entity that owns this payment. For example, this may be a cart id, or a subscription billing cycle id.
        • owningEntityType
          String owningEntityType
          Describes the owning entity of the payment. For example, the payment could have originated with a cart or a subscription, therefore this value might be CART or SUBSCRIPTION.
        • partiallyCaptured
          boolean partiallyCaptured
          Determines if the payment summary is partially captured
        • partialReverseAuthSupported
          boolean partialReverseAuthSupported
          Whether a portion of an authorization transaction can be reversed, or if the full authorization transaction must be reversed.
        • paymentId
          String paymentId
          The id of this payment.
        • refundAmountAwaitingResult
          javax.money.MonetaryAmount refundAmountAwaitingResult
          The total amount sent to the payment gateway for refund, and is waiting for a response about the transaction result.

          This value should only be present for payment gateways that support asynchronous transaction executions.

        • reverseAuthorizeAmountAwaitingResult
          javax.money.MonetaryAmount reverseAuthorizeAmountAwaitingResult
          The total amount sent to the payment gateway for reverse authorize, and is waiting for a response about the transaction result.

          This value should only be present for payment gateways that support asynchronous transaction executions.

        • reverseAuthRemainder
          boolean reverseAuthRemainder
          Declares if the reverse authorize for this functionality only allows reversing the full non-captured amount.
        • subtotal
          javax.money.MonetaryAmount subtotal
          The payment's total usually excluding adjustments, tax, and shipping.
        • taxTotal
          javax.money.MonetaryAmount taxTotal
          The payment's total tax cost
        • totalEverCaptured
          javax.money.MonetaryAmount totalEverCaptured
          The total amount ever captured, as opposed to the current snapshot of the captured amount represented in PaymentSummary.getAmountCaptured().
        • type
          String type
          The type of this payment like Credit Card or Gift Card.
        • version
          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.
    • Class com.broadleafcommerce.orderoperation.domain.payment.PaymentTransactionRef

      class PaymentTransactionRef extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • adjustmentsTotal
          javax.money.MonetaryAmount adjustmentsTotal
          The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts. Note: Only the PaymentTransactionRef.amount is required, but if this value is included, then the PaymentTransactionRef.subtotal, PaymentTransactionRef.fulfillmentTotal, PaymentTransactionRef.feesTotal, PaymentTransactionRef.taxTotal, & PaymentTransactionRef.includedTaxTotal should be included also.
        • amount
          javax.money.MonetaryAmount amount
          The amount related to this transaction. Depending on the PaymentTransactionRef.type, this may be the amount authorized, captured, refunded, etc.
        • dateRecorded
          Instant dateRecorded
          The timestamp when this transaction response was recorded
        • failureType
          String failureType
          The type of transaction failure
        • feesTotal
          javax.money.MonetaryAmount feesTotal
          The total fees related to the PaymentTransactionRef.amount Note: Only the PaymentTransactionRef.amount is required, but if this value is included, then the PaymentTransactionRef.subtotal, PaymentTransactionRef.fulfillmentTotal, PaymentTransactionRef.adjustmentsTotal, PaymentTransactionRef.taxTotal, & PaymentTransactionRef.includedTaxTotal should be included also.
        • flaggedForManualReview
          boolean flaggedForManualReview
          Indicates that the payment transaction has been flagged for manual review via fraud checks.
        • fulfillmentTotal
          javax.money.MonetaryAmount fulfillmentTotal
          The payment's total fulfillment cost. Note: Only the PaymentTransactionRef.amount is required, but if this value is included, then the PaymentTransactionRef.subtotal, PaymentTransactionRef.feesTotal, PaymentTransactionRef.adjustmentsTotal, PaymentTransactionRef.taxTotal, & PaymentTransactionRef.includedTaxTotal should be included also.
        • gatewayResponseCode
          String gatewayResponseCode
          The response code provided by the payment gateway which may represent a success or failure
        • gatewayTransactionId
          String gatewayTransactionId
          The gateway-specific id for the transaction.
        • id
          String id
          The payment transaction's id.
        • includedTaxTotal
          javax.money.MonetaryAmount includedTaxTotal
          The amount of taxes that are included in the subtotal (VAT). Note: Only the PaymentTransactionRef.amount is required, but if this value is included, then the PaymentTransactionRef.subtotal, PaymentTransactionRef.fulfillmentTotal, PaymentTransactionRef.feesTotal, PaymentTransactionRef.adjustmentsTotal, & PaymentTransactionRef.taxTotal should be included also.
        • managementState
          String managementState
          The state of this transaction - e.g. whether the transaction is scheduled for reversal or if it's being used in an active checkout. If the transaction was not successful, then we expect this value to be null.
        • managementStateReason
          String managementStateReason
          Describes the reason for the PaymentTransactionRef.managementState.
        • manualReviewResult
          String manualReviewResult
          Describes the outcome of the manual review of a transaction after it was flagged by fraud checks.
        • manualReviewResultReason
          String manualReviewResultReason
          Describes the reason for approving/rejecting a transaction during a manual fraud review.
        • parentSourceEntityId
          String parentSourceEntityId
          The id of the parent source entity of the transaction that proceeded this transaction.
          See Also:
        • parentSourceEntityType
          String parentSourceEntityType
          The type of the parent source entity of the transaction that proceeded this transaction.

          This is used to identify the parent transaction instead of using the parent transaction id itself, because other systems have no knowledge of specific transactions.

          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 of RETURN_CONFIRMATION. In this case, the refund transaction request needs the parent source entity type of ORDER_FULFILLMENT and its id in order to identify the parent capture transaction.

        • paymentId
          String paymentId
          The payment's id.
        • requestId
          String requestId
          The id used to represent the request that produced this transaction.
        • source
          String source
          The name of the system that initiated the transaction - e.g. CART_OPERATION_SERVICES vs ORDER_OPERATION_SERVICES.
        • sourceEntityId
          String sourceEntityId
          The ID of the source entity associated with the transaction.

          For example, if PaymentTransactionRef.getSourceEntityType() is ORDER_FULFILLMENT, this would be the ID of the OrderFulfillment.

          See Also:
        • sourceEntityType
          String sourceEntityType
          The type of the source entity associated with the transaction. For example, "CHECKOUT_REQUEST" or "ORDER_FULFILLMENT".
        • status
          String status
          The status of the transaction
          See Also:
        • subtotal
          javax.money.MonetaryAmount subtotal
          The payment's total usually excluding adjustments, tax, fees, and shipping. Note: Only the PaymentTransactionRef.amount is required, but if this value is included, then the PaymentTransactionRef.fulfillmentTotal, PaymentTransactionRef.feesTotal, PaymentTransactionRef.adjustmentsTotal, PaymentTransactionRef.taxTotal, & PaymentTransactionRef.includedTaxTotal should be included also.
        • taxTotal
          javax.money.MonetaryAmount taxTotal
          The payment's total tax cost. Note: Only the PaymentTransactionRef.amount is required, but if this value is included, then the PaymentTransactionRef.subtotal, PaymentTransactionRef.fulfillmentTotal, PaymentTransactionRef.feesTotal, PaymentTransactionRef.adjustmentsTotal, & PaymentTransactionRef.includedTaxTotal should be included also.
        • transactionReferenceId
          String transactionReferenceId
          The transaction id known by the payment gateway. This reference can be used to link the request to the gateway's record of the transaction in the case that the calling application does not receive a response from the gateway.
        • type
          String type
          The type of this transaction (authorize, capture, refund, etc.)
    • Class com.broadleafcommerce.orderoperation.domain.payment.TransactionSummary

      class TransactionSummary extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • additionalAttributes
          Map<String,Object> additionalAttributes
          Map holding any additional attributes used to describe the transaction summary.
        • amountAuthorized
          javax.money.MonetaryAmount amountAuthorized
          The total authorized amount for capture. This value is calculated as "total authorized - total reverse-authed".
        • amountAwaiting3DSResult
          javax.money.MonetaryAmount amountAwaiting3DSResult
          The total amount of Authorize or AuthorizeAndCapture transactions that require 3DS verification. Note: this excludes transactions that previously required 3DS verification, but we now have transaction results for.

          This value should only be present for payment gateways that support 3DS verification.

        • amountAwaitingExternalResult
          javax.money.MonetaryAmount amountAwaitingExternalResult
          The total amount awaiting result for transactions that require external interaction.

          This value should only be present for payment gateways that support external interaction.

        • amountCaptured
          javax.money.MonetaryAmount amountCaptured
          The total amount that is currently captured. This value is calculated as "total captured - total refunded".
        • amountCredited
          javax.money.MonetaryAmount amountCredited
          The total detached credit amount.
        • amountRefunded
          javax.money.MonetaryAmount amountRefunded
          The total refunded amount.
        • authorizeAmountAwaitingResult
          javax.money.MonetaryAmount authorizeAmountAwaitingResult
          The total amount sent to the payment gateway for authorize, and is waiting for a response about the transaction result.

          Typically authorize transactions have immediate result, but sometimes the result can be pending for certain gateways.

        • captureAmountAwaitingResult
          javax.money.MonetaryAmount captureAmountAwaitingResult
          The total amount sent to the payment gateway for capture, and is waiting for a response about the transaction result.

          This value should only be present for payment gateways that support asynchronous transaction executions.

        • paymentSummaries
          List<PaymentSummary> paymentSummaries
          A collection of PaymentSummaries related to the same owning entity.
        • refundAmountAwaitingResult
          javax.money.MonetaryAmount refundAmountAwaitingResult
          The total amount sent to the payment gateway for refund, and is waiting for a response about the transaction result.

          This value should only be present for payment gateways that support asynchronous transaction executions.

        • reverseAuthorizeAmountAwaitingResult
          javax.money.MonetaryAmount reverseAuthorizeAmountAwaitingResult
          The total amount sent to the payment gateway for reverse authorize, and is waiting for a response about the transaction result.

          This value should only be present for payment gateways that support asynchronous transaction executions.

        • totalEverCaptured
          javax.money.MonetaryAmount totalEverCaptured
          The total amount ever captured, as opposed to the current snapshot of the captured amount represented in TransactionSummary.getAmountCaptured().
        • transactions
          List<PaymentTransactionRef> transactions
          The list of transactions that are represented in this transaction summary.
  • Package com.broadleafcommerce.orderoperation.exception

  • Package com.broadleafcommerce.orderoperation.service.messaging.capture

    • Class com.broadleafcommerce.orderoperation.service.messaging.capture.PaymentCaptureAttemptResult

      class PaymentCaptureAttemptResult extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • contextInfo
          com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo
          The ContextInfo derived from the original request containing tenant and sandbox info.
        • fulfillment
          com.broadleafcommerce.order.client.domain.OrderFulfillment fulfillment
          The fulfillment for which payment was capture attempted
        • order
          com.broadleafcommerce.order.client.domain.Order order
          The order object that had payment capture attempted
        • result
          String result
          The outcome of the attempt to capture payment.
          See Also:
  • Package com.broadleafcommerce.orderoperation.service.messaging.checkout

    • Class com.broadleafcommerce.orderoperation.service.messaging.checkout.CheckoutCompletionEvent

      class CheckoutCompletionEvent extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • cart
          com.broadleafcommerce.cart.client.domain.CheckoutCart cart
          The cart object that completed the checkout workflow
        • contextInfo
          com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo
          The ContextInfo derived from the original request containing tenant and sandbox info.
        • requestId
          String requestId
          The id representing this request to checkout This value can be used to identify entities that were produced due to this request and therefore need to be rolled back
  • Package com.broadleafcommerce.orderoperation.service.messaging.fulfillments

    • Class com.broadleafcommerce.orderoperation.service.messaging.fulfillments.FulfillmentStatusChangeEvent

      class FulfillmentStatusChangeEvent extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • contextInfo
          com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo
          The ContextInfo derived from the original request containing tenant and sandbox info.
        • fulfillment
          com.broadleafcommerce.order.client.domain.OrderFulfillment fulfillment
          The fulfillment which changed status.

          This could be an entire fulfillment which was changed, or the changed part of a newly split fulfillment.

        • order
          com.broadleafcommerce.order.client.domain.Order order
          The order which the fulfillment came from.
        • originalStatus
          String originalStatus
          The original status of the fulfillment before the change.
        • request
          FulfillmentStatusChangeRequest request
          The original request leading to the status change.
  • Package com.broadleafcommerce.orderoperation.service.messaging.ordercreated

  • Package com.broadleafcommerce.orderoperation.service.messaging.returns

    • Class com.broadleafcommerce.orderoperation.service.messaging.returns.ReturnCancelledEvent

      class ReturnCancelledEvent extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • alreadyConfirmedReturnAuthorization
          com.broadleafcommerce.order.client.domain.ReturnAuthorization alreadyConfirmedReturnAuthorization
          The component of the return which was already confirmed, so could not be cancelled, if any confirmations are present.
        • cancelledReturnAuthorization
          com.broadleafcommerce.order.client.domain.ReturnAuthorization cancelledReturnAuthorization
          The return which was cancelled.
        • contextInfo
          com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo
          The ContextInfo derived from the original request containing tenant and sandbox info.
        • fulfillments
          List<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillments
          The fulfillments associated with the order being returned from.
        • order
          com.broadleafcommerce.order.client.domain.Order order
          The order being returned from.
        • request
          CancelReturnRequest request
          The original request leading to the return cancellation.
    • Class com.broadleafcommerce.orderoperation.service.messaging.returns.ReturnConfirmedEvent

      class ReturnConfirmedEvent extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • contextInfo
          com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo
          The ContextInfo derived from the original request containing tenant and sandbox info.
        • fulfillments
          List<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillments
          The fulfillments associated with the order being returned from.
        • order
          com.broadleafcommerce.order.client.domain.Order order
          The order being returned from.
        • request
          ConfirmReturnRequest request
          The original request leading to the return creation.
        • returnAuthorization
          com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization
          The return which was updated with new ReturnConfirmations.
    • Class com.broadleafcommerce.orderoperation.service.messaging.returns.ReturnCreatedEvent

      class ReturnCreatedEvent extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • contextInfo
          com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo
          The ContextInfo derived from the original request containing tenant and sandbox info.
        • fulfillments
          List<com.broadleafcommerce.order.client.domain.OrderFulfillment> fulfillments
          The fulfillments associated with the order being returned from.
        • order
          com.broadleafcommerce.order.client.domain.Order order
          The order being returned from.
        • request
          ReturnRequest request
          The original request leading to the return creation.
        • returnAuthorization
          com.broadleafcommerce.order.client.domain.ReturnAuthorization returnAuthorization
          The return which was created.
  • Package com.broadleafcommerce.orderoperation.service.messaging.transactionwebhook

    • Class com.broadleafcommerce.orderoperation.service.messaging.transactionwebhook.TransactionWebhookEvent

      class TransactionWebhookEvent extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • amount
          javax.money.MonetaryAmount amount
          The amount of the PaymentTransaction
        • failureType
          String failureType
          The failure type of the PaymentTransaction
        • gatewayResponseCode
          String gatewayResponseCode
          The gateway response code of the PaymentTransaction
        • id
          String id
          The id of the PaymentTransaction
        • parentSourceEntityId
          String parentSourceEntityId
          The parent source entity id of the PaymentTransaction
        • parentSourceEntityType
          String parentSourceEntityType
          The parent source entity type of the PaymentTransaction
        • parentTransactionId
          String parentTransactionId
          The parent transaction id of the PaymentTransaction
        • paymentId
          String paymentId
          The id of this payment.
        • requestId
          String requestId
          The request id of the PaymentTransaction
        • source
          String source
          The source of the PaymentTransaction
        • sourceEntityId
          String sourceEntityId
          The source entity id of the PaymentTransaction
        • sourceEntityType
          String sourceEntityType
          The source entity type of the PaymentTransaction
        • status
          String status
          The status of the PaymentTransaction
        • tenantId
          String tenantId
          The tenant id that the payment transaction belongs to.
        • token
          String token
          A Base64 encoded JWT token that can be verified for authenticity and that contains claims about the messages originating user that can be validated for suitability of consumption in the current context.
        • transactionReferenceId
          String transactionReferenceId
          The transaction reference id of the PaymentTransaction
        • type
          String type
          The type of the PaymentTransaction
  • Package com.broadleafcommerce.orderoperation.service.messaging.voucher

  • Package com.broadleafcommerce.orderoperation.service.payment.domain

    • Class com.broadleafcommerce.orderoperation.service.payment.domain.TransactionAmountDetails

      class TransactionAmountDetails extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • adjustmentsTotal
          javax.money.MonetaryAmount adjustmentsTotal
          The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts. Note: Only the TransactionAmountDetails.amount is required, but if this value is included, then the TransactionAmountDetails.subtotal, TransactionAmountDetails.fulfillmentTotal, TransactionAmountDetails.feesTotal, TransactionAmountDetails.taxTotal, & TransactionAmountDetails.includedTaxTotal should be included also.
        • amount
          javax.money.MonetaryAmount amount
          The amount related to this transaction.
        • feesTotal
          javax.money.MonetaryAmount feesTotal
          The total fees related to the TransactionAmountDetails.amount Note: Only the TransactionAmountDetails.amount is required, but if this value is included, then the TransactionAmountDetails.subtotal, TransactionAmountDetails.fulfillmentTotal, TransactionAmountDetails.adjustmentsTotal, TransactionAmountDetails.taxTotal, & TransactionAmountDetails.includedTaxTotal should be included also.
        • fulfillmentTotal
          javax.money.MonetaryAmount fulfillmentTotal
          The payment's total fulfillment cost. Note: Only the TransactionAmountDetails.amount is required, but if this value is included, then the TransactionAmountDetails.subtotal, TransactionAmountDetails.feesTotal, TransactionAmountDetails.adjustmentsTotal, TransactionAmountDetails.taxTotal, & TransactionAmountDetails.includedTaxTotal should be included also.
        • includedTaxTotal
          javax.money.MonetaryAmount includedTaxTotal
          The amount of taxes that are included in the subtotal (VAT). Note: Only the TransactionAmountDetails.amount is required, but if this value is included, then the TransactionAmountDetails.subtotal, TransactionAmountDetails.fulfillmentTotal, TransactionAmountDetails.feesTotal, TransactionAmountDetails.adjustmentsTotal, & TransactionAmountDetails.taxTotal should be included also.
        • subtotal
          javax.money.MonetaryAmount subtotal
          The payment's total usually excluding adjustments, tax, fees, and shipping. Note: Only the TransactionAmountDetails.amount is required, but if this value is included, then the TransactionAmountDetails.fulfillmentTotal, TransactionAmountDetails.feesTotal, TransactionAmountDetails.adjustmentsTotal, TransactionAmountDetails.taxTotal, & TransactionAmountDetails.includedTaxTotal should be included also.
        • taxTotal
          javax.money.MonetaryAmount taxTotal
          The payment's total tax cost. Note: Only the TransactionAmountDetails.amount is required, but if this value is included, then the TransactionAmountDetails.subtotal, TransactionAmountDetails.fulfillmentTotal, TransactionAmountDetails.feesTotal, TransactionAmountDetails.adjustmentsTotal, & TransactionAmountDetails.includedTaxTotal should be included also.
  • Package com.broadleafcommerce.orderoperation.service.payment.exception

  • Package com.broadleafcommerce.orderoperation.service.provider.external.domain.payment

    • Class com.broadleafcommerce.orderoperation.service.provider.external.domain.payment.LockPaymentRequest

      class LockPaymentRequest extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • ownerId
          String ownerId
          The id of the entity that owns this payment. For example, this may be a cart id, or a subscription billing cycle id.
        • ownerType
          String ownerType
          Describes the owner of the payment. For example, the payment could have originated with a cart or a subscription, therefore this value might be CART or SUBSCRIPTION.
        • paymentIds
          List<String> paymentIds
          The list of ids of the payments to lock.

          If this is not provided, then LockPaymentRequest.ownerType and LockPaymentRequest.ownerId are used to lock the payments.

    • Class com.broadleafcommerce.orderoperation.service.provider.external.domain.payment.TransactionExecutionDetail

      class TransactionExecutionDetail extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • adjustmentsTotal
          javax.money.MonetaryAmount adjustmentsTotal
          The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.
        • attributes
          Map<String,String> attributes
          Map of specific attributes that have been gathered from the raw response. This should be used for data points that are to be used programmatically. For example, a gateway-specific transaction id that can be used to capture or refund the transaction.
        • dateRecorded
          Instant dateRecorded
          The timestamp when this transaction response was recorded
        • declineType
          String declineType
          The type of transaction failure (hard vs soft failure)
        • failureType
          String failureType
          The type of transaction failure
        • feesTotal
          javax.money.MonetaryAmount feesTotal
          The total fees related to the TransactionExecutionDetail.transactionAmount
        • flaggedForManualReview
          boolean flaggedForManualReview
          Indicates that the payment transaction has been flagged for manual review via fraud checks.
        • fulfillmentTotal
          javax.money.MonetaryAmount fulfillmentTotal
          The payment's total fulfillment cost.
        • gatewayResponseCode
          String gatewayResponseCode
          The response code provided by the payment gateway which may represent a success or failure
        • includedTaxTotal
          javax.money.MonetaryAmount includedTaxTotal
          The amount of taxes that are included in the subtotal (VAT).
        • indeterminateResult
          boolean indeterminateResult
          Tells if this transaction has an indeterminate result.

          Having an indeterminate result means that the true outcome of the transaction is not known. For example, if a transaction is sent to the payment processor but a network error occurred, it is not known to us whether the user was actually charged or not (thus, the result is indeterminate).

          Transactions should be marked as indeterminate when sending to the payment processor, and then unmarked once a response is received, understood, and recorded. This means that a transaction in an indeterminate result state is expected during the sending to processor phase. However, if the transaction remains in that state for an excessive amount of time, something likely went wrong and the transaction will need to be reconciled. If the transaction changes from the sending to processor status but remains indeterminate, the transaction will also require reconciliation in that scenario.

          Some situations which may lead to an indeterminate result:

          • A transaction is sent to the processor, but a network error prevents us from receiving the response
          • A transaction is sent to the processor, but the processor returns an unexpected error (e.g. 500 internal server error)
          • A transaction is sent to the processor and a response is received, but cannot be recorded because Cart Services is down
          • A transaction is sent to the processor and a response is received, but cannot be recorded because the database is down
        • message
          String message
          Message describing the result of the transaction
        • parentTransactionId
          String parentTransactionId
          The id of the parent payment transaction. Necessary for operations on a payment that require something to have happened beforehand. For instance, an authorize transaction would not have a parent but a capture must have an authorize parent transaction and a refund must have a capture parent transaction. The full set of expected parent-child transaction relationships are as follows:
          • Child Transaction -> Parent Transaction
          • Reverse Authorize -> Authorize
          • Capture -> Authorize
          • Refund -> Capture
          • Refund -> AuthorizeAndCapture
        • subtotal
          javax.money.MonetaryAmount subtotal
          The payment's total usually excluding adjustments, tax, fees, and shipping.
        • taxTotal
          javax.money.MonetaryAmount taxTotal
          The payment's total tax cost.
        • threeDSecureVerificationUrl
          String threeDSecureVerificationUrl
          The gateway-provided url where the customer must verify that they are in fact the owner of the payment method. The customer is typically redirected to this location, but the page can also be rendered within an iframe if this is supported by the gateway.
        • transactionAmount
          javax.money.MonetaryAmount transactionAmount
          The transaction amount that we're expecting to execute against the PaymentSummary. This amount must be valid according to what's available for the PaymentSummary. If specified, the amount details should be equal to this amount using the following equation: transactionAmount = TransactionExecutionDetail.subtotal + TransactionExecutionDetail.fulfillmentTotal + TransactionExecutionDetail.feesTotal - TransactionExecutionDetail.adjustmentsTotal + TransactionExecutionDetail.taxTotal - TransactionExecutionDetail.includedTaxTotal.
        • transactionId
          String transactionId
          The id of the executed transaction.
        • transactionReferenceId
          String transactionReferenceId
          The transaction id known by the payment gateway. This reference can be used to link the request to the gateway's record of the transaction in the case that the calling application does not receive a response from the gateway.
        • transactionStatus
          String transactionStatus
          The status of the transaction.
          See Also:
    • Class com.broadleafcommerce.orderoperation.service.provider.external.domain.payment.TransactionExecutionRequest

      class TransactionExecutionRequest extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • adjustmentsTotal
          javax.money.MonetaryAmount adjustmentsTotal
          The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts. Note: Only the TransactionExecutionRequest.transactionAmount is required, but if this value is included, then the TransactionExecutionRequest.subtotal, TransactionExecutionRequest.fulfillmentTotal, TransactionExecutionRequest.feesTotal, TransactionExecutionRequest.taxTotal, & TransactionExecutionRequest.includedTaxTotal should be included also.
        • allowAutomaticReversal
          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.

        • feesTotal
          javax.money.MonetaryAmount feesTotal
          The total fees related to the TransactionExecutionRequest.transactionAmount Note: Only the TransactionExecutionRequest.transactionAmount is required, but if this value is included, then the TransactionExecutionRequest.subtotal, TransactionExecutionRequest.fulfillmentTotal, TransactionExecutionRequest.adjustmentsTotal, TransactionExecutionRequest.taxTotal, & TransactionExecutionRequest.includedTaxTotal should be included also.
        • fulfillmentTotal
          javax.money.MonetaryAmount fulfillmentTotal
          The payment's total fulfillment cost. Note: Only the TransactionExecutionRequest.transactionAmount is required, but if this value is included, then the TransactionExecutionRequest.subtotal, TransactionExecutionRequest.feesTotal, TransactionExecutionRequest.adjustmentsTotal, TransactionExecutionRequest.taxTotal, & TransactionExecutionRequest.includedTaxTotal should be included also.
        • includedTaxTotal
          javax.money.MonetaryAmount includedTaxTotal
          The amount of taxes that are included in the subtotal (VAT). Note: Only the TransactionExecutionRequest.transactionAmount is required, but if this value is included, then the TransactionExecutionRequest.subtotal, TransactionExecutionRequest.fulfillmentTotal, TransactionExecutionRequest.feesTotal, TransactionExecutionRequest.adjustmentsTotal, & TransactionExecutionRequest.taxTotal should be included also.
        • parentSourceEntityId
          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 TransactionExecutionRequest.getPaymentId() and TransactionExecutionRequest.getTransactionType().

        • parentSourceEntityType
          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 of RETURN_CONFIRMATION. In this case, the refund transaction request needs the parent source entity type of ORDER_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 TransactionExecutionRequest.getPaymentId() and TransactionExecutionRequest.getTransactionType().

        • paymentId
          String paymentId
          The id of the related payment that is meant to be used for the transaction.
        • requestId
          String requestId
          The id representing the customer's request to execute one or more transactions.
        • securityCode
          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.
        • source
          String source
          A simple description of the system that initiated this transaction execution request.
        • sourceEntityId
          String sourceEntityId
          The ID of the source entity associated with the transaction.

          For example, if TransactionExecutionRequest.getSourceEntityType() is ORDER_FULFILLMENT, this would be the ID of the OrderFulfillment.

          See Also:
        • sourceEntityType
          String sourceEntityType
          The type of the source entity associated with the transaction. For example, "CHECKOUT_REQUEST" or "ORDER_FULFILLMENT".
        • subtotal
          javax.money.MonetaryAmount subtotal
          The payment's total usually excluding adjustments, tax, fees, and shipping. Note: Only the TransactionExecutionRequest.transactionAmount is required, but if this value is included, then the TransactionExecutionRequest.fulfillmentTotal, TransactionExecutionRequest.feesTotal, TransactionExecutionRequest.adjustmentsTotal, TransactionExecutionRequest.taxTotal, & TransactionExecutionRequest.includedTaxTotal should be included also.
        • taxTotal
          javax.money.MonetaryAmount taxTotal
          The payment's total tax cost. Note: Only the TransactionExecutionRequest.transactionAmount is required, but if this value is included, then the TransactionExecutionRequest.subtotal, TransactionExecutionRequest.fulfillmentTotal, TransactionExecutionRequest.feesTotal, TransactionExecutionRequest.adjustmentsTotal, & TransactionExecutionRequest.includedTaxTotal should be included also.
        • transactionAmount
          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 should be equal to this amount using the following equation: transactionAmount = TransactionExecutionRequest.subtotal + TransactionExecutionRequest.fulfillmentTotal + TransactionExecutionRequest.feesTotal - TransactionExecutionRequest.adjustmentsTotal + TransactionExecutionRequest.taxTotal - TransactionExecutionRequest.includedTaxTotal.
        • transactionType
          String transactionType
          The type of transaction that is to be executed.
          See Also:
    • Class com.broadleafcommerce.orderoperation.service.provider.external.domain.payment.TransactionExecutionResponse

      class TransactionExecutionResponse extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • adjustmentsTotal
          javax.money.MonetaryAmount adjustmentsTotal
          The payment's adjustments (a.k.a discounts) total, usually excluding shipping/fulfillment discounts.
        • expectedTotalAmount
          javax.money.MonetaryAmount expectedTotalAmount
          The total amount that we're expecting to be executed against the TransactionExecutionResponse.paymentSummary, spread across the TransactionExecutionResponse.transactionExecutionDetails. This amount must be valid according to what's available for the TransactionExecutionResponse.paymentSummary. If specified, the amount details (TransactionExecutionResponse.subtotal, TransactionExecutionResponse.adjustmentsTotal, TransactionExecutionResponse.fulfillmentTotal, & TransactionExecutionResponse.taxTotal) should sum together to equal this amount.
        • feesTotal
          javax.money.MonetaryAmount feesTotal
          The total fees related to the TransactionExecutionResponse.expectedTotalAmount
        • fulfillmentTotal
          javax.money.MonetaryAmount fulfillmentTotal
          The payment's total fulfillment cost.
        • includedTaxTotal
          javax.money.MonetaryAmount includedTaxTotal
          The amount of taxes that are included in the subtotal (VAT).
        • paymentSummary
          PaymentSummary paymentSummary
          The payment's updated PaymentSummary representation.

          This can be null if the payment is archived as a result of a failed transaction.

        • requestId
          String requestId
          The id representing the customer's request to execute one or more transactions.
        • subtotal
          javax.money.MonetaryAmount subtotal
          The payment's total usually excluding adjustments, tax, fees, and shipping.
        • taxTotal
          javax.money.MonetaryAmount taxTotal
          The payment's total tax cost.
        • transactionExecutionDetails
          List<TransactionExecutionDetail> transactionExecutionDetails
          A list of TransactionExecutionDetails describing the transactions executed.

          Typically there will only be multiple transactions being executed if there're multiple parent transactions being executed against. This scenario is very unlikely and not expected out of box for non-refund type transactions, however it is supported.

        • transactionType
          String transactionType
          The type of transactions that were executed.
          See Also:
    • Class com.broadleafcommerce.orderoperation.service.provider.external.domain.payment.UnlockPaymentRequest

      class UnlockPaymentRequest extends Object implements Serializable
      serialVersionUID:
      1L
      • Serialized Fields

        • lockTokens
          Collection<String> lockTokens
          List of tokens that can be used to release payment locks.
  • Package com.broadleafcommerce.orderoperation.web.endpoint.domain