In order to collect payments, will need to have an account setup with PaySimple.
Setup
- The organization backend needs to have PaySimple API Username and secrets setup and marked as active.
General
- 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 three 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.
- Payment Links: Creates a URL to make a payment or scan a QR Code that can be sent to a customer.
- 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.
- Failed/Declined Payments
- Failed Payments do not get collected and will not be added to their respective CRM (Salesforce or MarketSharp).
- More data about the failed payment can be found in their respective payment processor such as PaySimple.
- Payments time-out on the page after 5 minutes.
- You can adjust PaySimple settings including company emails and customer emails
- Sign into PaySimple > Settings > Account Settings > Put email in Transaction Receipts. To have the customer receive a receipt, they need to tap the "Send notification to the customer" checkbox.
MarketSharp
- 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
i360 Classic
- Payments are collected on Sale object with embedded payments.
- Once a payment is complete, the following happen
- The Prospect is updated with the PaySimple CustomerId for future use.
- A Receipt & Adjustment is added to Sale with the PaySimple transaction details.
- Payment Types
- Add Payment: Adds a Receipt & Adjustment record to the Sale.
- Collect Payment: Processes credit card or ACH payment, adds to PaySimple and then adds a Receipt & Adjustment 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.
- Payment Links
- When signing up to use Payment Links or Hosted Payments, users will need to add the following Fields to the Page Layout for the Profile the user is on:
- i360__Hosted_Payment_Link__c
- i360__Hosted_Payment_Link_ID__c
- i360__Payment_Link_Amount__c
- i360__Payment_Link_Sent_On__c
- When signing up to use Payment Links or Hosted Payments, users will need to add the following Fields to the Page Layout for the Profile the user is on:
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.
Notes
- 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.