ACME/Salesforce Visualforce Guide
TABLE OF CONTENTS |
Visualforce Membership Sales
Use Cases
The Visualforce sales flow can be used to process memberships in-office by a Salesforce user in the Development or Membership departments. These memberships are typically received via mail or inbound call. The below membership actions can be performed for all types of memberships.
New Membership: a membership is added to a new or existing contact who has no membership history. This can be processed for an existing contact or as a gift.
Renew Membership: an existing membership is renewed for another term, at the same or different membership level.
Upgrade Membership: an existing membership is upgraded to a higher level during the current membership term. The member pays the difference in membership dues.
Downgrade Membership: an existing membership is downgraded to a lower level during the current membership term. The member is refunded the difference in membership dues (if applicable).
Cancel Membership: a membership is terminated prior to the expiration date.
Rejoin Membership: a membership which has lapsed beyond the renewal window is renewed for a new term, at the same or different membership level.
Additional use cases supported:
Donations: can also be processed using the sale flow in the Visualforce application. Users can add a donation to a membership order, or sell a donation as a stand alone order.
Member Card replacement: if a venue chooses to charge a customer for a new Membership Card, this sale can be processed in the Visualforce application.
ACME Settings
There is one configurable setting for Visualforce purchases, located in the ACME Settings tab. It allows you to control at a global level whether or not Order Summary Emails will be sent when making a sale through the Visualforce flows. This setting can be overridden on an order-by-order basis in the payments tab of the Visualforce sales flow. If you have configured ACME to also send a Digital Membership Card email, this setting will control those as well. Disabling the email here, or for an individual order, will prevent both the order summary and the digital cards email from being sent. Do not change any other values in this tab. We recommend that Sysadmins restrict access to this tab.
Adding Visualforce Buttons to Object Layouts
Contact Object - New Purchase
- When looking at a contact, open the "Edit Layout" menu.
- Select "Buttons", drag the Accept Donation and Purchase Membership to the Custom Buttons section of the layout to add to the Classic layout.
- Select Mobile & Lightning Actions and drag the Accept Donation and Purchase Membership to the Salesforce Mobile and Lightning Actions section to add them to the Lightning layout.
- Hit Save.
Membership Object - All Other Lifecycle Actions
- When looking at a membership, open the "Edit Layout" menu.
- Select "Buttons", drag the Renew, Upgrade, Downgrade, Cancel to the Custom Buttons section of the layout to add to the Classic layout.
- Select Mobile & Lightning Actions and drag the Accept Donation and Purchase Membership to the Salesforce Mobile and Lightning Actions section to add them to the Lightning layout.
- Hit Save.
Inputs
Existing Contact in Salesforce to which you want to: sell a membership, perform a lifecycle action or accept a donation
Mailed membership appeal responses
Inbound call from member
Outputs
Membership and Card(s) are created in Salesforce. Opportunity is created in Salesforce.
Membership and order data is sent to ACME in real time through the integration.
Membership and Card(s) are updated to contain the ACME database IDs, level IDs, price point IDs in real time.
On a schedule, the payment and financial data is sent back to Salesforce to update the Opportunity.
Salesforce membership communications can be produced based upon the membership data entered (e.g. Acknowledgement emails or letters, Membership Card fulfillment).
Salesforce membership reports can be generated with the data entered in the Visualforce flow.
Exceptions
The Visualforce flows may fail to process correctly under the following conditions:
A custom validation rule prevents data from being saved
A custom process prevents data from being saved
A custom required field prevents data from being saved
The running user does not have permissions to access an object or record type
Workflow Rules or Validation Rules do not exclude the ACME Integration user
ACME managed package picklist values have been changed or deleted
ACME managed package workflow rules or Outbound Messages have been changed or deleted
ACME records in the Product or PriceBook tables have been changed or deleted, or the Standard Pricebook has been deactivated
Values in the ACME Settings tab (with the exception of the Send Order Summary Email checkbox) have been changed
Data in the ACME Field Mappings table has been changed in ANY way
ACME External ID field values on any record have been changed or deleted
Membership level or offering settings have been changed in ACME
Venue’s internet is down
Interruption in ACME API connection
Controls
All membership processing rules are defined in ACME Back Office, including:
Qualified timeframe in which a membership can be renewed, rejoined, upgraded, downgraded or cancelled.
Eligible membership levels for upgrade or downgrade.
Membership price points
Verification/Validation Process
Membership and cards created in Salesforce and in ACME, with the ACME External IDs populated
Order data created in ACME
Opportunity created in Salesforce with line items and transactions
Data Flow Diagram
Visualforce Sales Guide
Purchase a New Membership
Look up the Contact record of the customer buying the Membership.
If no Contact exists, create one first. Include First and Last Name, and “Phone", “Email", or “Mailing Address" fields. Make sure that it has successfully synced to ACME by checking for a value in the ACME External Customer ID field before proceeding.
Click “Purchase Membership".
A “Confirm Member" screen will appear.
The Contact you select will be the primary cardholder.
NOTE: If the Membership is a gift, select the recipient's Household and Contact record.
NOTE: If you are selling a corporate/organization membership, please see the instructions for Corporate Membership.
Select Membership Level.
Select Membership Offering.
Continue to the “Manage Cards" screen.
The Primary Cardholder will be the Primary Contact you selected in Step 1. You can change the Name on Card field if you like.
If the Level allows, add one or more Secondary Cardholders to the Membership. Secondary Cardholders can come from existing Contacts, new Contacts, or can exist without having a Contact record (for minors, or guests). If you don't want to use these seco cards, some or all can be deleted before proceeding.
If you would like to name a Contact that does not yet exist, you can create one from this page. NOTE: you may only create Contacts within the same household as the primary cardholder from this screen.
You may manually edit an existing Membership Card later to add a named Contact.
Add a donation to the order (optional).
Enter payment information.
The address information defaults to Primary Cardholder's selected billing and primary member address information. You may change any of these fields.
The address of the Primary Cardholder will be saved in the member record in ACME Back Office. The billing information will be saved to the order.
You can choose to override the default Order Summary Email setting for this purchase by toggling the checkbox. This will also send membership cards by email, if that setting is configured in ACME. (This is set in Back Office; Membership > Levels > configured per Level and Offering in the “Channel Transaction Policies” tab.)
Confirm the order.
Complete the sale.
Once you've completed the sale, the customer will receive an Order Summary email (if configured). If the Membership Card Email is turned on in ACME Back Office for New Membership purchases via Salesforce (Membership > Levels > configured per Level and Offering in the “Channel Transaction Policies” tab), then they will receive an additional email with their Digital Membership Card(s).
Purchase a Corporate Membership
Ensure at least one corporate membership level is configured in ACME Back Office. Remember that levels, pricing, entitlements, etc are not stored or configured in Salesforce.
If the Organization does not exist in SFDC, first create a new Organization record-type Account.
Creating a new Organization Account in SFDC will create a new Organization record in ACME. Make sure it has fully synced by checking Salesforce for a value in the ACME External ID field.
If the person you wish to designate as the primary contact does not exist in SFDC, create them as a Contact under the organization. If the person does exist, they may be directly linked to the Account (through the standard lookup field), or they may have their own household Account as a result of being a member in their personal life. If the Contact belongs to a household Account, they will need to be linked to the organization via an Account-Contact record before you can sell a Corporate Membership in their name.
Account-Contact is the ACME object name. NPSP orgs will use a similar object called Affiliation to link Accounts and Contacts.
Click the Purchase Membership button on the Contact. This kicks off the Visualforce flow, which will default the first screen to the selected Contact and their primary Account. If the Contact is linked to the organization via Affiliation, change the Member Recipient picklist option to Organization linked to the Contact, then in the Account picklist select the correct organization (there may be more than one). Finally, re-select your Contact in the final Contact picklist.
Continue through the rest of the purchase steps 4-10 as described above.
Once you've completed the sale, the customer will receive an Order Summary email (if configured). If the Membership Card Email is turned on in ACME Back Office for New Membership purchases via Salesforce (Membership > Levels > configured per Level and Offering in the “Channel Transaction Policies” tab), then they will receive an additional email with their Digital Membership Card(s). Note, all membership cards for Corporate Memberships will be created as “Name on Card” cards only.
Renew, Upgrade, or Downgrade a Membership in Salesforce
It's also easy to modify an existing Membership through Salesforce.
Look up the Contact Record or Member Number.
Open up the associated Membership Record.
Click “Upgrade", “Downgrade", or “Renew".
The Upgrade and Downgrade buttons are for in-cycle transactions only. Use the Renew button if you also need to extend the membership term.
Select the desired Membership Level.
Select the desired Membership Offering.
Configure Membership Cards, if necessary. If the new Level allows for additional Cardholders, you can add them here. If the new Level accepts fewer Cardholders than are currently set up, you will have to remove the extra Cardholders before proceeding.
Take payment, if applicable. If Downgrading in-cycle, the refund will be sent to the original form of payment. Upgrades and Renewals will usually require payment.
Complete the sale.
Once you've completed the sale, the customer will receive an Order Summary email (if configured). If the Membership Card Email is turned on in ACME Back Office for the various Lifecycle Action purchases via Salesforce (Membership > Levels > configured per Level and Offering in the “Channel Transaction Policies” tab), then they will receive an additional email with their Digital Membership Card(s).
Cancel a Membership in Salesforce
Look up the Contact Record or Member Number.
Open up the associated Membership Record.
Click “Cancel".
You may see a message stating this membership is not available for cancellation. This could mean that it is ineligible for refund according to the configured lifecycle actions, or that the membership was originally imported, and ACME doesn't know how to issue a refund.
Choose the Refund Options.
A credit card refund will be refunded to the original payment card.
A cash or check refund will need to be handled by your finance office.
Confirm the Order.
Complete the transaction.
The former Member will receive an Order Summary email.
Charge a Donation only order in Salesforce
Open the Contact record for the person who wishes to give a donation.
Click “Accept Donation”.
In the list of Add Ons that appear, select the donation type the contact would like to give and click “Next”.
Insert payment information and then click “Next”.
If desired, a Campaign can be selected. The list of Campaigns is populated via a lookup field to the Campaign object in Salesforce. Note, the Campaign will be recorded in the Primary Campaign Source on the associated Opportunity but will not sync to Acme.
Confirm the Order and then click “Accept” to process the donation.
Charge a Replacement Membership Card fee in Salesforce
If a Member loses their card, you can use Salesforce to charge them a Replacement Card Fee. You will first have to have configured a Replacement Card Fee Add-on in ACME.
Look up the Contact Record or Member Number.
Open up the associated Membership Record.
Open the membership card that needs to be replaced.
Select add-on type “Membership Replacement Fee". The details should fill in.
Complete the sale.
The content of this document is owned by ACME Technologies, Inc. and is strictly confidential. Unauthorized use, disclosure, or copying of this information is prohibited.