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 device_data_from_the_client in the transaction.
- Ruby
result = gateway.transaction.sale(
:amount => "10.00",
:payment_method_nonce => nonce_from_the_client,
:device_data => device_data_from_the_client,
:options => {
:submit_for_settlement => true
}
)
if result.success?
# See result.transaction for details
else
# Handle errors
end
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."
- Ruby
result = gateway.payment_method.create(
:customer_id => "131866",
:payment_method_nonce => nonce_from_the_client
)
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.store_in_vault or options.store_in_vault_on_success. 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 →