Broadleaf Microservices
  • v1.0.0-latest-prod

Verifone Reuse Tokens

While this module supports the execution of transactions with an encrypted card, when using this module with PaymentTransactionServices, our expectation is that Reuse Tokens are used for all Authorize or AuthorizeAndCapture transactions. To enforce this expectation, this module includes two services to automatically swap the encrypted card for Reuse Tokens when a Payment or SavedPaymentMethod are created in PaymentTransactionServices.

Swapping an Encrypted Card for Reuse Token when Creating a Payment

When creating a SavedPaymentMethod, VerifoneSavedPaymentMethodModificationService#modifyPaymentMethodPropertiesForCreate(…​) is used to exchange the encrypted card for a Reuse Token.

The encrypted card & secure card capture key public alias should be provided via the paymentMethodProperties map, using the MessageConstants.ENCRYPTED_CARD & MessageConstants.PUBLIC_KEY_ALIAS keys. From there, we leverage Verifone APIs to produce a Reuse Token & return it in the response map using the MessageConstants.REUSE_TOKEN key.

Swapping an Encrypted Card for Reuse Token when Creating a SavedPaymentMethod

When creating a SavedPaymentMethod, VerifonePaymentModificationService#modifyPaymentMethodProperties(…​) is used to exchange the encrypted card for a Reuse Token.

The encrypted card & secure card capture key public alias should be provided via the paymentMethodProperties map, using the MessageConstants.ENCRYPTED_CARD & MessageConstants.PUBLIC_KEY_ALIAS keys. From there, we leverage Verifone APIs to produce a Reuse Token & return it in the response map using the MessageConstants.REUSE_TOKEN key.