private void ProcessPayment(Message message)
        {
            _logger.Log(LogLevel.Error, String.Format("Processing Payment"));

            String smsMessage = "";

            switch (message.MessageStatus)
            {
            case Domain.MessageStatus.Submitted:

                _logger.Log(LogLevel.Error, String.Format("Starting Payment Message Processor"));

                IMessageProcessor messageProcessor = new SocialPayments.Services.MessageProcessors.SubmittedPaymentMessageProcessor(_ctx);
                messageProcessor.Process(message);

                break;

            //remove associated transactions from batch and cancel transactions
            case Domain.MessageStatus.CancelPending:

                break;

            case Domain.MessageStatus.Cancelled:
                //terminal state
                break;

            case Domain.MessageStatus.Completed:
                //terminal state
                break;

            case Domain.MessageStatus.Failed:
                //terminal state

                break;

            case Domain.MessageStatus.Pending:
                //moves to Completed State by NACHA processor when NACHA file is created

                break;

            case Domain.MessageStatus.Refunded:
                //terminal state

                break;
            }
        }
        private void ProcessPayment(Message message)
        {
            _logger.Log(LogLevel.Error, String.Format("Processing Payment"));

            String smsMessage = "";
            switch (message.MessageStatus)
            {
                case Domain.MessageStatus.Submitted:

                    _logger.Log(LogLevel.Error, String.Format("Starting Payment Message Processor"));

                    IMessageProcessor messageProcessor = new SocialPayments.Services.MessageProcessors.SubmittedPaymentMessageProcessor(_ctx);
                    messageProcessor.Process(message);

                    break;

                //remove associated transactions from batch and cancel transactions
                case Domain.MessageStatus.CancelPending:

                    break;
                case Domain.MessageStatus.Cancelled:
                    //terminal state
                    break;

                case Domain.MessageStatus.Completed:
                    //terminal state
                    break;

                case Domain.MessageStatus.Failed:
                    //terminal state

                    break;
                case Domain.MessageStatus.Pending:
                    //moves to Completed State by NACHA processor when NACHA file is created

                    break;

                case Domain.MessageStatus.Refunded:
                    //terminal state

                    break;
            }
        }