Pleo Export Items (v3) API
The Export Items (v3) API from Pleo — 1 operation(s) for export items (v3).
The Export Items (v3) API from Pleo — 1 operation(s) for export items (v3).
openapi: 3.0.1
info:
title: App Marketplace accounting-entries Export Items (v3) API
description: API for Pleo App Marketplace
termsOfService: https://pleo.io/terms/
contact:
email: partner-ecosystem-team@pleo.io
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
version: 39.4.0
servers:
- url: https://external.pleo.io
description: Production server
- url: https://external.staging.pleo.io
description: Staging server
security:
- bearerAuth: []
- basicAuth: []
tags:
- name: Export Items (v3)
paths:
/v3/export-items:
get:
tags:
- Export Items (v3)
summary: Get Export Items
description: 'An export item = an accounting entry transformed into an exportable entry. The accounting and bookkeeping information is collected from an accounting entry to form an export item.
• A request to this endpoint retrieves a list of export items selected for export.
• Please note that you can retrieve a list of export items only from `pending` and `in_progress` export jobs.'
operationId: getExportItemsV3
parameters:
- name: job_id
in: query
description: The Export Job ID in which the accounting entries have been included for export.
required: false
style: form
explode: true
schema:
type: string
format: uuid
- name: before
in: query
description: Lower bound of the page of data to return (cannot be used together with [after] or [offset]).
required: false
style: form
explode: true
schema:
pattern: ^[A-Z2-7=~]+$
type: string
- name: after
in: query
description: Upper bound of the page of data to return (cannot be used together with [before] or [offset]).
required: false
style: form
explode: true
schema:
pattern: ^[A-Z2-7=~]+$
type: string
- name: offset
in: query
description: Offset of the page of data to return (cannot be used together with [before] or [after]).
required: false
style: form
explode: true
schema:
minimum: 0
type: integer
format: int64
- name: limit
in: query
description: The maximum amount of items to return.
required: false
style: form
explode: true
schema:
minimum: 0
type: integer
format: int32
- name: sorting_keys
in: query
description: The keys to sort the results by.
required: false
style: form
explode: true
schema:
type: array
items:
type: string
- name: sorting_order
in: query
description: The order to sort the results by. Must be the same length as [sortingKeys]; one order per key.
required: false
style: form
explode: true
schema:
type: array
items:
$ref: '#/components/schemas/PageOrder'
responses:
'200':
description: Export Items retrieved successfully.
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/CursorPaginatedResponseExportItemV3'
'400':
description: Contra accounts are not fully configured. Please map contra accounts in the Accounting settings. Export items cannot be retrieved until all Pleo accounts have corresponding contra accounts configured in the ERP/accounting system.
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/ExceptionInfo'
example:
type: MISSING_CONTRA_ACCOUNTS
message: Contra accounts are not fully configured. Please map contra accounts in the Accounting settings.
'422':
description: Export Job has finished. Only Export Items from running jobs can be retrieved.
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/ExceptionInfo'
example:
type: EXPORT_JOB_STATUS_UNPROCESSABLE
message: Export Job is finished and can no longer be processed.
components:
schemas:
ExceptionInfo:
required:
- type
type: object
properties:
message:
type: string
type:
type: string
SupplierBankAccount:
required:
- bankName
- country
type: object
properties:
accountNumber:
type: string
description: Bank account number.
nullable: true
bankCode:
type: string
description: Bank code.
nullable: true
bankName:
type: string
description: Name of the bank.
bic:
type: string
description: Branch information.
nullable: true
country:
maxLength: 2
minLength: 2
type: string
description: Country the bank is located in. This is an ISO 3166-1 alpha-2 country code.
example: DK
enum:
- UNDEFINED
- AC
- AD
- AE
- AF
- AG
- AI
- AL
- AM
- AN
- AO
- AQ
- AR
- AS
- AT
- AU
- AW
- AX
- AZ
- BA
- BB
- BD
- BE
- BF
- BG
- BH
- BI
- BJ
- BL
- BM
- BN
- BO
- BQ
- BR
- BS
- BT
- BU
- BV
- BW
- BY
- BZ
- CA
- CC
- CD
- CF
- CG
- CH
- CI
- CK
- CL
- CM
- CN
- CO
- CP
- CR
- CS
- CU
- CV
- CW
- CX
- CY
- CZ
- DE
- DG
- DJ
- DK
- DM
- DO
- DZ
- EA
- EC
- EE
- EG
- EH
- ER
- ES
- ET
- EU
- EZ
- FI
- FJ
- FK
- FM
- FO
- FR
- FX
- GA
- GB
- GD
- GE
- GF
- GG
- GH
- GI
- GL
- GM
- GN
- GP
- GQ
- GR
- GS
- GT
- GU
- GW
- GY
- HK
- HM
- HN
- HR
- HT
- HU
- IC
- ID
- IE
- IL
- IM
- IN
- IO
- IQ
- IR
- IS
- IT
- JE
- JM
- JO
- JP
- KE
- KG
- KH
- KI
- KM
- KN
- KP
- KR
- KW
- KY
- KZ
- LA
- LB
- LC
- LI
- LK
- LR
- LS
- LT
- LU
- LV
- LY
- MA
- MC
- MD
- ME
- MF
- MG
- MH
- MK
- ML
- MM
- MN
- MO
- MP
- MQ
- MR
- MS
- MT
- MU
- MV
- MW
- MX
- MY
- MZ
- NA
- NC
- NE
- NF
- NG
- NI
- NL
- 'NO'
- NP
- NR
- NT
- NU
- NZ
- OM
- PA
- PE
- PF
- PG
- PH
- PK
- PL
- PM
- PN
- PR
- PS
- PT
- PW
- PY
- QA
- RE
- RO
- RS
- RU
- RW
- SA
- SB
- SC
- SD
- SE
- SF
- SG
- SH
- SI
- SJ
- SK
- SL
- SM
- SN
- SO
- SR
- SS
- ST
- SU
- SV
- SX
- SY
- SZ
- TA
- TC
- TD
- TF
- TG
- TH
- TJ
- TK
- TL
- TM
- TN
- TO
- TP
- TR
- TT
- TV
- TW
- TZ
- UA
- UG
- UK
- UM
- US
- UY
- UZ
- VA
- VC
- VE
- VG
- VI
- VN
- VU
- WF
- WS
- XI
- XU
- XK
- YE
- YT
- YU
- ZA
- ZM
- ZR
- ZW
iban:
type: string
description: Unique international bank account number.
nullable: true
description: Bank account information of the supplier.
nullable: true
AccountV3:
required:
- id
- name
type: object
properties:
code:
type: string
description: Account code or number.
nullable: true
id:
type: string
description: Account identifier assigned by Pleo.
format: uuid
example: 00000000-0000-0000-0000-000000000000
identifier:
type: string
description: Account identifier assigned by the ERP/accounting system.
nullable: true
name:
type: string
description: Name of the account as set on the Pleo UI.
example: Meals and Entertainment
description: Specific General Ledger (GL) account allocated to the export item - the account code, the identifier, or both are mentioned, if any GL account is allocated.
nullable: true
ContraAccount:
required:
- id
- name
type: object
properties:
code:
type: string
description: Contra account code or number.
nullable: true
id:
type: string
description: Contra account identifier assigned by Pleo.
format: uuid
example: 00000000-0000-0000-0000-000000000000
identifier:
type: string
description: Contra account identifier assigned by the ERP/accounting system.
nullable: true
name:
type: string
description: Contra account name as specified in the Pleo app.
example: Pleo GBP Account
description: Account in the ERP/accounting system corresponding to each account of the customer in Pleo.
nullable: true
CountryCode:
type: string
description: Country of registration of the vendor (ISO 3166-1 alpha-2 country code (2 letters))
example: DK
enum:
- UNDEFINED
- AC
- AD
- AE
- AF
- AG
- AI
- AL
- AM
- AN
- AO
- AQ
- AR
- AS
- AT
- AU
- AW
- AX
- AZ
- BA
- BB
- BD
- BE
- BF
- BG
- BH
- BI
- BJ
- BL
- BM
- BN
- BO
- BQ
- BR
- BS
- BT
- BU
- BV
- BW
- BY
- BZ
- CA
- CC
- CD
- CF
- CG
- CH
- CI
- CK
- CL
- CM
- CN
- CO
- CP
- CR
- CS
- CU
- CV
- CW
- CX
- CY
- CZ
- DE
- DG
- DJ
- DK
- DM
- DO
- DZ
- EA
- EC
- EE
- EG
- EH
- ER
- ES
- ET
- EU
- EZ
- FI
- FJ
- FK
- FM
- FO
- FR
- FX
- GA
- GB
- GD
- GE
- GF
- GG
- GH
- GI
- GL
- GM
- GN
- GP
- GQ
- GR
- GS
- GT
- GU
- GW
- GY
- HK
- HM
- HN
- HR
- HT
- HU
- IC
- ID
- IE
- IL
- IM
- IN
- IO
- IQ
- IR
- IS
- IT
- JE
- JM
- JO
- JP
- KE
- KG
- KH
- KI
- KM
- KN
- KP
- KR
- KW
- KY
- KZ
- LA
- LB
- LC
- LI
- LK
- LR
- LS
- LT
- LU
- LV
- LY
- MA
- MC
- MD
- ME
- MF
- MG
- MH
- MK
- ML
- MM
- MN
- MO
- MP
- MQ
- MR
- MS
- MT
- MU
- MV
- MW
- MX
- MY
- MZ
- NA
- NC
- NE
- NF
- NG
- NI
- NL
- 'NO'
- NP
- NR
- NT
- NU
- NZ
- OM
- PA
- PE
- PF
- PG
- PH
- PK
- PL
- PM
- PN
- PR
- PS
- PT
- PW
- PY
- QA
- RE
- RO
- RS
- RU
- RW
- SA
- SB
- SC
- SD
- SE
- SF
- SG
- SH
- SI
- SJ
- SK
- SL
- SM
- SN
- SO
- SR
- SS
- ST
- SU
- SV
- SX
- SY
- SZ
- TA
- TC
- TD
- TF
- TG
- TH
- TJ
- TK
- TL
- TM
- TN
- TO
- TP
- TR
- TT
- TV
- TW
- TZ
- UA
- UG
- UK
- UM
- US
- UY
- UZ
- VA
- VC
- VE
- VG
- VI
- VN
- VU
- WF
- WS
- XI
- XU
- XK
- YE
- YT
- YU
- ZA
- ZM
- ZR
- ZW
ExportItemV3:
required:
- _links
- accountingEntryId
- accountingEntryLines
- additionalInformation
- amount
- companyId
- date
- type
type: object
properties:
_links:
$ref: '#/components/schemas/LinksResponse'
accountingEntryId:
type: string
description: Pleo internal identifier of the export item (identifier of the expense).
format: uuid
example: 00000000-0000-0000-0000-000000000000
accountingEntryLines:
type: array
description: An accounting entry is represented with either a single line or multiple lines that explain the details. So, if the accounting entry is split into multiple lines, each line has a unique ID.
items:
$ref: '#/components/schemas/ExportItemLineV3'
additionalInformation:
$ref: '#/components/schemas/ExportItemAdditionalInformationV3'
amount:
$ref: '#/components/schemas/ExportItemAmountV3'
bookkeeping:
$ref: '#/components/schemas/BookkeepingV3'
companyId:
type: string
description: Pleo company identifier this export item belongs to.
format: uuid
example: 00000000-0000-0000-0000-000000000000
contraAccount:
$ref: '#/components/schemas/ContraAccount'
date:
pattern: YYYY-MM-DDTHH:mi:ssZ
type: string
description: The date when the export item was book kept.
format: date-time
files:
type: array
description: Files that have been attached to this accounting entry.
nullable: true
items:
$ref: '#/components/schemas/ExportItemFile'
note:
type: string
description: Additional comments potentially describing the accounting entry.
nullable: true
servicePeriod:
$ref: '#/components/schemas/ServicePeriodV3'
subType:
type: string
description: This can be one of ExportItemSubTypeV3 values
example: reimbursement_to_employee_refund
supplier:
$ref: '#/components/schemas/SupplierV3'
team:
$ref: '#/components/schemas/TeamV3'
type:
type: string
description: This can be one of ExportItemTypeV3 values
example: card_purchase
user:
$ref: '#/components/schemas/ExportItemUserV3'
vendor:
$ref: '#/components/schemas/VendorV3'
CursorPageCurrentRequestInfo:
required:
- parameters
type: object
properties:
after:
type: string
before:
type: string
limit:
type: integer
format: int32
offset:
type: integer
format: int64
parameters:
type: object
additionalProperties:
type: array
items:
type: string
sortingKeys:
type: array
items:
type: string
sortingOrder:
type: array
items:
$ref: '#/components/schemas/PageOrder'
ExportItemLineAmountV3:
required:
- inSupplierCurrency
- inWalletCurrency
type: object
properties:
inSupplierCurrency:
$ref: '#/components/schemas/MoneyModel'
inWalletCurrency:
$ref: '#/components/schemas/MoneyModel'
description: Amount of the specific accounting entry line.
ExportItemUserV3:
required:
- id
- name
type: object
properties:
code:
type: string
description: This would usually represent the employee code.
nullable: true
id:
type: string
description: Pleo internal identifier of the user.
format: uuid
example: 00000000-0000-0000-0000-000000000000
name:
type: string
description: Full name of the user.
example: John Doe
description: This applies to the person that initiated the spend. In most cases this would be the employee.
nullable: true
LinksResponse:
type: object
properties:
api:
type: object
additionalProperties:
type: string
mobile:
type: object
additionalProperties:
type: string
web:
type: object
additionalProperties:
type: string
description: Contains links relevant to the export item.
example:
web:
exportItem: https://example.com
mobile:
exportItem: https://example.com
api:
exportItem: https://example.com
ExportItemFile:
required:
- size
- type
- url
type: object
properties:
size:
type: integer
description: Size of the file in bytes.
format: int32
example: 2084
type:
type: string
description: Type of file, usually represented similar to mime type.
example: application/pdf
url:
type: string
description: URL to retrieve the file attachment from. This URL is active for a limited time (24 Hours) from the time the export item is fetched.
example: https://file.url
description: Files that have been attached to this accounting entry.
nullable: true
ServicePeriodV3:
required:
- from
- to
type: object
properties:
from:
pattern: yyyy-MM-dd'T'HH:mm:ss'Z'
type: string
description: The start of the service period in ISO 8601 datetime format.
format: date-time
example: '2025-01-01T00:00:00Z'
to:
pattern: yyyy-MM-dd'T'HH:mm:ss'Z'
type: string
description: The end of the service period in ISO 8601 datetime format.
format: date-time
example: '2025-01-31T00:00:00Z'
description: The period during which a service was provided, goods were delivered, or an expense was incurred.
nullable: true
CursorPageInfo:
required:
- currentRequestPagination
- hasNextPage
- hasPreviousPage
type: object
properties:
currentRequestPagination:
$ref: '#/components/schemas/CursorPageCurrentRequestInfo'
endCursor:
type: string
hasNextPage:
type: boolean
hasPreviousPage:
type: boolean
startCursor:
type: string
total:
type: integer
format: int64
TeamV3:
required:
- id
- name
type: object
properties:
code:
type: string
description: Team code, usually the unique identifier of the team in the accounting system.
nullable: true
id:
type: string
description: Pleo internal identifier of the team.
format: uuid
example: 00000000-0000-0000-0000-000000000000
name:
type: string
description: Name of the team.
example: Marketing
description: Teams are assigned to an export item for categorisation or association with a specific team.
nullable: true
SupplierV3:
type: object
properties:
account:
type: string
description: Supplier account code in the accounting system.
nullable: true
categoryCode:
type: string
description: Category code that describes the merchant/supplier's activity.
nullable: true
example: '5999'
code:
type: string
description: Identifier of the supplier in the accounting system.
nullable: true
country:
maxLength: 2
minLength: 2
type: string
description: The ISO 3166-1 alpha-2 country code the merchant or supplier operates in.
nullable: true
example: DK
enum:
- UNDEFINED
- AC
- AD
- AE
- AF
- AG
- AI
- AL
- AM
- AN
- AO
- AQ
- AR
- AS
- AT
- AU
- AW
- AX
- AZ
- BA
- BB
- BD
- BE
- BF
- BG
- BH
- BI
- BJ
- BL
- BM
- BN
- BO
- BQ
- BR
- BS
- BT
- BU
- BV
- BW
- BY
- BZ
- CA
- CC
- CD
- CF
- CG
- CH
- CI
- CK
- CL
- CM
- CN
- CO
- CP
- CR
- CS
- CU
- CV
- CW
- CX
- CY
- CZ
- DE
- DG
- DJ
- DK
- DM
- DO
- DZ
- EA
- EC
- EE
- EG
- EH
- ER
- ES
- ET
- EU
- EZ
- FI
- FJ
- FK
- FM
- FO
- FR
- FX
- GA
- GB
- GD
- GE
- GF
- GG
- GH
- GI
- GL
- GM
- GN
- GP
- GQ
- GR
- GS
- GT
- GU
- GW
- GY
- HK
- HM
- HN
- HR
- HT
- HU
- IC
- ID
- IE
- IL
- IM
- IN
- IO
- IQ
- IR
- IS
- IT
- JE
- JM
- JO
- JP
- KE
- KG
- KH
- KI
- KM
- KN
- KP
- KR
- KW
- KY
- KZ
- LA
- LB
- LC
- LI
- LK
- LR
- LS
- LT
- LU
- LV
- LY
- MA
- MC
- MD
- ME
- MF
- MG
- MH
- MK
- ML
- MM
- MN
- MO
- MP
- MQ
- MR
- MS
- MT
- MU
- MV
- MW
- MX
- MY
- MZ
- NA
- NC
- NE
- NF
- NG
- NI
- NL
- 'NO'
- NP
- NR
- NT
- NU
- NZ
- OM
- PA
- PE
- PF
- PG
- PH
- PK
- PL
- PM
- PN
- PR
- PS
- PT
- PW
- PY
- QA
- RE
- RO
- RS
- RU
- RW
- SA
- SB
- SC
- SD
- SE
- SF
- SG
- SH
- SI
- SJ
- SK
- SL
- SM
- SN
- SO
- SR
- SS
- ST
- SU
- SV
- SX
- SY
- SZ
- TA
- TC
- TD
- TF
- TG
- TH
- TJ
- TK
- TL
- TM
- TN
- TO
- TP
- TR
- TT
- TV
- TW
- TZ
- UA
- UG
- UK
- UM
- US
- UY
- UZ
- VA
- VC
- VE
- VG
- VI
- VN
- VU
- WF
- WS
- XI
- XU
- XK
- YE
- YT
- YU
- ZA
- ZM
- ZR
- ZW
name:
type: string
description: Name of the supplier or merchant.
nullable: true
example: GOOGLE*ADS8693645259
taxIdentifier:
type: string
description: Tax identification of the supplier in their country of operation.
nullable: true
description: The supplier or merchant involved.
nullable: true
ExportItemAdditionalInformationV3:
required:
- reconciliationId
type: object
properties:
attendees:
type: array
description: Indicates attendance of participants at the time of the spend. For example, if an employee took clients to dinner, this attribute indicates who were present at the dinner.
nullable: true
items:
type: string
description: Indicates attendance of participants at the time of the spend. For example, if an employee took clients to dinner, this attribute indicates who were present at the dinner.
nullable: true
invoiceInformation:
$ref: '#/components/schemas/InvoiceInformationV3'
reconciledEntries:
uniqueItems: true
type: array
description: A list of reconciliation IDs for reimbursement expenses that are settled by this reimbursement. Only included for reimbursement transactions.
nullable: true
items:
type: string
description: A list of reconciliation IDs for reimbursement expenses that are settled by this reimbursement. Only included for reimbursement transactions.
nullable: true
reconciliationId:
type: string
description: Identifier used to reconcile between Pleo and the accounting system. Also known in Pleo as the book ID.
description: Additional information applicable to this accounting entry.
TagV3:
required:
- code
- groupCode
- id
type: object
properties:
code:
type: string
description: Unique identifier of the tag allocated to the export item.
groupCode:
type: string
description: Unique identifier of the tag group (a tag group is a collection of tags).
id:
type: string
description: Pleo internal identifier of the tag.
format: uuid
example: 00000000-0000-0000-0000-000000000000
description: Tags are cost centres allocated to an export item.
nullable: true
TaxAmountV3:
required:
- inSupplierCurrency
- inWalletCurrency
type: object
properties:
inSupplierCurrency:
$ref: '#/components/schemas/MoneyModel'
inWalletCurrency:
$ref: '#/components/schemas/MoneyModel'
description: Amount spent for tax.
BookkeepingV3:
required:
- method
type: object
properties:
method:
type: string
description: This can be one of BookkeepingMethodV3 values
example: none
description: Bookkeeping related configurations for an accounting entry.
nullable: true
CursorPaginatedResponseExportItemV3:
required:
- data
- pagination
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/ExportItemV3'
pagination:
$ref: '#/components/schemas/CursorPageInfo'
ExportItemNetAmountV3:
required:
- inSupplierCurrency
- inWalletCurrency
type: object
properties:
inSupplierCurrency:
$ref: '#/components/schemas/MoneyModel'
inWalletCurrency:
$ref: '#/components/schemas/MoneyModel'
description: Amount either including or excluding tax. This depends on the tax code, represented in the tax type attribute.
InvoiceInformationV3:
required:
- invoiceDate
- invoiceNumber
- status
type: object
properties:
dueDate:
pattern: YYYY-MM-DD
type: string
description: Date the payment is due.
format: date-time
nullable: true
invoiceDate:
pattern: YYYY-MM-DD
type: string
description: Date the invoice was issued.
format: date-time
invoiceNumber:
type: string
description: The invoice number.
paymentDate:
pattern: YYYY-MM-DD
type: string
description: Date the invoice was paid if the status is paid.
format: date-time
nullable: true
status:
type: string
description: This can be one of InvoiceInformationStatusV3 values
example: pending_approval
supplierBankAccount:
$ref: '#/components/schemas/SupplierBankAccount'
description: For an invoice, additional information related to the invoice is specified in this attribute.
nullable: true
VendorV3:
required:
- defaultCurrency
- id
- name
type: object
properties:
code:
type: string
description: Unique identifier assigned to the vendor in the target ERP/accounting system for aiding users in identifying the correct record.
country:
$ref: '#/components/schemas/CountryCode'
defaultCurrency:
maxLength: 3
minLength: 3
type: string
description: Default currency in which the vendor’s financial operations, such as purchases, payments, or invoices, are primarily conducted. (ISO 4217 currency code (3 letters))
example: DKK
externalId:
type: string
description: Unique external identifier of the vendor, assigned by the target ERP/accounting system, used by the client for identification. Can be the same as code if no other identifier is available.
id:
type: string
description: Pleo's internal identifier for the vendor
format: uuid
# --- truncated at 32 KB (39 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/pleo/refs/heads/main/openapi/pleo-export-items-v3-api-openapi.yml