I'm setting up AuthorizeNetAPI, and I have it working just fine for my card not present account - my ecom site. I have another account that is card present - for my retail store, and I'm trying to implement a feature where someone can order a product from my ecom site, and that order would go to the retail store account.
I tried to simply change my credientials, and I get this error:
Transaction Failed Error Code : 87 Error Message : Transactions of this market type cannot be processed on this system.
I did some research, and believe I need to change the market type on my request - but I cannot figure out how this is done.
Anyone has some advice they could spare?
Thanks!
Solved! Go to Solution.
07-29-2017 07:26 AM
We developer POS systems. We have a system deployed in the field using Kiosk. We are using P2P encryption with IDTECH readers. We can perform transactions with no problems.
Recently, our customer attempted to perform a refund and receives: Error 87: Transactions of this market type cannot be processed on this system.
We use type 2 market (retail) and type 7 device (Wireless POS).
Here in our lab, we also have a Authorize.net company account and it works 100% with no problems, both transactions (as does our customer) and refunds (customer can not).
Looking at the possible issues for this type of error we see there are two configuration issues that can cause this but if it was a configuration issue with the processor, how are we able to perform the transaction but not a refund?
Please help.
09-09-2019 07:27 AM
Does anyone have an example of the XML message sending the <retail> attributes?
Many thanks
Nick
12-17-2019 09:41 AM
Hi ,
Yes, the API Reference Guide has this information available to you within the
Regards,
Elaine
01-02-2020 01:07 PM
The retail element contains two elements: marketType and deviceType. If you submit the retail element, the marketType and deviceType elements are required.
<customerIP>192.168.1.1</customerIP> <retail> <marketType>2</marketType> <deviceType>7</deviceType> </retail> <userFields>
marketType Value: One of the following:
0 for e-commerce
1 for moto
2 for retail
Notes: If your account type is Card Present, the default is 2 and
only 2 can be used. If your account type is blended, the default is
0, but x_market_type can be overridden.
deviceType Value: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
1 = Unknown
2 = Unattended Terminal
3 = Self Service Terminal
4 = Electronic Cash Register
5 = Personal Computer-Based Terminal
6 = AirPay
7 = Wireless POS
8 = Website
9 = Dial Terminal
10 = Virtual Terminal
01-02-2020 02:52 PM
Just after
$transactionRequestType->addToUserFields($merchantDefinedField2);
add this:
// Retail Market Type (Need for e-commerce website)
$retail = new AnetAPI\TransRetailInfoType();
//marketType - The market type for the transaction.
//Either 0 for e-commerce, 1 for MOTO, or 2 for retail. Defaults to 2.
$retail->setMarketType('0');
//deviceType - The type of device submitting the retail transaction.
//1-unknown device type; 2-unattended terminal; 3-self-service terminal; 4-electronic cash register; 5-personal computer based terminal; 7-wireless POS; 8-website; 9-dial terminal; 10-Virtual Terminal
$retail->setDeviceType('8');
$transactionRequestType->setRetail($retail);
08-13-2022 05:13 PM