Skip to content

Last updated: 16 July 2026 | Change log

Chargeback update

POST your request to the fraudsight:chargeback action link.

Chargeback update example request

POST https://try.access.worldpay-bsh.securedataplatform.com/fraudsight/update/chargeback

Chargeback update request body:

import java.net.*;
import java.net.http.*;
import java.util.*;

public class App {
  public static void main(String[] args) throws Exception {
    var httpClient = HttpClient.newBuilder().build();

    var payload = String.join("\n"
      , "{"
      , " \"transactionReference\": \"Memory265-13/08/1876\","
      , " \"merchant\": {"
      , "  \"entity\": \"default\""
      , " },"
      , " \"riskProfile\": \"https://access.worldpay-bsh.securedataplatform.com/riskprofile/ewogICJ2ZXJzaW9uIiA6IDEsCiAgImtleSIgOiAxLAogICJkYXRhIiA6ICJ5d1NnSzMwYnNGZXVYalR0QUJ0QWdnT3UvK3VhcktrL3c1dCtmSFd4dUFXRmVMZUpuM0MyaEtnYnZlZEdnbGtRY1h4LzltN1pSZGVXZWRBQ1ZvTmxZdFNiZUxaSmFrZXZxenVndFQ2bG44NkpNTW5CeGJSRFVWWWY3dTd5SXVuVFJLK0NYZS9tODRkaHdTUWVnZlYyYTRCb1RaQVNKK0RpcGpmYUxkK1lETlJFclVyZ1c0TGIvOGhvNnFzbFVBU0dSem8zRVRkMEdIUTZXZ1dIT2t1UVBabUF1NXZuVFdBeGZrSEQ5SkdrT1BoV1pMMmIyZm9yNWNOMzZvWUhOY2dkT0lKdkhNMEg5TG1oRDM1RXA4T3R2WWptVmNXS25FZmtLZ0RrK09KRDNLb2pobG\","
      , " \"sourceDate\": \"2020-12-27T00:00:00Z\","
      , " \"acquirerReference\": \"02691780344910023278387\","
      , " \"chargebackReasonCode\": \"31\","
      , " \"chargebackCaseReference\": \"123456\","
      , " \"chargebackValue\": {"
      , "  \"currency\": \"GBP\","
      , "  \"amount\": 250"
      , " }"
      , "}"
    );

    var host = "https://try.access.worldpay-bsh.securedataplatform.com";
    var pathname = "/fraudsight/update/chargeback";
    var request = HttpRequest.newBuilder()
      .POST(HttpRequest.BodyPublishers.ofString(payload))
      .uri(URI.create(host + pathname ))
      .header("Content-Type", "application/vnd.worldpay.fraudsight-v1.hal+json")
      .header("Accept", "application/vnd.worldpay.fraudsight-v1.hal+json")
      .header("Authorization", "Basic " + Base64.getEncoder().encodeToString(("<username>:<password>").getBytes()))
      .build();

    var response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());

    System.out.println(response.body());
  }
}

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.

riskProfilestring(uri)[ 39 .. 2048 ] charactersrequired

Represents the outcome of the original fraud assessment. Used to link subsequent fraud related requests.

sourceDatestring(date-time)<= 20 charactersrequired

Date/time of source fraud file (TC40/SAFE).

acquirerReferencestring[ 1 .. 128 ] charactersrequired

Acquirer Reference Number (ARN) - unique value assigned to a credit or debit card transaction.

chargebackReasonCodestring[ 2 .. 4 ] charactersrequired

Visa and Mastercard reason codes.

chargebackCaseReferencestring[ 1 .. 64 ] charactersrequired

Case reference for a specific chargeback.

chargebackValueobjectrequired

Object containing value of the chargeback transaction.

amountinteger[ 0 .. 999999999 ]required

The chargeback amount. This is a whole number with an exponent, e.g. if exponent is two, 250 is 2.50.

currencystring= 3 characters^[A-Z]{3}$required

The three digit currency code.

Chargeback update 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.

The response status is 200 OK.