Nue's object model is as an extension of the standard objects available in Salesforce while incorporating custom objects specifically tailored to Nue's unique business capabilities. The model contains essential entities such as Accounts, Products, Orders, Invoices, Credits, Usage, and more, allowing Nue to effectively manage its sales, customer success operations, and financial transactions. By leveraging both standard Salesforce objects and custom objects, Nue ensures seamless integration of its proprietary business logic with the robust capabilities provided by the Salesforce platform. This integration enables Nue to streamline processes, enhance productivity, and drive meaningful insights to propel its business forward.
Object Model Overview
The following diagram provides an overview of Nue's object model across multiple Nue applications, including Price Builder, Lifecycle Manager, Billing and Usage Accelerator.
Nue is a dual-platform system, where objects reside in both Salesforce and Nue Cloud Services. Objects and relationships marked in TEAL are standard objects in Salesforce with Nue extensions. These objects, with the exception of Opportunity and Opportunity Products, Quote and Quote Line Items, have their mirrored copies in Nue platform. Objects and relationships marked in PURPLE are Nue objects, and they are created as Custom Objects in Nue on Salesforce.
NOTE
In the Nue Object Model, when two objects have a many-to-many relationship, an intersection object is created to capture and store the relationship. For instance, the Account and Credit Pool objects have a many-to-many relationship, and to represent this relationship, an intersection object called Account Credit Pool is utilized. However, to maintain clarity in the object model diagram, these intersection objects are not depicted. Their presence and purpose are understood within the model's underlying structure but omitted from the visual representation to ensure simplicity and ease of understanding. |
Nue Objects
The following table outlines all Nue objects, organized by applications.
Access Object Metadata
Nue users can access the metadata - including relationships and fields - for all business objects in Nue.
Users can login to Nue and navigate to Settings → Business Objects, and see a list of objects in Nue. For any object in the list, if Salesforce API Name is not empty, the object has Salesforce as the primary data source.
Object Metadata API
Users can also access object metadata using Nue's Object Metadata API.
Get a list of all objects
Users can describe all Nue objects via the following metadata API:
curl --location 'https://api.nue.io/metadata/objects' \
--header 'apiAccessKey: {{apiAccessKey}}' \
--header 'Authorization: Bearer {{token}}'
Get the definition of an object
Users can get the object fields and relationships definition of a particular object using the following metadata API:
# You can also use wget
curl -X GET https://api.nue.io/v1/metadata/objects/{{objectAPIName}} \
-H 'Accept: */*' \
-H 'Authorization: Bearer {{access-token}}'
Price Builder
The following table outlines the objects in the Price Builder. For more detailed object model information of Nue Price Builder, please reference this article.
OBJECT NAME | OBJECT API NAME |
SALESFORCE OBJECT NAME | DESCRIPTION |
Unit of Measure | UOM | Ruby__UOM__c | Represents a definite magnitude of a quantity. |
Credit Conversion | CreditConversion | Ruby__CreditConversion__c | Defines the conversion rate between a product's UOM quantity dimension and a credit. |
Product | Product | Product2 | Defines a product or service that is manufactured or provisioned for sale. |
Product Option | ProductOption | Ruby__ProductOption__c | Defines the product optionality in a bundle product. |
Product Group | Feature | Ruby__Feature__c | Defines a set of products. A product group can be associated with more than one bundle product. |
Product Feature | ProductFeature | Ruby__ProductFeature__c | Defines a set of product functionalities. A feature can be associated with multiple products, while a product may contain multiple features. |
Bundle Suite | BundleSuite | Ruby__BundleSuite__c | Represents a list of active bundle products, ranging from bundles with basic product offering to bundles with more advanced product offerings. |
Bundle Suite Bundle | BundleSuiteBundle | Ruby__BundleSuiteBundle__c | Defines the relationship between a bundle suite and a bundle product. |
Product Price Tag | ProductPriceDimension | Ruby__ProductPriceDimension__c | Represents a price tag's association with a product. |
Product Option Price Tag | ProductOptionPriceDimension | Ruby__ProductOptionPriceDimension__c | Represents a price tag's association with a product option in a bundle product. |
Product Relationship | ProductRelationship | Ruby__ProductRelationship__c | Represents a product's relationship with another product, e.g., Upgrade, Inclusion, Exclusion |
Feature Price Tag | FeaturePriceDimension | Ruby__FeaturePriceDimension__c | Represents a price tag's association with a product group. |
Price Book | PriceBook | Pricebook2 | Represents a list of sellable products and their prices. |
Price Book Entry | PriceBookEntry | PricebookEntry | Represents a sellable product with its price listed in a price book. |
Price Tag | PriceDimension | Ruby__PriceDimension__c | Defines a tiered pricing or discounting scheme, which can be a quantity-based tiering, or term-based tiering. |
Price Tier | PriceTier | Ruby__PriceTier__c | Defines a price or discount tier, which can be either a Flat Fee tier, or a Per Unit tier. |
LIfecycle Manager
The following table outlines the objects in Lifecycle Manager. For more detailed object model information of Nue Lifecycle Manager, please reference this article.
OBJECT NAME | OBJECT API NAME |
SALESFORCE OBJECT NAME | DESCRIPTION |
Customer | Customer | Account | Represents an individual customer account, partner or organization |
Contact | Contact | Contact | Represents a contact, who is a person associated with a customer. |
Opportunity | N/A | Opportunity | Represents a sales deal in progress. |
OpportunityProduct | N/A | OpportunityLineItem | Represents a product or service you sell in a sales opportunity. |
Quote | N/A | Quote | Represents proposed prices, quantities and terms of products or services you sell in a sales deal. |
Quote Line Item | N/A | QuoteLineItem | Represents the proposed price, quantity and term of a product or service included in a quote. |
Line Bucket | N/A | Ruby__LineBucket__c | Represents a set of quote line items bucketed together for a purpose. |
Order | Order | Order | Represents a booking transaction between a company and a customer to provision services or deliver products with contracted quantities, prices, and terms. |
Order Product | OrderProduct | OrderItem | Represents the price, quantity, and term of a contracted product or service in an order. |
Line Price Tag | LinePriceTag | Ruby__LinePriceDimension__c | Records the relationship between a line item (a quote line item, or an order product) and a price tag, representing which price tag(s) are applied to which line item(s), and their price impacts. |
Subscription | Subscription | Ruby__Subscription__c | Represents a recurring product or service provisioned for a customer. A subscription of a product bundle may have children subscriptions and other assets and entitlements. |
Asset | Asset | Asset | Represents a physical asset fulfilled for a customer. |
Entitlement | Entitlement | Ruby__Entitlement__c | Represents a service entitlement provisioned for a customer. |
Asset Order Product | AssetOrderProduct | Ruby__AssetOrderProduct__c | Records the relationship between a booking transaction (an order product) and an asset in the general term, which can be a physical asset, a subscription, and an entitlement. |
Billing Accelerator
The following table outlines the objects in the Billing Accelerator. For detailed information, please refer to this article.
OBJECT NAME | OBJECT API NAME |
SALESFORCE OBJECT NAME | DESCRIPTION |
Invoice | Invoice | Ruby__Invoice__c | Represents a customer invoice that contains the charges of products or services in a specific billable period. |
Invoice Item | InvoiceItem | Ruby__InvoiceItem__c | Represents a line item in the invoice that contains the charge of a particular product or service a customer consumed in specific billing period. |
Credit Memo | CreditMemo | Ruby__CreditMemo__c | Represents a customer credit memo that contains the amount reduced for products or services in a specific billable period. |
Credit Memo Item | CreditMemoItem | Ruby__CreditMemoItem__c | Represents a line item in the credit memo that contains the amount reduced for a particular product or service a customer ordered in specific billing period. |
Debit Memo | DebitMemo | Ruby__DebitMemo__c | Represents a financial record reflecting deductions or adjustments, aiding in financial reconciliation. |
Debit Memo Item | DebitMemoItem | Ruby__DebitMemoItem__c | Represents a line item within a Debit Memo, specifying the details of deductions or adjustments made, facilitating accurate financial tracking. |
Payment Application | PaymentApplication | Ruby__PaymentApplication__c | Represents how and when a payment transaction occurs to an invoice. |
Payment Application Item | PaymentApplicationItem | Ruby__PaymentApplicationItem__c | Represents a payment transaction occurred to an invoice at the line level. |
Billing State | BillingState | N/A | Tracks the invoicing statuses of the associated order product. |
Usage Accelerator
The following table outlines the objects in the Usage Accelerator. For detailed information, please refer to this article. Some objects do not have their mirrored copy in Salesforce.
OBJECT NAME | OBJECT API NAME |
SALESFORCE OBJECT NAME | DESCRIPTION |
Raw Usage | RawUsage | Represents a raw usage record resulted from a measuable consumption of a product or service. | |
Usage | Usage | Ruby__NueUsage__c | Represents a rated usage record resulted from grouping of a set of usage records. |
Credit Pool | CreditPool | Ruby__CreditPool__c | Defines the system credit pool, which will be used as a template to generate Account Credit Pool for each customer. |
Account Credit Pool | AccountCreditPool | Represents the credit pool for each customer, which contains the credits issued to the customer and the flows of how the credit balance changes. | |
Credit Type | CreditType | Represents the type of credit, which can be Credit or Cash. | |
Credit | Credit | Represents the credit issued by a Credit Burn-down product or service the customer purchased. | |
Credit Flow | CreditFlow | Represents the credit inflow (grants) and outflow (consumption) of a certain amount of credits. |