Reply
Highlighted
Member
Posts: 1
Registered: ‎03-05-2021

Transaction File field refTransId setiting and retrieving

I need a little help please.

 

I need to pass information into the transaction on creation and retrieve that information when I download the transaction.

 

I am using the field refTransId to do this with. The problem is that I'm not getting the refTransId information back when I pull the transaction detail file.

 

This is the creation of the transaction where the refTransId is set in the orderType object:

 

            // standard api call to retrieve response
            var paymentType = new paymentType { Item = oBankAccount };

            string Reference = ContributorID.ToString() + "-EC-" + ECIDNo.ToString();
            orderType oOrderType = new orderType
            {
                invoiceNumber = ContributorID.ToString(),
                description = "Shrine Services Contribution",
                authorizedContactName = oBankAccount.nameOnAccount
            };

            var transactionRequest = new transactionRequestType
            {
                transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), 
                payment = paymentType,
                amount = SaleAmount,
                refTransId = Reference,
                order = oOrderType
            };

            var request = new createTransactionRequest { transactionRequest = transactionRequest };

            // instantiate the controller that will call the service
            var controller = new createTransactionController(request);
            controller.Execute();

This is the code for getting the information when retrieving the transaction detail:

var request = new getTransactionDetailsRequest();
            request.transId = TransactionID;

            // instantiate the controller that will call the service
            var controller = new getTransactionDetailsController(request);
            controller.Execute();

            // get the response from the service (errors contained if any)
            var response = controller.GetApiResponse();

            if (response != null && response.messages.resultCode == messageTypeEnum.Ok)
            {
                if (response.transaction == null)
                {
                    ErrorMessage = "No details returned";
                    return null;
                }

                oTranItem = new TransItem
                {
                    TransID = response.transaction.transId,
                    TransStatus = response.transaction.transactionStatus,
                    SettlementDate = response.transaction.submitTimeLocal,
                    TransAmount = response.transaction.authAmount,
                    TransSettle = response.transaction.settleAmount,
                    Invoice = response.transaction.order.invoiceNumber,
                    ReferanceID = response.transaction.refTransId
                };
            }
            else if (response != null)
            {
                ErrorMessage = "No details returned";
                return null;
            }
            return oTranItem;

Question:

1) Is there a way to be sure that the information is actually set on the creation of the transaction?

 

2) Why is the retrieval of the transaction detail empty?

 

 

Thanks for any help provided.

 

Mark