Praxis Wiki logo

Processing MIT Transactions


A Merchant-Initiated Transaction (MIT) is a payment transaction initiated by the merchant with the prior consent of the customer. MIT payments are sometimes referred to as subsequent transactions.
An MIT flow involves two or more transactions: an initial customer-initiated payment and one or more subsequent merchant-initiated payments.
This page describes these transactions and the additional parameters to include in these queries.
In the case of MIT, if you are processing an authorization transaction, only amount=0 is allowed (Zero Authorization).

Initial MIT

Initial MIT card payment request. In these transactions, the cardholder must provide their card details and authorize the transaction by providing a signature or entering a PIN.

When sending an Initial MIT Direct API request with its mandatory parameters, include the following additional parameters:

{
  "transaction_type": "sale",
  "mit": {
    "type": "initial",
    "expiry": [in days]
  }
}

REQUEST

{
    "merchant_id": "Test-Integration-Merchant",
    "application_key": "Sandbox",
    "transaction_type": "sale",
    "currency": "EUR",
    "amount": 100,
    "card_data": {
        "card_number": "ZMq4wDaiaQ/xOwMEcQ7R3ASjTnoOMu+avLuJYgAnz1Q=",
        "card_exp": "WI8V4bE5/l8fIhUv6aMO8w==",
        "cvv": "BCm5yhYeeYoJlsOSIRd8Mg=="
    },
    "device_data": {
        "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Safari/605.1.15",
        "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
        "language": "en-us",
        "ip_address": "127.0.0.1",
        "timezone_offset": -180,
        "color_depth": "24",
        "pixel_depth": "24",
        "pixel_ratio": "2",
        "screen_height": 900,
        "screen_width": 1440,
        "viewport_height": 400,
        "viewport_width": 1440,
        "java_enabled": 0,
        "javascript_enabled": 1
    },
    "cid": "1",
    "locale": "en-GB",
    "customer_token": null,
    "customer_data": {
        "country": "GB",
        "first_name": "John",
        "last_name": "Johnson",
        "dob": "12\/31\/1980",
        "email": "[email protected]",
        "phone": "44201112222",
        "zip": "WC2N 5DU",
        "state": "JS",
        "city": "London",
        "address": "Random st., 12\/3",
        "profile": 1
    },
    "mit": {
      "type": "initial",
      "expiry": [in days]
    }
    "gateway": "s-pTSZyK23E1Ee5KZpcNbX_aFl0HuhQ0",
    "notification_url": "https:\/\/api.merchant.com\/v1\/deposits\/tx-1560610955",
    "return_url": "https:\/\/merchant.com\/payment_result\/tx-1560610955",
    "order_id": "test-1560610955",
    "withdrawal_request_id": null,
    "variable1": "your variable",
    "variable2": "if that is not enough, you can pass even one more variable",
    "variable3": null,
    "version": "1.3",
    "timestamp": 1590611635
}

SUBSEQUENT MIT

Subsequent merchant-initiated MIT card payment requests use stored customer credentials with the prior consent of the customer. The customer's account is charged without requiring additional authorization.

Note: Zero-Authorization transactions can also be used as a reference for Subsequent MIT.

{danger.fa-exclamation} IMPORTANT: For a Subsequent MIT transaction, the card details from mit_reference_id will be used.

After the Initial MIT payment request has been successfully processed, you can begin sending Subsequent MIT requests by including the following parameters in the Direct API call:

{
  "transaction_type": "sale",
  "mit": {
    "type": "subsequent",
    "mit_reference_id": [TID from prior-mit transaction]
  },
  //- no CC details to be included
}

REQUEST

{
    "merchant_id": "Test-Integration-Merchant",
    "application_key": "Sandbox",
    "transaction_type": "sale",
    "currency": "EUR",
    "amount": 100,
    "card_data": {
        "card_number": "ZMq4wDaiaQ/xOwMEcQ7R3ASjTnoOMu+avLuJYgAnz1Q=",
        "card_exp": "WI8V4bE5/l8fIhUv6aMO8w==",
        "cvv": "BCm5yhYeeYoJlsOSIRd8Mg=="
    },
    "device_data": {
        "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Safari/605.1.15",
        "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
        "language": "en-us",
        "ip_address": "127.0.0.1",
        "timezone_offset": -180,
        "color_depth": "24",
        "pixel_depth": "24",
        "pixel_ratio": "2",
        "screen_height": 900,
        "screen_width": 1440,
        "viewport_height": 400,
        "viewport_width": 1440,
        "java_enabled": 0,
        "javascript_enabled": 1
    },
    "cid": "1",
    "locale": "en-GB",
    "customer_token": null,
    "customer_data": {
        "country": "GB",
        "first_name": "John",
        "last_name": "Johnson",
        "dob": "12\/31\/1980",
        "email": "[email protected]",
        "phone": "44201112222",
        "zip": "WC2N 5DU",
        "state": "JS",
        "city": "London",
        "address": "Random st., 12\/3",
        "profile": 1
    },
    "mit": {
      "type": "subsequent",
      "mit_reference_id": [TID from prior-mit transaction]
    },
    //- no CC details to be included
    "gateway": "s-pTSZyK23E1Ee5KZpcNbX_aFl0HuhQ0",
    "notification_url": "https:\/\/api.merchant.com\/v1\/deposits\/tx-1560610955",
    "return_url": "https:\/\/merchant.com\/payment_result\/tx-1560610955",
    "order_id": "test-1560610955",
    "withdrawal_request_id": null,
    "variable1": "your variable",
    "variable2": "if that is not enough, you can pass even one more variable",
    "variable3": null,
    "version": "1.3",
    "timestamp": 1590611635
}
{
  "transaction_type": "sale",

}