Radial Integration | 2016
The Risk Assessment API receives environmental data about an order from the client. The API evaluates the data for fraudulent activity (either systematically or manually by the Radial fraud team) and sends the results to the client via an Advanced Message Queuing Protocol (AMQP) queue. A response code in the response message represents the action the client order management system (OMS) should take on the order (for example, cancel the order or proceed with order processing).
Action | URI Template | URI Example | Non-URI Request | Response |
---|---|---|---|---|
POST | /v[M.m]/stores/[StoreId]/ risk/ fraud/assess.[format] |
/v1.0/stores/ABCXYZ/risk/ fraud/assess.xml |
XML | 200 + XML response |
The request is a RiskAssessmentRequest message.
<?xml version="1.0" encoding="UTF-8"?>
<RiskAssessmentRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<Order>
<OrderId>123456789</OrderId>
<PromoCode>30OFF</PromoCode>
<OriginalOrderId>123789456</OriginalOrderId>
<WebOrderId>456789123</WebOrderId>
<ReferenceOrderId>789123456</ReferenceOrderId>
<OrderCategory>MODIFIED</OrderCategory>
<OrderModifiedBy>Tom Cruise</OrderModifiedBy>
<CustomerList>
<Customer>
<PersonName>
<LastName>LName</LastName>
<FirstName>FName</FirstName>
</PersonName>
<Telephone>
<Number>01-1231231234</Number>
<TelephoneLocation>Primary</TelephoneLocation>
</Telephone>
<Address AddressId="35899">
<Line1>935 First Ave</Line1>
<City>King of Prussia</City>
<MainDivision>PA</MainDivision>
<CountryName>UNITED STATES</CountryName>
<CountryCode>US</CountryCode>
<PostalCode>19406</PostalCode>
</Address>
<MemberLoggedIn>true</MemberLoggedIn>
<CurrencyCode>USD</CurrencyCode>
</Customer>
</CustomerList>
<ShippingList>
<Shipment AddressId="35899" ShipmentId="36987_35899">
<CostTotals>
<AmountBeforeTax currencyCode="USD">10.95</AmountBeforeTax>
<AmountAfterTax currencyCode="USD">11.85</AmountAfterTax>
</CostTotals>
<ShippingMethod>Standard shipping</ShippingMethod>
</Shipment>
</ShippingList>
<LineItems>
<LineItem LineItemId="102561" ShipmentId="36987_35899">
<LineTotalAmount currencyCode="USD">156.96</LineTotalAmount>
<UnitCostAmount currencyCode="USD">156.96</UnitCostAmount>
<Quantity>1</Quantity>
<ProductName>Product Name</ProductName>
<ProductDescription>Product Description</ProductDescription>
<ItemId>197791061</ItemId>
</LineItem>
</LineItems>
<ShoppingSession>
<TimeOnSite>564.0</TimeOnSite>
<ItemsRemoved>false</ItemsRemoved>
</ShoppingSession>
<TotalCost>
<FormOfPayment>
<PaymentCard>
<CardHolderName>FName LName</CardHolderName>
<PaymentAccountUniqueId isToken="true">4111110PASeK1111</PaymentAccountUniqueId>
<ExpireDate>2019-12</ExpireDate>
<OrderAppId>eb2c-DSPUS-NA-LVS</OrderAppId>
<PaymentSessionId>1001890008701765</PaymentSessionId>
<GatewayKey>100189000</GatewayKey>
<CardType>VIS A</CardType>
</PaymentCard>
<Authorization>
<Decline>false</Decline>
<Code>7777</Code>
</Authorization>
<Email>email@address.com</Email>
<PersonName>
<LastName>LName</LastName>
<FirstName>FName</FirstName>
</PersonName>
<Address AddressId="45898">
<Line1>935 First Ave</Line1>
<City>King of Prussia</City>
<MainDivision>PA</MainDivision>
<CountryName>UNITED STATES</CountryName>
<CountryCode>US</CountryCode>
<PostalCode>19406</PostalCode>
</Address>
<Telephone>
<Number>01-1231231234</Number>
<TelephoneLocation>Primary</TelephoneLocation>
</Telephone>
<TransactionResponses>
<TransactionResponse ResponseType="avs">M</TransactionResponse>
<TransactionResponse ResponseType="csc">M</TransactionResponse>
</TransactionResponses>
<PaymentTransactionDate>2015-07-31T19:26:17Z</PaymentTransactionDate>
<PaymentTransactionTypeCode>VC</PaymentTransactionTypeCode>
<PaymentTransactionID>22340</PaymentTransactionID>
<ItemListRPH>102561</ItemListRPH>
<Amount currencyCode="USD">168.82</Amount>
<AccountID isToken="true">4111110PASeK1111</AccountID>
<TenderClass>CreditCard</TenderClass>
</FormOfPayment>
<CostTotals>
<AmountBeforeTax currencyCode="USD">155.95</AmountBeforeTax>
<AmountAfterTax currencyCode="USD">168.81</AmountAfterTax>
</CostTotals>
<FailedCc Number="0"/>
</TotalCost>
</Order>
<ServerInfo>
<Time>2015-07-31T19:26:17Z</Time>
<TZOffset>0</TZOffset>
<DSTActive>true</DSTActive>
</ServerInfo>
<DeviceInfo>
<JSCData>TF1;015;;;;;;;;;;;;;;;;;;;;;;Mozilla;Netscape;5.0%20%28Macintosh
%3B%20U%3B%20Intel%20Mac%20OS%20X%2010_6_8%3B%20en-us%29%20AppleWebKit/
533.21.1%20%28KHTML%2C%20like%20Gecko%29%20Version/5.0.5%20Safari/533.2
1.1;20030107;undefined;true;;true;MacIntel;undefined;Mozilla/5.0%20%28M
acintosh%3B%20U%3B%20Intel%20Mac%20OS%20X%2010_6_8%3B%20en-us%29%20Appl
eWebKit/533.21.1%20%28KHTML%2C%20like%20Gecko%29%20Version/5.0.5%20Safa
ri/533.21.1;en-us;iso-8859-1;www.tous.com;undefined;undefined;undefined
;undefined;true;true;1438370774283;-6;June%207%2C%202005%209%3A33%3A44%
20PM%20CDT;1280;800;10.1.8;18.0;7.6.6;;;;1;360;300;July%2031%2C%202015%
202%3A26%3A14%20PM%20CDT;24;1280;726;0;22;Adobe%20Acrobat%20Plug-in%2C%
20Version%2010.1.8%7CAdobe%AE%20Acrobat%AE%20Plug-in%20for%20Web%20Brow
sers%2C%20Version%2010.1.8;;;;;Shockwave%20Flash%7CShockwave%20Flash%20
18.0%20r0;;;;QuickTime%20Plug-in%207.6.6%7CThe%20QuickTime%20Plugin%20a
llows%20you%20to%20view%20a%20wide%20variety%20of%20multimedia%20conten
t%20in%20web%20pages.%20For%20more%20information%2C%20visit%20the%20%3C
A%20HREF%3Dhttp%3A//www.apple.com/quicktime%3EQuickTime%3C/A%3E%20Web%2
0site.;;;;;Silverlight%20Plug-In%7C5.1.10411.0;;;;13;</JSCData>
<SessionID>kalcklq45n9b8qr5anbt0sair0</SessionID>
<DeviceIP>24.27.62.132</DeviceIP>
<DeviceHostname>www.store.com</DeviceHostname>
<HttpHeaders>
<HttpHeader name="host">www.store.com</HttpHeader>
<HttpHeader name="origin">https://www.store.com</HttpHeader>
<HttpHeader name="x-prototype-version">1.7</HttpHeader>
<HttpHeader name="x-requested-with">XMLHttpRequest</HttpHeader>
<HttpHeader name="user-agent">Mozilla/5.0 (Macintosh; U; Intel Mac OS X
10_6_8; en-us) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5
Safari/533.21.1</HttpHeader>
<HttpHeader name="accept">text/javascript, text/html, application/xml,
text/xml, */*</HttpHeader>
<HttpHeader name="referer">https://www.store.com/us-en/checkout/progress
/payment/</HttpHeader>
<HttpHeader name="accept-language">en-us</HttpHeader>
<HttpHeader name="accept-encoding">gzip, deflate</HttpHeader>
<HttpHeader name="cookie">tous=language%3Den%7Cavailable%3Den%3Aes%7Ccou
ntry%3Dus%7Cshopping_cart%3D1%7Ccustomer%3D0; frontend=kalcklq45n9b8qr
5anbt0sair0; CART=719652d5345615bef3f42f9ecaa92b9e; MAGE_RUN_CODE=us-e
n; Track_cookie=https://e.tous.com/a/r2095153972/tous.gif?id=0.6822404
426056892&amount=145.00&items=197791061@1@145.00|; NREUM=s=143
8370477995&r=139623&p=146375; VIEWED_PRODUCT_IDS=4295%2C100; L
AST_CATEGORY=65; CATEGORY_INFO=%5B%5D; CACHED_FRONT_FORM_KEY=LKddXVm1n
j9FflYj; _ga=GA1.2.1156099020.1438370225; __utmz=242238855.1438370225.
1.1.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=tous%20l'eau%
20de%20parfum; __utmc=242238855; __utmb=242238855.9.10.1438370225; __u
tma=242238855.1156099020.1438370225.1438370225.1438370225.1; _dc_gtm_U
A-42228273-1=1; __utmt_UA-23211157-1=1</HttpHeader>
<HttpHeader name="x-forwarded-proto">https</HttpHeader>
<HttpHeader name="x-forwarded-for">24.27.62.132</HttpHeader>
<HttpHeader name="content-type">application/x-www-form-urlencoded; chars
et=UTF-8</HttpHeader>
</HttpHeaders>
</DeviceInfo>
</RiskAssessmentRequest>
<?xml version="1.0" encoding="UTF-8"?>
<RiskAssessmentRequest xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<Order>
<OrderId>12345</OrderId>
<PromoCode>30OFF</PromoCode>
<OriginalOrderId>123789456</OriginalOrderId>
<WebOrderId>456789123</WebOrderId>
<ReferenceOrderId>789123456</ReferenceOrderId>
<OrderCategory>MODIFIED</OrderCategory>
<OrderModifiedBy>Tom Cruise</OrderModifiedBy>
<CustomerList>
<Customer>
<PersonName>
<LastName>LName</LastName>
<FirstName>FName</FirstName>
</PersonName>
<Telephone>
<Number>01-1231231234</Number>
<TelephoneLocation>Primary</TelephoneLocation>
</Telephone>
<Address AddressId="35899">
<Line1>935 First Ave</Line1>
<City>King of Prussia</City>
<MainDivision>PA</MainDivision>
<CountryName>UNITED STATES</CountryName>
<CountryCode>US</CountryCode>
<PostalCode>19406</PostalCode>
</Address>
<MemberLoggedIn>true</MemberLoggedIn>
<CurrencyCode>USD</CurrencyCode>
</Customer>
</CustomerList>
<ShippingList>
<Shipment AddressId="35899" ShipmentId="36987_35899">
<CostTotals>
<AmountBeforeTax currencyCode="USD">10.95</AmountBeforeTax>
<AmountAfterTax currencyCode="USD">11.85</AmountAfterTax>
</CostTotals>
<ShippingMethod>Standard shipping</ShippingMethod>
</Shipment>
</ShippingList>
<LineItems>
<LineItem LineItemId="102561" ShipmentId="36987_35899">
<LineTotalAmount currencyCode="USD">156.96</LineTotalAmount>
<UnitCostAmount currencyCode="USD">156.96</UnitCostAmount>
<Quantity>1</Quantity>
<ProductName>Product Name</ProductName>
<ProductDescription>Product Description</ProductDescription>
<ItemId>197791061</ItemId>
</LineItem>
</LineItems>
<ShoppingSession>
<TimeOnSite>564.0</TimeOnSite>
<ItemsRemoved>false</ItemsRemoved>
</ShoppingSession>
<TotalCost>
<FormOfPayment>
<PaymentCard>
<CardHolderName>FName LName</CardHolderName>
<PaymentAccountUniqueId isToken="false">C8MP6PXXXXXX4</PaymentAccountUniqueId>
<OrderAppId>eb2c-DSPUS-NA-LVS</OrderAppId>
<PaymentSessionId>1001890008701765</PaymentSessionId>
<GatewayKey>100189000</GatewayKey>
<CardType>PAYPAL</CardType>
</PaymentCard>
<Email>email@address.com</Email>
<PersonName>
<LastName>LName</LastName>
<FirstName>FName</FirstName>
</PersonName>
<Address AddressId="45898">
<Line1>935 First Ave</Line1>
<City>King of Prussia</City>
<MainDivision>PA</MainDivision>
<CountryName>UNITED STATES</CountryName>
<CountryCode>US</CountryCode>
<PostalCode>19406</PostalCode>
</Address>
<Telephone>
<Number>01-1231231234</Number>
<TelephoneLocation>Primary</TelephoneLocation>
</Telephone>
<TransactionResponses>
<TransactionResponse ResponseType="PayPalPayer">unverified</TransactionResponse>
<TransactionResponse ResponseType="PayPalAddress">Confirmed</TransactionResponse>
</TransactionResponses>
<PaymentTransactionDate>2015-07-31T19:26:17Z</PaymentTransactionDate>
<PaymentTransactionTypeCode>PY</PaymentTransactionTypeCode>
<PaymentTransactionID>22340</PaymentTransactionID>
<ItemListRPH>102561</ItemListRPH>
<Amount currencyCode="USD">168.82</Amount>
<AccountID isToken="false">C8MP6PXXXXXX4</AccountID>
<TenderClass>Other</TenderClass>
</FormOfPayment>
<CostTotals>
<AmountBeforeTax currencyCode="USD">155.95</AmountBeforeTax>
<AmountAfterTax currencyCode="USD">168.81</AmountAfterTax>
</CostTotals>
<FailedCc Number="0"/>
</TotalCost>
</Order>
<ServerInfo>
<Time>2015-07-31T19:26:17Z</Time>
<TZOffset>0</TZOffset>
<DSTActive>true</DSTActive>
</ServerInfo>
<DeviceInfo>
<JSCData>TF1;015;;;;;;;;;;;;;;;;;;;;;;Mozilla;Netscape;5.0%20%28Macintosh
%3B%20U%3B%20Intel%20Mac%20OS%20X%2010_6_8%3B%20en-us%29%20AppleWebKit/
533.21.1%20%28KHTML%2C%20like%20Gecko%29%20Version/5.0.5%20Safari/533.2
1.1;20030107;undefined;true;;true;MacIntel;undefined;Mozilla/5.0%20%28M
acintosh%3B%20U%3B%20Intel%20Mac%20OS%20X%2010_6_8%3B%20en-us%29%20Appl
eWebKit/533.21.1%20%28KHTML%2C%20like%20Gecko%29%20Version/5.0.5%20Safa
ri/533.21.1;en-us;iso-8859-1;www.tous.com;undefined;undefined;undefined
;undefined;true;true;1438370774283;-6;June%207%2C%202005%209%3A33%3A44%
20PM%20CDT;1280;800;10.1.8;18.0;7.6.6;;;;1;360;300;July%2031%2C%202015%
202%3A26%3A14%20PM%20CDT;24;1280;726;0;22;Adobe%20Acrobat%20Plug-in%2C%
20Version%2010.1.8%7CAdobe%AE%20Acrobat%AE%20Plug-in%20for%20Web%20Brow
sers%2C%20Version%2010.1.8;;;;;Shockwave%20Flash%7CShockwave%20Flash%20
18.0%20r0;;;;QuickTime%20Plug-in%207.6.6%7CThe%20QuickTime%20Plugin%20a
llows%20you%20to%20view%20a%20wide%20variety%20of%20multimedia%20conten
t%20in%20web%20pages.%20For%20more%20information%2C%20visit%20the%20%3C
A%20HREF%3Dhttp%3A//www.apple.com/quicktime%3EQuickTime%3C/A%3E%20Web%2
0site.;;;;;Silverlight%20Plug-In%7C5.1.10411.0;;;;13;</JSCData>
<SessionID>kalcklq45n9b8qr5anbt0sair0</SessionID>
<DeviceIP>24.27.62.132</DeviceIP>
<DeviceHostname>www.store.com</DeviceHostname>
<HttpHeaders>
<HttpHeader name="host">www.store.com</HttpHeader>
<HttpHeader name="origin">https://www.store.com</HttpHeader>
<HttpHeader name="x-prototype-version">1.7</HttpHeader>
<HttpHeader name="x-requested-with">XMLHttpRequest</HttpHeader>
<HttpHeader name="user-agent">Mozilla/5.0 (Macintosh; U; Intel Mac OS X
10_6_8; en-us) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5
Safari/533.21.1</HttpHeader>
<HttpHeader name="accept">text/javascript, text/html, application/xml,
text/xml, */*</HttpHeader>
<HttpHeader name="referer">https://www.store.com/us-en/checkout/progress
/payment/</HttpHeader>
<HttpHeader name="accept-language">en-us</HttpHeader>
<HttpHeader name="accept-encoding">gzip, deflate</HttpHeader>
<HttpHeader name="cookie">tous=language%3Den%7Cavailable%3Den%3Aes%7Ccou
ntry%3Dus%7Cshopping_cart%3D1%7Ccustomer%3D0; frontend=kalcklq45n9b8qr
5anbt0sair0; CART=719652d5345615bef3f42f9ecaa92b9e; MAGE_RUN_CODE=us-e
n; Track_cookie=https://e.tous.com/a/r2095153972/tous.gif?id=0.6822404
426056892&amount=145.00&items=197791061@1@145.00|; NREUM=s=143
8370477995&r=139623&p=146375; VIEWED_PRODUCT_IDS=4295%2C100; L
AST_CATEGORY=65; CATEGORY_INFO=%5B%5D; CACHED_FRONT_FORM_KEY=LKddXVm1n
j9FflYj; _ga=GA1.2.1156099020.1438370225; __utmz=242238855.1438370225.
1.1.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=tous%20l'eau%
20de%20parfum; __utmc=242238855; __utmb=242238855.9.10.1438370225; __u
tma=242238855.1156099020.1438370225.1438370225.1438370225.1; _dc_gtm_U
A-42228273-1=1; __utmt_UA-23211157-1=1</HttpHeader>
<HttpHeader name="x-forwarded-proto">https</HttpHeader>
<HttpHeader name="x-forwarded-for">24.27.62.132</HttpHeader>
<HttpHeader name="content-type">application/x-www-form-urlencoded; chars
et=UTF-8</HttpHeader>
</HttpHeaders>
</DeviceInfo>
/RiskAssessmentRequest>
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
Order | Yes | Sequence of OrderId, PromoCode, CustomerList, ShippingList, LineItems, ExternalRiskResults, ShoppingSession, TotalCost | ComplexType | |
Order/OrderId | Yes | Order ID | String | At least 1 character, Max 20 characters |
Order/PromoCode | No | Code used to indicate reduced cost based on a promotional offer. Can be a comma delimited list of promo codes. | String | |
Order/OriginalOrderId | No | Original Order number/ID. This field must be valued when the order has been modified and the Order/OrderId is order ID of modified order. | String | At least 1 character, Max 20 characters |
Order/WebOrderId | No | Web Order number/ID known to customer when the order is placed, if it is different from Order/OrderId field | String | At least 1 character, Max 20 characters |
Order/ReferenceOrderId | No | Reference Order number/ID. This field is for future use, for a reference order ID related to Order/OrderId field. | String | At least 1 character, Max 20 characters |
Order/OrderCategory | No | String to explain what kind of order it is. If the order is modified, it should have a value of MODIFIED. | String | At least 1 character |
Order/OrderModifiedBy | No | The name or ID of the person who modified the order. It could be the customer, customer service agent, or someone else. | String | At least 1 character, Max 256 characters |
Order/CustomerList | Yes | Sequence of Customer | ComplexType | |
Order/CustomerList/Customer | No, unbounded repetitions | Sequence of PersonName, Email, Telephone, Address, MemberLoggedIn, CustLoyalty, CurrencyCode | ComplexType | |
Order/CustomerList/Customer/ PersonName |
No | Customer's name. Sequence of Honorific, LastName, MiddleName, FirstName, Suffix | ComplexType | |
Order/CustomerList/Customer/ PersonName/Honorific |
No | Person's title (for example, Dr., Mr., Ms.) | String | |
Order/CustomerList/Customer/ PersonName/LastName |
Yes | Person's last name | String | Max 50 characters |
Order/CustomerList/Customer/ PersonName/MiddleName |
No | Person's middle name | String | Max 10 characters |
Order/CustomerList/Customer/ PersonName/FirstName |
Yes | Person's first name | String | Max 50 characters |
Order/CustomerList/Customer/ PersonName/Suffix |
No | Person's name suffix (for example, Jr.) | String | Max 20 characters |
Order/CustomerList/Customer/ |
No, unbounded repetitions | Customer's email address | String | At least 1 character, Max 256 characters |
Order/CustomerList/Customer/ Telephone |
No, unbounded repetitions | Sequence of Number, TelephoneLocation | ComplexType | |
Order/CustomerList/Customer/ Telephone/Number |
Yes | Customer's telephone number. Formats like (480) 555-1212, 4805551212, and 01-4805551212 are accepted, with the last example being preferred. | String | At least 1 character |
Order/CustomerList/Customer/ Telephone/TelephoneLocation |
No | Customer's telephone location | String | Primary
Home Work Mobile Fax |
Order/CustomerList/Customer/ Address |
No, unbounded repetitions | Customer's address. Sequence of Line1, Line2, Line3, Line4, BuildingName, PoBox, City, MainDivision, CountryName, CountryCode, PostalCode | ComplexType | |
Order/CustomerList/Customer/ Address/@AddressId |
Yes | Unique address ID. This ID may be required in the shipping section to match shipments with addresses. | String | Attribute element; at least 1 character |
Order/CustomerList/Customer/ Address/Line1 |
Yes | Address line 1 | String | Max 100 characters |
Order/CustomerList/Customer/ Address/Line2 |
No | Address line 2 | String | Max 100 characters |
Order/CustomerList/Customer/ Address/Line3 |
No | Address line 3 | String | Max 100 characters |
Order/CustomerList/Customer/ Address/Line4 |
No | Address line 4 | String | Max 100 characters |
Order/CustomerList/Customer/ Address/BuildingName |
No | Building name. Normally should be provided in an address line. | String | |
Order/CustomerList/Customer/ Address/PoBox |
No | PO box number. Normally should be provided in an address line. | String | |
Order/CustomerList/Customer/ Address/City |
Yes | City | String | |
Order/CustomerList/Customer/ Address/MainDivision |
No | Main division, state, or province code | String | At least 1 character |
Order/CustomerList/Customer/ Address/CountryName |
No | Country name | String | |
Order/CustomerList/Customer/ Address/CountryCode |
Yes | Country code | String | |
Order/CustomerList/Customer/ Address/PostalCode |
No | Postal code | String | At least 1 character |
Order/CustomerList/Customer/ MemberLoggedIn |
Yes | Flag that indicates whether the customer was logged when the order was placed. Can only be set to true for one Customer element in CustomerList. | Boolean | true or false |
Order/CustomerList/Customer/ CustLoyalty |
No | Sequence of TotalPoints, Status, SignupDate, Remark, ProgramID, MembershipID, UserId, LoyalLevel, ExpireDate, EffectiveDate, CurrentPoints, VendorCode, ClubStatus, MemberLoggedIn, LastLogin, UserTenure, UserPassword, FailedLoginAttempts | ComplexType | |
Order/CustomerList/Customer/ CustLoyalty/TotalPoints |
No | Lifetime points earned in the customer loyalty program | Long | |
Order/CustomerList/Customer/ CustLoyalty/Status |
No | Status of the customer loyalty account(for example, Active) | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/SignupDate |
No | Enrollment date in the customer loyalty program | Date | |
Order/CustomerList/Customer/ CustLoyalty/Remark |
No | Remarks for the customer loyalty program | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/ProgramID |
No | Name of the customer loyalty program | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/MembershipID |
Yes | Membership ID in the customer loyalty program | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/UserId |
No | Customer's login user name for the customer loyalty program | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/LoyalLevel |
No | Code that indicates elite status in customer loyalty program | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/ExpireDate |
No | Date when the customer loyalty program for this customer will be deactivated | Date | |
Order/CustomerList/Customer/ CustLoyalty/EffectiveDate |
No | Date when the customer loyalty program for this customer was initiated | Date | |
Order/CustomerList/Customer/ CustLoyalty/CurrentPoints |
No | Current points balance in the customer loyalty account | Long | |
Order/CustomerList/Customer/ CustLoyalty/VendorCode |
No | Provider of the customer loyalty program | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/ClubStatus |
No | Club status in the customer loyalty program | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/MemberLoggedIn |
Yes | Flag that indicates whether the customer was logged in during the transaction. Can only be set to true for one Customer element in CustomerList. | Boolean | true or false |
Order/CustomerList/Customer/ CustLoyalty/LastLogin |
No | Date of the customer's last login | DateTime | |
Order/CustomerList/Customer/ CustLoyalty/UserTenure |
No | Number of days the customer has had a customer loyalty account | Float | |
Order/CustomerList/Customer/ CustLoyalty/UserPassword |
No | Customer's encrypted password | String | At least 1 character |
Order/CustomerList/Customer/ CustLoyalty/FailedLoginAttempts |
No | Number of failed login attempts for this customer loyalty account | Integer | |
Order/CustomerList/Customer/ CurrencyCode |
Yes | Type of currency used for the customer | String | 3-character ISO 4217 code (for example, USD, CAD, EUR). See
http://en.wikipedia.org/ wiki/ISO_4217. |
Order/ShippingList | No | Sequence of Shipment | ComplexType | |
Order/ShippingList/Shipment | No, unbounded repetitions | Sequence of CostTotals, ShippingMethod | ComplexType | |
Order/ShippingList/Shipment/ @AddressId |
Yes | ID of an address in CustomerList/Customer/Address | String | At least 1 character |
Order/ShippingList/Shipment/ @ShipmentId |
Yes | Unique ID for the shipment | String | At least 1 character |
Order/ShippingList/Shipment/ CostTotals |
No | Sequence of AmountBeforeTax, AmountAfterTax | ComplexType | |
Order/ShippingList/Shipment/ CostTotals/AmountBeforeTax |
No | Cost of the shipment before tax | Decimal | Minimum of 0, 2 decimal places |
Order/ShippingList/Shipment/ CostTotals/AmountBeforeTax/ @CurrencyCode |
Yes | Type of currency used for the before-tax cost | String | 3-character ISO 4217 code (for example, USD, CAD, EUR). See
http://en.wikipedia.org/ wiki/ISO_4217. |
Order/ShippingList/Shipment/ CostTotals/AmountAfterTax |
Yes | Cost of the shipment after tax | Decimal | Minimum of 0, 2 decimal places |
Order/ShippingList/Shipment/ CostTotals/AmountAfterTax/ @CurrencyCode |
Yes | Type of currency used for the after-tax cost | String | Attribute element; 3-character ISO 4217 code (for example, USD, CAD, EUR). See
http://en.wikipedia.org/ wiki/ISO_4217. |
Order/ShippingList/Shipment/ ShippingMethod |
Yes | Shipment method for the order | String | At least 1 character |
Order/LineItems | No | Sequence of LineItem | ComplexType | |
Order/LineItems/LineItem | No, unbounded repetitions | Sequence of LineTotalAmount, UnitCostAmount, Quantity, ProductName, ProductDescription, UnitWeight, ProductCategory, PromoCode, ItemId | ComplexType | |
Order/LineItems/LineItem/ @LineItemId |
Yes | Unique ID for a line item | String | Attribute element; max 20 characters |
Order/LineItems/LineItem/ @ShipmentId |
Yes | Shipment ID from one of the shipment elements in Order/ShippingList | String | Attribute element; at least 1 character |
Order/LineItems/LineItem/ LineTotalAmount |
Yes | Total cost of the line item | Decimal | Minimum of 0, 2 decimal places |
Order/LineItems/LineItem/ LineTotalAmount/ @CurrencyCode |
Yes | Type of currency used for the total cost | String | Attribute element; 3-character ISO 4217 code (for example, USD, CAD, EUR). See
http://en.wikipedia.org/ wiki/ISO_4217. |
Order/LineItems/LineItem/ UnitCostAmount |
No | Unit cost of the line item | Decimal | Minimum of 0, 2 decimal places |
Order/LineItems/LineItem/ UnitCostAmount/ @CurrencyCode |
Yes | Type of currency used for the unit cost | String | Attribute element; 3-character ISO 4217 code (for example, USD, CAD, EUR). See
http://en.wikipedia.org/ wiki/ISO_4217. |
Order/LineItems/LineItem/ Quantity |
Yes | Number of units ordered | Int | |
Order/LineItems/LineItem/ ProductName |
No | Product name | String | At least 1 character |
Order/LineItems/LineItem/ ProductDescription |
No | Product description | String | At least 1 character |
Order/LineItems/LineItem/ UnitWeight |
No | Unit weight of the line item | Float | |
Order/LineItems/LineItem/ UnitWeight/@unit |
No | Weight unit | String |
Attribute element: pound
|
Order/LineItems/LineItem/ ProductCategory |
No | Class of product to which the line item belongs | String | At least 1 character |
Order/LineItems/LineItem/ PromoCode |
No | Code that indicates whether the purchase was related to a promotional campaign | String | At least 1 character |
Order/LineItems/LineItem/ ItemId |
No | Unique identifier for a distinct product | String | Max 20 characters |
Order/ExternalRiskResults | No | Sequence of ExternalRiskResult | ComplexType | |
Order/ExternalRiskResults/ ExternalRiskResult |
No, unbounded repetitions | Sequence of Score, Code, Source | ComplexType | |
Order/ExternalRiskResults/ ExternalRiskResult/Score |
No | External risk score | Decimal | |
Order/ExternalRiskResults/ ExternalRiskResult/Code |
No | External risk code | String | At least 1 character |
Order/ExternalRiskResults/ ExternalRiskResult/Source |
No | Source of the external risk code and/or score | String | At least 1 character |
Order/ShoppingSession | No | Sequence of TimeOnSite, ReturnCustomer, ItemsRemoved | ComplexType | |
Order/ShoppingSession/ TimeOnSite |
No | Total shopping time in minutes | Double | |
Order/ShoppingSession/ ReturnCustomer |
No | Flag that indicates whether the shopper is a return customer | Boolean | true or false |
Order/ShoppingSession/ ItemsRemoved |
No | Flag that indicates whether items were added to the order/cart and then subsequently removed | Boolean | true or false |
Order/TotalCost | No | Sequence of FormOfPayment, CostTotals, FailedCc | Boolean | true or false |
Order/TotalCost/ FormOfPayment |
Yes, unbounded repetitions | Sequence of PaymentCard, Authorization, Email, PersonName, Address, Telephone, TransactionResponses, PaymentTransactionDate, PaymentTransactionTypeCode, PaymentTransactionID, ItemListRPH, Amount, AccountID, TenderClass | ComplexType | |
Order/TotalCost/ FormOfPayment/ PaymentCard |
No | Sequence of CardHolderName, PaymentAccountUniqueId, ExpireDate, CardType | ComplexType | |
Order/TotalCost/ FormOfPayment/ PaymentCard/ CardHolderName |
Yes | Name of the credit card holder as it appears on the credit card | String | Max 100 characters |
Order/TotalCost/ FormOfPayment/ PaymentCard/ PaymentAccountUniqueId/ @isToken |
Yes | Flag that indicates whether PaymentAccountUniqueId is a token or an actual account number. Tokens should be passed in this request, except for PayPal. | Boolean | Attribute element: true or false |
Order/TotalCost/ FormOfPayment/ PaymentCard/ PaymentAccountUniqueId |
Yes | Credit card account number | String | Max 22 characters |
Order/TotalCost/ FormOfPayment/ PaymentCard/ExpireDate |
No | Credit card expiration date | GYearMonth | |
Order/TotalCost/ FormOfPayment/ PaymentCard/OrderAppId |
No | OrderAppId received from the payments auth response, should be passed on here. | String | At least 1 character, Max 40 characters |
Order/TotalCost/ FormOfPayment/ PaymentCard/PaymentSessionId |
No | PaymentSessionId received from the payments auth response, if not, pass Order/OrderId in this field. | String | At least 1 character, Max 40 characters |
Order/TotalCost/ FormOfPayment/ PaymentCard/GatewayKey |
No | This should be the same gateway key generated by payment service when the initial auth call happened when placing order. This identifier typically ties payment transactions to an order. | String | At least 1 character, Max 40 characters |
Order/TotalCost/ FormOfPayment/ PaymentCard/CardType |
No | Type of card used for payment(for example, Visa, American Express, Diners Club, MasterCard, any private label) | String | At least 1 character |
Order/TotalCost/ FormOfPayment/ Authorization |
No | Sequence of Decline, Code | ComplexType | |
Order/TotalCost/ FormOfPayment/ Authorization/Decline |
Yes | Flag that indicates whether this was a declined credit card authorization | Boolean | true or false |
Order/TotalCost/ FormOfPayment/ Authorization/Code |
No | Authorization code for the credit card transaction | String | At least 1 character |
Order/TotalCost/ FormOfPayment/Email |
No, unbounded repetitions | Email address associated with the form of payment | String | At least 1 character, Max 256 characters |
Order/TotalCost/ FormOfPayment/ PersonName |
No | Name associated with the form of payment. Sequence of Honorific, LastName, MiddleName, FirstName, Suffix | ComplexType | |
Order/TotalCost/ FormOfPayment/ PersonName/Honorific |
No | Person's title (for example, Dr., Mr., Ms.) | String | |
Order/TotalCost/ FormOfPayment/ PersonName/LastName |
Yes | Person's last name | String | Max 50 characters |
Order/TotalCost/ FormOfPayment/ PersonName/MiddleName |
No | Person's middle name | String | Max 10 characters |
Order/TotalCost/ FormOfPayment/ PersonName/FirstName |
Yes | Person's first name | String | Max 50 characters |
Order/TotalCost/ FormOfPayment/ PersonName/Suffix |
No | Person's name suffix (for example, Jr.) | String | Max 20 characters |
Order/TotalCost/ FormOfPayment/Address |
No, unbounded repetitions | Billing address associated with the form of payment. Sequence of Line1, Line2, Line3, Line4, BuildingName, PoBox, City, MainDivision, CountryName, CountryCode, PostalCode | ComplexType | |
Order/TotalCost/ FormOfPayment/Address/ @AddressId |
Yes | Unique address identifier | String | Attribute element; at least 1 character |
Order/TotalCost/ FormOfPayment/Address/ Line1 |
Yes | Address line 1 | String | Max 100 characters |
Order/TotalCost/ FormOfPayment/Address/ Line2 |
No | Address line 2 | String | Max 100 characters |
Order/TotalCost/ FormOfPayment/ Address/Line3 |
No | Address line 3 | String | Max 100 characters |
Order/TotalCost/ FormOfPayment/ Address/Line4 |
No | Address line 4 | String | Max 100 characters |
Order/TotalCost/ FormOfPayment/ Address/BuildingName |
No | Building name. Normally should be provided in an address line. | String | |
Order/TotalCost/ FormOfPayment/ Address/PoBox |
No | PO box number. Normally should be provided in an address line. | String | |
Order/TotalCost/ FormOfPayment/ Address/City |
Yes | City | String | |
Order/TotalCost/ FormOfPayment/ Address/MainDivision |
No | Main division, state, or province code | String | At least 1 character |
Order/TotalCost/ FormOfPayment/ Address/CountryName |
No | Country name | String | |
Order/TotalCost/ FormOfPayment/ Address/CountryCode |
Yes | Country code | String | |
Order/TotalCost/ FormOfPayment/ Address/PostalCode |
No | PostalCode | String | At least 1 character |
Order/TotalCost/ FormOfPayment/ Telephone |
No, unbounded repetitions | Sequence of Number, TelephoneLocation | ComplexType | |
Order/TotalCost/ FormOfPayment/ Telephone/Number |
Yes | Telephone number. Formats like (480) 555-1212, 4805551212, and 01-4805551212 are all accepted, with the last example being preferred. | String | At least 1 character |
Order/TotalCost/ FormOfPayment/ Telephone/TelephoneLocation |
No | Telephone location | String | Primary
Home Work Mobile Fax |
Order/TotalCost/ FormOfPayment/ TransactionResponses |
No | Sequence of TransactionResponse | ComplexType | |
Order/TotalCost/ FormOfPayment/ TransactionResponses/ TransactionResponse |
No, unbounded repetitions | Transaction response code (for example, M for avs) | String | |
Order/TotalCost/ FormOfPayment/ TransactionResponses/ TransactionResponse/ @ResponseType |
Yes | Type of response code (for example, avsZip) | String | |
Order/TotalCost/ FormOfPayment/ PaymentTransactionDate |
Yes | Timestamp of the credit card transaction | DateTime | |
Order/TotalCost/ FormOfPayment/ PaymentTransactionTypeCode |
Yes | Tw-character tender type code used for the form of payment (for example, C, MC, AM) | String | At least 1 character |
Order/TotalCost/ FormOfPayment/ PaymentTransactionID |
No | Transaction ID for the payment | String | At least 1 character |
Order/TotalCost/ FormOfPayment/ ItemListRPH |
No | LineItemIds from Order/LineItems that this form of payment paid for. This is the full set of LineItemIds, separated by spaces. | String | At least 1 character |
Order/TotalCost/ FormOfPayment/Amount |
Yes | Amount for this form of payment | Decimal | Minimum of 0, 2 decimal places |
Order/TotalCost/ FormOfPayment/Amount/ @CurrencyCode |
Yes | Type of currency used for this form of payment | String | Attribute element; 3-character ISO 4217 code (for example, USD, CAD, EUR). See
http://en.wikipedia.org/ wiki/ISO_4217.e |
Order/TotalCost/ FormOfPayment/AccountID |
No | Account number | String | Max 22 characters |
Order/TotalCost/ FormOfPayment/AccountID/ @isToken |
Yes | Flag that indicates whether AccountId is a token or an actual account number. Tokens should be passed in this request, except for PayPal. | Boolean | Attribute element: true or false |
Order/TotalCost/ FormOfPayment/TenderClass |
Yes | Tender category/class | String | CreditCard
StoredValue Other |
Order/TotalCost/CostTotals | Yes | Sequence of AmountBeforeTax, AmountAfterTax | ComplexType | |
Order/TotalCost/CostTotals/ AmountBeforeTax |
No | Total cost before tax | Decimal | Minimum of 0, 2 decimal places |
Order/TotalCost/CostTotals/ AmountBeforeTax/ @CurrencyCode |
Yes | Type of currency used for the total before-tax cost | String | Attribute element; 3-character ISO 4217 code (for example, USD, CAD, EUR). See
http://en.wikipedia.org/ wiki/ISO_4217. |
Order/TotalCost/CostTotals/ AmountAfterTax |
Yes | Total cost after tax | Decimal | Minimum of 0, 2 decimal places |
Order/TotalCost/CostTotals/ AmountAfterTax/ @CurrencyCode |
Yes | Type of currency used for the total after-tax cost | String | Attribute element; 3-character ISO 4217 code (for example, USD, CAD, EUR). See
http://en.wikipedia.org/ wiki/ISO_4217. |
Order/TotalCost/FailedCc/ @Number |
No | Number of failed credit card authorizations | Int | Attribute element |
ServerInfo | Yes | Sequence of Time, TZOffset, TZOffsetRaw, DSTActive | ComplexType | |
ServerInfo/Time | Yes | Server timestamp at the time of the event, in UTC | DateTime | Greater than 1900-01-01T00:00:00 Less than 2100-01-01T00:00:00 |
ServerInfo/TZOffset | Yes | Time zone offset for the server at the time of the event. Informational only. | Decimal |
Ranges from -12 to 13 in half or quarter hour increments |
ServerInfo/TZOffsetRaw | No | Time zone offset for the server at the time of the event, used when the time data sent is not the same as on the server. Informational only. | Decimal |
Ranges from -12 to 13 in half or quarter hour increments |
ServerInfo/DSTActive | Yes | Flag that indicates whether daylight savings time was active on the server at the time of the event | Boolean | true or false |
DeviceInfo | No | Sequence of JSCData, SessionID, DeviceIP, DeviceHostname, HttpHeaders, UserCookie | ComplexType | |
DeviceInfo/JSCData | No | Raw result string from JavaScript Collector | String | |
DeviceInfo/SessionID | No | User's session ID that is used to identify session hijacking occurrences | String | Max 255 characters |
DeviceInfo/DeviceIP | No | IP address of the device making the request to the server, (for example, 10.0.0.1) | String | Max 15 characters |
DeviceInfo/DeviceHostname | No | Name of the host that corresponds to the browser's IP address | String | Max 100 characters |
DeviceInfo/HttpHeaders | No | Sequence of HttpHeader | ComplexType | |
DeviceInfo/HttpHeaders/ HttpHeader |
No, unbounded repetitions | HTTP header entry collected from the HTTP session on the web application server | String | |
DeviceInfo/HttpHeaders/ HttpHeader/@name |
Yes | Name of the http header | String | Attribute element |
DeviceInfo/UserCookie | No | Specific portion of the HttpHeader cookie that is used by the web system integrating with the fraud system | String | |
CustomProperties | No | Sequence of CustomPropertyGroup | ComplexType | |
CustomProperties/ CustomPropertyGroup |
Yes, unbounded repetitions | Sequence of CustomProperty | ComplexType | |
CustomProperties/ CustomPropertyGroup/ @name |
Yes | Property group name | String | Attribute element; at least 1 character |
CustomProperties/ CustomPropertyGroup/ CustomProperty |
Yes | Choice of StringValue, IntegerValue, FloatValue, DateTimeValue | ComplexType | |
CustomProperties/ CustomPropertyGroup/ CustomProperty/@name |
Yes | Property name | String | Attribute element; at least 1 character |
CustomProperties/ CustomPropertyGroup/ CustomProperty/StringValue |
Choice, one of the elements at this level is required | Property string value | String | |
CustomProperties/ CustomPropertyGroup/ CustomProperty/IntegerValue |
Choice, one of the elements at this level is required | Property integer value | Long | |
CustomProperties/ CustomPropertyGroup/ CustomProperty/FloatValue |
Choice, one of the elements at this level is required | Property float value | Double | |
CustomProperties/ CustomPropertyGroup/ CustomProperty/ DateTimeValue |
Choice, one of the elements at this level is required | Property DateTime value | DateTime |
This API supports multiple types of response messages.
<?xml version="1.0" encoding="UTF-8"?>
<AckReply xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<Received/>
</AckReply>
The RiskAssessmentReply asynchronous message provides risk details for a single order and is supported by RabbitMQ.
q.Risk.Orders.Status.<RABBIT_MQ_USERNAME>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RiskAssessmentReply xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<OrderId>1452618248</OrderId>
<MockOrderEvent>false</MockOrderEvent>
<ResponseCode>Accept</ResponseCode>
<StoreId>TMSUS</StoreId>
<ReasonCode>FA</ReasonCode>
<ReasonCodeDescription>Fraud Accepted</ReasonCodeDescription>
</RiskAssessmentReply>
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
OrderId | Yes | Order ID | String | At least 1 character, Max 20 characters |
MockOrderEvent | No | Flag that indicates whether the risk assessment is for a mock/test order. If this is true, nothing should be shipped. | Boolean | true or false |
ResponseCode | Yes |
Overall response code for the risk assessment |
String | Accept
Manual_Accept Cancel Reject Ignore Suspend Reject_Pending |
StoreId | Yes | Contains the store identifier passed by the client in request URI | String | Max 100 characters |
ReasonCode | No | The reason code mapped from the responses based on FraudNet response. | String | |
ReasonCodeDescription | No | Description associated with the reason code. | String |
The following sections provide more details about integrating your OMS with the Risk Assessment API.
When sending an order for risk assessment, place the order in a RISK_SUBMISSION state. This state identifies those orders that are currently in transit for risk assessment by Radial. Orders that stay in this state too long (longer than 10 minutes) are possibly stuck and might require resubmission. Contact a Radial representative for corrective action.
An acknowledgment (ACK) response is received when Radial successfully receives the order. When Radial confirms the order receipt, place the order in a RISK_PROCESSING state. Orders that stay in this state too long (longer than 10 minutes) are possibly stuck and might require resubmission. Contact a Radial representative for corrective action.
Comparing orders with the RISK_SUBMISSION and RISK_PROCESSING states helps you determine which orders were acknowledged by Radial and which orders were not acknowledged. This information can help you triage issues that might arise.
Transaction responses are asynchronous and must be collected from an AMQP endpoint. The ResponseCode field describes the action that must be taken on the order, usually in the client OMS:
ResponseCode | Action |
---|---|
Accept | Approve the order in the client OMS and release it for fulfillment. |
Manual_Accept | Approve the order in the client OMS and release it for fulfillment. |
Cancel | Cancel the order in the client OMS and do not fulfill it. Use the ReasonCode and ReasonCodeDescription fields to describe the type of cancellation for reporting or customer communication. |
Reject | Cancel the order in the client OMS and do not fulfill it. Use the ReasonCode and ReasonCodeDescription fields to describe the type of cancellation for reporting or customer communication. |
Ignore | Change the status in the client OMS to Suspended.The order was previously in Suspend status and requires further review before it is released. |
Suspend | Change the status in the client OMS to Suspended.The order was screened and placed into a manual review queue for risk assessment by an investigator. An Accept, Manual_Accept, Reject, or Cancelresponse will ultimately apply. |
Reject_Pending | Change the status in the client OMS to Suspended.The order was screened and placed into a manual review queue for risk assessment by an investigator. An Accept, Manual_Accept, Reject, or Cancelresponse will ultimately apply. |
The ReasonCode field describes the status of the order as well as the type of cancellation for reporting or customer communication.
Reason Code | Reason Code Description | Comments |
---|---|---|
FA | Fraud Accepted | The order is approved by Radial’s Order Review Department. |
FS | Fraud Suspend | The order was screened and placed into a manual review queue for risk assessment by an investigator. A final response will ultimately be provided with one of these reason codes: FA, XU, XD, XP, XR, YT. |
RP | Fraud Reject Pending | The order was screened and placed into a manual review queue for risk assessment by an investigator. A final response will ultimately be provided with one of these reason codes: FA, XU, XD, XP, XR, YT. |
FI | Fraud Ignore | The order was screened and placed into a manual review queue for risk assessment by an investigator. A final response will ultimately be provided with one of these reason codes: FA, XU, XD, XP, XR, YT. |
XU | Fraud Cancelled | The Order Review Department detected fraud and canceled the order. If further details are needed, contact the Order Review Department at 1-866-415-1324. |
XD | Client Directed |
The order was canceled by direct request of a client, based on pre-defined lists of negative addresses, emails, or credit cards with which the client does not wish to conduct business. If further details are needed, contact the client corporate officers or personnel who maintain these lists. Do not contact the Order Review Department. |
XP | Other Policy | The order was canceled due to Radial, Office of Foreign Assets Control (OFAC), and Federal Trade Commission (FTC) policy. If further details are needed, contact the Order Review Department at 1-866-415-1324. |
XR | Customer Requested Order Review | The customer contacted the Order Review Department or was contacted by the Order Review Department and requested that the order be canceled. |
YT | Test Order | The order was placed for testing purposes and then canceled, or the order contains information that matches our test order procedures. Examples include orders that use a test credit card, test email (such as Test@Test.com ) or a predefined test order list. |
The Risk Assessment List XML response contains a list of RiskAssessmentReply messages all clubbed under one parent element. This response format is available only for clients using webhook. This message cannot be obtained from a queue in RabbitMQ, so the queue format is not applicable for this response format. If you want to sign up for these Reply List events, please contact customer service.
The individual RiskAssessmentReply message continues to be supported on the RabbitMQ server. See the information above for details.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RiskAssessmentReplyList xmlns="http://api.gsicommerce.com/schema/checkout/1.0">
<RiskAssessmentReply>
<OrderId>1452618248</OrderId>
<MockOrderEvent>false</MockOrderEvent>
<ResponseCode>Accept</ResponseCode>
<StoreId>TMSUS</StoreId>
<ReasonCode>FA</ReasonCode>
<ReasonCodeDescription>Fraud Accepted</ReasonCodeDescription>
</RiskAssessmentReply>
<RiskAssessmentReply>
<OrderId>1000012</OrderId>
<MockOrderEvent>false</MockOrderEvent>
<ResponseCode>Accept</ResponseCode>
<StoreId>TMSCA</StoreId>
<ReasonCode>XU</ReasonCode>
<ReasonCodeDescription>Fraud Cancelled</ReasonCodeDescription>
</RiskAssessmentReply>
</RiskAssessmentReplyList>
Element | Required | Description | Type | Restriction |
---|---|---|---|---|
RiskAssessmentReplyList | A wrapper/parent object for all the RiskAssessmentReply elements | Sequence of RiskAssessmentReply elements | ComplexType | |
RiskAssessmentReply | A wrapper/parent object for all the sub-elements such as OrderId, MockOrderEvent, ResponseCode, StoreId, ReasonCode etc. | Sequence of OrderId, MockOrderEvent, ResponseCode, StoreId, ReasonCode | ComplexType | |
OrderId | Yes | Order ID | String | At least 1 character, Max 20 characters |
MockOrderEvent | No | Flag that indicates whether the risk assessment is for a mock/test order. If this is true, nothing should be shipped. | Boolean | true or false |
ResponseCode | Yes | Overall response code for the risk assessment | String | Accept Manual_Accept Cancel Reject Ignore Suspend Reject_Pending |
StoreId | Yes | Contains the store identifier passed by the client in request URI | String | Max 100 characters |
ReasonCode | No | The reason code mapped from the responses based on FraudNet response. | String | |
ReasonCodeDescription | No | Description associated with the reason code. | String |
The following sections provide more details about integrating your OMS with the Risk Assessment API.
When sending an order for risk assessment, place the order in a RISK_SUBMISSION state. This state identifies those orders that are currently in transit for risk assessment by Radial. Orders that stay in this state too long (longer than 10 minutes) are possibly stuck and might require resubmission. Contact a Radial representative for corrective action.
An acknowledgment (ACK) response is received when Radial successfully receives the order. When Radial confirms the order receipt, place the order in a RISK_PROCESSING state. Orders that stay in this state too long (longer than 10 minutes) are possibly stuck and might require resubmission. Contact a Radial representative for corrective action.
Comparing orders with the RISK_SUBMISSION and RISK_PROCESSING states helps you determine which orders were acknowledged by Radial and which orders were not acknowledged. This information can help you triage issues that might arise.
Transaction responses are asynchronous and must be collected from an AMQP endpoint. The ResponseCode field describes the action that must be taken on the order, usually in the client OMS:
ResponseCode | Action |
---|---|
Accept | Approve the order in the client OMS and release it for fulfillment. |
Manual_Accept | Approve the order in the client OMS and release it for fulfillment. |
Cancel | Cancel the order in the client OMS and do not fulfill it. Use the ReasonCode and ReasonCodeDescription fields to describe the type of cancellation for reporting or customer communication. |
Reject | Cancel the order in the client OMS and do not fulfill it. Use the ReasonCode and ReasonCodeDescription fields to describe the type of cancellation for reporting or customer communication. |
Ignore | Change the status in the client OMS to Suspended.The order was previously in Suspend status and requires further review before it is released. |
Suspend | Change the status in the client OMS to Suspended.The order was screened and placed into a manual review queue for risk assessment by an investigator. An Accept, Manual_Accept, Reject, or Cancelresponse will ultimately apply. |
Reject_Pending | Change the status in the client OMS to Suspended.The order was screened and placed into a manual review queue for risk assessment by an investigator. An Accept, Manual_Accept, Reject, or Cancelresponse will ultimately apply. |
The ReasonCode field describes the status of the order as well as the type of cancellation for reporting or customer communication.
Reason Code | Reason Code Description | Comments |
---|---|---|
FA | Fraud Accepted | The order is approved by Radial’s Order Review Department. |
FS | Fraud Suspend | The order was screened and placed into a manual review queue for risk assessment by an investigator. A final response will ultimately be provided with one of these reason codes: FA, XU, XD, XP, XR, YT. |
RP | Fraud Reject Pending | The order was screened and placed into a manual review queue for risk assessment by an investigator. A final response will ultimately be provided with one of these reason codes: FA, XU, XD, XP, XR, YT. |
FI | Fraud Ignore | The order was screened and placed into a manual review queue for risk assessment by an investigator. A final response will ultimately be provided with one of these reason codes: FA, XU, XD, XP, XR, YT. |
XU | Fraud Cancelled | The Order Review Department detected fraud and canceled the order. If further details are needed, contact the Order Review Department at 1-866-415-1324. |
XD | Client Directed | The order was canceled by direct request of a client, based on pre-defined lists of negative addresses, emails, or credit cards with which the client does not wish to conduct business. If further details are needed, contact the client corporate officers or personnel who maintain these lists. Do not contact the Order Review Department. |
XP | Other Policy | The order was canceled due to Radial, Office of Foreign Assets Control (OFAC), and Federal Trade Commission (FTC) policy. If further details are needed, contact the Order Review Department at 1-866-415-1324. |
XR | Customer Requested Order Review | The customer contacted the Order Review Department or was contacted by the Order Review Department and requested that the order be canceled. |
YT | Test Order | The order was placed for testing purposes and then canceled, or the order contains information that matches our test order procedures. Examples include orders that use a test credit card, test email (such as Test@Test.com ) or a predefined test order list. |
Copyright © 2017 Radial. All rights reserved.