Cards & Wallets · Your payment page

Account Verification

Verify a customer's card without taking a payment by submitting an Account Verification request.

Account verification performs a zero-amount authorisation against the card to confirm that it is valid and that the billing details match. This is useful for validating a card before storing it, or for services such as age verification.

For Financial Services merchants (MCC 6012), additional fields such as financialServices are required. The example below shows a standard account verification for a new customer.

Verify a new customer

Account verification
EndpointDefinition
POST /acceptor/rest/transactions/{instId}/verify
Request body
{
  "transaction": {
    "currency": "GBP",
    "description": "Merchant description",
    "merchantRef": "TXN-0003"
  },

  "paymentMethod": {
    "card": {
      "cardLockToken": "TT_pOWtzymzSP69xyXi4jvpLA",
      "expiryDate": "1230",
      "cardHolderName": "John Smith"
    },

    "billingAddress": {
      "line1": "1 Some Street",
      "city": "Metropolis",
      "postcode": "AA1 1AA",
      "countryCode": "GBR"
    }
  },

  "customer": {
    "merchantRef": "CUST-0001",
    "displayName": "John Smith"
  },

  "verification": {
    "acquirerPaymentMethod": true
  }  
}
cURL
curl -X POST "{targetEnvironmentPath}/acceptor/rest/transactions/{instId}/verify" \
  -u "{apiUser}:{apiPassword}" \
  -H "Content-Type: application/json" \
  -d '{
  "transaction": {
    "currency": "GBP",
    "description": "Merchant description",
    "merchantRef": "TXN-0003"
  },

  "paymentMethod": {
    "card": {
      "cardLockToken": "TT_pOWtzymzSP69xyXi4jvpLA",
      "expiryDate": "1230",
      "cardHolderName": "John Smith"
    },

    "billingAddress": {
      "line1": "1 Some Street",
      "city": "Metropolis",
      "postcode": "AA1 1AA",
      "countryCode": "GBR"
    }
  },

  "customer": {
    "merchantRef": "CUST-0001",
    "displayName": "John Smith"
  },

  "verification": {
    "acquirerPaymentMethod": true
  }  
}'
Response
HTTP/1.1 201

{
  "processing": {
    "authResponse": {
      "statusCode": "00",
      "acquirerName": "Barclays Merchant Services",
      "message": "Approved - no action",
      "authCode": "091358",
      "gatewayReference": "101gbp94ce38d9628d6f6FMeeeeeeee0",
      "gatewayCode": "000.000.000",
      "gatewayMessage": "Transaction succeeded",
      "avsAddressCheck": "FULL_MATCH",
      "avsPostcodeCheck": "FULL_MATCH",
      "cv2Check": "MATCHED",
      "status": "AUTHORISED"
    },
    "route": "PAYON"
  },
  "paymentMethod": {
    "registered": true,
    "card": {
      "cardToken": "MT_5nXK-imvRFWNmCwDinSPhA",
      "cardFingerprint": "0hbdt0r/7ofTCqA5qKilqtHeeJg=",
      "new": false,
      "cardType": "MC_DEBIT",
      "cardUsageType": "DEBIT",
      "cardScheme": "MASTERCARD",
      "cardCategory": "DEBIT",
      "maskedPan": "990000******0010",
      "expiryDate": "1230",
      "issuer": "PAY360 TESTING",
      "issuerCountry": "GBR",
      "cardHolderName": "John Smith"
    },
    "billingAddress": {
      "line1": "1 Some Street",
      "city": "Metropolis",
      "postcode": "AA1 1AA",
      "country": "United Kingdom",
      "countryCode": "GBR"
    },
    "paymentClass": "CARD",
    "reuse": {
      "storage": "NEW",
      "agreement": "ADHOC",
      "originalSchemeReference": "111gbp4745a1f0e0adddaFMee1000z00",
      "receivedSchemeReference": "101gbp94ce38d9628d6f6FMeeeeeeee0"
    }
  },
  "customFields": {
    "fieldState": []
  },
  "customer": {
    "id": "2176079",
    "merchantRef": "CUST-0001"
  },
  "transaction": {
    "transactionId": "10111564537",
    "merchantRef": "TXN-0003",
    "merchantDescription": "Merchant description",
    "status": "SUCCESS",
    "stage": "AUTHORISATION",
    "type": "VERIFY",
    "currency": "GBP",
    "transactionTime": "2019-12-12T20:13:35.505Z",
    "receivedTime": "2019-12-12T20:13:35.505Z",
    "customerInitiated": true
  },
  "outcome": {
    "status": "SUCCESS",
    "reasonCode": "S100",
    "reasonMessage": "Authorised"
  },
  "trace": "TRCwIoQVFn1_rG4vZL-mdnA",
  "link": [
    {
      "rel": "transaction",
      "href": "https://api.mite.pay360.com/acceptor/rest/transactions/5302522/10111564537"
    }
  ]
}

Existing customer with default card

If the customer already has a saved card, you can reference it and supply only the CV2.

Sample Verification (with default card)
EndpointDefinition
POST /acceptor/rest/transactions/{instId}/verify
Request body
{
  "transaction" : {
    "currency" : "GBP",
    "commerceType" : "MOTO",
    "recurring": true
  },
  "paymentMethod" : {
    "fromCustomer" : {
      "cv2" : "123"
    }
  },
  "customer" : {
    "merchantRef" : "mer_cust_131241412"
  },
  "verification" : {
    "acquirerPaymentMethod" : true
  },
  "schedule": {
    "startDate": "2031-01-30",
    "timeOfDay": "13:30:00",
    "frequency": {
        "unit": "WEEK",
        "quantity": 2
    },
    "amounts": [
      5.00,
      3.00
    ],
    "terminator": {
        "endOn": "2031-06-30"
    },
    "retry": {
        "unit": "DAY",
        "maxRetries": 2
    }
  } 
}
cURL
curl -X POST "{targetEnvironmentPath}/acceptor/rest/transactions/{instId}/verify" \
  -u "{apiUser}:{apiPassword}" \
  -H "Content-Type: application/json" \
  -d '{
  "transaction" : {
    "currency" : "GBP",
    "commerceType" : "MOTO",
    "recurring": true
  },
  "paymentMethod" : {
    "fromCustomer" : {
      "cv2" : "123"
    }
  },
  "customer" : {
    "merchantRef" : "mer_cust_131241412"
  },
  "verification" : {
    "acquirerPaymentMethod" : true
  },
  "schedule": {
    "startDate": "2031-01-30",
    "timeOfDay": "13:30:00",
    "frequency": {
        "unit": "WEEK",
        "quantity": 2
    },
    "amounts": [
      5.00,
      3.00
    ],
    "terminator": {
        "endOn": "2031-06-30"
    },
    "retry": {
        "unit": "DAY",
        "maxRetries": 2
    }
  } 
}'
Response
HTTP/1.1 201

{
  "processing" : {
    "authResponse" : {
      "acquirerName" : "HSBC Merchant Services Domestic",
      "message" : "TEST AUTH",
      "authCode" : "9999",
      "gatewayMessage" : "TEST AUTH",
      "status" : "AUTHORISED"
    },
    "route" : "GATEWAY"
  },
  "paymentMethod" : {
    "registered" : true,
    "card" : {
      "cardToken" : "MT_wpL9AdPDQnyeVHoh74AhHQ",
      "new" : false,
      "cardType" : "VISA_DEBIT",
      "cardUsageType" : "DEBIT",
      "cardScheme" : "VISA",
      "cardCategory" : "CREDIT",
      "maskedPan" : "444433******1111",
      "expiryDate" : "0130",
      "issuer" : "DATACASH",
      "issuerCountry" : "GBR",
      "cardHolderName" : "John Smith",
      "cardNickname" : "John",
      "validDate" : "1111"
    },
    "paymentClass" : "CARD"
  },
  "customer" : {
    "id" : "10983",
    "merchantRef" : "mer_cust_131241412"
  },
  "transaction" : {
    "transactionId" : "13133368188",
    "merchantRef" : "mer_txn_1234556",
    "merchantDescription" : "Sample Transaction",
    "status" : "SUCCESS",
    "type" : "VERIFY",
    "transactionTime" : "2017-01-13T14:43:30.826Z",
    "receivedTime" : "2017-01-13T14:43:30.826Z"
  },
  "outcome" : {
    "status" : "SUCCESS",
    "reasonCode" : "S100",
    "reasonMessage" : "Authorised"
  },
  "schedule": {
      "scheduleId": "GUID123456789010"
  }
}