# com.beasys.commerce.ebusiness.payment
PaymentWorkflow Class

public class PaymentWorkflow
extends `StateMachine`
implements `Workflow`

     ------------------------------------------------------
     These are the states provided by this StateMachine:
     ------------------------------------------------------

    [Authorized]

    [MarkedForSettle]

    [PendingPartialSettle]

    [PendingSettle]

    [Rejected]

    [SettleFailed]

    [Settled]

    [Retry]

    [Start]   Initial State

     ------------------------------------------------------
     These are the transitions provided by this StateMachine:
     ------------------------------------------------------

         authorize
     [Start]------------->[Authorized]

         failSettle
     [Authorized]------------->[Authorized]

         failSettle
     [MarkedForSettle]------------->[MarkedForSettle]

         markForSettle
     [Authorized]------------->[MarkedForSettle]

         partialSettle
     [Authorized]------------->[PendingPartialSettle]

         partialSettle
     [MarkedForSettle]------------->[PendingPartialSettle]

         pendingPartialSettle
     [PendingPartialSettle]------------->[PendingPartialSettle]

         pendingSettle
     [PendingSettle]------------->[PendingSettle]

         queryFail
     [PendingPartialSettle]------------->[SettleFailed]

         queryFail
     [PendingSettle]------------->[SettleFailed]

         querySuccess
     [PendingPartialSettle]------------->[Authorized]

         querySuccess
     [PendingSettle]------------->[Settled]

         reject
     [Start]------------->[Rejected]

         settle
     [Authorized]------------->[PendingSettle]

         settle
     [MarkedForSettle]------------->[PendingSettle]

         systemFailure
     [Start]------------->[Retry]

         failRetry
     [Retry]------------->[Retry]

         authorize
     [Retry]------------->[Authorized]

Related Topics

``Workflow``

Hierarchy
  `Object`
  `StateMachine`
  `PaymentWorkflow`

All Implemented Interfaces
  `BusinessSmartComponent`, `Serializable`, `Workflow`

## Field Summary

Fields from com.beasys.commerce.foundation`.`StateMachine``
``currentState`, `initialState`, `states`, `TRANSITION_KEY_TOKEN`, `transitions``

## Constructor Summary

PaymentWorkflow() Use WorkflowHome.create("com.beasys.commerce.ebusiness.payment.PaymentWorkflow") to instantiate the workflow.

## Method Summary

Methods from `com.beasys.commerce.foundation.`StateMachine``
``addTransition`, `doTransition`, `getContext`, `getCurrentStateName`, `getInitialStateName`, `getOutgoingTransitions`, `getStateNames`, `getTransitionNames`, `lookAheadTransition`, `reset`, `setContext``

Methods from class `java.lang.`Object``
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods from interface `com.beasys.commerce.foundation.`Workflow``
``doTransition`, `getContext`, `getCurrentStateName`, `getInitialStateName`, `getOutgoingTransitions`, `getStateNames`, `getTransitionNames`, `lookAheadTransition`, `reset`, `setContext``

## Constructor Detail

### PaymentWorkflow

    public PaymentWorkflow()

  Use WorkflowHome.create("com.beasys.commerce.ebusiness.payment.PaymentWorkflow") to instantiate the workflow.