Fakturownia ProDocumentationBulk Invoice Generation & Operations

Bulk Invoice Generation & Operations

Most invoices in Fakturownia Pro are created automatically by invoice rules as orders move through their lifecycle. But some scenarios require acting on many existing orders at once — migrating from another invoicing solution, catching up on a backlog, or running end-of-month paid status sweeps. Bulk operations are built for exactly this.

Bulk invoice generation panel showing order selection, filters, and progress tracker


When to Use Bulk Operations

Bulk invoice operations are appropriate when:

  • Migrating from another solution — you have hundreds or thousands of historical orders in Shopify that predate Fakturownia Pro, and you need invoices for them in Fakturownia
  • Retroactive invoicing — your invoice rules were paused or misconfigured for a period and orders slipped through without invoices
  • End-of-month sweep — you use net-term invoicing and want to mark all paid orders as paid in Fakturownia in a single operation
  • Bulk PDF downloads — your accounting team needs all invoices for a given period in one download

Generating Invoices for Historical Orders

Accessing the Bulk Generator

  1. Open Fakturownia Pro from your Shopify admin
  2. Navigate to Tools → Bulk Invoice Generator
  3. The panel shows all Shopify orders without an existing Fakturownia invoice

Filtering Orders for the Batch

Before starting a batch, narrow the order set with filters to avoid creating invoices for orders that should not have them.

| Filter | Options | Recommended use | |---|---|---| | Date range | Custom date range picker | Always set this — prevents processing all orders since store launch | | Payment status | Paid, Pending, Authorized, Refunded | Set to "Paid" for standard VAT invoice batches | | Fulfillment status | Fulfilled, Unfulfilled, Partial | Relevant for B2B stores that invoice on fulfillment | | Order tag | Any Shopify order tag | Use needs-invoice tag for precision targeting | | Existing invoice | Without invoice, With invoice, Either | Default is "Without invoice" — prevents duplicate generation | | Draft orders | Include or exclude | Exclude draft orders — draft orders are proposals, not confirmed sales. See Draft Order Filtering below |

Batch Actions

Once orders are filtered, choose the action to apply to all of them:

| Action | What it creates | Notes | |---|---|---| | Generate VAT Invoice | Full VAT invoice in Fakturownia | For historical orders where payment is confirmed | | Generate Proforma | Proforma invoice | For historical pending orders | | Mark as Paid | Updates existing invoice status | Only applies to orders that already have an invoice |

Enable "Send email to customer" if you want the invoice PDF sent to the customer billing email for each order processed. For historical migrations, this is typically disabled — customers do not expect an invoice email for an order placed months ago.

Running the Batch

Click "Start Batch" to begin processing. Fakturownia Pro processes orders sequentially through the Fakturownia API — it does not send all requests simultaneously to respect Fakturownia's rate limits (300 requests/minute on Business plans).

The progress tracker shows:

  • Orders processed / total
  • Success count
  • Skip count (duplicate prevention triggered, or filter criteria re-evaluated)
  • Error count

Do not close the browser tab while a batch is running. The batch runs in the browser session. If you need to close the tab, pause the batch first — you can resume it from the same panel.

Estimated Time

Processing speed depends on your Fakturownia plan's API rate limit:

| Orders in batch | Estimated time (Business plan) | |---|---| | 100 | ~25 seconds | | 500 | ~2 minutes | | 1,000 | ~4 minutes | | 5,000 | ~20 minutes | | 10,000 | ~40 minutes |

For very large migrations (5,000+ orders), consider running the batch overnight or across multiple sessions with date-range filters to split the load.


Bulk Mark-as-Paid Operations

The Bulk Mark-as-Paid operation updates the payment status of existing Fakturownia invoices without creating new documents. Use this when:

  • You use net-term invoicing and want to batch-mark invoices as paid at the end of the month after confirming bank transfers
  • A payment gateway delay caused orders to be invoiced before payment was confirmed, and you are now catching up

Running a Bulk Mark-as-Paid

  1. Navigate to Tools → Bulk Mark as Paid
  2. Filter by date range (required), payment status in Shopify (set to "Paid"), and optionally by order tag
  3. The panel shows only orders that have an existing Fakturownia invoice with status "Unpaid"
  4. Click "Mark All as Paid" to begin

This operation does not create new invoices — it only updates existing ones. If an order has no existing Fakturownia invoice, it is skipped and appears in the skip log with reason "No invoice found."


Invoice Status Column in Admin Orders List

Fakturownia Pro adds an Invoice Status column to your Shopify admin orders list. This column shows the current Fakturownia invoice status for each order without opening the order detail.

Status Indicators

| Status | Meaning | |---|---| | Invoice Sent | Invoice created and email sent to customer | | Invoice Created | Invoice created, no email sent | | Paid | Invoice marked as paid in Fakturownia | | Credit Note | A credit note exists for this order (refund processed) | | No Invoice | No Fakturownia document exists for this order | | Error | Last invoice action failed — click for error detail |

Using the Status Column for Bulk Selection

Click the Invoice Status column header to sort orders by invoice status. This makes it easy to visually identify orders in "No Invoice" or "Error" status for targeted bulk remediation.

You can also use Shopify's built-in search to filter by invoice status. Fakturownia Pro adds order tags automatically for tracking:

| Tag | Meaning | |---|---| | fakturownia-invoice-sent | Invoice created and emailed | | fakturownia-invoice-created | Invoice created, no email | | fakturownia-invoice-error | Last action failed | | fakturownia-no-invoice | No document exists |

Filter your Shopify orders list by these tags to get precise subsets for bulk operations.


One-Click PDF Download from Admin

Every order with an existing Fakturownia invoice has a Download PDF button in the Fakturownia Pro widget on the order detail page.

  1. Open any order in Shopify admin
  2. In the Apps section of the right sidebar, click Fakturownia Pro
  3. Click "Download PDF" next to the invoice

The PDF is fetched directly from Fakturownia's API and opened in a new browser tab. This is the same PDF that would be emailed to the customer.

Bulk PDF Download

For accounting periods requiring all invoices in a single archive:

  1. Navigate to Tools → PDF Archive Download
  2. Select a date range (corresponds to invoice date in Fakturownia, not Shopify order date)
  3. Optionally filter by document type (VAT Invoice, Proforma, Credit Note)
  4. Click "Generate Archive" — Fakturownia Pro compiles a ZIP file via the Fakturownia API

The archive is ready for download within 30–120 seconds depending on invoice count. A download link appears when the archive is ready. The link is valid for 24 hours.

Important: The archive uses invoice dates in Fakturownia, which may differ from Shopify order dates. If you set a specific invoice date on rules (rather than using the order date), filter by the correct date range accordingly. See Document Settings for invoice date configuration.


Duplicate Prevention

Fakturownia Pro prevents duplicate invoices at every level — automatic rules, manual actions, and bulk operations all check for an existing document before creating a new one.

How It Works

Before any invoice creation (single or bulk), Fakturownia Pro:

  1. Queries its local order-to-invoice mapping table for this Shopify order ID
  2. If a mapping exists, the action is flagged as a potential duplicate
  3. The Fakturownia API is also checked directly as a secondary verification (handles edge cases where the mapping was not stored due to a network error during a previous attempt)
  4. If a Fakturownia invoice is found for this order via either check, the action is skipped and logged as "Duplicate prevented"

Why This Matters for Payment Retries

Some payment methods (particularly Przelewy24, Blik, and deferred payment gateways) can fire multiple orders/paid webhooks for the same order during a retry sequence. Without duplicate prevention, each webhook would create a separate invoice for the same order.

Fakturownia Pro's duplicate check ensures only one invoice is ever created per order, regardless of how many webhooks arrive.

Overriding Duplicate Prevention

If you need to regenerate an invoice (for example, the original had incorrect buyer details and was corrected):

  1. Open the order in Shopify admin
  2. In the Fakturownia Pro widget, click "Regenerate Invoice"
  3. Confirm the override dialog

The previous invoice in Fakturownia is not deleted automatically — cancel or delete it manually in your Fakturownia account to avoid two valid invoices for the same order.


Draft Order Filtering

Draft orders in Shopify are sales proposals — they have not been confirmed and paid by the customer. Fakturownia Pro excludes draft orders from all bulk operations by default and also does not fire automatic invoice rules for draft order webhooks.

When Draft Orders Become Real Orders

When a customer pays a draft order, Shopify converts it to a regular order and fires the appropriate order webhooks (order/created, orders/paid). At this point, Fakturownia Pro processes it through your normal invoice rules — no special configuration needed.

When You Might Want Proformas for Draft Orders

Some B2B workflows use draft orders as quotes — a customer requests a quote, you create a draft order, and they want a proforma to issue a purchase order against.

To generate a proforma for a draft order:

  1. Open the draft order in Shopify admin
  2. In the Fakturownia Pro widget, click "Generate Proforma"
  3. The proforma is created manually — it is not subject to invoice rules

Note: When the draft order is paid and converted to a regular order, your invoice rules will fire normally. If you have a rule on orders/paid to create a VAT Invoice, duplicate prevention will allow it (the proforma is a different document type than a VAT Invoice). If you want to prevent a VAT Invoice when a proforma already exists, configure your rule with the condition "Skip if proforma exists" — available in the invoice rule advanced settings.


Shopify Flow Integration for Bulk Automation

For stores on the Shopify, Advanced, or Plus plan, Shopify Flow can automate bulk operations that would otherwise require manual triggering.

Scheduled Batch Processing

Shopify Flow's "Time trigger" lets you run a Fakturownia Pro action on a recurring schedule:

Example: End-of-month paid sweep

  1. Trigger: Time — monthly, on the 1st at 6:00 AM
  2. Action: Fakturownia Pro → "Bulk Mark as Paid" — previous month's date range, filter: Shopify payment status = Paid

This automatically sweeps all orders that were fulfilled on net terms during the previous month and marks their Fakturownia invoices as paid at the start of each new month.

Example: Daily no-invoice catch-up

  1. Trigger: Time — daily at 11:00 PM
  2. Action: Fakturownia Pro → "Generate Missing Invoices" — last 24 hours, filter: without invoice, payment status = Paid

This catches any orders that missed automatic invoicing due to temporary API errors during the day.

Flow Action: Generate Invoice for Order

This action is also available in Flow as a per-order action — useful for conditional invoice generation that your rules cannot express:

  1. Trigger: Any Shopify trigger (order created, tagged, custom webhook)
  2. Condition: Order total > 500 AND customer tag = "wholesale"
  3. Action: Fakturownia Pro → Generate Invoice (type: VAT Invoice, also mark as paid: yes, send email: yes)

This gives you full flexibility to create invoices in conditions that invoice rules' status-based triggers cannot cover.


Monitoring Bulk Operations

All bulk operations are logged in Fakturownia Pro → Activity Log → Bulk Operations.

The log shows:

  • Operation type (Bulk Generate, Bulk Mark as Paid, PDF Archive)
  • Started at / completed at
  • Orders in batch
  • Success / skip / error counts
  • Error details for any failed orders (Fakturownia API error code + message)

Errors in a bulk batch do not stop the batch — the failed order is logged and the batch continues. After the batch completes, review the error log and address failures individually or re-run the batch filtered to the failed orders only.


Next Steps

  • Document Settings — template selection, multi-currency, buyer name format
  • Invoice Rules — configure automatic invoice generation triggers
  • Compliance — OSS, GTU codes, VAT handling for EU sellers
Edit this page on GitHub
Was this page helpful?