What a custom source is
A custom source is a source in ChartMogul that you fill with data yourself, instead of connecting a billing system. ChartMogul calculates the same metrics from it as from any other source: MRR, ARR, churn, LTV, and every customer's MRR movements.
You can send customers, plans, invoices and their line items, payments and refunds, subscription events for cancellations and committed MRR, and contacts.
Three ways to send data
The API. Best for an in-house billing system, or anything you want to keep in sync automatically. You authenticate with an API key, and a bulk import endpoint handles larger batches. There are client libraries for Ruby, Node.js, PHP, Go, and Python. Start with the developer docs.
CSV files. Add a custom source under Settings > Sources > Add Source, then import a CSV file for each table, starting with plans and customers. How CSV import works.
Directly in ChartMogul. You can add data by hand, including manual subscriptions. These don't support refunds, prorated invoices, voided invoices, or subscriptions with more than one component.
Connect ChartMogul to your other tools
n8n can use the whole ChartMogul API, including sending invoices, so you can feed a custom source from an n8n workflow without building an app of your own.
Zapier, Pipedream, and Tray.ai have ready-made ChartMogul actions for customers, contacts, and CRM data, such as updating tags and custom attributes or reading metrics like MRR and churn. None of them imports invoices directly. Each can make a custom API call with your ChartMogul credentials, though, so you can send invoices and anything else the API supports that way.
ETL and reverse ETL tools such as Fivetran, Airbyte, and Hightouch copy ChartMogul data into your own database or warehouse, or send warehouse data into ChartMogul. See ETL and data pipeline tools.
The MCP server lets AI assistants such as Claude and ChatGPT read your ChartMogul data, with read-only access. Set up the MCP server.