Chargent was designed from the ground up to be simple to implement and comprehensive in its functionality. Native to Salesforce, we’ve developed Chargent to take advantage of Salesforce’s object architecture. As such, it is helpful to understand Chargent’s objects and design philosophy to get the most out of your payment processing.
This page is designed for readers familiar with Salesforce’s architecture, but if you’d like to learn more, see Overview of Salesforce Objects and Fields. We’ll discuss Chargent’s objects, how Chargent integrates with Salesforce’s objects, and your transaction’s journey as it makes its way to your gateway and back again.
Object Relationships #
Salesforce’s architecture is built on parent/child relationships. In Salesforce, the Account object is the primary hub for your payments, acting as a parent to multiple child objects, such as Contacts, Opportunities, and Cases. Similarly, at the top of Chargent’s hierarchy is the Chargent Orders object. As the hub for all payments in Salesforce, the Chargent Order object houses your payment-related information as fields or object relationships. Regarding Salesforce objects, your Chargent orders can be associated with an account, contact, and/or any object in Salesforce from which you plan to take payments (see Chargent Anywhere). The diagram below demonstrates how the Chargent Order object relates to Salesforce’s standard or custom objects.
Additionally, your Chargent orders are related to various objects included with Chargent, such as Gateways, Transactions, Email Notifications, Payment Requests, and more. For more information about Chargent’s objects, see the Chargent Objects section below. To best understand Chargent’s object relationships, we’ll focus on the big three: Chargent Orders, Gateways, and Transactions.
Since Chargent orders are your hub for processing payments, they include all your payment details, such as credit card or bank account number, billing information, payment amount, and recurring payment details (see Recurring Billing). Additionally, the Chargent order includes a lookup field to Chargent’s gateway object, representing a specific gateway account created using Gateway Setup Wizard. You can have multiple gateway records, but each Chargent order can only be related to one at a time.
When you charge a customer, the information from the Chargent order is sent to your chosen gateway. The response returned by the gateway creates a transaction record related to the Chargent Order, representing a single transaction. The transaction record includes information about the gateway response, error codes, your gateway’s transaction ID, and the gateway used. A Chargent order can be the parent of one or multiple transactions.
To maintain a 360-degree view of your payments, Chargent orders, and transactions are also related to Chargent’s other essential objects, such as Chargent Payment Methods, Payment Requests, and Email Notifications.
Chargent Objects #
Your installation of Chargent includes many objects that work together to create and track your transactions. Some objects focus on basic functionality, such as Chargent Orders, Gateways, and Transactions. Other objects are feature-specific, such as Chargent Payment Methods and Chargent Automated Collections.
See Chargent’s objects below, categorized by feature. Click the link next to the object’s name for more information about the object and its field definitions.
Primary Chargent Objects
The primary Chargent three Chargent objects that users or admins will typically interact with. See the previous section for more information about how these objects work.
Object | Description |
---|---|
Chargent Order | The hub of Chargent. The Chargent Order object contains all information about a specific order, whether recurring or one-time. A Chargent Order controls your recurring billing frequency, determines whether or not to initiate Automated Collections, and provides a trail to most of Chargent’s other objects. |
Chargent Transaction | Captures the information returned by the gateway after a payment is processed. Responses are gateway-specific, so contact your gateway provider to learn about a specific gateway response. |
Gateway | Configuration object. The administrator should create one gateway record for each gateway account, including test accounts. Gateway records are created using the Gateway Setup Wizard. |
Automated Collections Objects
Chargent Automated Collections is an add-on that can automatically contact your customers, retry payments, or send a payment request when your customers miss a payment. These objects are only available when Automated Collections is enabled.
Object | Description |
---|---|
Chargent AC Configuration | Contains configuration choices for Automated Collections records. |
Chargent AC Stages Configuration | Contains configuration choices for Automated Collections Stage records. |
Chargent Automated Collections | Created when a Chargent order enters Automated Collections. Tracks Automated Collections processes, including current status, stage execution dates, and related Chargent Order. |
Chargent Automated Collections Stage | Represents a stage that occurred during an instance of the Automated Collections process, including information about the stage number and whether or not a payment has been collected. |
Payment Method Objects
If you have payment methods enabled, Chargent changes your data model slightly. Review the diagrams linked below instead of the basic ones above. For more information, see Understanding Payment Methods Architecture.
Object | Description |
---|---|
Chargent Log | The Chargent Log object retains the history of all actions related to a specific Chargent Payment Method. |
Chargent Payment Method | Payment Methods are items that may be used to make or take payment. |
Chargent Token | Represents the payment information stored securely at your gateway. Tokens replace sensitive payment data with a token to reduce the scope of your PCI compliance. For more information, see Understanding Tokenization. |
Supplemental Chargent Objects
While not part of Chargent’s primary three objects, these objects are also integral to the functionality of Chargent. See the descriptions below for information about how these objects are used.
Object | Description |
---|---|
Account Updater Log | Each record represents an Account Updater request related to an expiring credit card. For more information, see Account Updater. |
Chargent Aggregation | Stores aggregation data used by various Chargent features, including the Automated Collections Dashboard. |
Email Notification | Designed to alert you of any errors in your Salesforce org related to Chargent. Email Notifications provide the data for Unresolved Transactions. For more information, see Understanding Unresolved Transactions. |
Payment Request | Stores information related to the Payment Request feature, tracking the status and pay link related to a specific request. For more information, see Payment Request. |
Payment Source | Used for ACH Validation functionality when Payment Methods is disabled. The Chargent Payment Methods object has replaced the Payment Source object for orgs that have Payment Methods enabled. Learn more about Payment Methods. |
Record Ownership #
The user creating a Chargent order becomes the record’s owner. Depending on your security settings, Admins are the only additional users who can access these records.
- In the case of a Payment Request, the payform is accessed and paid by a Site Guest User. The user who initiated the request, not the Site Guest User, is granted ownership of the payment method. For more information, see Payment Methods Ownership.
- For more information about record ownership in Salesforce, see Behind the Scenes of Record Ownership in Salesforce.
- To learn about changing ownership, see Change a Record’s Owner.
Chargent Payment Process #
The following diagrams show the path of a transaction when a user clicks the charge button in Salesforce. There are two potential processes, depending on whether or not tokenization is enabled. To learn more about tokenization, see Understanding Tokenization.
Without Tokenization
Full resolution (PDF): Chargent Payment Process – Without Tokenization
- Your users or customers submit a payment over an encrypted connection from the browser to Salesforce.
- Chargent forwards the request over an encrypted connection from Salesforce to your gateway.
- Your gateway processes the transaction using the payment information.
- Your gateway returns the transaction results to Salesforce, which Chargent stores in a transaction record.
- Chargent returns a message about the transaction result to the user’s browser.
With Tokenization
Full Resolution (PDF): Chargent Payment Process – With Tokenization
- Your users or customers submit a payment over an encrypted connection from the browser to Salesforce.
- Chargent forwards the request over an encrypted connection from Salesforce to your gateway.
- If no token exists, your gateway responds back with a token representing the payment information stored only at your gateway. The token is stored on the Chargent Order record and in the Token record in Salesforce.
- Chargent uses the stored token to send a “Charge” or “Authorize” request to your gateway.
- Your gateway recognizes the token and processes the transaction using the stored payment information.
- Your gateway returns the transaction results to Salesforce, which Chargent stores in a transaction record.
- Chargent returns a message about the transaction result to the user’s browser.
See Also
Setting Up Payment Methods
Payment Methods Duplication Management
Chargent’s Account and Contact Fields
Payment Method Fields