HubSpot Payments is a full workflow object type. You can enroll payments, trigger workflows when payments are created, and build reports around them. But there's one thing you can't do: create a payment record from a workflow.
The native "Create record" action supports contacts, companies, deals, orders, tickets, leads, listings, courses, appointments, services, projects, and custom objects. Payments - conspicuously - are not on that list.
This creates a gap for any team that needs to track revenue received outside Commerce Hub. If a deal closes and the payment arrives via wire transfer, invoice, or an external billing system, someone has to manually create the payment record. That doesn't scale.
The Problem: No Native Way to Create Payments Automatically
HubSpot's Commerce Hub treats payments as first-class objects. They have their own properties, associations, and reporting. But the platform gives you no way to programmatically create them inside a workflow.
That means you can't:
- Auto-create a payment when a deal closes - even though the amount, currency, and method are all sitting on the deal record
- Log payments from external systems - webhook data from Stripe, QuickBooks, or your own billing API has nowhere to land automatically
- Track offline payments - wire transfers, checks, and bank transfers that happen outside any payment processor
- Reconcile subscription renewals - recurring revenue that should generate periodic payment records
The data exists. The workflow triggers exist. The one missing piece is the action to create the record.
Create Payment Workflow Action
0CodeTools for HubSpot adds a Create Payment workflow action that fills this gap. It creates a Commerce Payment record in HubSpot with the amount, currency, status, and payment method you specify - using values from the enrolled record or static defaults.
For a product overview of every Commerce Hub action (Create Payment, CSV Import, Quotes, Line Items, Taxes, and Stripe activation), see 0CodeTools for Commerce Hub.
The action works in any workflow type: deal-based, invoice-based, contact-based, or custom object-based. Anywhere you have the payment data available, you can create the record.
Use Cases
- Deal closed-won - automatically create a payment record when a deal moves to Closed Won, pulling the amount and currency from the deal
- Invoice paid - create a payment record when an invoice is marked as paid, linking the payment to the invoice's revenue
- External webhook - receive payment data from Stripe, QuickBooks, or your own API via the 0CodeTools API Webhook Connector, then create the payment record in HubSpot
- Subscription renewal - create periodic payment records for recurring revenue tracked outside HubSpot Payments
Setting Up the Workflow
Example 1: Deal Closed-Won Creates a Payment
When a deal moves to Closed Won, create a payment record automatically. Click the action below to see the full configuration:
Create a Succeeded payment of Amount (Enrolled deal) USD
This workflow fires once per deal. The payment amount comes directly from the deal's Amount property, and the customer email is pulled from the associated contact. The status is set to "Succeeded" because the deal is already closed.
Example 2: Invoice Triggers a Payment Record
For teams that track revenue through invoices, create a payment record when an invoice is finalized:
Create a Processing payment of Amount billed (Enrolled invoice) USD
Field Reference
The Create Payment action has six fields. Four are required:
| Field | Required | Type | Description |
|---|---|---|---|
| Amount | Yes | Number / token | Payment amount. Use a token to pull from the enrolled record (e.g., deal amount, invoice total). |
| Currency Code | Yes | Text | Three-letter ISO currency code (USD, EUR, GBP, etc.). |
| Customer email | No | Text / token | Email address associated with the payment. Useful for linking to contact records. |
| Status | Yes | Dropdown | Processing, Succeeded, Failed, Partially refunded, Refunded, Processing refund, or Disputed variants. |
| Payment method | Yes | Dropdown | Check, Wire transfer, SEPA (EU bank transfer), BACS (UK bank transfer), PADS (CA pre-authorized debit), or Other. |
| Comment | No | Text | Free-text note attached to the payment record. |
Status options cover the full payment lifecycle: Processing, Succeeded, Failed, Partially refunded, Refunded, Processing refund, Disputed - won, Disputed - lost, Disputed - action required, and Disputed - awaiting decision.
Payment method options support international payment types: Check, Wire transfer, SEPA (EU bank transfer), BACS (UK bank transfer), PADS (CA pre-authorized debit), and Other.
How to Import Payments in HubSpot
For historical data - payments from a legacy CRM, accounting software, or external billing system - creating records one by one through workflows doesn't make sense. You need a bulk import.
The 0CodeTools CSV Import tool lets you upload a CSV file and map its columns to HubSpot payment properties, then import all records at once.
When to Use CSV Import
- Migrating from another CRM or billing platform - bring over historical payment records so your HubSpot reporting reflects full revenue history
- Backfilling revenue data - if you adopted HubSpot Payments recently but have years of prior transaction data in Stripe, QuickBooks, or spreadsheets
- Bulk reconciliation - sync a batch of payments from an external accounting or ERP system
- One-time data cleanup - import corrected or enriched payment data after an audit
How It Works
- Export your payment data as a CSV file from your source system
- Go to 0CodeTools CSV Import and select Payments as the object type
- Upload your CSV file - the tool shows you all columns with sample data
- Map each CSV column to the corresponding HubSpot payment property (Payment date, Gross amount, etc.)
- Click Continue to import - records are created in your HubSpot portal
The mapping step lets you skip columns you don't need and match your CSV's column names to HubSpot's property names, regardless of what your source system calls them.
Things to Keep in Mind
- Tracking, not processing. The Create Payment action creates a payment record in HubSpot for tracking and reporting. It does not process an actual charge through Stripe, HubSpot Payments, or any payment processor.
- Associations. The payment record is created as a standalone object. If you need it associated with the enrolled deal, contact, or company, add a Find and Associate or Copy Associations action after the Create Payment step (both available in 0CodeTools).
- One credit per execution. Each Create Payment action execution uses one workflow action credit. The free plan includes 100 actions per month.
- Currency codes. Use standard three-letter ISO 4217 codes (USD, EUR, GBP, etc.). The Currency Code field is free-text, so double-check your values.
Getting Started
- Install 0CodeTools for HubSpot and connect your portal.
- Create a deal-based or invoice-based workflow in HubSpot.
- Add the Create Payment action from the 0CodeTools section.
- Configure the fields - use tokens to pull values from the enrolled record.
- Test with a single record before enabling for all deals or invoices.
For bulk imports, go to toolbox.resonatehq.com/hubspot-tools/import and upload your CSV.
For the full Commerce Hub automation feature list, visit 0CodeTools for Commerce Hub.
Related HubSpot workflow guides
The Create Payment action sits inside a broader Commerce Hub automation pattern. These companion guides extend what you can build:
- How to Associate Orders and Invoices with Companies and Contacts in HubSpot — orders and invoices imported into HubSpot rarely arrive with proper associations. Pair Create Payment with the Find and Associate / Copy Associations actions covered here so every payment record is wired to the right deal, company, and contact.
- Set a TTL for HubSpot Records — for failed or refunded payments that should be cleaned up after a retention window, the Delete Record TTL pattern handles the lifecycle without manual deletion.
- Lead Routing in HubSpot — when a payment lands, you may want to assign the resulting customer record to a CSM or account owner using the modular routing architecture covered in this guide.
- Free HubSpot Workflow Templates: 25 Ready-to-Install Automations — start with pre-built templates for deal-to-payment automation, invoice processing, and payment reconciliation.
