Skip to main content
The Export Lifecycle describes how Pleo moves expenses and related attachments from the platform into an Accounting System, respecting user bookkeeping configuration, accounting periods, and posting preferences. Understanding this lifecycle helps developers conceptualise what Pleo expects, how data is structured, and the order of operations before implementation. This lifecycle ensures exported expenses are accurate, reconcilable, and compliant with company bookkeeping standards.

High-Level Process

High-Level Steps

1. Export Job Creation

  • Expenses that are ready for export are grouped into an Export Job.
  • Export Jobs are queued in Pleo for processing by an integration.
  • Only approved and accounting-ready expenses are included.
See: How to Queue Export Items in Pleo’s Web App

2. Export Job Detection

  • Integrations detect pending Export Jobs using webhooks (preferred) or scheduled polling.
  • Jobs are processed sequentially (oldest first) to maintain consistency.
  • An Export Job is marked as started when processing begins.
See: How to Detect and Claim Export Jobs for Processing

3. Pre-Export Validation

  • The integration ensures the Accounting System is available and ready to accept entries.
  • If unavailable, the Export Job is failed with actionable error information.
See: How to Perform Pre-Export Validation

4. Export Item Processing

  • Individual Export Items (expenses) are fetched from the Export Job.
  • Each item is validated for required configuration and data.
  • Valid items proceed through the per-item processing block.
  • Individual item failures do not fail the entire job; each item is tracked separately to allow partial job success.
See:

Per-Item Processing

Each Export Item goes through the following steps:

5. Bookkeeping Method

  • Expenses are recorded using one of two methods:
    • Journal Entries: simple double-entry transactions
    • Accounts Payable: invoice and payment tracking for vendors
  • Certain transaction types (wallet loads, balance amendments) are always journal entries.
See: How to Determine the Bookkeeping Method

6. Accounts & Data Mapping

  • Exported expenses are mapped to the correct GL Accounts:
    • Wallet, Out-of-Pocket, Contra, Expense Category, Accounts Payable
  • Data mapping ensures all mandatory, invoice-specific, and optional datapoints are correctly recorded:
    • Amounts, dates, tax codes, dimensions, unique identifiers, VAT/tax information
See:

7. Attachment Handling

  • Receipts and supporting documents are linked to the corresponding journal entry, invoice, or credit note.
  • Multiple attachments are supported if the Accounting System allows.
See: How to Transfer Attachments

8. Accounting Period Assignment

  • Expenses are assigned to the correct accounting period, even if the period is closed or uses a custom calendar.
See: How to Assign Accounting Periods

9. Posting Behaviour

  • Entries may be recorded as drafts for review or finalised automatically, depending on configuration.
See: How to Apply Posting Behaviour

Status Updates

10. Update Export Item Status

  • Each Export Item is updated with its success or failure status.
See: How to Update Export Items

11. Update Export Job Status

  • Once all items are processed, the Export Job is updated with an overall status reflecting the combined results:
    • Completed: all Export Items succeeded
    • Completed with Errors: some items failed
    • Failed: all items failed
See: How to Update & Complete the Export Job

What Comes Next?

The following pages provide a deeper explanation of each step and the platform capabilities that support it: