Pennylane List

Pennylane List

Certified

List Pennylane supplier invoices

Retrieves supplier invoices from Pennylane with automatic cursor-based pagination and optional filtering.

yaml
type: io.kestra.plugin.pennylane.supplierinvoices.List

List supplier invoices waiting to be paid and store them in internal storage

yaml
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

Pennylane API token

Company or firm API token used to authenticate against the Pennylane API. Store it securely as a Kestra secret.

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.

Definitions
assetFailureBehaviorstring
Possible Values
IGNOREFAILWARN

Asset 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.

enableAutobooleanstring

Whether to auto-register assets referenced dynamically at runtime that are not statically declared in inputs or outputs.

inputsarray

The assets consumed as inputs.

id*string
Min length1
typestring
outputs

The assets produced as outputs.

id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*object
descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
id*string
Min length1
Max length150
type*string
Min length1

Custom asset type

descriptionstring
displayNamestring
metadataobject
Default{}
namespacestring
Min length1
Max length150
Defaulthttps://app.pennylane.com/api/external/v2

Pennylane API base URL

Base endpoint URL for Pennylane API calls. Defaults to https://app.pennylane.com/api/external/v2.

SubTypeinteger

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.

Invoice issue start date

Filters supplier invoices issued on or after this date (format YYYY-MM-DD).

Invoice issue end date

Filters supplier invoices issued on or before this date (format YYYY-MM-DD).

DefaultFETCH
Possible Values
STOREFETCHFETCH_ONENONE

Fetch 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.

Raw Pennylane filter DSL

Raw JSON filter string matching Pennylane filter DSL, e.g. [{"field": "invoice_number", "operator": "eq", "value": "INV-123"}].

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.

HTTP client options

Optional HTTP client configuration (timeouts, proxy, SSL) applied to every request.

Definitions
allowFailedbooleanstring
Defaultfalse

If true, allow a failed response code (response code >= 400)

allowedResponseCodesarray
SubTypeinteger

List of response code allowed for this request

auth

The authentication to use.

type*object
passwordstring

The password for HTTP basic authentication.

usernamestring

The username for HTTP basic authentication.

type*object
tokenstring

The token for bearer token authentication.

type*object
passwordstring

The password for HTTP Digest authentication.

usernamestring

The username for HTTP Digest authentication.

defaultCharsetstring
DefaultUTF-8

The default charset for the request.

enabledTcpExtendedKeepAlivebooleanstring
Defaulttrue

Whether 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.

followRedirectsbooleanstring
Defaulttrue

Whether redirects should be followed automatically.

logsarray
SubTypestring
Possible Values
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODY

The enabled log.

proxy

The proxy configuration.

addressstring

The address of the proxy server.

passwordstring

The password for proxy authentication.

portintegerstring

The port of the proxy server.

typestring
DefaultDIRECT
Possible Values
DIRECTHTTPSOCKS

The type of proxy to use.

usernamestring

The username for proxy authentication.

ssl

The SSL request options

insecureTrustAllCertificatesbooleanstring

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.

timeout

The timeout configuration.

connectTimeoutstring

The time allowed to establish a connection to the server before failing.

readIdleTimeoutstring
DefaultPT5M

The time allowed for a read connection to remain idle before closing it.

Default100

Page size

Number of items per request page. Must be between 1 and 100. Defaults to 100.

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.

Default-id

Sort order

Attribute to sort by, optionally prefixed with '-' for descending order. Defaults to '-id'.

Supplier identifier

Filters supplier invoices belonging to a specific supplier ID.

Total number of supplier invoices retrieved

For FETCH_ONE, 1 when a row is returned and 0 when nothing matched.

First supplier invoice (populated when fetchType is FETCH_ONE)

Definitions
accounting_statusstring

Accounting validation state ('draft', 'entry', 'validation_needed', 'complete', 'archived')

additionalPropertiesobject
Default{}
amountobject

Total invoice amount including tax

created_atstring

Timestamp when the invoice was created in Pennylane

currencystring

Currency code (e.g. 'EUR', 'USD')

currency_amountobject

Invoice amount in original currency

currency_taxobject

Tax / VAT amount in invoice currency

datestring

Invoice issue date (YYYY-MM-DD)

deadlinestring

Invoice payment deadline (YYYY-MM-DD)

filenamestring

Name of the attached invoice document file

idinteger

Supplier invoice unique identifier

invoice_numberstring

Supplier invoice number as issued by the vendor

labelstring

Supplier invoice display label

payment_statusstring

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_file_urlstring

Public temporary download URL for the invoice PDF (expires in ~30 min)

reconciledboolean

Whether the invoice has been bank reconciled

source_file_urlstring

Source electronic invoice file URL if available

supplierobject

Supplier summary reference

taxobject

Tax / VAT amount in euros

updated_atstring

Timestamp when the invoice was last updated in Pennylane

List of supplier invoices (populated when fetchType is FETCH)

Definitions
accounting_statusstring

Accounting validation state ('draft', 'entry', 'validation_needed', 'complete', 'archived')

additionalPropertiesobject
Default{}
amountobject

Total invoice amount including tax

created_atstring

Timestamp when the invoice was created in Pennylane

currencystring

Currency code (e.g. 'EUR', 'USD')

currency_amountobject

Invoice amount in original currency

currency_taxobject

Tax / VAT amount in invoice currency

datestring

Invoice issue date (YYYY-MM-DD)

deadlinestring

Invoice payment deadline (YYYY-MM-DD)

filenamestring

Name of the attached invoice document file

idinteger

Supplier invoice unique identifier

invoice_numberstring

Supplier invoice number as issued by the vendor

labelstring

Supplier invoice display label

payment_statusstring

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_file_urlstring

Public temporary download URL for the invoice PDF (expires in ~30 min)

reconciledboolean

Whether the invoice has been bank reconciled

source_file_urlstring

Source electronic invoice file URL if available

supplierobject

Supplier summary reference

taxobject

Tax / VAT amount in euros

updated_atstring

Timestamp when the invoice was last updated in Pennylane

Formaturi

URI of the stored .ion internal storage file (populated when fetchType is STORE)