The Mobile Payments app can be customized in the following ways:
Lock an Amount
On a Salesforce Transaction record, if you set the Mobile Lock Amount = "Yes", the Mobile Payments app will not allow the Amount value to be changed for that Transaction.
Skip the Intro Screen
On a Salesforce Transaction record, if you set the Mobile Skip Intro Screen = "Yes", the Mobile Payments app will not show the Intro screen (Description, Amount, Currency, etc) for that Transaction.
Set Payment Methods
If values are set on the Transaction Accepted Payment Methods field or the Payment Gateway Accepted Payment Methods field, only the set Payment Methods will be available for the selected Payment Gateway or Transaction.
The Accepted Payment Methods fields are evaluated in the following order:
If the Transaction Accepted Payment Methods field is set, use those values for the Transaction.
Otherwise, if the Payment Gateway Accepted Payment Methods field is set, use those values for the Transaction.
If neither of those fields are set, all Payment Methods are available for use.
Using Tap to Pay
Users can now set Accepted Payment Methods = "Tap to Pay" on the Payment Gateway, Transaction, and Payment User Override objects.
Require an Existing Transaction for Mobile
The Require Existing Transaction for Mobile field on the Payment Gateway record is available in the Mobile Payments app for Android devices. This setting blocks users from processing a payment in the app if there isn’t an existing Transaction in Salesforce before the app is launched.
If this field is checked and a user tries to capture a payment from the Mobile Payments app, the user will get an error.
iOS Mobile Save Reusable Payment Methods
Important Notes
We only support this feature on iOS mobile devices and for Stripe payment gateways. To use this feature, you must have Version 2.0.2 of the Mobile Payments app and Version 6.42 of the Payments package.
The iOS Mobile Payments app’s user interface now includes a “Save card for future payments” checkbox.
When submitting a payment via a card reader or by typing in a card’s information, users can check the checkbox to allow their card information to be saved and reused for future payments. A message will appear in Stripe indicating the user has given consent for the card’s information to be stored and used for future payments.
If the checkbox is not checked, no card information will be saved.
Admins can enable or disable this feature using the custom attribute “Enable_Reusable_Payments.” For example, the following will occur if the mobile device is offline
If the Payee checks "Save card for future payments," then the Payment Method Status will be set to "Valid."
If the Payee does not check the "Save card for future payments" checkbox, then the Payment Method Status will be set to "One-time."
You will need to connect to a card reader at least once while connected to the internet before attempting to collect offline payments.
Use Case
A field engineer must collect a payment at a customer's home. Now, the customer can consent to their payment information being saved and stored as a reusable Payment Method in Salesforce. The field engineer’s organization can then charge the same Payment Method for items such as a subscription or a payment schedule for a service.
Add “Enable_Reusable_Payments” to your Org
Go to Setup.
In the Quick Find box, search for and click “Manage Connected Apps.”
Click Edit next to “Blackthorn | Mobile Connected App.”
Click New next to Custom Attributes.
Set Attribute key = ENABLE_REUSABLE_PAYMENTS.
Set Attribute Value = "1" . Make sure to include the quotes.
Click Save.
Open the Mobile Payments app and log out.
Log in to the app.
Now, when a payment is entered, the user can check the “Save card for future payments” checkbox.
To disable the custom attribute, an Admin must delete the “Enable_Reusable_Payments” custom attribute.