Last Updated: 04 July 2024 | Change Log

Exemption Assessment

POST your request to the exemptions:assess action link.

Assessment example request

POST https://try.access.worldpay.com/exemptions/assessment

Risk assessment request body:

application/vnd.worldpay.exemptions-v1.hal+json

Exemption assessment using the card instrument

{ "transactionReference": "Memory265-13/08/1876", "merchant": { "entity": "default" }, "doNotApplyExemption": false, "instruction": { "paymentInstrument": { "type": "card/front", "cardHolderName": "Sherlock Holmes", "cardNumber": "4444333322221111", "cardExpiryDate": { "month": 5, "year": 2035 }, "billingAddress": { "address1": "221B Baker Street", "address2": "Marylebone", "address3": "Westminster", "postalCode": "NW1 6XE", "city": "London", "state": "Greater London", "countryCode": "GB" } }, "value": { "currency": "GBP", "amount": 250 } }, "deviceData": { "collectionReference": "0_4XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX8G6" }, "riskData": { "account": { "email": "sherlock.holmes@example.com", "dateOfBirth": "1990-09-09" }, "transaction": { "firstName": "Sherlock", "lastName": "Holmes", "phoneNumber": "00000000000000" }, "shipping": { "firstName": "James", "lastName": "Moriarty", "address": { "address1": "The Palatine Centre", "address2": "Durham University", "address3": "Stockton Road", "postalCode": "DH1 3LE", "city": "Durham", "state": "County Durham", "countryCode": "GB", "phoneNumber": "01911234321" } } } }

Schema

Full API Reference here

transactionReferencestring[ 1 .. 64 ] characters^[-A-Za-z0-9_!@#$%()*=.:;?\[\]{}~`/+]*$required

A unique reference for authentication. For example, e-commerce order code.

merchantobjectrequired

An object that contains information about the merchant and API level configuration.

entitystring[ 1 .. 64 ] characters^[A-Za-z0-9 ]*$required

Used to route the request in Access Worldpay, created as part of on-boarding.

instructionobjectrequired

The object that contains all the payment information related to the authentication request.

valueobjectrequired

An object that contains information about the value of the authentication.

paymentInstrumentanyrequired

An object that contains the card details or token location.

doNotApplyExemptionboolean

Request an exemption but don't apply it in the payment. Used for the initial go-live to build up the data model and have more reliable exemption predictions.

riskDataobject

An object that holds risk related information that might help in improving the accuracy of fraud assessment.

accountobject

Object containing all customer account related risk data.

transactionobject

Object containing all customer transaction related risk data.

shippingobject

Object containing all data related to how the order is shipped.

customobject

Object containing custom fields

deviceDataobject

Object containing device data information.

collectionReferencestring[ 30 .. 128 ] characters^[A-Za-z0-9_-]*$

Use the sessionId specified in the ThreatMetrix Device Data Collection to link this data to the assessment.

Assessment responses

Best Practice

Access Worldpay returns a WP-CorrelationId in the headers of service responses. We highly recommend you log this. The WP-CorrelationId is used by us to examine individual service requests.

You can see the full response schema in the API Reference.

The response contains the outcome of your assessment request.

{
  "outcome": "exemption",
  "transactionReference": "Memory265-13/08/1876",
  "exemption": {
    "placement": "authorization",
    "type": "lowValue"
  },
  "riskProfile": {
    "href": "https://access.worldpay.com/riskprofile/eyJrIjoxLCJkIjoialRBL0FFelBzcnZ"
  }
}
outcomestringrequired

The outcome of the exemption assessment request.

Enum ValueDescription
noExemption

no exemption granted, proceed to 3DS authentication

exemption

exemption granted, follow placement and type

transactionReferencestring[ 1 .. 64 ] charactersrequired

A unique reference for assessment that was passed in the request.

riskProfileobjectrequired

A resource you can use in the payment authorization request that represents the outcome of the exemption assessment. Used to:

  • Apply the exemption (if provided)
  • Update the data model so future assessments are more accurate
hrefstring(uri)[ 30 .. 1024 ] charactersrequired

A link to a resource to be used in the payment authorisation request that represents the outcome of exemption assessment.

exemptionobject

An object that holds information about the exemption if it is granted.

placementstringrequired

Indicates whether the exemption is provided to be placed in a payment authorization request or 3DS authentication request.

Note: Only placement 'authorization' will be configured to be returned for now until Access 3DS supports exemption placement

ValueDescription
authorization

Apply the exemption in the payment authorization

typestringrequired

The type of exemption to apply.

Enum ValueDescription
lowValue

Apply a lowValue exemption

lowRisk

Apply a lowRisk exemption

Applying the Exemption

Apply the riskProfile provided to the payment authorization request. This performs two functions:

  • Applies the exemption to the payment request
  • Allows the data model to learn from the outcome, improving future assessment requests.

Even if no exemption is provided you should apply the riskProfile to the payment request.

Soft decline

In the event that the exemption is not successful (honoured + authorized) when applied to the payment the issuer will respond with a soft decline (refusal code 65). The next logical step for this is to proceed with 3DS authentication.

Next steps


Exemptions testing