Import historical transactions, orders, and products via CSV, and export payment data for reporting and accounting.
The HoopAI Platform lets you move payment data in and out of the system through CSV imports and exports. Use imports to bring in product catalogs and historical records from a previous platform, and use exports to feed data into accounting software, create custom reports, or archive payment history.
CSV imports create new records — they do not update existing ones. If you need to modify existing products or transactions, edit them individually within the platform or use the bulk edit options where available.
If you have an existing product catalog in a spreadsheet or another platform, you can import it directly into the HoopAI Platform without manual data entry.
1
Navigate to the Products import screen
Go to Payments → Products in the HoopAI web app. Click the Import button (or the dropdown arrow next to it) and select Import as CSV.
2
Download the CSV template
Click Download Template to get a pre-formatted CSV file with all the correct column headers. Always use the template as the starting point to ensure your file is formatted correctly before uploading.
3
Fill in the template
Open the downloaded template and add your products. Required and optional columns are described in the table below.
4
Upload the CSV
Drag and drop your completed CSV file into the upload area, or click Browse to select it from your computer.
5
Review the import preview
The platform shows a row-by-row preview of the data it will import. Review the preview carefully to confirm that prices, names, and types are correct.
6
Confirm the import
Click Import to create the products. Once complete, you will see a summary showing how many rows were successfully imported and how many had errors.
7
Fix errors and re-upload if needed
If any rows failed, download the error report. It shows the row number and the specific validation failure for each problem row. Fix the issues in your CSV and re-upload only the failed rows.
Numeric value without currency symbols (e.g., 49.99)
Type
Yes
Physical, Digital, or Free
Currency
Yes
Three-letter ISO code (e.g., USD, GBP, EUR)
SKU
No
Stock-keeping unit for inventory tracking
Inventory Quantity
No
Leave blank for unlimited stock
Weight
No
For physical products; used in shipping calculations
Compare At Price
No
Original price shown as a strikethrough (for sale pricing)
Collection
No
Assigns the product to an existing product collection
If the Type column contains a value other than Physical, Digital, or Free (case-sensitive), the row will fail validation. Check for trailing spaces or different capitalization if you encounter errors on this column.
If you have an existing product and price catalog in Stripe, you can pull it directly into the HoopAI Platform without building a CSV.
1
Connect Stripe
Ensure your Stripe account is connected in Payments → Payment Integrations. The import will not be available if Stripe is not connected.
2
Open the import screen
Go to Payments → Products, click the Import dropdown, and select Import from Stripe.
3
Review and confirm
The platform displays a list of all products found in your Stripe account. Review the list to confirm the products and prices are the ones you want to import.
4
Complete the import
Click Import. All Stripe products are pulled in automatically with their prices and variants preserved.
The Stripe product import is a one-time operation. Changes made to products in Stripe after the import are not automatically reflected in the HoopAI Platform. To keep catalogs in sync, update products directly in the HoopAI web app after the initial import.
Use the transaction import to bring payment history from a previous platform into HoopAI. This is particularly useful when migrating so that your reporting and customer payment history remain intact.
1
Navigate to transaction import
Go to Payments → Transactions and click Import.
2
Download the CSV template
Download the transaction import template to ensure your data is structured with the correct column headers.
3
Prepare your CSV
Fill in the template using your historical data. Required columns are described in the table below.
4
Upload and review
Upload the CSV and review the import preview. Confirm that dates, amounts, and customer details look correct.
5
Confirm the import
Click Import to create the transaction records. Imported transactions will display Imported in the source column, distinguishing them from transactions processed natively through the platform.
If you are migrating from QuickBooks, FreshBooks, or another invoicing platform, you can import your invoice history to maintain a complete billing record.
1
Navigate to invoice import
Go to Payments → Invoices and click Import.
2
Download the invoice import template
Use the provided template to format your invoice data. The template includes all supported fields.
3
Prepare already-paid invoices
For invoices that were already paid before the migration, include the payment date in the corresponding column. The import will mark those invoices as paid with the recorded date rather than as outstanding.
4
Upload and confirm
Upload the completed CSV, review the preview, and click Import. Invoices will appear in Payments → Invoices with the status set based on the data in your file.
Set already-paid invoices to a paid status during import rather than leaving them as due. This keeps your invoice dashboard accurate and prevents automated payment reminders from going out for invoices that were settled before the migration.
No. Subscriptions cannot be imported via CSV. They must be created manually through Payments → Subscriptions or through an order form connected to a subscription product. If you are migrating from another platform, customers will need to re-enter their payment details on a new subscription signup flow.
What file format is required for CSV imports?
All CSV imports require a UTF-8 encoded .csv file. Download the provided template for each import type to ensure the column headers and formatting are correct. Incorrect encoding or extra columns outside the template can cause import failures.
Can I update existing products via CSV import?
Not currently. CSV imports create new products rather than updating existing ones. To modify an existing product, open it in Payments → Products and edit it directly. For bulk edits, use the bulk edit option available in the product list.
Is there a row limit on CSV imports?
There is no hard row limit enforced for CSV imports. Very large files may take longer to process and the import may run in the background. For best results, split exceptionally large files (tens of thousands of rows) into smaller batches.
Can I export a single invoice as PDF?
Yes. From Payments → Invoices, find the invoice you want and click the three-dot menu on that row. Select Download to save the invoice as a PDF file. This is separate from the CSV export and generates a formatted invoice document.
Does exporting transactions include refunded amounts?
Yes. The transaction export includes a Refund Status column and a Status column. Refunded transactions appear in the export with refund details included so your accounting records reflect the net amount accurately.
Can I schedule recurring exports?
Not currently. All CSV exports are manual and on-demand. For automated reporting, use the Reporting section within the platform or set up a Zapier or Make integration to pull transaction data on a schedule and push it to a spreadsheet or data warehouse.
What happens if imported transactions reference contacts that don't exist yet?
The platform will attempt to match the customer email in your CSV to an existing contact. If no matching contact is found, a new contact record will be created using the name and email from the CSV row.
Can I re-import a CSV if the first attempt had errors?
Yes. Fix the errors in your CSV and re-upload the file. Only re-upload the rows that failed — successfully imported rows will be duplicated if included again. Use the error report from the failed import to identify exactly which rows need correction.