In order to collect payments, will need to have an account setup with PaySimple.
- The organization backend needs to have PaySimple API Username and secrets setup and marked as active.
- In order to collect a Payment:
- It is recommended to have a balance due. Negative balances cannot be collected.
- Payments should be collected within 5 minutes. This is due to the PaySimple checkout token being valid for only 5 minutes. (https://documentation.paysimple.com/docs/paysimplejs-getting-started#step-3-fetch-checkout-token-client-side). User will see "Complete payment collection by" with a timestamp of when they will need to complete a payment before that time.
- When the Collect Payment button is tapped, the customers First Name, Last Name, Email address and Balance Due will be pre-populated. Some other helpful information may be included in the Notes field.
- There are two ways to collect payments: Adding a payment record and processing a transaction.
- Add Payment: Adds a record that a payment was collected. This is typically used when cash is given or a hand written check is given.
- Collect Payment: Process a payment through a payment processor such as PaySimple. This is typically used when a credit card transaction needs process or a direct ACH payment is immediately transferred.
- Stored Payment Methods
- When a payment is collected, the Credit Card or ACH account is linked to that customer. Future transactions for this customer can use this same account.
- New Customers - Any payment method becomes a stored payment method.
- Existing Customers - All existing payment methods are listed and can be selected or a new payment method can be added.
- Payments are Collected on the Job object with embedded payments only.
- When the payment is collected on the Job object, a payment will be created in PaySimple and a payment created under Job Financials for the Job.
- If a payment is not collected on a Job or the Job doesn't have a contract, the payment will appear on the Desktop Payment Manager for linking to proper Job.
- Payment Types
- Add Payment: Adds a Payment to the Job Financials
- Collect Payment: Processes credit card or ACH payment, adds to PaySimple and then adds a Payment to the Job Financials
- Payments are collected on Sale object with embedded payments.
- Once a payment is complete, the following happen
- The Prospect (Classic) or Contact (Lightning) is updated with the PaySimple CustomerId for future use.
- A Receipt & Adjustment (Classic) or Payment (Lightning) is added to Sale with the PaySimple transaction details
- Payment Types
- Add Payment: Adds a Receipt & Adjustment (Classic) or Payment (Lightning) record to the Sale.
- Collect Payment: Processes credit card or ACH payment, adds to PaySimple and then adds a Receipt & Adjustment (Classic) or Payment (Lightning) record to the Sale
- Additional Details
- The Prospect object fields: i360__PaySimple_Customer_Id__c need proper field level security set (Profiles that need access should have Visible = true ). This is important for recurring customers and stored payment methods.
- When collecting payments between multiple PaySimple accounts, it is possible the stored i360__PaySimple_Customer_Id__c is from another PaySimple organization which results in an 500 internal server error. This can happen is if the customer has a payment collected in one Market Segment with its own PaySimple Settings and then trying to collect a Payment for the Customer Id that has an Appointment in a different Market Segment. PaySimple Customer Id's cannot be used across multiple PaySimple organizations.
i360 Classic PaySimple Settings
- i360 Classic stores PaySimple credentials in an object called PaySimple Settings. These settings allow for a Salesforce organization to have multiple PaySimple accounts. The PaySimple Setting can specify a Market Segment so can collect a payment on Sale and have the payment go to a specific PaySimple account.
- The Salesforce organization must have at least one PaySimple Setting, typically without a Market Segment, in order to collect payments.
- For PaySimple embedded payments, the PaySimple account that is used is based on the following:
- The Market Segment on the Sale (formula field to the Appointment objects Market Segment2 (i360__Market_Segment2__c) field.) is used to determine which PaySimple Setting is used.
- When the PaySimple Setting does not have a Market Segment, this is considered the default PaySimple account.
- When the PaySimple Setting has a Market Segment, and a Sale is in that Market Segment, the first matching PaySimple Setting is used.
i360 Go users collect payments with PaySimple AppConnect. This requires having AppConnect installed on the device and the user signed into a single PaySimple account. By using embedded payments and not AppConnect, consider the following:
- Can collect payments within the app without having to install another app and sign in.
- Can collect payments respecting multiple Market Segments/several PaySimple accounts (i360 Classic only).
- Embedded payments do not accept swiping of cards. Need to manually type in credit cards and manually process both ways for ACH payments.
- After a payment is collected for a new customer, the user should appear as a customer in PaySimple.
- After a payment is collected for an existing customer, the payment should appear as a new PaySimple linked to the existing customer in PaySimple.
- After a payment is added or updated, the Sale/Job should be refreshed with the adjusted Balance due.