
Pennylane List
CertifiedList Pennylane supplier invoices
Pennylane List
List Pennylane supplier invoices
Retrieves supplier invoices from Pennylane with automatic cursor-based pagination and optional filtering.
type: io.kestra.plugin.pennylane.supplierinvoices.ListExamples
List supplier invoices waiting to be paid and store them in internal storage
id: pennylane_supplier_invoices
namespace: company.finance
tasks:
- id: supplier_invoices
type: io.kestra.plugin.pennylane.supplierinvoices.List
apiToken: "{{ secret('PENNYLANE_API_TOKEN') }}"
dateFrom: "2026-01-01"
paymentStatus: "to_be_paid"
fetchType: STORE
Properties
apiToken *string
Pennylane API token
Company or firm API token used to authenticate against the Pennylane API. Store it securely as a Kestra secret.
assets
Assets this task consumes as inputs or produces as outputs, for lineage tracking and the asset graph (Enterprise Edition). A flow declaring this property on a task is rejected in the open-source edition.
io.kestra.core.models.assets.AssetsDeclaration
IGNOREFAILWARNAsset failure behavior
Behavior applied to the task state when a declared asset fails to render, emit, or be persisted (e.g. a lock conflict): FAIL escalates it to FAILED, WARN (default) warns it if it would otherwise succeed, IGNORE leaves the state untouched.
Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.
The assets consumed as inputs.
io.kestra.core.models.assets.AssetIdentifier
1The assets produced as outputs.
io.kestra.plugin.ee.assets.Dataset
1150{}1150io.kestra.plugin.ee.assets.File
1150{}1150io.kestra.plugin.ee.assets.Table
1150{}1150io.kestra.plugin.ee.assets.VM
1150{}1150io.kestra.core.models.assets.External
1150{}1150io.kestra.core.models.assets.Custom
11501Custom asset type
{}1150baseUrl string
https://app.pennylane.com/api/external/v2Pennylane API base URL
Base endpoint URL for Pennylane API calls. Defaults to https://app.pennylane.com/api/external/v2.
categoryIds array
Category identifiers
Filters supplier invoices in any of these categories. Sent as category_id with operator in, which is the only operator that endpoint allows for category_id.
dateFrom string
Invoice issue start date
Filters supplier invoices issued on or after this date (format YYYY-MM-DD).
dateTo string
Invoice issue end date
Filters supplier invoices issued on or before this date (format YYYY-MM-DD).
fetchType string
FETCHSTOREFETCHFETCH_ONENONEFetch type
Defines how results are emitted: FETCH (in-memory list), FETCH_ONE (stops at the first matching record and returns it as row; count is 1, or 0 when nothing matches), STORE (written to internal storage .ion file), or NONE (count only). Defaults to FETCH.
filter string
Raw Pennylane filter DSL
Raw JSON filter string matching Pennylane filter DSL, e.g. [{"field": "invoice_number", "operator": "eq", "value": "INV-123"}].
maxRecords integerstring
Maximum records
Maximum total number of records to retrieve across all pages. Omit to fetch all matching records. Must be at least 1 when set. No limit by default: pagination follows the API until the last page. Set maxRecords to cap the number of records, especially with fetchType: FETCH, which keeps all rows in memory; prefer STORE for large exports.
options
HTTP client options
Optional HTTP client configuration (timeouts, proxy, SSL) applied to every request.
io.kestra.core.http.client.configurations.HttpConfiguration
falseIf true, allow a failed response code (response code >= 400)
List of response code allowed for this request
The authentication to use.
io.kestra.core.http.client.configurations.BasicAuthConfiguration
The password for HTTP basic authentication.
The username for HTTP basic authentication.
io.kestra.core.http.client.configurations.BearerAuthConfiguration
The token for bearer token authentication.
io.kestra.core.http.client.configurations.DigestAuthConfiguration
The password for HTTP Digest authentication.
The username for HTTP Digest authentication.
UTF-8The default charset for the request.
java.nio.charset.Charset
trueWhether to enable TCP Keep-Alive extended socket options (TCP_KEEPIDLE, TCP_KEEPINTERVAL, TCP_KEEPCOUNT).
Set to false when running on Windows workers, as these extended socket options are not supported by the Windows JDK and will cause connection failures.
trueWhether redirects should be followed automatically.
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODYThe enabled log.
The proxy configuration.
io.kestra.core.http.client.configurations.ProxyConfiguration
The address of the proxy server.
The password for proxy authentication.
The port of the proxy server.
DIRECTDIRECTHTTPSOCKSThe type of proxy to use.
The username for proxy authentication.
The SSL request options
io.kestra.core.http.client.configurations.SslOptions
Whether to disable checking of the remote SSL certificate.
Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.
The timeout configuration.
io.kestra.core.http.client.configurations.TimeoutConfiguration
The time allowed to establish a connection to the server before failing.
PT5MThe time allowed for a read connection to remain idle before closing it.
pageSize integerstring
100Page size
Number of items per request page. Must be between 1 and 100. Defaults to 100.
paymentStatus string
Payment status
Filters invoices by payment_status eq. Values: to_be_processed, to_be_paid, partially_paid, payment_error, payment_scheduled, payment_in_progress, payment_emitted, payment_found, paid_offline, fully_paid.
sort string
-idSort order
Attribute to sort by, optionally prefixed with '-' for descending order. Defaults to '-id'.
supplierId integerstring
Supplier identifier
Filters supplier invoices belonging to a specific supplier ID.
Outputs
count integer
Total number of supplier invoices retrieved
For FETCH_ONE, 1 when a row is returned and 0 when nothing matched.
row
First supplier invoice (populated when fetchType is FETCH_ONE)
io.kestra.plugin.pennylane.models.SupplierInvoice
Accounting validation state ('draft', 'entry', 'validation_needed', 'complete', 'archived')
{}Total invoice amount including tax
Timestamp when the invoice was created in Pennylane
Currency code (e.g. 'EUR', 'USD')
Invoice amount in original currency
Tax / VAT amount in invoice currency
Invoice issue date (YYYY-MM-DD)
Invoice payment deadline (YYYY-MM-DD)
Name of the attached invoice document file
Supplier invoice unique identifier
Supplier invoice number as issued by the vendor
Supplier invoice display label
Payment status. One of to_be_processed, to_be_paid, partially_paid, payment_error, payment_scheduled, payment_in_progress, payment_emitted, payment_found, paid_offline, fully_paid
Public temporary download URL for the invoice PDF (expires in ~30 min)
Whether the invoice has been bank reconciled
Source electronic invoice file URL if available
Supplier summary reference
Tax / VAT amount in euros
Timestamp when the invoice was last updated in Pennylane
rows array
List of supplier invoices (populated when fetchType is FETCH)
io.kestra.plugin.pennylane.models.SupplierInvoice
Accounting validation state ('draft', 'entry', 'validation_needed', 'complete', 'archived')
{}Total invoice amount including tax
Timestamp when the invoice was created in Pennylane
Currency code (e.g. 'EUR', 'USD')
Invoice amount in original currency
Tax / VAT amount in invoice currency
Invoice issue date (YYYY-MM-DD)
Invoice payment deadline (YYYY-MM-DD)
Name of the attached invoice document file
Supplier invoice unique identifier
Supplier invoice number as issued by the vendor
Supplier invoice display label
Payment status. One of to_be_processed, to_be_paid, partially_paid, payment_error, payment_scheduled, payment_in_progress, payment_emitted, payment_found, paid_offline, fully_paid
Public temporary download URL for the invoice PDF (expires in ~30 min)
Whether the invoice has been bank reconciled
Source electronic invoice file URL if available
Supplier summary reference
Tax / VAT amount in euros
Timestamp when the invoice was last updated in Pennylane
uri string
uriURI of the stored .ion internal storage file (populated when fetchType is STORE)