-
Notifications
You must be signed in to change notification settings - Fork 122
Open
Labels
Description
Description
TerminalApiSyncService returns timeout error when Message contains SaleToAcquirerData object.
Steps to reproduce
static SaleToPOIRequest CreatePosPaymentRequest(decimal Amount, string TerminalId, string Reference, string MerchantReference)
{
var saleToPoiRequest = new SaleToPOIRequest
{
MessageHeader = new MessageHeader
{
MessageType = Adyen.Model.TerminalApi.MessageType.Request,
MessageClass = MessageClassType.Service,
MessageCategory = MessageCategoryType.Payment,
SaleID = Reference,
POIID = TerminalId,
ServiceID = DateTime.Now.ToString("ddHHmmss")
},
MessagePayload = new Adyen.Model.TerminalApi.PaymentRequest
{
SaleData = new SaleData
{
SaleTransactionID = new TransactionIdentification
{
TransactionID = MerchantReference,
TimeStamp = DateTime.Now
},
SaleToAcquirerData = new Adyen.Model.Terminal.SaleToAcquirerData()
{
AdditionalData = new Dictionary<string, string> { { "authorisationType", "PreAuth" }, { "manualCapture", "true" } }
},
CustomerOrderID = MerchantReference
},
PaymentTransaction = new PaymentTransaction
{
AmountsReq = new AmountsReq
{
Currency = "EUR",
RequestedAmount = Amount
}
}
},
SecurityTrailer = new ContentInformation()
};
return saleToPoiRequest;
} Actual behavior
No response
Expected behavior
For some reason if i add SaleToAcquirerData to message i always receive adyen's http client timeout error. It can be AdditionalData, i also tried setting AuthorisationType and not creating AdditionalData - result are the same.
If removed SaleToAcquirerData from message body - all works.
Code snippet or screenshots (if applicable)
static SaleToPOIRequest CreatePosPaymentRequest(decimal Amount, string TerminalId, string Reference, string MerchantReference)
{
var saleToPoiRequest = new SaleToPOIRequest
{
MessageHeader = new MessageHeader
{
MessageType = Adyen.Model.TerminalApi.MessageType.Request,
MessageClass = MessageClassType.Service,
MessageCategory = MessageCategoryType.Payment,
SaleID = Reference,
POIID = TerminalId,
ServiceID = DateTime.Now.ToString("ddHHmmss")
},
MessagePayload = new Adyen.Model.TerminalApi.PaymentRequest
{
SaleData = new SaleData
{
SaleTransactionID = new TransactionIdentification
{
TransactionID = MerchantReference,
TimeStamp = DateTime.Now
},
SaleToAcquirerData = new Adyen.Model.Terminal.SaleToAcquirerData()
{
AdditionalData = new Dictionary<string, string> { { "authorisationType", "PreAuth" }, { "manualCapture", "true" } }
},
CustomerOrderID = MerchantReference
},
PaymentTransaction = new PaymentTransaction
{
AmountsReq = new AmountsReq
{
Currency = "EUR",
RequestedAmount = Amount
}
}
},
SecurityTrailer = new ContentInformation()
};
return saleToPoiRequest;
}Adyen .NET API Library version
32.0
.NET version
.net 6
Operating System
Windows
Additional context
No response