Masterpass
Server-Side Implementation
Creating transactions
Creating a Masterpass transaction is the same as creating any other transaction with a nonce.
Collect device data from the client and include the deviceDataFromTheClient in the transaction.
- Java
TransactionRequest request = new TransactionRequest()
.amount(new BigDecimal("10.00"))
.paymentMethodNonce(nonceFromTheClient)
.deviceData(deviceDataFromTheClient)
.options()
.submitForSettlement(true)
.done();
Result<Transaction> result = gateway.transaction().sale(request);
if (result.isSuccess()) {
// See result.getTarget() for details
} else {
// Handle errors
}
Vaulting Masterpass
Once you have been approved for recurring transactions, your customer's Masterpass card selection can be saved to your Vault and used for recurring transactions. If you attempt to vault a Masterpass card without first going through the approval process, you will get a validation error: "Nonce is not vaultable."
- Java
PaymentMethodRequest request = new PaymentMethodRequest()
.customerId("131866")
.paymentMethodNonce(nonceFromTheClient);
Result<? extends PaymentMethod> result = gateway.paymentMethod().create(request);
You can also save the customer's Masterpass card to your Vault at the same time as your transaction by using Transaction: Sale
with options.storeInVault or options.storeInVaultOnSuccess . You can create a recurring transaction by using Transaction: Sale
with recurring .
It is important to note that Masterpass does not support split shipments or one-off transactions with vaulted payment information. If you attempt to create a non-recurring transaction from a vaulted Masterpass card, you'll receive a validation error: "Vaulted cards from this payment method can only be used for recurring transactions."
Card verification
Card verification in the gateway is not supported with Masterpass. Masterpass automatically verifies a card when the customer adds it to their wallet.
Next Page: Testing and Go Live →