Skip to content

Signifyd#


Signifyd Logo

Overview#

Signifyd allows you to ship more orders and automate your back office via its industry leading fraud prevention tool which is able to assume risk for orders and offer you a “Fraud Guarantee.” If you ship any order Signifyd guarantees, and it turns out to be fraud, they will pay you back within 48 hours including charge back fees and shipping.

In addition to a fraud guarantee you’ll also get access to a robust dashboard of data about each order:

Signifyd Dashboard

Installation & Setup#

The Signifyd module can be download from the Miva App Store here. Once downloaded upload it to your Miva store under: Settings -> Domain Settings -> Modules and select the Add Module button. Finally, assign the module to your store. Go to Settings -> Modules find the module and click install.

Adding Your API Key#

Once installed you’ll see a new tab under Order Fulfillment Settings labeled Signifyd where the API key and currency can be set. See how to generate your API key here.

Configure Automatic Case Creation By Source#

Added in version 1.0002 or later, the Signifyd module now lets you configure when you want Miva to create a case in Signifyd. The default is only for orders placed by the shopper.

  • By Shopper: This is the default setting and will create a case in Signifyd for every order place on the front end by the shopper.
  • By Admin User: With this enabled, after an order is manually created in the admin, if you trigger Order Fulfillment module via the admin, it will create a case in Signifyd.
  • By Subscription Reorder: This will cause all orders created via a subscription to create a case.

Shipping Method Mappings#

Signifyd has a pre-determined list of shipping method values it accepts. The Signifyd Shipping Method Mappings tab allows you to map the shipping methods you have setup in Miva to the approved values Signifyd accepts. For common shipping modules such as UPS, USPS or FedEx, Miva will attempt to auto map the Miva methods to Signifyd Methods. If you’re using flat rate shipping or any sort of table based shipping, you will need to map your shipping methods in Miva to the carrier and method in Signifyd.

Device Fingerprint JavaScript#

When the module is installed, it automatically adds JavaScript to every page for tracking and device fingerprinting. The JS will appear in the head tag and look like this:

<script src="https://embed.cacher.io/84046b800567ae16aafe16c75e7b19f37d58ab12.js?a=7ebf9eaf17829987da7daa7746df3b30&t=atom_one_dark"></script>

The order-data-session-id is a unique tracking id per shopper (generated automatically by Miva) and will be used to link the shopper to the order.

The JS will be output to any page which has the signifyd_fingerprint component assigned. Upon installation this item is automatically assigned to all front end pages but if you create a new page such as as alternate page display you’ll also want to assign the item to any new page as well so that it is also tracked by Signifyd.

Note

If you want to validate your device fingerprinting script is tracking correctly, you can type this command into the console of your web browser developer tools: SIGNIFYD_GLOBAL.scriptTagHasLoaded()

Cases#

Each time an order is placed, Miva will make an API call to Signifyd to create a “case”. Cases are orders submitted to Signifyd for review. A case contains payment, recipient, product, shipping, and account information. Signifyd will then use the data it has about the order to determine if it can issue a guarantee on the order.

Cases are always created automatically when the customer places an order on the website. If a order is placed via the Miva admin, such as a phone order a case can still be created, however it requires manually clicking a button to send the order data to signifyd. To manually send an order to Signifyd, click the Signifyd link at the top left of an order.

This is also useful should the Signifyd API be down and you need to resend an order to Signifyd.

Note

If a Signifyd case already exists for the order, clicking this link will show the responses back from Signifyd and the guarantee (if one was available)

Payment Data Sent#

In addition to standard order and item data, Miva will also send certain payment data for the following payment modules:

  • Authorize.net
  • Braintree
  • Cybersource
  • Chase Paymentech
  • PayPal Commerce
  • Square

The following chart shows which data is passed for each payment module:

Module Transaction ID AVS Response Code CVV Response Code Cardholder Name Last 4 Exp. Month Exp Year bin billing address
Authorize.net Yes Yes Yes Yes Yes No No No Yes
Braintree Yes Yes Yes No Yes No No No Yes
Cybersource Yes Yes Yes No Yes Yes Yes No Yes
Chase Paymentech Yes Yes Yes Yes Yes No No No Yes
PayPal Commerce Yes Yes Yes No Yes Yes Yes No Yes
Square Yes No No No Yes No No No Yes

Note

Because Miva does not have access to the card number for the gateway integrations, the BIN Bank Identification Number (first 6 or 8 digits of card number) is never sent for any gateway.

For all other gateways not listed above, no card data is sent to Signifyd, although the billing address will be sent. The data above is sent regardless of if you’re using MivaPay or not.

Webhooks#

A case is created in Signifyd immediately after an order is placed on the website. Signifyd will use the data it has collected to determine if it can issue a guarantee for the order. This decision is typically made within seconds however this could be delayed up to a few hours should the case require manual review.

Once a decision on the order has been made (typically in a few seconds), Signifyd will make a call back to Miva to update the Order with the decision data. This process happens automatically.

Miva registers an API endpoint for the webhook each time the Signifyd API key is updated in the Miva admin. Should you ever need to update the API key in Miva, a new webhook will be created. The Webhook Miva supports is the “Guarantees/Completion” Webhook. This allows Miva to get notified when an order/case gets a decision on whether or not Signifyd can guarantee the order.

Note

Should you be using Signifyd on multiple stores, setup as a mall or in a multi-domain scenario, each store/domain requires its own unique API key. You do not want to re-use API keys across separate stores or domains.

Viewing Signifyd Response#

Once a response has been sent from Signifyd, it will be available to view in two places in Miva:

  1. Order Batch List - All of the Signifyd response data is available as Order Custom Fields so they are viewable, searchable and sortable in the Orders Batch List.

Batch List

  1. Order Details - When viewing any order click the Signifyd link at the top left and a modal will show you all the Signifyd Response Data.

Order Workflows & Order Queues#

The integration with Signifyd was designed so that it can be used with Miva’s Order Workflow tools. Every response value is available to add a custom rule against. Below are the field codes for reference:

Signifyd Response Parameters#

Field Type Description
case_id Number Case Id of case in Signifyd.
headline String Headline, typically Customer Name.
uuid String uuid.
status String Status.
r_disp String Review Disposition.
order_id Number Miva Order Id.
order_amt Number Miva Order Amount.
order_out String Order Outcome.
currency String Currency of Payment for the Order.
score Number Signifyd Fraud Score.
is_test Boolean Flag for Test Case (ie using Sandbox).
g_disp String Will have a value of “Approved” if order is guaranteed.
g_eligible Boolean 0 or 1 for if Signifyd will guarantee the order.
dt_order Date/Time Order Date.
dt_created Date/Time Case Creation Date Time.
dt_updated Date/Time Date Time Case Last Updated.

Leveraging Order Workflows in Miva its possible to create custom Order Queues as well as Workflows to automatically move an order into a queue based on the result of the Signifyd response data.

Each field can be referenced as an order custom field in the following format:

order:CustomField_Values:signifyd:my_custom_field

Where my_custom_field is the custom order field code (see chart above) you want to run the condition against.

Wait Until True#

Because the Signifyd response data can get updated in Miva anywhere from a few seconds after the order is place up to a few hours, its important to use “Wait Until True” feature of the Order Workflow to periodically check the order for the Signifyd Response. Here we are telling Miva to check the order ever minute for up to 2 hours.

To learn more about Miva’s Order Workflows please click here.

Shipment Notification#

When an shipment gets marked as shipped in Miva, we will make an API call to Signifyd to pass them the tracking number and other relevant shipment data. This API call or data is not available to view in the Miva admin, but it helps Signifyd complete a charge back case, should one occur. The following link is an example of the data which gets sent in this request - Signifyd API Reference

Provisioning#

The following XML Provisioning is supported to update the API key.

<Module code="signifyd" feature="fulfill">
    <Settings>
        <APIKey>api key</APIKey>
        <Currency>US</Currency>
    </Settings>
</Module>

JSON API#

The Signifyd Response values are available when pulling down orders using OrderList_Load_Query and QueueOrderList_Load_Query. To have the Signifyd data returned in the response you first need to ensure you’re passing the ondemandcolumn of CustomField_Values:* (which will return you data from all modules which have custom field data including Signifyd) or if you want only the signifyd data you can use CustomField_Values:signifyd:*

Example Response:

"CustomField_Values": {
    "signifyd": {
        "case_id": 995622793,
        "headline": "",
        "uuid": "",
        "status": "",
        "r_disp": "",
        "order_id": 1056,
        "order_amt": 18,
        "order_out": "",
        "currency": "USD",
        "score": 0,
        "is_test": 0,
        "g_disp": "Guarantee",
        "g_eligible": 0,
        "dt_order": "1557249497",
        "dt_created": "1557249497",
        "dt_updated": "1557249497"
     }
   }

Activating & Deactivating#

In some cases it may be helpful to be able to deactivate the Signifyd plugin without losing your configuration settings. To do deactivate the module go to Setting -> Domain Settings -> Signifyd -> toggle active checkbox. Deactivating the module this way will keep all the settings and configuration intact when you choose to reactive it.