Ошибка: Страна происхождения продавца-0100
Описание: это редактирование отслеживает торговцев, контролируемых государством, чтобы убедиться в правильности числового кода страны государственного учреждения, которое владеет или контролирует торговца. в подполе 4 (Страна происхождения продавца) в сообщении «Запрос на авторизацию/0100».
Рекомендуемое решение: каждая транзакция Mastercard, проводимая продавцом, который принадлежит как минимум пятидесяти процентам (50%) или контролируется (прямо, косвенно, законно или бенефициарно) правительством или государственным органом, страна происхождения продавца должна быть включена в каждый указанный тип сообщения о транзакции, независимо от того, находится ли в этой стране продавец, или транзакция
Покупатели/партнеры/независимые поставщики программного обеспечения/разработчики должны гарантировать, что код страны происхождения продавца включен в каждую транзакцию для продавцов со следующими кодами MCC, чтобы поддержать это требование.
Покупатели/партнеры/независимые поставщики программного обеспечения/разработчики должны гарантировать, что код страны происхождения продавца включен в каждую транзакцию для продавцов со следующими кодами MCC, чтобы поддержать это требование.
p>
Код 840 для продавцов, находящихся в США.
Mastercard идентифицирует транзакции для продавцов, контролируемых государством, по следующим бизнес-кодам акцептора (MCC):
Я я не уверен, является ли это проблемой внутри разработки или внутри самого шлюза.
Я использую auth.Net C# SDK из github (https://github.com/AuthorizeNet/sdk-dotnet)
Единственная ссылка, которую я могу найти для кода страны, находится в опции subMerchantType в C# SDK.
Поэтому я попробовал добавить это, но не уверен, что это так. это именно то, что мне нужно, поскольку у меня нет возможности проверить, работает это или нет.
Код: Выделить всё
var subMerchantType = new subMerchantType
{
identifier = "",
doingBusinessAs = "",
paymentServiceProviderName = "",
paymentServiceFacilitator = "",
streetAddress = "",
phone = "",
email = "",
postalCode = "",
city = "",
regionCode = "",
countryCode = "840",
};
var transactionRequest = new transactionRequestType
{
transactionType = transactionTypeEnum.authCaptureTransaction.ToString(),
amount = PaymentAmount,
payment = paymentType,
poNumber = PaymentID,
billTo = billingAddress,
order = order,
customer = customer,
transactionSettings = transSettings,
customerIP = System.Web.HttpContext.Current.Request.UserHostAddress,
processingOptions = processingOptions,
subMerchant = subMerchantType,
};
Пример кодирования:
Код: Выделить всё
var userField = new userField
{
name = "subfield4",
value = "840"
};
List userFields = new List();
userFields.Add(userField);
var transactionRequest = new transactionRequestType
{
transactionType = transactionTypeEnum.authCaptureTransaction.ToString(),
amount = PaymentAmount,
payment = paymentType,
poNumber = PaymentID,
billTo = billingAddress,
order = order,
customer = customer,
transactionSettings = transSettings,
customerIP = System.Web.HttpContext.Current.Request.UserHostAddress,
processingOptions = processingOptions,
userFields = userFields.ToArray()
};
Кто-нибудь еще сталкивался с этим, и если да, то как они это решили.
Любой пример кода на C# был бы чрезвычайно полезен.
Я пытался найти это в Google и не получили никаких результатов, кажется странным, что никто больше никогда не сталкивался с этой проблемой.
Подробнее здесь: https://stackoverflow.com/questions/793 ... -of-origin
Мобильная версия