MerchantData

When composing the MerchantData either a valid merchantConfigurationId should be passed (in order to resolve the merchant information from the configuration), or the mcc, the merchantCountryCode and the merchantName should be passed.

In case both the merchantConfigurationId and the mcc, the merchantCountryCode and the merchantName are passed, priority is given to the message data and no resolving from the configuration will occur.

20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
public class MerchantData {
 
  /**
   * ID of the merchant. This value will be used to find merchant information from the configuration. From the merchant
   * configuration the 3DS Server can fill the other values (mcc, merchantCountryCode and merchantName), if provided.
   *
   * This field can be left out if merchant information are provided in the request.
   */
  private String merchantConfigurationId;
  /**
   * Merchant Category Code. This is the DS-specific code describing the Merchant's type of business, product or
   * service. The field is limited to 4 characters. The value correlates to the Merchant Category Code as defined
   * by each Payment System or DS.
   *
   * If not present in the request it will be filled from the merchant configuration referenced by
   * the merchantConfigurationId.
   *
   * This field is required for messageCategory=01 (PA) and optional, but strongly recommended for 02 (NPA).
   */
  private String mcc;
  /**
   * Country code for the merchant. This value correlates to the Merchant Country Code as defined by each Payment
   * System or DS. The field is limited to 3 characters accepting ISO 3166-1 format, except 901-999.
   *
   * If not present in the request it will be filled from the merchant configuration referenced by
   * the merchantConfigurationId.
   *
   * This field is required for messageCategory=01 (PA) and optional, but strongly recommended for 02 (NPA).
   */
  private String merchantCountryCode;
  /**
   * Merchant name assigned by the Acquirer or Payment System. This field is limited to maximum 40 characters, and it
   * is the same name used in the authorisation message as defined in ISO 8583.
   *
   * If not present in the request it will be filled from the merchant configuration referenced by
   * the merchantConfigurationId.
   *
   * This field is required for messageCategory=01 (PA) and optional, but strongly recommended for 02 (NPA).
   */
  private String merchantName;
  /**
   * Fully qualified URL of the merchant that receives the CRes message or Error Message.
   * Incorrect formatting will result in a failure to deliver the notification of the final CRes message. This field is
   * limited to 256 characters.
   *
   * This field should be present if the merchant will receive the final CRes message and the device channel is BROWSER.
   * If not present in the request it will be filled from the notificationURL configured in the XML or
   * database configuration.
   */
  private URL notificationURL;
  /**
   * Directory Server assigned 3DS Requestor identifier. Each DS will provide a unique ID to each 3DS Requestor on an
   * individual basis.
   *
   * This field is optional and if value is not present it will be taken from the resolved
   * Directory Server configuration.
   */
  private String threeDSRequestorId;
  /**
   * Directory Server assigned 3DS Requestor name. Each DS will provide a unique name to each 3DS Requestor on an
   * individual basis.
   *
   * This field is optional and if value is not present it will be taken from the resolved
   * Directory Server configuration.
   */
  private String threeDSRequestorName;
}