[go: up one dir, main page]

Google Pay Payments
APIHosted
Use our payments API to make payments with Google Pay payment methods. You will first need to integrate with Google to retrieve the payment method data. See Getting Started with Google Pay for more details.

You should ensure that an email address is always set on your customer or provided in the API request as this will be required for Google Pay non-tokenized card payment methods that need to go through 3-D Secure; Transactions may be rejected if this is not set.

API examples
Process non-tokenized card payment with 3-D Secure suspend

POST /acceptor/rest/transactions/{instId}/payment
{
  "transaction": {
    "currency": "GBP",
    "amount": "1000.0",
    "description": "Sample Transaction",
    "merchantRef": "mer_txn_1234556",
    "commerceType": "ECOM",
    "channel": "WEB"
  },
  "paymentMethod": {
    "googlepay": {
      "apiVersion" : "2.0",
      "paymentData" : { 
        "token" : "{\"signature\":\"MEUCIQD6FbO633njt3xnUf4AZJUQBzUs6RPeuBf5koken6+yDQIgTh6/se1jJLyhyUz9QWqUVcyoimWkGq9bUZv0b9TVGXE\\u003d\",\"intermediateSigningKey\":{\"signedKey\":\"{\\\"keyValue\\\":\\\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEqZGQGegIOK47U8cm90IZGc13pPdToRTyjA6jK4NyC6y0JmfzYlKttiioo0GVXI4b7/uEVuU61FZrf+lcWOge6w\\\\u003d\\\\u003d\\\",\\\"keyExpiration\\\":\\\"1621504465901\\\"}\",\"signatures\":[\"MEUCIQDH77cMMqA1sKqHHN8ABef0ExW5ViyTVQvZLCABf49A2wIgVMf+pRM3PPMSDpqdhS7eKPl9ki8UhZlunKSokudGYOY\\u003d\"]},\"protocolVersion\":\"ECv2\",\"signedMessage\":\"{\\\"encryptedMessage\\\":\\\"/vdmGrK56GrC3lXoQjtUxIH4tuvg8solpO+AV3o0lGWINYA0i1AHDnAcNjBFChHxyXSJXrZmRYuq1zU51kNfCqFv5mYXLMAA2x20L+q20hL9u9uuc1Ah60IjqUkMZbjSOL11lqIxkvvtQMz8sb5bFNvThXHEssd+zYqmdkilJmnbL8+qDYBheElNlM8m8SCuUjdFDFSsocQxxlqo200IONGWdZTJ+Xutm/LXs3J1ytbgmKLXXZVZNrITTCI3Fj+BX/sBcAPe1S+r0pu0aW6BZ8ilYPVsFRmXbJ+16yLHU7/2WI868qPYpMw5fEE1kn1JCyXr+CXk7RQlQ3Sm/+efA0yRzVJ3mTAFIJN+2ug4qYY4dn3IwVQu+ceLfvf6RMMnU6rATcnQvwSPReztM+n1sQ1TmyhcFmNI4UccNjPUy2mClVZHiboG16zsST+6TUybFJDAEQ4ZZlWYl2l4xgWxXxaWHr1OofmyBeClfjCulncKEAEDXV69KTeCfKLRk7ahViGHR2+BhVYe5NI372GG2/gm7+QOrGslV7gdUxWkExVXvzoKnkJKAZnO4v2S3V1qQa1P\\\",\\\"ephemeralPublicKey\\\":\\\"BId2oBWpnVnKlDLSejI15psOxzCduK7cmUFy0qReAkqpsml+bcpogX0uH52YaF+ChhOvCtUXQr1GuIcbZ9zTbsg\\\\u003d\\\",\\\"tag\\\":\\\"36EQGM8RKA9RGbFFut/eHOWUJqQ+spflgN8oXOR10gk\\\\u003d\\\"}\"}"
      },
      "paymentMethod" : { 
        "displayName" : "•••• 1111",
        "network" : "Visa",
        "details" : "1111",
        "cardHolderName" : "Mr Test"
      }
    },
    "billingAddress": {
      "line1": "Flat 1 ",
      "line2": "Cauldron house",
      "line3": "A Street",
      "line4": "Twertonia",
      "city": "Bath",
      "region": "Somerset",
      "postcode": "BA1 234",
      "countryCode": "GBR"
    }
  },
  "customer": {
    "merchantRef": "mer_cust_131241413",
    "displayName": "Mr Test",
    "billingAddress": {
      "line1": "Flat 1 ",
      "line2": "Cauldron house",
      "line3": "A Street",
      "line4": "Twertonia",
      "city": "Bath",
      "region": "Somerset",
      "postcode": "BA1 234",
      "countryCode": "GBR"
    },
    "email": "test@example.com",
    "telephone": "0123 456 789",
    "defaultCurrency": "GBP",
    "ip": "212.58.253.67"
  }
}

HTTP/1.1 201
{
  "clientRedirect" : {
    "type" : "THREEDSECURE_ACS_REDIRECT",
    "url" : "https://secure.mite.pay360.com/acs",
    "pareq" : "eJxVUltugzAQ/O8pEAfANiSkiTaOaPloPoiihh7AMqsGKTxiTCE5fW0CeViytOPxzu6ODZu+ODl/qJq8Ktcu86i74W+QHhVifEDZKuSQYNOIX3TybO3SabFgsaABXSzZ3OWwj77xzGEU4kbH84FM0CgoeRSl5iDk+WO747OABQEFMkIoUG1jblJuAZSiQL4XlyCkToqNdiYFIAMFsmpLrS783Q+BTABadeJHresVIV3XediLoj6hJ6sCiOWAPDrZtzZqjFafZzyJo+6+0yTYXaNrEst5kv6sgdgbkAmN3Kc+o3PmOyxcseXKNy0P5yAK2wRngzlmsBuE2laJXrnnMzAWKyzlNMmEAPu6KtHcMBXuMWTYSH4YpnJSJcpGSG0cNk1YAshjqM8va7bUxs0Ze13W9oGwRXLjmx+yWxULgNhUMr4oGR/fRC+f4h9eurij"
  },
  "paymentMethod" : {
    "registered" : true,
    "card" : {
      "cardFingerprint" : "Q1MtMmMzYTZhZDUtYmZkZi00MDY1LWFhNGItNTUwYTdlZWZlOGFh",
      "new" : true,
      "cardType" : "VISA_CREDIT",
      "cardUsageType" : "CREDIT",
      "cardScheme" : "VISA",
      "cardCategory" : "CREDIT",
      "maskedPan" : "411111******1111",
      "expiryDate" : "1226",
      "issuer" : "UNKNOWN",
      "issuerCountry" : "GBR",
      "cardHolderName" : "Mr Test",
      "source" : "GOOGLEPAY"
    },
    "billingAddress" : {
      "line1" : "Flat 1 ",
      "line2" : "Cauldron house",
      "line3" : "A Street",
      "line4" : "Twertonia",
      "city" : "Bath",
      "region" : "Somerset",
      "postcode" : "BA1 234",
      "country" : "United Kingdom",
      "countryCode" : "GBR"
    },
    "paymentClass" : "CARD",
    "reuse" : {
      "storage" : "NEW",
      "agreement" : "ADHOC"
    }
  },
  "customFields" : {
    "fieldState" : [ ]
  },
  "threeDSecure" : {
    "scheme" : "VERIFIED_BY_VISA",
    "status" : "INCOMPLETE",
    "enrolmentIndicator" : "Y",
    "enrolmentStatus" : "ENROLLED",
    "enrolmentDateTime" : "2021-05-12T17:19:22.787+01:00",
    "xid" : "00000000013770307915",
    "eci" : "07",
    "version" : 1,
    "protocolVersion" : "1.0.2",
    "versionsAttempted" : [ {
      "version" : 2,
      "availability" : "AVAILABLE"
    }, {
      "version" : 1,
      "availability" : "AVAILABLE"
    } ]
  },
  "customer" : {
    "id" : "10503",
    "merchantRef" : "mer_cust_131241412"
  },
  "transaction" : {
    "transactionId" : "13770307915",
    "merchantRef" : "mer_txn_1234556",
    "merchantDescription" : "Sample Transaction",
    "status" : "PENDING",
    "stage" : "THREE_D_SECURE",
    "type" : "PAYMENT",
    "amount" : 1000.00,
    "consumerSpend" : 0,
    "currency" : "GBP",
    "transactionTime" : "2021-05-12T17:19:22.231+01:00",
    "receivedTime" : "2021-05-12T17:19:22.231+01:00",
    "customerInitiated" : true
  },
  "outcome" : {
    "status" : "SUCCESS",
    "reasonCode" : "U100",
    "reasonMessage" : "Suspended pending Three D Secure process"
  },
  "strongCustomerAuthentication" : {
    "transactionType" : "GOODS_OR_SERVICES"
  },
  "trace" : "T-61GhbhnyyzBEW30NUOFsA",
  "link" : [ {
    "rel" : "transaction",
    "href" : "https://secure.mite.pay360.com/acceptor/rest/transactions/111111/13770307915"
  } ]
}
Resume suspended 3-D Secure non-tokenized card payment

POST /acceptor/rest/transactions/{instId}/{transactionId}}/resume
{
  "threeDSecureResponse" : {
    "pares" : "eJydVdtyqkoQfc9XWO7HVDJc4oXUyK5BNEFEBUGNbxMYAeWigIB+/RkgMe5d5+HUmSrLnkXPWqu7ucDfZRi0cpKkfhwN2uwz026RyI4dP3IHbcscP/Xbv0Voegkh8pLY54SIUCNpil3S8p1Bm/leLN/rMTzTE9hOW4QLZJC0TmA5/qXTpdCXiEg1njkIvreULbE9HGUixPZJUmbiC8/yPAPB1xaGJFFkkR5pAgh+TizOVZRST6XviJqMitvP1PjZFV012e5opjWAoMqADs6IyDEcy3RYrsV2X1nhlaPUNQ5xGJ8pLVsXRA00W3isVNCf1+4xSNuS0K5dxD7XheC2g6Q8xhGhGVThFkOHpLa4xOExIC0zwVGK7Yx2gpqoLkDwU9QRRyJzt1i6qDRFobkRYeaH98X0qmJeqFSNwzTD2TkVPyD4iqCN81xECEnoqk4+dBqhkbFWAg81izapToHE9kWmQz3T//oUCtw48TMvFNkm5weAoLIC6oGLcOm7ERVLSIveV1E6aHtZdnwFoCiK54J/jhMXcLQQwAiAJjip7/5qN6eIo0S7WIRDHMWRb+PAv+KqLRrJvNhp3QT/jdI0KlYWGKPhE6V9stmX6KlCGJ7ejeDO1n9h+9tgkuKn1MNsRWSQHamGS1qWoQzav253t+y7JM3+D/03dcOwwsGZiG7Osv7W/zzI+1WoT0alOU9La65aQKdDus+E4GaJxveNvNXcJGZct4eZXRzkQI0/dsX2FO765uQjI0NOTVVWuMoCz+Whtc26l3LqujkyskdeCZPTuLviOkG+kJPl44HnVfwQrM6fJESCog8GjeqdElTJpbGw6TCCjDPcREOSZP6OjpY+apqiSNP9UOK6SEbuaIjcA+pmgbrHrlyumWJYfEzUeKt4uT1D+misSS+lbKKp5M5WEopNaWwENq/X2EMDpt9g8e7ZM20/Kmbm6EKf/XJu6pf1FzaXleKG7RHR9FpMXum6OioM62G7mTF34LQCa2xcFLL+hytJ0pG8LFCxRBMJTeMuUfdx/BkLk1QVorfL/mF9nOW83JFHY94k7w5flp4lTaXDfqy+DaeKJRudTLK0op9M+s5yYh0W5x3D2iCTtKU245hw0x+iYoRQU+bh5B38N6FgJKRbsq4PFYvH/eVcyaKsmFm9dZzIGzO6llZvv3+bS8XO/Tx3177DzTfy+VMI3Lf3d+BaO+HhVKruYx5ZZyystiNr7BksWfjKSdqDOQR/j6tBmlGC23h/Bl+/lOuPQvU+uP9Y/ANNIBRY"
  }
}

HTTP/1.1 201
{
  "processing" : {
    "model" : "MANAGE",
    "authResponse" : {
      "acquirerName" : "Chase Paymentech",
      "gatewayReference" : "110gbp62dd46a82cc14c0NCee1000z00",
      "gatewayCode" : "000.000.000",
      "gatewayMessage" : "Transaction succeeded",
      "avsAddressCheck" : "NOT_MATCHED",
      "avsPostcodeCheck" : "NOT_MATCHED",
      "status" : "AUTHORISED"
    },
    "route" : "PAYON"
  },
  "paymentMethod" : {
    "registered" : true,
    "card" : {
      "cardToken" : "MT_X1Hpn1AtTTyGgjWM1A3WEA",
      "cardFingerprint" : "Q1MtMmMzYTZhZDUtYmZkZi00MDY1LWFhNGItNTUwYTdlZWZlOGFh",
      "new" : true,
      "cardType" : "VISA_CREDIT",
      "cardUsageType" : "CREDIT",
      "cardScheme" : "VISA",
      "cardCategory" : "CREDIT",
      "maskedPan" : "411111******1111",
      "expiryDate" : "1226",
      "issuer" : "UNKNOWN",
      "issuerCountry" : "GBR",
      "cardHolderName" : "Mr Test",
      "source" : "GOOGLEPAY"
    },
    "billingAddress" : {
      "line1" : "Flat 1 ",
      "line2" : "Cauldron house",
      "line3" : "A Street",
      "line4" : "Twertonia",
      "city" : "Bath",
      "region" : "Somerset",
      "postcode" : "BA1 234",
      "country" : "United Kingdom",
      "countryCode" : "GBR"
    },
    "paymentClass" : "CARD",
    "reuse" : {
      "storage" : "NEW",
      "agreement" : "ADHOC",
      "receivedSchemeReference" : "110gbp62dd46a82cc14c0NCee1000z00"
    }
  },
  "customFields" : {
    "fieldState" : [ ]
  },
  "threeDSecure" : {
    "scheme" : "VERIFIED_BY_VISA",
    "status" : "AUTHENTICATED",
    "enrolmentIndicator" : "Y",
    "enrolmentStatus" : "ENROLLED",
    "enrolmentDateTime" : "2021-05-12T17:19:22.787+01:00",
    "authenticationIndicator" : "Y",
    "authenticationStatus" : "AUTHENTICATED",
    "xid" : "00000000013770307915",
    "eci" : "05",
    "version" : 1,
    "protocolVersion" : "1.0.2",
    "versionsAttempted" : [ {
      "version" : 2,
      "availability" : "AVAILABLE"
    }, {
      "version" : 1,
      "availability" : "AVAILABLE"
    } ]
  },
  "customer" : {
    "id" : "10503",
    "merchantRef" : "mer_cust_131241412"
  },
  "transaction" : {
    "transactionId" : "13770307915",
    "merchantRef" : "mer_txn_1234556",
    "merchantDescription" : "Sample Transaction",
    "status" : "SUCCESS",
    "stage" : "COMPLETE",
    "type" : "PAYMENT",
    "amount" : 1000.00,
    "consumerSpend" : 1000.00,
    "currency" : "GBP",
    "transactionTime" : "2021-05-12T17:19:22.231+01:00",
    "receivedTime" : "2021-05-12T17:19:22.231+01:00",
    "customerInitiated" : true
  },
  "outcome" : {
    "status" : "SUCCESS",
    "reasonCode" : "S100",
    "reasonMessage" : "Authorised"
  },
  "strongCustomerAuthentication" : {
    "transactionType" : "GOODS_OR_SERVICES"
  },
  "trace" : "TdDXb0oQN-b8kVtd6z64_AQ",
  "link" : [ {
    "rel" : "transaction",
    "href" : "https://secure.mite.pay360.com/acceptor/rest/transactions/111111/13770307915"
  } ]
Process Android device token payment

POST /acceptor/rest/transactions/{instId}/payment
{
  "transaction" : {
    "currency" : "GBP",
    "amount" : 1000.0,
    "description" : "Sample Transaction",
    "merchantRef" : "mer_txn_1234556",
    "commerceType" : "ECOM"
  },
  "paymentMethod" : {
    "googlepay" : {
      "apiVersion" : "2.0",
      "paymentData" : {
        "token" : "{\"signature\":\"MEQCIC6X7dBK/aDqzbV+kfAgr6zDWkvBOco2eVIvtE8uywC0AiBcuh9IU2zTvzpvka2EJb1RzTlC7hKsDYUCsE8mLnP46A\\u003d\\u003d\",\"intermediateSigningKey\":{\"signedKey\":\"{\\\"keyValue\\\":\\\"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3ylg/VC+JOe89+7X3sRmVQyP1tnQ78ZeRzAQFfjk8+1Tenx8i0BQBh/L6E0eMtIsbaYpY9ADz5k3bOOQyUmOtg\\\\u003d\\\\u003d\\\",\\\"keyExpiration\\\":\\\"1621652902428\\\"}\",\"signatures\":[\"MEYCIQD3km1nISvDudS/yo9SdLgrRSYO/ZO35/7NBla+IjRyngIhAPg3Dyei0aEPlXuPOa1e674Y7pZLZPmPC67B/4TciB3c\"]},\"protocolVersion\":\"ECv2\",\"signedMessage\":\"{\\\"encryptedMessage\\\":\\\"tOWWejMA9w04BOOtfrI0zSQIJlMj4mu77+6yWDeqzYuU7SXQ+bB02DJoyIpByScqj27W6s8SqaLXDwgrZaUsHrevq5Ae8oTbJla/R9HthZhXsT2yM+e2dFfqxNnqngc2lfjusz4YvFu2Kx7P6leKZ96YRUFEdy1y9gtf2d9Jv0KZrOMh7+cuVDfdy84t1R4ay//dthPDeEffu7QeFhGFoaotctzRcWGeFKojfS1cYVJrljZNzvbd/1RbnuEIvuXOKwmrW/AQI9Cbxu9SIVVA6ZnyYGC/ultNqnsMerXLVCJYPyGYS3eOxp1S+YdBNZ0sXtLfzRBOgQeO3J/PQ75oX6h5Vs3IFx63eESeUfgRfoyKCdW6hLSx6sheBSrnSAzWAhzN7T1JZ3AH8T+RxMPDivUGkzjSJWSgmPmiURWAODLBI5Ls9/X/dK7Rm5w3KrtIoz64+2ap5Rn57sCf8Z/Dq4WUa1w4qNbas9A5yp0Ch91d6AMVB+pZg3vSQWUiwDBDET3owvwx/wLGj3fUZCN4pH6WR5ePIhDAuknLZDpkO8s4rSocIJVxZrG60Iy0nPJkQvwZ\\\",\\\"ephemeralPublicKey\\\":\\\"BEhJT8grtFPE4XXuQ0Y7KPZgV7SDL4VPNnEySFcgBjIR4bXTrlo84zLMmDE2tI8tYqHbEt50weOZrySJvKjnqtU\\\\u003d\\\",\\\"tag\\\":\\\"Q3AYAE65qbrbFJzN83tAU2R6slXvRqxn8/sOcVyYswc\\\\u003d\\\"}\"}"
      },
      "paymentMethod" : {
        "displayName" : "Visa •••• 2222",
        "network" : "VISA",
        "details" : "2222",
        "cardHolderName" : "Mr Test"
      }
    }
  },
  "customer" : {
    "merchantRef" : "mer_cust_131241412",
    "displayName" : "Mr Test",
    "billingAddress" : {
      "line1" : "Flat 1 ",
      "line2" : "Cauldron house",
      "line3" : "A Street",
      "line4" : "Twertonia",
      "city" : "Bath",
      "region" : "Somerset",
      "postcode" : "BA1 234",
      "countryCode" : "GBR"
    },
    "email" : "test@example.com",
    "dateOfBirth" : "1995-11-20",
    "telephone" : "0123 456 789",
    "defaultCurrency" : "GBP",
    "ip" : "212.58.253.67"
  }
}

HTTP/1.1 201
{
  "processing" : {
    "model" : "MANAGE",
    "authResponse" : {
      "acquirerName" : "Chase Paymentech",
      "gatewayReference" : "110gbp9421da9ad74aa0aACee1000z00",
      "gatewayCode" : "000.000.000",
      "gatewayMessage" : "Transaction succeeded",
      "status" : "AUTHORISED"
    },
    "route" : "PAYON"
  },
  "paymentMethod" : {
    "registered" : true,
    "googlepay" : {
      "displayName" : "Visa •••• 2222",
      "cardScheme" : "VISA",
      "savedAccountToken" : "MT_QR7nYNupRz-bpKFDt1pFSA",
      "cardDetails" : "2222",
      "cardHolderName" : "Mr Test"
    },
    "billingAddress" : { },
    "paymentClass" : "CARD",
    "reuse" : {
      "storage" : "NEW",
      "agreement" : "ADHOC",
      "receivedSchemeReference" : "110gbp9421da9ad74aa0aACee1000z00"
    }
  },
  "customFields" : {
    "fieldState" : [ ]
  },
  "customer" : {
    "id" : "10503",
    "merchantRef" : "mer_cust_131241412"
  },
  "transaction" : {
    "transactionId" : "13770307916",
    "merchantRef" : "mer_txn_1234556",
    "merchantDescription" : "Sample Transaction",
    "status" : "SUCCESS",
    "stage" : "COMPLETE",
    "type" : "PAYMENT",
    "amount" : 1000.00,
    "consumerSpend" : 1000.00,
    "currency" : "GBP",
    "transactionTime" : "2021-05-14T10:29:20.910+01:00",
    "receivedTime" : "2021-05-14T10:29:20.910+01:00",
    "customerInitiated" : true
  },
  "outcome" : {
    "status" : "SUCCESS",
    "reasonCode" : "S100",
    "reasonMessage" : "Authorised"
  },
  "trace" : "T5Pmj1c-uQgxRMa-gl-z3ZQ",
  "link" : [ {
    "rel" : "transaction",
    "href" : "https://secure.mite.pay360.com/acceptor/rest/transactions/111111/13770307916"
  } ]
Process a saved account token payment from a Google Pay non-tokenized card payment method (FPAN)

POST /acceptor/rest/transactions/{instId}/payment
{
  "transaction" : {
    "currency" : "GBP",
    "amount" : 1000.0,
    "description" : "Sample Transaction",
    "merchantRef" : "mer_txn_1234556",
    "commerceType" : "ECOM"
  },
  "paymentMethod" : {
    "googlepay" : {
      "savedAccountToken" : "MT_KzyCn12bSmSAa5JUPx8zhw"
    }
  },
  "customer" : {
    "merchantRef" : "mer_cust_131241412",
    "displayName" : "Mr O Whatasillyname",
    "billingAddress" : {
      "line1" : "Flat 1 ",
      "line2" : "Cauldron house",
      "line3" : "A Street",
      "line4" : "Twertonia",
      "city" : "Bath",
      "region" : "Somerset",
      "postcode" : "BA1 234",
      "countryCode" : "GBR"
    },
    "email" : "test@example.com",
    "dateOfBirth" : "1995-11-20",
    "telephone" : "0123 456 789",
    "defaultCurrency" : "GBP",
    "ip" : "212.58.253.67"
  }
}

HTTP/1.1 201
{
  "processing" : {
    "model" : "MANAGE",
    "authResponse" : {
      "acquirerName" : "Chase Paymentech",
      "gatewayReference" : "110gbpfa70a8f27e1b550ACee1000z00",
      "gatewayCode" : "000.000.000",
      "gatewayMessage" : "Transaction succeeded",
      "status" : "AUTHORISED"
    },
    "route" : "PAYON"
  },
  "paymentMethod" : {
    "registered" : true,
    "card" : {
      "cardToken" : "MT_KzyCn12bSmSAa5JUPx8zhw",
      "cardFingerprint" : "Q1MtNjNkYTQ2ZWItZjMxOS00NzE2LThmODQtMjZkZDUwZjE5NjA3",
      "new" : false,
      "cardType" : "VISA_CREDIT",
      "cardUsageType" : "CREDIT",
      "cardScheme" : "VISA",
      "cardCategory" : "CREDIT",
      "maskedPan" : "411111******1111",
      "expiryDate" : "1226",
      "issuer" : "UNKNOWN",
      "issuerCountry" : "GBR",
      "cardHolderName" : "Mr Test",
      "source" : "GOOGLEPAY"
    },
    "billingAddress" : { },
    "paymentClass" : "CARD",
    "reuse" : {
      "storage" : "EXISTING",
      "agreement" : "ADHOC",
      "originalSchemeReference" : "100gbpf39a2c237254943ACee1000z00",
      "receivedSchemeReference" : "110gbpfa70a8f27e1b550ACee1000z00"
    }
  },
  "customFields" : {
    "fieldState" : [ ]
  },
  "customer" : {
    "id" : "10503",
    "merchantRef" : "mer_cust_131241412"
  },
  "transaction" : {
    "transactionId" : "13770307926",
    "merchantRef" : "mer_txn_1234556",
    "merchantDescription" : "Sample Transaction",
    "status" : "SUCCESS",
    "stage" : "COMPLETE",
    "type" : "PAYMENT",
    "amount" : 1000.00,
    "consumerSpend" : 1000.00,
    "currency" : "GBP",
    "transactionTime" : "2021-05-17T16:59:02.793+01:00",
    "receivedTime" : "2021-05-17T16:59:02.793+01:00",
    "customerInitiated" : true
  },
  "outcome" : {
    "status" : "SUCCESS",
    "reasonCode" : "S100",
    "reasonMessage" : "Authorised"
  },
  "trace" : "TKjPYdxgebC1Qcx1UmpAaZQ",
  "link" : [ {
    "rel" : "transaction",
    "href" : "https://secure.mite.pay360.com/acceptor/rest/transactions/111111/13770307926"
  } ]
}

Process a saved account token payment from a Google Pay Android device token payment method (DPAN)

POST /acceptor/rest/transactions/{instId}/payment
{
  "transaction" : {
    "currency" : "GBP",
    "amount" : 1000.0,
    "description" : "Sample Transaction",
    "merchantRef" : "mer_txn_1234556",
    "commerceType" : "ECOM"
  },
  "paymentMethod" : {
    "googlepay" : {
      "savedAccountToken" : "MT_qRUctdGGQ6GYOoBUpOWUeQ"
    }
  },
  "customer" : {
    "merchantRef" : "mer_cust_131241412",
    "displayName" : "Mr O Whatasillyname",
    "billingAddress" : {
      "line1" : "Flat 1 ",
      "line2" : "Cauldron house",
      "line3" : "A Street",
      "line4" : "Twertonia",
      "city" : "Bath",
      "region" : "Somerset",
      "postcode" : "BA1 234",
      "countryCode" : "GBR"
    },
    "email" : "test@example.com",
    "dateOfBirth" : "1995-11-20",
    "telephone" : "0123 456 789",
    "defaultCurrency" : "GBP",
    "ip" : "212.58.253.67"
  }
}

HTTP/1.1 201
{
  "processing" : {
    "model" : "MANAGE",
    "authResponse" : {
      "acquirerName" : "Chase Paymentech",
      "gatewayReference" : "110gbpb2cf70be4eebf3bACee1000z00",
      "gatewayCode" : "000.000.000",
      "gatewayMessage" : "Transaction succeeded",
      "status" : "AUTHORISED"
    }
    "route" : "PAYON"
  },
  "paymentMethod" : {
    "registered" : true,
    "googlepay" : {
      "displayName" : "Visa •••• 2222",
      "savedAccountToken" : "MT_qRUctdGGQ6GYOoBUpOWUeQ",
      "cardHolderName" : "Mr Card Holder"
    },
    "billingAddress" : { },
    "paymentClass" : "CARD",
    "reuse" : {
      "storage" : "EXISTING",
      "agreement" : "ADHOC",
      "receivedSchemeReference" : "110gbpb2cf70be4eebf3bACee1000z00"
    }
  },
  "customFields" : {
    "fieldState" : [ ]
  },
  "customer" : {
    "id" : "10503",
    "merchantRef" : "mer_cust_131241412"
  },
  "transaction" : {
    "transactionId" : "10910753506",
    "merchantRef" : "mer_txn_1234556",
    "merchantDescription" : "Sample Transaction",
    "status" : "SUCCESS",
    "stage" : "COMPLETE",
    "type" : "PAYMENT",
    "amount" : 1000.00,
    "consumerSpend" : 1000.00,
    "currency" : "GBP",
    "transactionTime" : "2021-05-17T17:29:20.192+01:00",
    "receivedTime" : "2021-05-17T17:29:20.192+01:00",
    "customerInitiated" : true
  },
  "outcome" : {
    "status" : "SUCCESS",
    "reasonCode" : "S100",
    "reasonMessage" : "Authorised"
  },
  "trace" : "TA63BsEK46fNMx_sMhNdJ8w",
  "link" : [ {
    "rel" : "transaction",
    "href" : "https://secure.mite.pay360.com/acceptor/rest/transactions/111111/10910753506"
  } ]
}
API Endpoint
endpoint: /acceptor/rest/transactions/{instId}/payment
method: POST
summary: process Payment

parameters:

Name
Data Type
Description
instId
The installation id
request body:
{
browserInfo {
userAgentHeader string
The Customer’s user agent.
}
sessionId string
Your reference for the Customer’s session.
transaction { Mandatory
currency string
Mandatory
The currency of your Customer’s transaction. Use the 3 character ISO-4217 code.
amount float
Mandatory
The amount of your Customer’s transaction.
commerceType string
Mandatory
Possible Values: ECOM, MOTO, CA
The commerce type for your Customer’s transaction.
channel string
Possible Values: WEB, MOBILE, SMS, RETAIL, MOTO, IVR, OTHER
The sales channel for your Customer’s transaction.
merchantRef string
Your reference for the transaction. Max length: 255. It’s recommended that you keep this unique.
deferred boolean
Indicates if you want the Payment to be Authorised and Captured separately.
recurring boolean
Set this field if you want to start a Continuous Authority relationship from this transaction.
description string
The description of the transaction. Maximum length: 255.
}
locale string
The ISO-639-1 code for your Customer’s locale.
customer {
id string
Our ID for the Customer where they are already registered with us.
update boolean
Indicates if you want to update the Customer’s details with the transaction.
email string
Email address for the Customer.
merchantRef string
Conditional
Your reference for the Customer. Not required if registered is set to false, mandatory otherwise.
dob string
Date of birth for the Customer.
billingAddress { The address of the Customer.
line1 string
Line 1 of the Customer’s address.
line2 string
Line 2 of the Customer’s address.
line3 string
Line 3 of the Customer’s address.
line4 string
Line 4 of the Customer’s address.
city string
City of the Customer’s address.
region string
Region of the Customer’s address.
postcode string
Post Code of the Customer’s address.
countryCode string
The 3 character ISO-3166-1 code for the Customer’s address country
}
displayName string
Conditional
The Customer’s name. Not required if registered is set to false, mandatory otherwise.
telephone string
Telephone number for the Customer.
ip string
The Customer’s IP address.
registered boolean
Indicates if we should register your customer; false if you do not wish to register your customer, otherwise set to true, default value is true.
}
financialServices { Mandatory for UK/Europe-based MCC 6012/6051/some 7299 merchants
dateOfBirth string
Mandatory for UK/Europe-based MCC 6012/6051/some 7299 merchants
Date of birth of the loan recipient, in YYYYMMDD format. For example, for Jan 2nd, 1980, this would be “19800102”.
surname string
Mandatory for UK/Europe-based MCC 6012/6051/some 7299 merchants
Surname of the loan recipient; up to six characters, excluding numbers or special characters. If the name is longer than six characters, then provide the first six. For example, for “Smith”, this would be “Smith”; for “Williams”, this would be “Willia”.
accountNumber string
Mandatory for UK/Europe-based MCC 6012/6051/some 7299 merchants
Account number used to identify the customer or loan. If this is a PAN, then provide the first six and last four digits of the PAN. Otherwise, provide up to ten characters of the account number.
postCode string
Mandatory for UK/Europe-based MCC 6012/6051/some 7299 merchants
First part of the postal code of the loan recipient; up to six characters. For example, if the postal code is “EC2A 1AE”, this would be “EC2A”.
}
transactionOptions {
sendEmailReceipt boolean
If true, an email receipt will be sent for this transaction. If false, no receipt will be sent. If not present, your account configuration determines if an email is sent.
}
paymentMethod { Mandatory
googlepay { Mandatory
All of the data in this section is returned in the Google Pay payment method data response.
apiVersion Mandatory
string
paymentData { Mandatory
token Mandatory
string
}
paymentMethod { Mandatory
displayName Mandatory
string
network Mandatory
string
details Mandatory
string
cardHolderName Mandatory
string
}
savedAccountToken string
The unique payment method token from a previously successful Google Pay transaction. The token can represent either a Google Pay non-tokenized card (FPAN) or an Android device token (DPAN) payment method.
}
registered boolean
Indicates if the supplied payment method should be registered. If no value is supplied true is assumed.
billingAddress { The billing address of the Customer. We’ll save the billing address when the customer makes their first payment. Providing a billing address for subsequent payments will update the address we’ve saved if you send new, empty or no values for each field.
line1 string
Line 1 of the Customer’s billing address.
line2 string
Line 2 of the Customer’s billing address.
line3 string
Line 3 of the Customer’s billing address.
line4 string
Line 4 of the Customer’s billing address.
city string
City of the Customer’s billing address.
region string
Region of the Customer’s billing address.
postcode string
Post Code of the Customer’s billing address.
countryCode string
The 3 character ISO-3166-1 code for the Customer’s billing address country.
}
}
}
response:
{
clientRedirect { Information about where to send your customer in the case of 3DS or a Callback.
frame string
Possible Values: CONTAINER, TOP
The redirect type when the transaction is set to suspend and redirect to a new URL.
pareq string
Returned when the transaction is suspended for 3DS authorisation.
url string
The URL the Customer should be redirected to.
}
paymentMethod { Information about the Payment Method used in the request.
card { This section will be returned for all Google Pay non-tokenized card payments.
cardToken string
The token for the card.
cardHolderName string
The Cardholder’s name.
issuer string
The Issuer of the card.
maskedPan string
The masked card number. eg. 123456******1234
cardFingerprint string
An identifier for the card number. If multiple customers register cards with the same PAN they will get different card tokens, but the card fingerprint will be the same for them all.
issuerCountry string
The country of the card Issuer.
expiryDate string
The expiry date of the card. Formatted as MMYY.
cardType string
The type of card. Eg. MC_DEBIT, VISA_CREDIT, AMEX.
cardUsageType string
The usage type of card. Eg. DEBIT, CREDIT.
cardScheme string
The scheme of card. Eg. VISA, MASTERCARD, AMEX.
cardCategory string
The category of card. Eg. CREDIT, DEBIT, CORPORATE, BUSINESS.
cardNickname string
The name the Customer provided for their Card to allow easy selection where they registered multiple cards.
source string
This will always be GOOGLEPAY.
}
googlepay { The section will be returned for all Google Pay Android device token payments.
displayName string
The display name Google Pay uses for this card (e.g. Visa •••• 1111)
cardScheme string
The card scheme (VISA, Mastercard, Amex, etc) 
cardDetails string
Descrptive details of the card as provided by Google Pay. This will always be the last 4 digits of the card number
cardHolderName string
The cardholder name for the Google Pay payment method
savedAccountToken string
The unique token for the payment method, returned when a card is registered. A savedAccountToken will be returned for both Google Pay non-tokenized card (FPAN) and Android device token (DPAN) payment methods and can be used to make subsequent payments of that type./span>
}
paymentClass string
The classification of payment method used. This will always be CARD for Google Pay transactions.
billingAddress { The billing address of the Customer. Will be used for AVS checks. We’ll save the billing address when the customer makes their first payment. Providing a billing address for subsequent payments will update the address we’ve saved if you send new, empty or no values for each field.
line1 string
Line 1 of the Customer’s billing address.
line2 string
Line 2 of the Customer’s billing address.
line3 string
Line 3 of the Customer’s billing address.
line4 string
Line 4 of the Customer’s billing address.
city string
City of the Customer’s billing address.
region string
Region of the Customer’s billing address.
postcode string
Post Code of the Customer’s billing address.
country string
Country name of the Customer’s billing address.
countryCode string
The 3 character ISO-3166-1 code for the Customer’s billing address country.
}
}
transaction {
transactionId string
Our ID for the transaction.
deferred boolean
Indicates if the Payment capture is deferred.
merchantRef string
Your reference for the transaction.
merchantDescription string
The description of the transaction provided in the request.
status string
Possible Values: SUCCESS, FAILED, PENDING, EXPIRED, CANCELLED, VOIDED
The current state of the transaction.
type string
Possible Values: PAYMENT, PREAUTH, CAPTURE, CANCEL, REPEAT
Indicates the type of the transaction.
amount float
Indicates the requested amount of the transaction.
consumerSpend float
Indicates the actual amount of the transaction. This will be zero for any type of INITIALIZE transaction, deferred transactions, and rejected transactions.
currency string
Indicates the currency of the transaction. Use the 3 character ISO-4217 code.
transactionTime string
The date and time we processed the transaction in ISO-8601 format.
receivedTime string
The date and time we received the transaction in ISO-8601 format.
commerceType string
Possible Values: ECOM, MOTO, CA
The Commerce Type of the transaction.
channel string
Possible Values: WEB, MOBILE, SMS, RETAIL, MOTO, IVR, OTHER
The Sales Channel of the transaction.
relatedTransaction { This field is not applicable for Payments. In case of Refunds it indicates the transaction that was refunded.
transactionId string
Our ID for the transaction that was original.
merchantRef string
Your reference for the transaction that was original.
}
}
processing { Information about the authorisation status of your transaction.
route string
The name of the processing engine your transaction was submitted to.
voidSuccessful boolean
Indicates if the transaction was voided by a Post Authorisation callback.
authResponse {
statusCode string
The code for the status received from the authoriser, if applicable.
acquirerReference string
The reference received from the authoriser for your transaction, if applicable.
acquirerName string
Name of the authoriser, if applicable.
message string
The message received from the authoriser, if applicable.
authCode string
The code received from the authoriser, if applicable.
gatewayReference string
The reference received from the processing engine.
gatewaySettlement string
The date the processing engine will settle the transaction. in YYYY-MM-DD format.
gatewayCode string
The code for the status received from the processing engine.
gatewayMessage string
The message received from the processing engine.
avsAddressCheck string
Possible Values: NOT_CHECKED, FULL_MATCH, NOT_MATCHED, NOT_PROVIDED
Results for the Address Verification checks, if applicable, if applicable.
avsPostcodeCheck string
Possible Values: NOT_CHECKED, FULL_MATCH, NOT_MATCHED, NOT_PROVIDED
Results for the PostCode Verification checks, if applicable.
cv2Check string
Possible Values: NOT_CHECKED, MATCHED, NOT_MATCHED
Results for the CV2 Verification checks, if applicable.
gatewayStatus string
The status received from the processing engine.
status string
Possible Values: AUTHORISED, DECLINED, REVERSED, REVERSE_FAILED, ERROR
The status received from the authoriser, if applicable.
}
}
threeDSecure { Information about the 3D Secure status of your transaction.
authenticationStatus string
Possible Values: AUTHENTICATED, ATTEMPTED, FAILED, ERROR
The status of 3DS authentication check.
authenticationIndicator string
Possible Values: Y, A, N, U
The indicator of the 3DS authentication status.
enrolmentDateTime string
The date and time the 3DS enrolment check was performed in ISO-8601 format.
scheme string
The scheme that processed the transaction for 3DS.
eci string
The eCommerce indicator for the transaction.
status string
Possible Values: AUTHENTICATED, BYPASSED, FAILED, NOT_ENROLLED, ENROLMENT_CHECK_FAILURE, INCOMPLETE, NOT_AVAILABLE, NOT_IMPLEMENTED
The overall 3DS result for the transaction.
xid string
The ID used during 3DS processing.
enrolmentIndicator string
Possible Values: Y, N, U
The indicator of the 3DS enrolment status.
enrolmentStatus string
Possible Values: ENROLLED, NOT_ENROLLED, UNABLE_TO_AUTHENTICATE
The status of the 3DS enrolment check.
}
customer { Information about the Customer.
id string
Our ID for the Customer.
merchantRef string
Your reference for the Customer.
}
financialServices { Information about the financial services.
dateOfBirth string
The Customer’s date of birth.
surname string
The Customer’s surname.
accountNumber string
The loan account number provided by the merchant, to the Customer.
postCode string
The postal code of the Customer’s billing address.
}
outcome { Information about the overal outcome of the request.
reasonMessage string
A message indicating the overall outcome of the request. This is where we’ll provide detailed reasons for any errors. In the case of a decline this message can be very general. There can be useful guidance to the cause of the decline in processing.authResponse.gatewayMessage.
status string
Possible Values: SUCCESS, FAILED
The overall outcome of the request.
reasonCode string
A code indicating the overall outcome of the request. Refer to Errors for more information.
}
}

Our Hosted solution has an integration to the Google Pay JavaScript API so you will not need to integrate directly with Google.

Using Google Pay on Hosted is no different from using Hosted with regular card payments; as long as your account is configured for Google Pay then you should see Google Pay as a payment option. See the Hosted tab on Payments for full details and example requests.

You should ensure that an email address is always set on your customer or provided in the initialisation request as this will be required for Google Pay non-tokenized card transactions that are required to go through 3-D Secure. Transactions may be rejected if this is not set.

Please note: Google Pay is only available when using a version two Hosted skin.

  • If you are using, or intend to use, a custom skin, make sure it's the right version. See Upgrading from skinning version 1 to version 2.
  • Our current default skin (id: 2) supports Google Pay. The legacy default (id: 1) does not.
  • For other skins we provide, please contact Support to confirm the version.